Como documentar um wsdl? Já vi caso onde o wsdl possui tags com informações sobre tipos ou métodos. Como fazer isso desenvolvendo um webservice "implementation first"?
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Como documentar um wsdl? Já vi caso onde o wsdl possui tags com informações sobre tipos ou métodos. Como fazer isso desenvolvendo um webservice "implementation first"?
Olá Stevie,
Existem algumas ferramentas que ajudam a gerar documentação de WSDLs.
são exemplos de ferramentas disponíveis.
Todas elas analisam seu WSDL (gerado anterior ou posteriormente à implementação), levando em conta os tipos de informação declarados que o serviço usará, as mensagens que serão enviadas e recebidas, identificação dos serviços (etc.), e, cada uma com sua particularidade, gera um documento HTML de mais fácil compreensão do que o WSDL em si.
Dê uma olhada nos links acima e veja se alguma dessas ferramentas te ajuda. Caso as ferramentas não ajudem no caso, escreva novamente aqui.
Abraço
Rafael, gostei muito das ferramentas que você sugeriu, principalmente a WSDL2HTML que ainda não tinha visto.
Agradeço pelo seu tempo em responder a pergunta, mas acho que não me expressei muito bem. Não era muito bem isso que eu estava procurando.
Nesse link é possível ver que os comentários colocados em um WSDL quando importado pelo wsimport viram javadocs. Eu gostaria de saber se há alguma forma de fazer o caminho contrário. Por exemplo, na implementação abaixo:
/**
* Exemplo de webservice de uma calculadora.
*/
@WebService
public class CalculatoraWs {
/**
* Efetua a soma de dois números inteiros.
*
* @param valor1 Valor do primeiro número inteiro
* @param valor2 Valor do segundo número inteiro
* @return A soma dos valores inteiros passados como parametro
*/
@WebMethod
@RequestWrapper(localName = "parametrosSoma")
@WebResult(name = "soma")
public int soma(@WebParam(name = "valor1") int valor1, @WebParam(name = "valor2") int valor2) {
return valor1 + valor2;
}
}
Quando eu publicasse o web service, o WSDL ficasse dessa forma:
<service name="CalculatoraWsService">
<documentation>Exemplo de webservice de uma calculadora.</documentation>
<port name="CalculatoraWsPort" binding="tns:CalculatoraWsPortBinding">
<soap:address location="http://localhost:8090/ibgews"/>
</port>
</service>
Isso é possível ou só quando o desenvolvimento do web service for contract-first?
Olá Stevie,
Nunca vi nenhuma ferramenta que faz isso. Pesquisando, também não encontrei muita coisa nesse sentido. Mas achei uma referência no site da JetBrains sobre geração de WSDL a partir de código Java no IntelliJ IDEA.
https://www.jetbrains.com/help/idea/2016.3/generating-wsdl-document-from-java-code.html
Não menciona específicamente geração de documentação no WSDL a partir de Javadoc, mas vale a pena dar uma investigada se atende o que precisa.
Rafael,
Fiz umas pesquisas e não achei nada também. Por isso questionei aqui no forum. De qualquer forma, muito obrigado!
Abraço