2016-08-23 15 views
8

我使用部署在JBoss 7.1.1上的DeltaSpike 1.7.1和CDI 1.0(Weld 1.1.5)。这是一个遗留项目,我无法改变我们使用的技术。我知道CDI在EAR中有多个WAR文件有问题/有问题,但是我没有在一个JBOSS实例的外部发现任何关于多个WAR文件的任何问题。 EAR文件DeltaSpike DefaultWindowContextQuotaHandler和JsfWindowContextQuotaHandler之间的依赖关系

注意的问题不会发生,每次一个项目部署,碰巧的是,通常情况下,当我问詹金斯建立并立即部署多个项目,我收到此错误信息:

WELD-001318 Cannot resolve an ambiguous dependency between [Managed Bean [class org.apache.deltaspike.core.impl.scope.window.DefaultWindowContextQuotaHandler] with qualifiers [@Any @Default], Managed Bean [class org.apache.deltaspike.jsf.impl.scope.window.JsfWindowContextQuotaHandler] with qualifiers [@Any @Default]]

我试图摆脱DeltaSpike,但项目严重依赖在@ViewAccessScoped注解上,它会浪费很多时间来改变它。

回答

2

看看这个页面:

https://docs.jboss.org/author/display/AS7/Class+Loading+in+AS7

更具体地讲,看看这个设置在JBoss 7配置:

<subsystem xmlns="urn:jboss:domain:ee:1.0" >    
    <ear-subdeployments-isolated>false</ear-subdeployments-isolated> 
</subsystem> 

据该变量可能设置为true,将解决你的问题。

+0

不幸的是,看起来它没有为我工作。如果我使用EAR,我认为这会起作用,事实并非如此。不管怎么说,还是要谢谢你。 –

+0

我会将问题报告给JBoss-AS7团队或升级到更新的版本。 –