2010-01-27 4 views
3

У меня есть EJB Project с @Singleton EJB определяется как:Java EE DependsOn Local EJB

@LocalBean 
@Singleton 
@Startup 
public class DataModelBean implements DataModelBeanLocal { 

Я тогда еще EJB Project с другой EJB:

@LocalBean 
@Singleton 
@Startup 
@EJB(beanInterface=DataModelBeanLocal.class,name="DataModelBeanLocal") 
@DependsOn("DataModelBeanLocal") 
public class OutboundRouting implements OutboundRoutingLocal { 

Однако @DependsOn не работает , Я пробовал несколько разных значений для @DependsOn без каких-либо успехов. Сервер не запускается с:

Развертывание ошибок для модуля: Атлас: исключение при развертывании приложения: java.lang.RuntimeException: Invalid DependsOn зависимость 'DataModelBeanLocal' для EJB OutboundRouting %%% %%% EOL

Я не уверен, что я должен делать здесь, любые предложения?

ответ

2

Попробуйте вместо этого:

@Singleton 
@DependsOn("DataModelBean") 
public class OutboundRouting { ... } 
+0

Я пробовал это, и он все еще не работал. – James

+0

@James, какую ошибку вы получаете (потому что именно так вы должны ее использовать) –

+0

Из eclipse Я получаю публикацию, столкнулся с проблемой: не удается развернуть Atlas Ошибка развертывания для модуля: Атлас: Исключение при развертывании приложения: java.lang.RuntimeException: Недействительная зависимость DependOn 'DataModelBean' для EJB OutboundRouting %%% EOL %%% – James

3

Определение Singleton с именем

@Singleton(name = "DataModelBeanLocal ") 
@Startup 
public class DataModelBean implements DataModelBeanLocal { 

в вашем secound одноточечного теперь вы можете определить зависимости

@Singleton 
@Startup 
@DependsOn("DataModelBeanLocal") 
public class OutboundRouting implements OutboundRoutingLocal { 

В нашей Projekt это работает штраф