2012-01-06 1 views
2

어떻게 든 가능합니까? 다음 시나리오 : 이름싱글 톤 스타트 업 내의 로컬 상태 비 저장 EJB 삽입

  • statelesse 지역 EJB는 이름이 B와
  • 싱글 시작 EJB는
  • B는 내가 노력한

에 대한 참조를 포함하지만 내 애플리케이션 서버 (WAS)에 실패 A를 찾을 수 없다는 오류가있는 응용 프로그램 시작. 콘솔 로그는 또한 B가로드되는 순간에 A가 시작되지 않았지만 B가 시작되기 전에 다른 상태 비 저장 EJB가 시작된다는 것을 명확하게 보여줍니다. 또한 A를 싱글 톤 EJB로 만들고 B가 주석 #DependsOn ({ "A"})도 종속 bean A가 발견되지 않았다는 오류를 나타냈다. 웹 모듈에서 A를 사용하면 문제가 없습니다.

어떤 아이디어가 잘못 되었나요? 어떤 도움을 Thx! Steffen Harbich

+0

GlassFish에서 동일한 오류가 발생했습니다. A에서 로컬 인터페이스를 제거하면 사라집니다. 왜 로컬 인터페이스가 필요합니까? 그것은 EJB 3.1에서 필요하지 않아야합니다. – perissf

+1

이것이 작동합니다. A가 B와 동일한 모듈/응용 프로그램에 있거나 별도입니까? 별도의 경우 A의 모듈이 B의 모듈 (application.xml에서 순서를 초기화하거나 관리 콘솔에서 모듈 시작 가중치를 사용)보다 먼저 시작하도록 구성되어 있습니까? –

+0

좋아, 내가 로컬 인터페이스를 제거하려고합니다. –

답변

1

A가 B와 다른 모듈/응용 프로그램에있는 경우 A 모듈이 B 모듈보다 먼저 시작되도록 구성해야합니다. 응용 프로그램에서 initialize-in-order .xml을 사용하거나 관리 콘솔에서 모듈 시작 가중치를 사용하십시오.

+0

감사! 도움이되었습니다. –

관련 문제