我试图在Weblogic 12c中部署应用程序。在部署过程中,我得到以下错误
weblogic.management.DeploymentException: weblogic.application.naming.ReferenceResolutionException: [J2EE:160092]Error: The ejb-link "BeanClass" declared in the ejb-ref or ejb-local-ref "...BeanClassService/beanClass" in the module "....EJB.jar" is ambiguous. Qualify this ejb-link to remove the ambiguity.代码:
IBeanClass.java
@Local
public interface IBeanClass {}BeanClass.java
@Stateless(name = "BeanClass")
@PermitAll
public class BeanClass implements IBeanClass { ...... }IBeanClassService.java
@Local
public interface IBeanClassService { ......... }BeanClassService.java
@Stateless(name = "BeanClassService")
public class BeanClassService implements IBeanClassService {
@EJB(beanName = "BeanClass")
private IBeanClassService beanclass;
... }我正在从web应用程序项目中调用EJB:
ClientClass.java
public class ClientClass{ ....
@EJB(beanName = "BeanClassService")
private IBeanClassService beanclass;
..... }代码在weblogic10中运行良好,但现在在weblogic 12中出现异常。请帮助解决这个问题。
发布于 2014-08-14 20:36:06
BeanClass不是IBeanClassService,因此即使按照基本的java约定,也不能将IBeanClass对象分配给该变量,更不用说将EJB注入到该位置了。你应该做的是
@EJB(beanName = "BeanClass")
private IBeanClass beanclass;发布于 2015-11-20 12:49:34
我也有同样的问题--解决办法是:
<dependency>
<groupId>bo.sigep.modulo</groupId>
<artifactId>moduloSigep-ejb</artifactId>
<version>1.0-SNAPSHOT</version>
<scope>provided</scope>
</dependency>在战争中,关键在于
https://stackoverflow.com/questions/25282983
复制相似问题