2011-01-16 1 views
3

У меня был сторонний wsdl и дескриптор развертывания и т. Д. Для пользовательского шифрования для веб-службы Axis. Я использовал WSDL2Java для генерации классов java, и все это работает очень хорошо ... вплоть до точки. Когда я вызываю методы на расстоянии нескольких минут, они работают правильно и возвращают достоверные данные. но когда я вызываю их (как мне нужно) в быстрой последовательности, я получаю простую старую ошибку сервера (см. ниже).Axis WSDL2Java сгенерированный код: Ошибка сервера при выполнении запросов в быстрой последовательности

Если я ouptut в axisFault коды неисправностей и детали я получаю следующее: -

класс org.apache.axis.AxisFault Код ошибки = {http://xml.apache.org/axis/ } Сервер Причина ошибки = Ошибка сервера Ошибка String = Ошибка сервера детали ошибки = [Lorg.w3c.dom.Element; @ 2d4ba772 [Ошибка сервера в org.apache.axis.handlers.soap.SOAPService.invoke (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) в javax.servlet.http.HttpServlet.service (HttpServlet.java:717) в org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:290) в org.apache.catalina. core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:206) на org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter (ReplyHeaderFilter.java:96) в org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain. java: 235) at org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java : 206) на org.apache.catalina.core.StandardWrapperValve.invoke (StandardWrapperValve.java:230) на org.apache.catalina.core.StandardContextValve.invoke (StandardContextValve.java:175) в org.jboss.web .tomcat.security.SecurityAssociationValve.invoke (SecurityAssociationValve.java:182) на org.jboss.web.tomcat.security.JaccContextValve.invoke (JaccContextValve.java:84) на org.apache.catalina.core.StandardHostValve.invoke (StandardHostValve.java:128) на org.apache.catalina.valves.ErrorReportValve.invoke (ErrorReportValve.java:104) на org.apache.catalina.core.StandardEngineValve.invoke (StandardEngineValve.java:109) в орг .apache.catalina.connector.CoyoteAdapter.service (CoyoteAdapter.java:241) на или g.apache.coyote.http11.Http11Processor.process (Http11Processor.java:844) at org.apache.coyote.http11.Http11Protocol $ Http11ConnectionHandler.process (Http11Protocol.java:580) at org.apache.tomcat.util. net.JIoEndpoint $ Worker.run (JIoEndpoint.java:447) в java.lang.Thread.run (Thread.java:595) , 3rdpartyhostname

Может кто-нибудь, пожалуйста, помогите? Я нахожусь на своем пути. Может ли это быть проблемой времени/кэширования? Возможно, одно из значений кеша в методе createCall(), создаваемом инструментом WSDL2JAVA?

+0

Проверьте правильность имен элементов XML в сгенерированных классах Java. Иногда Axis генерирует неправильные имена элементов, т. Е. «SomeNode>» или «

+0

ли вы пытались использовать netbeans для генерации Java-классов из WSDL-файла? возможно, что-то с программой, которую вы используете – AhmadAssaf

+0

Спасибо - я проверю xml и т. д. – rainyday

ответ

0

Вот как я произвожу клиент оси с муравьиным сценарием сборки:

<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:

Я надеюсь, что это поможет пролить свет или другие идеи по этому вопросу.

Возможно, вы также захотите проверить, работает ли работа, которую вы развернули. Возможно, это не проблема создания клиента. В конце концов, это говорит об ошибке сервера. Проверьте лог-файлы на сервере для стека, возможно, есть подсказка.

Смежные вопросы