1

JAX-WS のデプロイ中に、Websphere 7 (Fix Pack 17) で次の問題に直面しています。私はすでにwebservices-api-2.0.1.jar/jaxws-api-2.2.11.jarWebsphereのクラスパスに設定しています。それとは別に、親クラスローダーポリシーを変更してみました[Classes loaded with application class loader first ]..助けてください..

Error Description :

00000009 http E WSSERVLET11: failed to parse runtime descriptor: java.lang.NoSuchMethodError: javax/xml/ws/WebFault.messageName()Ljava/lang/String;
java.lang.NoSuchMethodError: javax/xml/ws/WebFault.messageName()Ljava/lang/String;
at com.sun.xml.ws.model.RuntimeModeler.processExceptions(RuntimeModeler.java:1262)
at com.sun.xml.ws.model.RuntimeModeler.processDocWrappedMethod(RuntimeModeler.java:982)
at com.sun.xml.ws.model.RuntimeModeler.processMethod(RuntimeModeler.java:744)
at com.sun.xml.ws.model.RuntimeModeler.processClass(RuntimeModeler.java:504)
at com.sun.xml.ws.model.RuntimeModeler.buildRuntimeModel(RuntimeModeler.java:335)
at com.sun.xml.ws.db.DatabindingImpl.<init>(DatabindingImpl.java:100)
at com.sun.xml.ws.db.DatabindingProviderImpl.create(DatabindingProviderImpl.java:74)
at com.sun.xml.ws.db.DatabindingProviderImpl.create(DatabindingProviderImpl.java:58)
at com.sun.xml.ws.db.DatabindingFactoryImpl.createRuntime(DatabindingFactoryImpl.java:127) at com.sun.xml.ws.server.EndpointFactory.createSEIModel(EndpointFactory.java:487)
at com.sun.xml.ws.server.EndpointFactory.create(EndpointFactory.java:283)
at com.sun.xml.ws.server.EndpointFactory.createEndpoint(EndpointFactory.java:158)
at com.sun.xml.ws.api.server.WSEndpoint.create(WSEndpoint.java:577)
at com.sun.xml.ws.api.server.WSEndpoint.create(WSEndpoint.java:560)
at com.sun.xml.ws.transport.http.DeploymentDescriptorParser.parseAdapters(DeploymentDescriptorParser.java:303)
at com.sun.xml.ws.transport.http.DeploymentDescriptorParser.parse(DeploymentDescriptorParser.java:179)
at com.sun.xml.ws.transport.http.servlet.WSServletContextListener.parseAdaptersAndCreateDelegate(WSServletContextListener.java:131)
at com.sun.xml.ws.transport.http.servlet.WSServletContextListener.contextInitialized(WSServletContextListener.java:152)
at com.ibm.ws.webcontainer.webapp.WebApp.notifyServletContextCreated(WebApp.java:1707)
at com.ibm.ws.webcontainer.webapp.WebApp.commonInitializationFinish(WebApp.java:380)
at com.ibm.ws.webcontainer.webapp.WebAppImpl.initialize(WebAppImpl.java:299)
at com.ibm.ws.webcontainer.webapp.WebGroupImpl.addWebApplication(WebGroupImpl.java:100)
at com.ibm.ws.webcontainer.VirtualHostImpl.addWebApplication(VirtualHostImpl.java:166)
at com.ibm.ws.webcontainer.WSWebContainer.addWebApp(WSWebContainer.java:731)
at com.ibm.ws.webcontainer.WSWebContainer.addWebApplication(WSWebContainer.java:616)
at com.ibm.ws.webcontainer.component.WebContainerImpl.install(WebContainerImpl.java:376)
at com.ibm.ws.webcontainer.component.WebContainerImpl.start(WebContainerImpl.java:668)
at com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrImpl.java:1123)
at com.ibm.ws.runtime.component.DeployedApplicationImpl.fireDeployedObjectStart(DeployedApplicationImpl.java:1319)
at com.ibm.ws.runtime.component.DeployedModuleImpl.start(DeployedModuleImpl.java:610)
at com.ibm.ws.runtime.component.DeployedApplicationImpl.start(DeployedApplicationImpl.java:944)
at com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplication(ApplicationMgrImpl.java:726)
at com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrImpl.java:2048)
at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.start(CompositionUnitMgrImpl.java:441)
at com.ibm.ws.runtime.component.CompositionUnitImpl.start(CompositionUnitImpl.java:123)
at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.start(CompositionUnitMgrImpl.java:384)
at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.access$300(CompositionUnitMgrImpl.java:112)
at com.ibm.ws.runtime.component.CompositionUnitMgrImpl$CUInitializer.run(CompositionUnitMgrImpl.java:951)
at com.ibm.wsspi.runtime.component.WsComponentImpl$_AsynchInitializer.run(WsComponentImpl.java:349)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1604)
------------------------------------------------------------------------
4

1 に答える 1

0

WebSphere 7.x は JAX-WS 2.0 をサポートします。JAX-WS 2.2 を使用しようとしています。

最初にすべきことは、これら 2 つの JAR ファイルを WebSphere ディレクトリーから削除することです。一般に、独自のカスタム JAR ファイルを WebSphere のインストール ディレクトリに配置することはお勧めできません。WebSphere は、JAR をサーバーのランタイムに追加するための独自のメカニズムを提供します。

JAX-WS 2.0 で解決できる場合は、全体的にこれをお勧めします。WebSphere は、サポートされている仕様レベルをいじくり回す人々を大歓迎するわけではありません。その場合は、これら 2 つの JAR ファイルをシステムから完全に削除する必要があります。そうすれば、うまくいくはずです。

もしあなたが JAX-WS 2.2 を主張するなら、あなたは勇敢でなければなりません。これら 2 つの JAR ファイルを EAR に配置し、EAR のクラスロード ポリシーを PARENT_LAST に設定して、そこから作業します。

于 2014-05-22T00:28:00.270 に答える