2012-02-10 9 views
0

다른 유형의 여러 객체에 주입하려는 객체가 있습니다. 이 개체는 동일해야합니다 :JBoss Weld : 컨텍스트에 따라 주입 된 인스턴스를 전환하고 여러 콩에 인스턴스를 삽입하십시오.

class A {} 
class B {@Inject A a;} 
class C {@Inject A a;} 
class D {@Inject A a;} 

B 형, C의 객체간에 공유해야하는 인스턴스 (instance), D.

는 또,이 인스턴스를 전환 할 수 필요가있는 그 물체를 파괴하지 않고 컨테이너의 모든 인스턴스를 유지할 수 있어야합니다. A의 각 인스턴스는 문서와 관련이 있으며 응용 프로그램은 n 개의 문서에서 작업 할 수 있어야합니다 (동시에는 아니지만 각 문서간에 전환 할 수 있어야합니다). 사용자가 다른 문서를 선택하면 A의 해당 인스턴스가 B, C, D 인스턴스의 이전 인스턴스를 대체해야합니다.

JBoss Weld를 사용하여 간단한 방법이 있습니까?

나는 (문서 선택에 반응하는 싱글 톤 관리자를 사용하고 필요한 경우 A의 인스턴스를 대체하는) 다른 아이디어가 있지만이 솔루션이 실제로는 깨끗하지 못하다. 문맥에 따라,

class A {} 
class AManager{A currentA;} 
class B {@Inject AManager manager;} 
class C {@Inject AManager manager;} 
class D {@Inject AManager manager;} 

및 관리자에 currentA 전환 : 내가 찾은 솔루션은 관리자를 사용하는 대신 직접를 사용하여, 같은했다

답변

0

어쩌면 나는 ... 틀렸다.