2

Java EE システムの Java バージョンを 1.6 から 1.7 にアップグレード中です。Spring Web サービス (サーバー側で 1.5.8、クライアント側で 2.0.4) を広く使用しています。

初期テスト (java7 を使用) では、以下のような Web サービス呼び出しで断続的な問題が発生しています (最近アップグレードされたクライアントとサーバーの両方で GlassFish 3.1.2.2 を使用しています)。

  • 失敗 1 (サーバー側のログは以下)

サーバー側での断続的な障害 (サーバー springws-1.5.8 およびクライアント spring-ws-2.0.4 - 両方で Java を 1.6 から 1.7 にアップグレード)

java.lang.IllegalStateException: Could not find SAAJ on the classpath
at org.springframework.ws.soap.saaj.SaajSoapMessage.getImplementation(SaajSoapMessage.java:261)
at org.springframework.ws.soap.saaj.SaajSoapMessage.<init>(SaajSoapMessage.java:84)
at org.springframework.ws.soap.saaj.SaajSoapMessage.<init>(SaajSoapMessage.java:70)
at org.springframework.ws.soap.saaj.SaajSoapMessageFactory.createWebServiceMessage(SaajSoapMessageFactory.java:168)
at org.springframework.ws.transport.AbstractWebServiceConnection.receive(AbstractWebServiceConnection.java:86)
at org.springframework.ws.transport.support.WebServiceMessageReceiverObjectSupport.handleConnection(WebServiceMessageReceiverObjectSupport.java:86)
at org.springframework.ws.transport.http.WebServiceMessageReceiverHandlerAdapter.handle(WebServiceMessageReceiverHandlerAdapter.java:57)

私の分析によると、上記の問題は、2.0.4 で修正されたspring ws バージョン 1.5.8 - https://jira.springsource.org/browse/SWS-750の既知の問題が原因であると思われます。しかし、バージョン アップグレードを行う前に、Spring ws が正式に Java7 をサポートしていることを確認したかったのです。何か案が?とにかく、クライアント側の Java バージョンを 1.6 に戻すと、この問題は解決されるようです。これは、jdk7 内にパッケージ化された xerces/xalan のバージョンに関連していると思われます。

  • 失敗 2 (以下のサーバー側のログ)

サーバーが springws-2.0.4 でクライアントが spring-ws-1.5.8 である別のサブシステムでも同様のエラーが発生しました - 両方で Java が 1.6 から 1.7 にアップグレードされました。

org.springframework.ws.transport.http.MessageDispatcherServlet: Could not complete request
org.springframework.ws.soap.saaj.SaajSoapEnvelopeException: Could not access envelope: Unable to create envelope from given source: ; nested exception is com.sun.xml.messaging.saaj.SOAPExceptionImpl: Unable to create envelope from given source:
at org.springframework.ws.soap.saaj.SaajSoapMessage.getSaajVersion(SaajSoapMessage.java:260)
at org.springframework.ws.soap.saaj.SaajSoapMessage.getImplementation(SaajSoapMessage.java:342)
at org.springframework.ws.soap.saaj.SaajSoapMessage.<init>(SaajSoapMessage.java:117)
at org.springframework.ws.soap.saaj.SaajSoapMessageFactory.createWebServiceMessage(SaajSoapMessageFactory.java:184)
at org.springframework.ws.soap.saaj.SaajSoapMessageFactory.createWebServiceMessage(SaajSoapMessageFactory.java:58)
at org.springframework.ws.transport.AbstractWebServiceConnection.receive(AbstractWebServiceConnection.java:90)

どんな助けでも大歓迎です。

4

2 に答える 2

0

WebLogicにデプロイされた本番システムでJava 8とともにSpring-WS 2.2.3を使用していますが、問題はありません。したがって、Java 7 は十分にサポートされていると言えます。

于 2016-01-02T09:34:31.893 に答える
0

Tomcat7、JDK7、および Spring-WS 2.1.2 を使用しており、動作します。

幸運を!

于 2013-03-07T10:30:01.373 に答える