【问题标题】:Java SOAP proxy initialization exceptionJava SOAP 代理初始化异常
【发布时间】:2010-11-05 23:04:43
【问题描述】:

我正在将一组基于 Java 的 AMF Web 服务部署到 GlassFish v3。这在开发环境中一切正常,但在当前正在设置的暂存环境中失败:

开发:GlassFish 3.0.1 Web 配置文件,Java JDK 1.6.0u22。 暂存:GlassFish 3.0、Java JDK 1.6.0u22。

我意识到 GlassFish 版本和版本不同,我已请求对其进行更新以匹配开发环境。因为我很难想象这是导致问题的原因,所以我想我会在这里询问是否有人有任何想法。

基于 Java 的 AMF 服务与基于 .NET 的 SOAP 服务交互。 Java 服务具有使用wsimport 从 SOAP 服务生成的代理。据我所知,尝试初始化 SOAP 代理时会发生错误。

堆栈跟踪如下:

org.granite.messaging.service.ServiceException: Could not initialize class com.sun.xml.internal.ws.spi.ProviderImpl
at org.granite.messaging.service.AbstractServiceExceptionHandler.getServiceException(AbstractServiceExceptionHandler.java:42)
at org.granite.messaging.service.DefaultServiceExceptionHandler.handle(DefaultServiceExceptionHandler.java:33)
at org.granite.messaging.service.ServiceInvoker.invoke(ServiceInvoker.java:121)
at org.granite.messaging.amf.process.AMF3RemotingMessageProcessor.process(AMF3RemotingMessageProcessor.java:56)
at org.granite.messaging.amf.process.AMF0MessageProcessor.process(AMF0MessageProcessor.java:79)
at org.granite.messaging.webapp.AMFMessageServlet.doPost(AMFMessageServlet.java:62)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:754)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1523)
[..cut..]
Caused by: java.lang.NoClassDefFoundError: Could not initialize class com.sun.xml.internal.ws.spi.ProviderImpl
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at java.lang.Class.newInstance0(Class.java:355)
at java.lang.Class.newInstance(Class.java:308)
at javax.xml.ws.spi.FactoryFinder.newInstance(FactoryFinder.java:31)
at javax.xml.ws.spi.FactoryFinder.find(FactoryFinder.java:128)
at javax.xml.ws.spi.Provider.provider(Provider.java:83)
at javax.xml.ws.Service.<init>(Service.java:56)
[..cut..]

有什么想法吗?

【问题讨论】:

    标签: jakarta-ee glassfish jax-ws


    【解决方案1】:

    解决方案是安装完整的 GlassFish Server 而不是 GlassFish Server Web Profile。尽管开发环境是使用 Web Profile 设置的,但它仍然有完整的 GlassFish(特别是 JAXB 和 JAXWS jar 文件)的残余部分。

    暂存环境很干净,只安装了 Web 配置文件,因此由于缺少依赖项而失败。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-12-23
      • 2011-05-12
      • 1970-01-01
      • 1970-01-01
      • 2023-03-31
      • 1970-01-01
      • 2012-04-07
      • 2012-03-29
      相关资源
      最近更新 更多