top of page
Search
circupete1974

JAX-WS: como baixar e usar a biblioteca Java para desenvolver serviços web baseados em SOAP



JAX-WS 4.0.0: um guia para baixar, instalar e usar




Se você está procurando uma maneira de criar e consumir serviços da Web SOAP em Java, deve ter ouvido falar de JAX-WS, a API Java para serviços da Web XML. Neste artigo, forneceremos uma visão geral do que é JAX-WS, por que você deve usar a versão mais recente 4.0.0 e como fazer o download, instalá-la e usá-la.


O que é JAX-WS?




JAX-WS é uma API padronizada para criar e consumir serviços da web SOAP (Simple Object Access Protocol) em Java. SOAP é um protocolo baseado em XML para troca de dados estruturados em uma rede, usando vários protocolos de transporte, como HTTP e SMTP.




jaxws-rt 4.0.0 download



JAX-WS faz parte da plataforma Jakarta EE, anteriormente conhecida como Java EE ou Java Platform, Enterprise Edition. Ele fornece uma estrutura que simplifica o desenvolvimento de serviços e clientes da Web, ocultando os detalhes de baixo nível de mensagens SOAP e processamento XML.


Recursos JAX-WS




Algumas das principais características do JAX-WS são:


  • Ele oferece suporte a abordagens de cima para baixo (primeiro contrato) e de baixo para cima (contrato por último) para o desenvolvimento de serviços da Web.



  • Ele usa anotações para definir endpoints e clientes de serviço da web, reduzindo a necessidade de escrever arquivos de configuração XML.



  • Ele oferece suporte a vários padrões de serviços da Web, como WS-Addressing, WS-Policy, WS-Security, MTOM e muito mais.



  • Ele fornece ferramentas para gerar documentos WSDL (Web Services Description Language), classes Java e stubs uns dos outros.



  • Ele se integra com JAXB (Java Architecture for XML Binding), a API padrão para mapear objetos Java para XML e vice-versa.



  • Ele permite o uso de vinculações de dados personalizados, manipuladores, provedores, despachantes e outras extensões.



Versões JAX-WS




A primeira versão do JAX-WS foi lançada em 2005 como parte do Java SE 6. Desde então, várias versões foram lançadas, cada uma adicionando novos recursos e melhorias.


A versão mais recente do JAX-WS é 4.0.0, lançada em junho de 2021 como parte do Jakarta EE 9.1.


Por que JAX-WS 4.0.0?




Se você está se perguntando por que deveria usar JAX-WS 4.0.0 em vez de versões anteriores, aqui estão alguns motivos:


Recursos do JAX-WS 4.0.0




O JAX-WS 4.0.0 apresenta alguns novos recursos que o tornam mais compatível com o Jakarta EE 9.1 e mais conveniente de usar:


  • Ele suporta a especificação Jakarta XML Web Services 3.1, que define a API para criar e consumir serviços da Web SOAP em Jakarta EE.



  • Ele usa o namespace Jakarta em vez do namespace javax para todas as classes e pacotes, seguindo a mudança do namespace de Java EE para Jakarta EE.



  • Ele suporta a especificação Jakarta RESTful Web Services 3.1, que define a API para criar e consumir serviços da Web RESTful em Jakarta EE.



  • Ele oferece suporte à especificação Jakarta SOAP with Attachments 2.1, que define a API para lidar com mensagens SOAP com anexos em Jakarta EE.



  • Ele suporta a especificação Jakarta Web Services Metadata 3.1, que define as anotações para terminais e clientes de serviço da web em Jakarta EE.



  • Ele suporta a especificação Jakarta XML Binding 3.1, que define a API para mapear objetos Java para XML e vice-versa em Jakarta EE.



  • Ele suporta a especificação Jakarta Enterprise Web Services 2.1, que define os requisitos para serviços da web em Jakarta EE.



Comparação JAX-WS 4.0.0 com Versões Anteriores




JAX-WS 4.0.0 é principalmente compatível com versões anteriores, exceto por algumas mudanças importantes que são necessárias para a mudança de namespace de Java EE para Jakarta EE.


Algumas das principais diferenças entre o JAX-WS 4.0.0 e as versões anteriores são:


  • Os nomes dos pacotes foram alterados de javax.xml.ws para jakarta.xml.ws e de javax.jws para jakarta.jws.



  • As coordenadas do Maven mudaram de com.sun.xml.ws:jaxws-rt para org.glassfish.metro:jaxws-rt.



  • Os documentos WSDL gerados pelo JAX-WS 4.0.0 usam o namespace jakarta em vez do namespace javax para os elementos do esquema.



  • As ferramentas JAX-WS mudaram seus nomes de wsgen, wsimport, schemagen e xjc para jaxws-wsgen, jaxws-wsimport, jaxws-schemagen e jaxws-xjc.



Benefícios e Desvantagens do JAX-WS 4.0.0




O JAX-WS 4.0.0 tem alguns benefícios e desvantagens que você deve considerar antes de usá-lo:


  • Os benefícios do JAX-WS 4.0.0 são:




  • Ele está atualizado com as especificações e padrões mais recentes para serviços da Web em Jacarta EE.



  • É compatível com outros componentes e tecnologias Jakarta EE, como CDI, EJB, JPA e muito mais.



  • É suportado por vários servidores e estruturas de aplicativos, como GlassFish, Payara, WildFly, Spring Boot e muito mais.



  • É fácil de usar e fornece uma abstração de alto nível para desenvolvimento e consumo de serviços da Web.




  • As desvantagens do JAX-WS 4.0.0 são:




  • Isso requer algumas alterações no código e nos arquivos de configuração se você migrar de versões anteriores do JAX-WS.



  • Pode não ser compatível com alguns serviços da Web legados ou clientes que usam o antigo namespace javax ou versões mais antigas de SOAP ou WSDL.



  • Ele pode não oferecer suporte a alguns recursos avançados ou personalizações que estão disponíveis em outras estruturas ou bibliotecas de serviços da Web.




Alternativas JAX-WS 4.0.0




JAX-WS 4.0.0 não é a única opção para criar e consumir serviços da Web SOAP em Java. Existem outras estruturas e bibliotecas que oferecem recursos e capacidades semelhantes ou diferentes.


Algumas das alternativas populares para JAX-WS 4.0.0 são:


  • Apache CXF: uma estrutura de software livre que oferece suporte a serviços da Web SOAP e RESTful, bem como a vários padrões e protocolos de serviços da Web. Ele também fornece integração com Spring, Hibernate, JAX-RS e muito mais.



  • Apache Axis2: uma estrutura de software livre que oferece suporte a serviços da Web SOAP e RESTful, bem como a vários padrões e protocolos de serviços da Web. Ele também fornece ferramentas para gerar e implantar serviços e clientes da Web.



  • Spring Web Services: um módulo da estrutura Spring que oferece suporte ao desenvolvimento de primeiro contrato de serviços da Web SOAP, usando esquemas XML e documentos WSDL. Ele também fornece integração com Spring Boot, Spring Security, Spring Data e muito mais.



  • JAX-RPC: uma API obsoleta para criar e consumir serviços da web SOAP em Java, que foi substituída por JAX-WS. Ainda é suportado por alguns servidores de aplicativos e estruturas, mas não é recomendado para novos desenvolvimentos.



Como baixar o JAX-WS 4.0.0?




Se quiser usar o JAX-WS 4.0.0 em seu projeto, você precisa fazer o download da biblioteca de tempo de execução JAX-WS, que contém as classes e os recursos necessários para criar e consumir serviços da web SOAP com JAX-WS.


Há duas maneiras de fazer download do JAX-WS 4.0.0:


Baixando do repositório Maven




Se estiver usando o Maven como sua ferramenta de construção, você pode adicionar a seguinte dependência ao seu arquivo pom.xml:


<dependency> <groupId>org.glassfish.metro</groupId> <artifactId>jaxws-rt</artifactId> <version>4.0.0</version> </dependency>


Isso baixará automaticamente a biblioteca de tempo de execução JAX-WS do repositório central do Maven e a adicionará ao classpath do seu projeto.


Baixando do GitHub




Se você não estiver usando o Maven, pode baixar a biblioteca de tempo de execução JAX-WS do repositório GitHub do projeto:


  • Vá para



  • Faça download do arquivo jaxws-rt-4.0.0.jar na seção Ativos.



  • Adicione o arquivo jar ao classpath do seu projeto.



Como instalar o JAX-WS 4.0.0?




Depois de baixar a biblioteca de tempo de execução JAX-WS, você precisa instalá-la em seu sistema para poder usá-la em seus ambientes de desenvolvimento e implementação.


O processo de instalação pode variar dependendo do seu sistema operacional e servidor de aplicativos, mas aqui estão algumas etapas gerais que você pode seguir:


Instalando no Windows




Para instalar o JAX-WS 4.0.0 no Windows, você pode fazer o seguinte:


  • Crie uma pasta chamada jaxws-4.0.0 em seu local preferido, como C:\Arquivos de Programas.



  • Copie o arquivo jaxws-rt-4.0.0.jar para a pasta jaxws-4.0.0.



  • Inclua a pasta jaxws-4.0.0 na variável de ambiente PATH do sistema para poder acessar as ferramentas JAX-WS a partir de qualquer prompt de comando.



  • Inclua o arquivo jaxws-rt-4.0.0.jar em seu caminho de classe do servidor de aplicativos para poder implementar e executar serviços da web e clientes com JAX-WS.



Instalando no Linux




Para instalar o JAX-WS 4.0.0 no Linux, você pode fazer o seguinte:


  • Crie uma pasta chamada jaxws-4.0.0 no local de sua preferência, como /opt.



  • Copie o arquivo jaxws-rt-4.0.0.jar para a pasta jaxws-4.0.0.



  • Adicione a pasta jaxws-4.0.0 à variável de ambiente PATH do sistema para poder acessar as ferramentas JAX-WS de qualquer terminal.



  • Inclua o arquivo jaxws-rt-4.0.0.jar em seu caminho de classe do servidor de aplicativos para poder implementar e executar serviços da web e clientes com JAX-WS.



Instalando no Mac OS




Para instalar o JAX-WS 4.0.0 no Mac OS, você pode fazer o seguinte:


  • Crie uma pasta chamada jaxws-4.0.0 no local de sua preferência, como /Applications.



  • Copie o arquivo jaxws-rt-4.0.0.jar para a pasta jaxws-4.0.0.



  • Adicione a pasta jaxws-4.0.0 à variável de ambiente PATH do sistema para poder acessar as ferramentas JAX-WS de qualquer terminal.



  • Inclua o arquivo jaxws-rt-4.0.0.jar em seu caminho de classe do servidor de aplicativos para poder implementar e executar serviços da web e clientes com JAX-WS.



Como usar o JAX-WS 4.0.0?




Depois de instalar o JAX-WS 4.0.0 em seu sistema, você pode começar a usá-lo para criar e consumir serviços da Web SOAP em Java.


Há três etapas principais para usar o JAX-WS 4.0.0:


  • Criando um serviço da web SOAP com JAX-WS 4.0.0



  • Consumindo um serviço da web SOAP com JAX-WS 4.0.0



  • Usando ferramentas JAX-WS com JAX-WS 4.0.0



Criando um serviço da Web SOAP com JAX-WS 4.0.0




Para criar um serviço da web SOAP com JAX-WS 4.0.0, você precisa fazer o seguinte:


  • Crie uma classe Java que implemente a lógica de negócios de seu serviço da web.



  • Anote a classe com @jakarta.jws.WebService para indicar que é um terminal de serviço da web.



  • Anote os métodos que deseja expor como operações de serviço da web com @jakarta.jws.WebMethod.



  • Opcionalmente, você pode customizar o nome do serviço da web, namespace, nome da porta e outras propriedades usando os atributos de anotação.



  • Compile a classe e gere o documento WSDL usando a ferramenta jaxws-wsgen.



  • Implemente a classe e o documento WSDL em seu servidor de aplicativos.



Por exemplo, aqui está uma classe de serviço web simples que calcula a soma de dois números:


@jakarta.jws.WebService(name = "CalculatorService", targetNamespace = " public class Calculator @jakarta.jws.WebMethod(operationName = "add") public int add(int a, int b) return a + b;


Consumindo um SOAP Web Service com JAX-WS 4.0.0




Para consumir um serviço da web SOAP com JAX-WS 4.0.0, você precisa fazer o seguinte:


  • Obtenha o documento WSDL do serviço da web que você deseja consumir.



  • Gere as classes e stubs Java a partir do documento WSDL usando a ferramenta jaxws-wsimport.



  • Crie uma classe Java que atue como um cliente de serviço da web.



  • Anote a classe com @jakarta.xml.ws.WebServiceClient para indicar que é um cliente de serviço da web.



  • Anote um campo ou um método com @jakarta.xml.ws.WebServiceRef para injetar uma referência ao serviço da web.



  • Use a referência injetada para invocar as operações de serviço da web.



  • Compile e execute a classe cliente.



Por exemplo, aqui está um cliente de serviço web simples que consome o serviço web Calculadora:


@jakarta.xml.ws.WebServiceClient(name = "CalculatorClient") public class CalculatorClient @jakarta.xml.ws.WebServiceRef(wsdlLocation = " private CalculatorService calculatorService; public int add(int a, int b) Calculadora calculadora = calculatorService.getCalculatorPort(); return calculadora.add(a, b); public static void main(String[] args) CalculatorClient client = new CalculatorClient(); System.out.println("A soma de 2 e 3 é " + client.add(2, 3)); Usando ferramentas JAX-WS com JAX-WS 4.0.0




O JAX-WS 4.0.0 fornece um conjunto de ferramentas que podem ajudá-lo no desenvolvimento e teste de serviços e clientes da Web. Essas ferramentas são:


  • jaxws-wsgen: uma ferramenta que gera documentos WSDL a partir de classes anotadas de serviço da Web.



  • jaxws-wsimport: uma ferramenta que gera classes e stubs Java a partir de documentos WSDL.



  • jaxws-schemagen: uma ferramenta que gera esquemas XML a partir de classes Java anotadas.



  • jaxws-xjc: Uma ferramenta que gera classes Java a partir de esquemas XML.



  • jaxws-wsmonitor: Uma ferramenta que monitora e exibe as mensagens SOAP trocadas entre serviços da Web e clientes.



Para usar essas ferramentas, você precisa invocá-las na linha de comando, passando as opções e argumentos apropriados. Por exemplo, para gerar um documento WSDL a partir de uma classe de serviço da web, você pode usar o seguinte comando:


jaxws-wsgen -cp . -d saída -wsdl Calculadora


Este comando irá gerar um documento WSDL chamado CalculatorService.wsdl na pasta de saída, usando a classe Calculadora no classpath atual.


Você pode encontrar mais informações sobre essas ferramentas e suas opções no .


Conclusão




Neste artigo, aprendemos o que é JAX-WS, por que você deve usar a versão 4.0.0 mais recente e como fazer o download, instalá-la e usá-la. Também vimos alguns exemplos de criação e consumo de serviços da Web SOAP com JAX-WS 4.0.0 e uso de ferramentas JAX-WS para nos auxiliar.


JAX-WS 4.0.0 é uma API poderosa e fácil de usar para desenvolver e implementar serviços da Web SOAP em Java. É compatível com Jakarta EE 9.1 e oferece suporte a vários padrões e protocolos de serviços da Web. Ele também fornece uma abstração de alto nível que oculta os detalhes de baixo nível de mensagens SOAP e processamento XML.


Se você está procurando uma maneira de criar e consumir serviços da Web SOAP em Java, definitivamente deve experimentar o JAX-WS 4.0.0.


perguntas frequentes




Aqui estão algumas perguntas frequentes sobre JAX-WS 4.0.0:


  • Qual é a diferença entre JAX-WS e JAX-RS?



JAX-WS e JAX-RS são APIs para criar e consumir serviços da Web em Java, mas usam protocolos e formatos diferentes. JAX-WS é para serviços da Web SOAP, que usam XML como formato de dados e SOAP como protocolo de mensagem. JAX-RS é para serviços da Web RESTful, que usam vários formatos de dados, como JSON, XML ou texto simples, e HTTP como protocolo de mensagem.


  • Como posso migrar de JAX-WS 2.x ou 3.x para JAX-WS 4.0.0?



Para migrar de JAX-WS 2.x ou 3.x para JAX-WS 4.0.0, você precisa fazer algumas alterações em seu código e arquivos de configuração, como:


  • Substitua os pacotes javax.xml.ws e javax.jws pelos pacotes jakarta.xml.ws e jakarta.jws.



  • Substitua a dependência com.sun.xml.ws:jaxws-rt pela dependência org.glassfish.metro:jaxws-rt.



  • Gere novamente os documentos WSDL, classes Java e stubs usando as ferramentas jaxws-wsgen e jaxws-wsimport.



  • Atualize o caminho de classe do servidor de aplicativos para incluir o arquivo jaxws-rt-4.0.0.jar.



  • Como posso testar meus serviços da web e clientes com JAX-WS 4.0.0?



Para testar seus serviços da Web e clientes com JAX-WS 4.0.0, você pode usar várias ferramentas e estruturas, como:


  • A ferramenta jaxws-wsmonitor, que permite monitorar e exibir as mensagens SOAP trocadas entre serviços da Web e clientes.



  • A ferramenta SoapUI, que permite criar e executar testes funcionais, de carga, segurança e conformidade para serviços da web SOAP.



  • A ferramenta Postman, que permite enviar solicitações e receber respostas de serviços da web SOAP.



  • A estrutura JUnit, que permite escrever e executar testes de unidade para suas classes e métodos de serviço da web.



  • Como posso proteger meus serviços da web e clientes com JAX-WS 4.0.0?



Para proteger seus serviços da Web e clientes com JAX-WS 4.0.0, você pode usar vários mecanismos e padrões, como:


  • O protocolo HTTPS, que criptografa a comunicação entre serviços da Web e clientes usando certificados SSL/TLS.



  • O padrão WS-Security, que fornece segurança em nível de mensagem para serviços da Web SOAP, como criptografia, assinaturas digitais, autenticação e autorização.



  • O padrão WS-Policy, que define políticas para segurança de serviço da Web, qualidade de serviço e outros aspectos.



  • O padrão WS-Trust, que define uma estrutura para emitir, renovar e validar tokens de segurança para acesso ao serviço da web.



  • O padrão WS-Federation, que define um mecanismo para gerenciamento de identidade federada para acesso ao serviço da web.



0517a86e26


1 view0 comments

Recent Posts

See All

Comments


bottom of page