Pergunta

Estou criando um Web Service Axis2 com Eclipse e as ferramentas de desenvolvimento WSO2.Exporto o Web Service como um arquivo ".aar" e o instalo no WSO2 Application Server.

O WSDL é gerado automaticamente e o nome do Porttype é sempre [ServiceName]PortType.

Existe uma maneira de alterar o PortType durante o desenvolvimento do WS para um nome personalizado ou depois de implantá-lo?Eu sei que posso definir o PortType de um WebService Jax-WS com alguns parâmetros, mas Jax-WS não é adequado para meu caso de uso.

Obrigado por suas respostas.

Foi útil?

Solução

Sim.

É possível substituir a convenção de nomenclatura de tipo de porta padrão associando um arquivo WSDL aos nomes de porta personalizados.

  1. Implemente seu serviço Axis2 com Developer Studio.

  2. Quando terminar a implementação do serviço, clique com o botão direito no projeto de serviço Axis2 e selecione "Gerar WSDL".

    Em seguida, ele irá gerar o arquivo WSDL no src/principal/recursos pasta.

  3. Então você precisa mover (recortar e colar) o arquivo WSDL gerado para o src/principal/recursos/META-INF pasta onde seu arquivo services.xml existe.

  4. Em seguida, será possível modificar e atualizar os elementos portType do arquivo WSDL.

  5. Depois de concluir a modificação no arquivo WSDL, você precisa abrir o arquivo services.xml no src/principal/recursos/META-INF local e atualize o arquivo services.xml com o seguinte parâmetro.

<service ...>
    <parameter name="useOriginalwsdl">true</parameter>
    .
    .
    .
</service>

Agora você pode exportar o serviço como um arquivo Axis2 (arquivo aar) usando o Developer Studio e implantar o serviço Axis2 gerado no WSO2 App Server ou qualquer outro contêiner de serviço da Web adequado/compatível.

Espero que isto ajude!!

Obrigado e cumprimentos,

Harshana

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top