Web Services Axis

  • Uploaded by: Paloma Costa
  • 0
  • 0
  • November 2019
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Web Services Axis as PDF for free.

More details

  • Words: 965
  • Pages: 24
WebServices - Axis

Teoria e Prática Paloma Costa Desenvolvedora Java [email protected] http://javawoman.objectis.net

Sobre mim ● ● ● ● ●

● ● ● ●

Paloma Costa Desenvolvedora Java a quatro anos Técnica em Processamentos de Dados Estudante de Matemática computacional Integrante da coordenação do Projeto Software Livre do Rio Grande do Sul. Equipe de Java na Captura de transações da GetNet Usuária linux desde 2001 Colunista do Portal Java desde 2005 Portal http://javawoman.objectis.net

Sobre a empresa

EUA

China Índia Brasil Uruguai

“Sólido Grupo econômico multinacional com capital Brasileiro com operações em segmentos de agronegócio, hotelaria, exportação, tecnologia, entre outros em vários países.”

“Excelente ambiente de trabalho e constante investimento em P&D em parques tecnológicos.”

Mais de 100 profissionais na GetNet Credenciamento e Treinamento em todo o Território Nacional Crescimento de 300% em 2004 Mais de 20mil estabelecimentos no país.

Confiabilidade “Soluções customizadas de captura, autorização e processamento de transações e informações para grandes empresas.”

“Homologados com as maiores Redes de supermercados e farmácias do Brasil.”

“Parceiros com as melhores tecnologias.”

WS em Java com Axis ● ● ● ● ● ● ● ● ● ●

Teoria e Definições Protocolos Arquitetura WSDL Prática Instalação e Configuração do Axis Criando WebServices Deploy Criando Cliente de WebServices Implantação do WS

Paloma Costa – [email protected]

Teoria e Definições ●





Usa protocolos padronizados que garantem a independência de plataforma e de linguagem. O Apache AXIS é uma das implementações mais versáteis do protocolo SOAP, permitindo a criação de Web Services. Disponibilizar uma coleção de métodos em um servidor remoto e permitir que sejam acessados por programas clientes.

Paloma Costa – [email protected]

Protocolos envolvidos ●



SOAP: Protocolo simples de acesso ao objeto. Baseado em XML é tipo um envelope que define uma estrutura para descrever o que estão em uma mensagem e como processar. É uma convenção para representar chamadas e respostas remotas do procedimento. XML: é uma linguagem semelhante ao HTML. A diferença é que é usada para definir e armazenar dados, enquanto HTML serve para exibir.

Paloma Costa – [email protected]

Modelo MVC Apresentação ws

Cliente

Hibernate Pool de Con.

BD

Paloma Costa – [email protected]

Regras de Negócio

DAO

Arquitetura Serializador

http/Request

soap/Response

Serializador Apache+Tomcat + Axis

Recebe Objeto Paloma Costa – [email protected]

WSDL(Web Service Definition Language) ●



Linguagem de Definição de Serviços que possui todos os métodos do WS registrados. WSDL: é gerada a partir de um WS em particular, é uma interface padronizada que permite os programas clientes encontrarem os métodos remotos;

Paloma Costa – [email protected]

Prática ● ●

Como criar um WS em Java? Softwares necessários: Tomcat 5.0.28 http://jakarta.apache.org/tomcat/ Axis (usei a 1.1) http://ws.apache.org/axis Eclipse 3.0 http://www.eclipse.org J2SE 1.4.2 http://java.sun.com/j2se/1.4.2/download.html

Paloma Costa – [email protected]

Instalação do Axis ●





1. Dentro de \home\axis\webapps” tem um diretório chamado “axis”. 2. Copie esse diretório para dentro do seu “webapps” do seu Tomcat 3. Os jars necessários para o ws devem estar no diretório lib: home\Tomcat 5.0\webapps\axis\WEBINF\lib jars axis.jar; commons-discovery.jar; commons-logging.jar; jaxrpc.jar; saaj.jar; log4j-1.2.8.jar;

Paloma Costa – [email protected]

Configuração do Axis O Axis está instalado. Para verificar se tudo está funcionando inicie o Tomcat e digite: ● http://localhost:8080/axis ●

Paloma Costa – [email protected]

Configuração do Axis ●

1 - Clique em Validate e você deverá ver um resumo geral. Se ele der algum erro (como falta de algum .JAR), você tem que corrigir antes de continuar. Observe que as core axis libraries devem ser encontradas.

Paloma Costa – [email protected]

Criando WebServices ●



public class HelloWorld { public String sayHello() { return "Hello World!"; } public String sayHello2(VOTeste vo) { return vo.toString(); } public VOTeste sayHello3 (VOTeste vo){ return vo; } } Salvar classe HelloWorld.java

Paloma Costa – [email protected]

Classe VO public class VOTeste { private int campo1; private String campo2; public int getCampo1() { return campo1; } public void setCampo1(int campo1) { this.campo1 = campo1; } public String getCampo2() { return campo2; } public void setCampo2(String campo2) { this.campo2 = campo2; } }

Deploy wsdd <deployment xmlns="http://xml.apache.org/axis/wsdd/" xmlns:java="http://xml.apache.org/axis/wsdd/p roviders/java"> <service name="HelloWorld.ws" provider="java:RPC"> <parameter name="className" value="br.srv.getnet.exemplo.Hello.HelloWorld "/> <parameter name="allowedMethods" value="sayHello,sayHello2,sayHello3"/> <parameter name="scope" value="application"/> Paloma Costa – [email protected]

Deploy sh TOMCATHOME=/tomcat/ JAVA_HOME=/jdk/ CLASSPATH="$TOMCATHOME"common/lib/saaj.jar CLASSPATH="$CLASSPATH":/java/axis-deploy/jaxrpcapi.jar CLASSPATH="$CLASSPATH":"$TOMCATHOME"common/lib/axis .jar CLASSPATH="$CLASSPATH":"$TOMCATHOME"common/lib/comm ons-discovery.jar CLASSPATH="$CLASSPATH":"$TOMCATHOME"bin/commonslogging-api.jar CLASSPATH="$CLASSPATH":/java/axis-deploy/jaxqname.jar echo $CLASSPATH PATH="$JAVA_HOME"/bin:"$PATH" #java -cp "$CLASSPATH" org.apache.axis.client.AdminClient deploy.wsdd -lhttp://127.0.0.1:8080/axis/services/AdminService java -cp "$CLASSPATH" org.apache.axis.client.AdminClient deploy.wsdd

Paloma Costa – [email protected]

Executar Deploy Copiar projeto do eclipse para o tomcat cp home\eclipse\workspace\ExemploWS\src\br \home\Tomcat 5.0\webapps\axis\WEB-INF\classses\br Entrar no diretório onde se encontra o deploy cd \Tomcat 5.0\webapps\axis\WEBINF\classes\br\srv\getnet\exemplo\ws Executar a seguinte linha de comando na console sh deploy.sh (certificar-se que o arquivo deploy.wsdd existe) Tomcat tem que está no ar

Paloma Costa – [email protected]

Teste do Axis ●

1 - Vá em view e clique com o botão direito na classe de WebService e salve no workspace do eclipse para o cliente.

Cliente de WS ●





● ●





Para criar as classes stub, vamos usar a ferramenta WSDL2Java que vem com o Axis. Crie um novo projeto para o cliente Pluguin: com.myspotter.wsdl2java-1.1.0 No eclipse adicione o pluguin Salve o xml para o cliente e renomeie a extensão xml para wsdl F5 no projeto Clicar em cima do wsdl com o botão direito em axis e wsdl2Java(Irá criar as classes stub) Depois crie um pacote br.srv.getnet.teste que terá a classe main para ver o resultado das classes de WS. Adicionar os jars para o cliente. Paloma Costa – [email protected]

Cliente ●

Pode ser criada em qualquer linguagem. Public class MeuCliente { public static void main(String[] args)Throws Exception{ HelloWorldService hService = new HelloWorldServiceLocator(); HelloWorld hello = hService.getHello(); System.out.println(“!Iniciando chamada a métodos remotos!”); System.out.println(“!Say Hello” + hello.sayHello()); System.out.println(“!SayHello2” + hello.sayHello2()); } }

Paloma Costa – [email protected]

Bibliografia ●









Apache Web Service http://ws.apache.org/ Apache Axis http://ws.apache.org/axis/ Documentação Axis http://ws.apache.org/axis/java/index.html Web Services Tutorial http://www.w3.org(webServices) XML http://www.w3c.org/XML

Muito Obrigada! Perguntas?? Paloma Costa [email protected] http://javawoman.objectis.net

Related Documents

Web Services Axis Reading
November 2019 22
Web Services Axis
November 2019 23
Web Services
November 2019 38
Web Services
November 2019 48
Web Services
November 2019 43

More Documents from ""

Api(3)
December 2019 27
Jvmlivresipa
November 2019 27
Capitulo3v2003
December 2019 12
November 2019 11
Artigojavaopensource
December 2019 11