2

尝试使用 WebServices 时出现此错误。我用谷歌搜索它并发现它发生是因为可能存在相同类文件的不同版本或发生某些冲突。我尝试在运行 Web 应用程序时提供认可的目录路径,但仍然没有运气。我使用的环境是 JDK 1.6.0.20 和 JBoss 5.0。:

java.lang.LinkageError: loader constraint violation: when resolving method "javax.xml.ws.Service.<init>(Ljava/net/URL;Ljavax/xml/namespace/QName;)V" the class loader (instance of org/jboss/classloader/spi/base/BaseClassLoader) of the current class, com/abc/amservice/AMService, and the class loader (instance of <bootloader>) for resolved class, javax/xml/ws/Service, have different Class objects for the type javax/xml/namespace/QName used in the signature
    com.abc.amservice.AMService.<init>(AMService.java:48)
    com.abcx.accessmanager.plugin.provider.webservice.ServiceConnection.createAndInitializeNewService(ServiceConnection.java:103)
    com.abcx.accessmanager.plugin.provider.webservice.ServiceConnection.getAMService(ServiceConnection.java:91)
    com.abcx.accessmanager.plugin.provider.webservice.ServiceConnection.createNewServicePort(ServiceConnection.java:136)
    com.abcx.accessmanager.plugin.provider.webservice.ServiceConnection.getWebServicePort(ServiceConnection.java:69)
    com.abcx.accessmanager.plugin.provider.webservice.AuthenticationProviderWebService.getWebServicePort(AuthenticationProviderWebService.java:536)
    com.abcx.accessmanager.plugin.provider.webservice.AuthenticationProviderWebService.authenticateUser(AuthenticationProviderWebService.java:80)
    com.abcx.accessmanager.plugin.provider.validator.ValidatingAuthenticationProvider.authenticateUser(ValidatingAuthenticationProvider.java:59)
    com.abcx.accessmanager.plugin.api.AccessManagementServiceConnector.authenticateUser(AccessManagementServiceConnector.java:61)
    com.qwe.spring.security.MyAuthenticationProvider.additionalAuthenticationChecks(MyAuthenticationProvider.java:33)
    org.springframework.security.providers.dao.AbstractUserDetailsAuthenticationProvider.authenticate(AbstractUserDetailsAuthenticationProvider.java:137)
    org.springframework.security.providers.ProviderManager.doAuthentication(ProviderManager.java:188)
    org.springframework.security.AbstractAuthenticationManager.authenticate(AbstractAuthenticationManager.java:46)
    org.springframework.security.ui.webapp.AuthenticationProcessingFilter.attemptAuthentication(AuthenticationProcessingFilter.java:82)
    org.springframework.security.ui.AbstractProcessingFilter.doFilterHttp(AbstractProcessingFilter.java:259)
    org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)
    org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390)
    org.springframework.security.ui.logout.LogoutFilter.doFilterHttp(LogoutFilter.java:89)
    org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)
    org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390)
    org.springframework.security.context.HttpSessionContextIntegrationFilter.doFilterHttp(HttpSessionContextIntegrationFilter.java:235)
    org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)
    org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390)
    org.springframework.security.util.FilterChainProxy.doFilter(FilterChainProxy.java:175)
    org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:236)
    org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
    org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)

将不胜感激任何帮助。谢谢

4

2 回答 2

3

可以在这个问题中找到解决方案。

简而言之:确保您不部署另一个javax.xml.namespace.*包,依赖于 Java 6 附带的包

于 2011-04-06T08:30:51.740 回答
0

有两个选项可以帮助您:

1 - 在运行时更改 Jboss 版本。再次下载Jboss,你的版本就可以破解了,很常见。因此,根据您的安装在 Eclipse 中设置您的 Jboss 运行时,例如:“C:\jboss-eap-5.1\jboss-as”。

或者

2 - 如果在您的情况下可行,只需在构建路径中删除 lib wsdl4j.jar。

于 2017-02-21T21:06:39.160 回答