ОСЬ1: Как персонализировать «связующее имя» - PullRequest
1 голос
/ 01 июня 2011

У меня есть следующие сгенерированные веб-сервисы с инструментами axis1:

  <wsdl:binding name="WSExamplePortSoapBinding" type="impl:WSExamplePortType">
  <wsdlsoap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http" />
  <wsdl:operation name="TestMethod">
  <wsdlsoap:operation soapAction="http://localhost/Example/wsdl/Example?wsdl#TestMethod" />
  <wsdl:input name="TestMethodRequest">
  <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://localhost/Example/wsdl/Example?wsdl" use="encoded" />
  </wsdl:input>
  <wsdl:output name="TestMethodResponse">
  <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://localhost/Example/wsdl/Example" use="encoded" />
  </wsdl:output>
  </wsdl:operation>
  </wsdl:binding>
  <wsdl:service name="WSExample">
  <wsdl:port binding="impl:WSExamplePortSoapBinding" name="WSExamplePort">
  <wsdlsoap:address location="http://localhost:8082/Example/wsdl/Example" />
  </wsdl:port>
  </wsdl:service>

И клиент хочет, чтобы мы изменили строку:

<wsdl:binding name="WSExamplePortSoapBinding" type="impl:WSExamplePortType">

для:

<binding name="WSExampleBinding" type="impl:WSExamplePortType">

Как мы можем изменить это слово (WSExamplePortSoapBinding на WSExampleBinding).

Мы попытались выполнить поиск по исходному коду оси, но мы не нашли, сгенерировано ли это.

Спасибо

1 Ответ

0 голосов
/ 02 июня 2011

Я решил эту проблему следующим образом:

  1. В файле server-config.wsdd:

    <parameter name="wsdlServicePort" value="ExamplePort"/>
    

    Я должен заменить на:

    <parameter name="wsdlServicePort" value="Example"/>
    
  2. Затем я должен изменить исходный код axis-1.4 следующим образом:

    setBindingName(getServicePortName() + "SoapBinding");
    

    Я должен заменить на:

    setBindingName(getServicePortName() + "Binding");
    

Затем я должен создать JAR с муравьем и скопировать новый JAR в исходный код библиотеки.

...