Ошибка wsdl2java: ошибка эмиттера. Неверный адрес конечной точки в порту - PullRequest
1 голос
/ 10 ноября 2008

Я пытаюсь запустить команду wsdl2java для файла WSDL, который был передан мне из другой группы в моей компании. Я знаю, что wsdl2java работает, потому что я могу запустить примеры, но когда я пробую его на предоставленном мне wsdl, он не работает. Одно большое отличие состоит в том, что данный мне WSDL использует SSL.

Я использую Java 1.4 (проверял несколько раз) и убедился, что все правильные файлы jar находятся в моем пути к классам, jsse.jar там.

КОМАНДА: java org.apache.axis.wsdl.WSDL2Java - сторона сервера GenericWebService.wsdl

ОШИБКА:

log4j: ПРЕДУПРЕЖДЕНИЕ. Для регистратора не найдено ни одного добавителя (org.apache.axis.i18n.ProjectResourceBundle). log4j: WARN Пожалуйста, правильно инициализируйте систему log4j. ** java.io.IOException: ошибка источника. Неверный адрес конечной точки в порту AC_x0020_Generic_x0020_Web_0020_ServiceSoap в службе AC_x0020_Generic_x0020_Web_x0020_ServiceLocator: ** в org.apache.axis.wsdl.toJava.JavaServiceImplWriter.writeFileBody (JavaServiceImplWriter.ja а: 242) на org.apache.axis.wsdl.toJava.JavaWriter.generate (JavaWriter.java:127) в org.apache.axis.wsdl.toJava.JavaServiceWriter.generate (JavaServiceWriter.java:112) в org.apache.axis.wsdl.toJava.JavaGeneratorFactory $ Writers.generate (JavaGeneratorFactory.j ва: 421) на org.apache.axis.wsdl.gen.Parser.generate (Parser.java:476) в org.apache.axis.wsdl.gen.Parser.access $ 000 (Parser.java:45) в org.apache.axis.wsdl.gen.Parser $ WSDLRunnable.run (Parser.java:362) at java.lang.Thread.run (Thread.java:534)

ASDF

<wsdl:portType name="AC_x0020_Generic_x0020_Web_x0020_ServiceSoap">
  <wsdl:operation name="Provision">
    <wsdl:input message="tns:ProvisionSoapIn" />
    <wsdl:output message="tns:ProvisionSoapOut" />
  </wsdl:operation>
</wsdl:portType>

<wsdl:binding name="AC_x0020_Generic_x0020_Web_x0020_ServiceSoap" type="tns:AC_x0020_Generic_x0020_Web_x0020_ServiceSoap">
  <soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
  <wsdl:operation name="Provision">
    <soap:operation soapAction="http://xmlns.fmr.com/systems/dev/aar/2008/05/GenericWebService/Provision" style="document" />
    <wsdl:input>
      <soap:body use="literal" />
      <soap:header message="tns:ProvisionServiceProcessingDirectives" part="ServiceProcessingDirectives" use="literal" />
      <soap:header message="tns:ProvisionServiceCallContext" part="ServiceCallContext" use="literal" />
    </wsdl:input>
    <wsdl:output>
      <soap:body use="literal" />
    </wsdl:output>
  </wsdl:operation>
</wsdl:binding>


<wsdl:service name="AC_x0020_Generic_x0020_Web_x0020_Service">
  <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Generic web service definition for provisioning requests callable by AccessCENTRAL</wsdl:documentation>
  <wsdl:port name="AC_x0020_Generic_x0020_Web_x0020_ServiceSoap" binding="tns:AC_x0020_Generic_x0020_Web_x0020_ServiceSoap">
    <soap:address location="" />
  </wsdl:port>
</wsdl:service>

ОБНОВЛЕННОЕ РЕШЕНИЕ: Проблема заключалась в том, что для завершения анализатору требовалось значение в . Я добавил URL своего сервиса, и он работал.
Новые линии выглядели так:

<soap:address location="" http://localhost:8080/axis/services/AC_x0020_Generic_x0020_Web_x0020_Service" />

1 Ответ

2 голосов
/ 10 ноября 2008

Местоположение , указанное soap: address , является пустым. Это должен быть URI службы SOAP. См мыло: адрес .

Глядя на soapAction, http://xmlns.fmr.com/systems/dev/aar/2008/05/GenericWebService может быть правильным значением для местоположения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...