2012-03-28 12 views
3

Mein Ohr-Anwendung, die auf JBoss läuft AS 7.1.0.Final von zwei Gläsern besteht:Decorator und dekoriert Klassen sind in verschiedenen Bohnen Archiven

  • lib/one.jar
  • lib/two.jar

Beide Gläser sind CDI-Bean-Archive.

Die two.jar ist abhängig von one.jar.

Die Klasse dekoriert ist in one.jar.

Der Dekorateur Klasse in two.jar

ist Wenn die Dekorateure in beans.xml von two.jar deklariert werden, werden sie nicht aktiviert ist. Funktioniert das wie erwartet?

Da die one.jar ist unabhängig von den two.jar entwickelt und hat keine Abhängigkeit zum two.jar erwarte ich, dass die Erklärung (Freigabe) des Dekorateure im Archiv, wo die Dekorateur Klassen gespeichert sind.

Wie ist es möglich, eine Decorator-Klasse zu aktivieren, ohne das Archiv mit dekorierten Klassen zu ändern?

Antwort

5

Laut der Spezifikation ist dies das erwartete Verhalten. CDI 1.1 hofft, dies zu erleichtern oder zumindest etwas aufzuhellen. Für jeden Interceptor, Decorator oder eine Alternative, die Sie verwenden möchten, muss sie in dem Archiv (beans.xml) aktiviert sein, das Sie verwenden möchten.