WEBCODELOG

free codes, enjoy

Web Services com Apache Axis – Part II

without comments

Dando sequência a WebServices agora vou demonstrar um exemplo prático de como criar um serviço utilizando os recursos do framework Apache Axis.
A instalação do Axis funciona como qualquer outra API na plataforma JEE, portanto não será detalhado este procedimento.

A criação de webservices com Apache Axis é muito simples, veja a classe abaixo:

public class Calculo {
/**
*
* @param n1
* @param n2
* @return Resultado da Soma
*/
public double soma(double n1, double n2){
return (n1 + n2);
}
}

Após criar essa simples classe composta pelo método soma, cujo retorna um tipo primitivo, para que esta classe seja publicada como um serviço basta copiá-la para a aplicação do Axis ($TOMCAT_HOME\webapps\axis) em seguida renomeá-la para Calculo.jws. Acesse o serviço como http://localhost:8080/axis/Calculo.jws?wsdl, isto é tudo.

Simples assim, criar o Client que irá utilizar o serviço é tão simples quanto.

import org.apache.axis.client.Call;
import org.apache.axis.client.Service;

public class CalculoClient {

/**
* @param args
*/
public static void main(String[] args) throws Exception{
String url = "<a href="http://localhost/axis/Calculo.jws?wsdl">http://localhost/axis/Calculo.jws?wsdl</a>";
Service service = new Service();
Call call       = (Call) service.createCall();
call.setTargetEndpointAddress( url );
call.setOperationName("soma"); // método do webservices

Double[] param  = {15.0, 15.0}; // parâmetros
Double result   = (Double) call.invoke( param ); // chamada
System.out.println("Resultado : " + result );
}
}

Exemplos iguais a este devem existir centenas de milhares na internet, simples utilizando tipos primitivos, básico mesmo. Mas cansado de saber disto vou demonstrar um exemplo mais completo utilizando tipo de dados complexos!

Veja mais esses artigos excelentes:
http://www.javafree.org/content/view.jf?idContent=4
http://www.guj.com.br/java.tutorial.artigo.180.1.guj
http://www.guj.com.br/java.tutorial.artigo.132.1.guj

Bookmark and Share

Written by Luciano

agosto 5th, 2008 at 7:11 pm

Posted in Programação

Tagged with , , ,

Leave a Reply