Указанная ссылка соответствует более чем одному компоненту EJB - EJB 3.1

Я немного смущен тем, почему я получаю следующую ошибку при развертывании моего уха на автономном локальном хосте jboss AS 6:

"java.lang.RuntimeException: указанная ссылка (ForecastUtilityLocal') соответствует более чем одному EJB" - см. подробности ниже...

РАЗВЕРТЫВАНИЕ С ОШИБКОЙ: Развертывание "vfs:///C:/jboss/jboss-6.0.0.Final/server/default/deploy/ear-1.0.0.ear" выполняется с ошибкой по следующим причинам: java.lang.RuntimeException: указанная ссылка [ссылка EJB: beanI erface 'com.ls.forecast.ejb.util.ForecastUtilityLocal', beanName 'null', mappedName 'null', lookupName 'null', единица-владелец 'ComponentDeploymentContext@23001552{ org.jboss.metadata.ejb.jboss.JBossEnteriseBeanMetaData.ExpectedReturnEngineServiceImpl}'] соответствует более чем одному EJB: . oss.JBossSessionBean31MetaData@ee01f6d1{ForecastUtility}]. Укажите beanName явно или убедитесь, что beanInterface уникален.

    at org.jboss.deployers.plugins.deployers.DeployersImpl.checkComplete(DeployersImpl.java:1228) [:2.2.0.GA]
    at org.jboss.deployers.plugins.main.MainDeployerImpl.checkComplete(MainDeployerImpl.java:905) [:2.2.0.GA]
    at org.jboss.system.server.profileservice.deployers.MainDeployerPlugin.checkComplete(MainDeployerPlugin.java:87) [:6.0.0.Final]
    at org.jboss.profileservice.deployment.ProfileDeployerPluginRegistry.checkAllComplete(ProfileDeployerPluginRegistry.java:107) [:0.2.2]
    at org.jboss.system.server.profileservice.bootstrap.BasicProfileServiceBootstrap.start(BasicProfileServiceBootstrap.java:135) [:6.0.0.Final]
    at org.jboss.system.server.profileservice.bootstrap.BasicProfileServiceBootstrap.start(BasicProfileServiceBootstrap.java:56) [:6.0.0.Final]
    at org.jboss.bootstrap.impl.base.server.AbstractServer.startBootstraps(AbstractServer.java:827) [jboss-bootstrap-impl-base.jar:2.1.0-alpha-5]
    at org.jboss.bootstrap.impl.base.server.AbstractServer$StartServerTask.run(AbstractServer.java:417) [jboss-bootstrap-impl-base.jar:2.1.0-alpha-5]
    at java.lang.Thread.run(Thread.java:619) [:1.6.0_20]

Этот EJB помечен @Singleton, так как может быть более одного экземпляра?

@Singleton
@Local(ForecastUtilityLocal.class)
public class ForecastUtility implements ForecastUtilityLocal {

private static final Logger logger = LoggerFactory
        .getLogger(ForecastUtility.class);

@EJB
private CacheHelperLocal cacheHelper;
....
}

Например, на него ссылаются в другом EJB, например:

@Singleton
@Startup
@Local(CacheHelperLocal.class)
public class CacheHelper implements CacheHelperLocal {

@EJB
private ForecastModelUtilityLocal forecastModelUtility;

@EJB
private ConnectionManagerLocal connectionManager;

@EJB
private ForecastCacheManagerLocal forecastCacheManager;

@EJB
private ForecastUtilityLocal forecastUtility;
...
}

person user899757    schedule 10.01.2012    source источник


Ответы (1)


Убедитесь, что вы случайно не поместили @Local(ForecastUtilityLocal.class) в другой EJB.

person alexsmail    schedule 11.01.2012