gravatar

Problema al publicar web service con axis

Si al realizar la consulta http://www.miserver.com:80/axis/services/UserService?wsdl el despliegue del servicio muestra otra direccion o una IP como lo siguiente:

<wsdl:service name="UserService">
  <wsdl:port name="UserServiceHttpSoap11Endpoint" binding="ns:UserServiceSoap11Binding">
       <soap:address location="http://200.200.200.200:80/axis/services/UserService.UserServiceHttpSoap11Endpoint/"/>
  </wsdl:port>
  <wsdl:port name="UserServiceHttpSoap12Endpoint" binding="ns:UserServiceSoap12Binding">
       <soap12:address location="http://200.200.200.200:80/axis/services/UserService.UserServiceHttpSoap12Endpoint/"/>
  </wsdl:port>
  <wsdl:port name="UserServiceHttpEndpoint" binding="ns:UserServiceHttpBinding">
       <http:address location="http://200.200.200.200:80/axis/services/UserService.UserServiceHttpEndpoint/"/>
  </wsdl:port>
</wsdl:service>

Entonces debe corregir el archivo WEB-INF\conf\axis2.xml que se encuentra en el war desplegado.

En axis2.xml busque la siguiente línea y coloque el server en el parametro hostname.

    <!-- Following parameter will set the host name for the epr-->
    <parameter name="hostname" locked="true">www.miserver.com</parameter>

Con ello el nuevo despliegue será el correcto


<wsdl:service name="UserService">
  <wsdl:port name="UserServiceHttpSoap11Endpoint" binding="ns:UserServiceSoap11Binding">
       <soap:address location="http://www.miserver.com:80/axis/services/UserService.UserServiceHttpSoap11Endpoint/"/>
  </wsdl:port>
  <wsdl:port name="UserServiceHttpSoap12Endpoint" binding="ns:UserServiceSoap12Binding">
       <soap12:address location="http://www.miserver.com:80/axis/services/UserService.UserServiceHttpSoap12Endpoint/"/>
  </wsdl:port>
  <wsdl:port name="UserServiceHttpEndpoint" binding="ns:UserServiceHttpBinding">
       <http:address location="http://www.miserver.com:80/axis/services/UserService.UserServiceHttpEndpoint/"/>
  </wsdl:port>
</wsdl:service>