2011-01-16 17 views
3

Axis Webサービスのカスタム暗号化のためのサードパーティのwsdlとデプロイメント記述子などが提供されています。私は、Javaクラスを生成するためにWSDL2Javaを使用し、それはすべてうまくいきます...ポイントまで。数分間隔でメソッドを呼び出すと、正しく動作し、有効なデータが返されます。しかし私が(私が必要とするように)それらをすぐに連続して呼び出すと、私は平凡な古いサーバーエラー(下記)を取得します。Axis WSDL2Java生成コード:リクエストを素早く実行する際のサーバエラー

私は、次の取得axisFaultの故障コードと詳細をouptut場合: -

クラスorg.apache.axis.AxisFault フォルトコード= {http://xml.apache.org/axis/ =サーバーエラー 障害ストリング=サーバーエラー}サーバ 障害原因 断層詳細= [Lorg.w3c.dom.Element; org.apache.axis.handlers.soap.SOAPService.invokeで2d4ba772 [サーバーエラー (SOAPService @ .java:473) at org.apache.axis.server.AxisServer.invoke(AxisServer.java:281) at org.apache.axis.transpor t.http.AxisServlet.doPost(AxisServlet.java:699) at javax.servlet.http.HttpServlet.service(HttpServlet.java:637) at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase。 java:327) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina。 (ApplicationFilterChain.java:206) 、org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain。 java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java :206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) at org.jboss.web (org.apache.catalina.core.StandardHostValve.invoke) (StandardHostValve.java:128) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org .apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241) または(Http11Processor.java:844) (org.apache.coyote.http11.Http11Protocol) java.lang.Thread.run(Thread.java:595)でnet.JIoEndpoint $ Worker.run(JIoEndpoint.java:447) 、3rdpartyhostname

は誰でも助けてくださいことはできますか?私は私の知恵の終わりです。タイミング/キャッシングの問題かもしれませんか?おそらく、WSDL2JAVAツールが作成するcreateCall()メソッドのキャッシュ値の1つですか?

+0

生成されたJavaクラスでXML要素の名前が正しいかどうかを確認してください。場合によっては、Axisは「someNode」ではなく「someNode>」や「someNode」といった不適切な要素名を生成することがあります。 –

+0

あなたはWSDLファイルからJavaクラスを生成するためにnetbeansを使用しようとしましたか?多分あなたが使用しているプログラムのあるもの – AhmadAssaf

+0

ありがとう - 私はxml等をチェックしなければならない – rainyday

答えて

0

は、ここで私はAntビルドスクリプトを軸クライアントを生成する方法は次のとおりです。

<java classname="org.apache.axis.wsdl.WSDL2Java" fork="true" failonerror="true" classpathref="classpath.path"> 
    <arg value="-v"/> 
    <arg value="-o"/> 
    <arg file="tmp/src"/> 
    <arg value="-p"/> 
    <arg value="com.your.package"/> 
    <arg value="${server.url}/${servicename}?wsdl"/> 
</java> 

たぶん、あなたは、パラメータの奇妙な組み合わせを使用していますか?それらをチェックしましたか?上記は私が覚えている限り1.4軸です。

2.0または1.4を使用しているバージョンは何ですか?私は2.0のためにこの権利を得るのにかなり時間がかかっていたことを知っています。ここでは、MVNで動作する方法は次のとおりです。

<plugin> 
    <groupId>org.codehaus.mojo</groupId> 
    <artifactId>axistools-maven-plugin</artifactId> 
    <version>1.3</version> 
    <configuration> 
     <outputDirectory>${project.build.directory}/generated/main/java</outputDirectory> 
     <urls> 
      <url>http://yourserver:yourport/YourService?wsdl</url> 
     </urls> 
     <packageSpace>com.your.package</packageSpace> 
     <serverSide>false</serverSide> 
     <subPackageByFileName>false</subPackageByFileName> 
     <wrapArrays>false</wrapArrays> 
    </configuration> 
    <executions> 
     <execution> 
      <goals> 
       <goal>wsdl2java</goal> 
      </goals> 
     </execution> 
    </executions> 
</plugin> 

私は、これは問題にいくつかの光や、さらにアイデアを当てるのに役立ちます願っています。

展開したものが正しく動作しているかどうかを確認することもできます。これは、クライアント世代の問題ではないかもしれません。結局それはサーバーのエラーと言います。 stacktracesのためにサーバー上のログファイルをチェックして、そこにヒントがあるかもしれません。

関連する問題