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


















0 Responses to “Web Services com Apache Axis - Part II”
Leave a Reply