Webservice Client

Boa Tarde, estou com um erro nesta classe Client e não consigo resolver de forma alguma, será que alguém já executou e poderia tirar minha dúvida?

Só estou conseguindo chegar neste tópico após o ponto da criação da classe FibClient, que não consigo resolver e dar continuidade neste tópico.

Desde já muito obrigado,

http://www.guj.com.br/java.tutorial.artigo.132.1.guj

Bom, poste o erro que aparece no seu console, para que possamos identificá-lo.
Mas achamos que é isso:
dá uma olhada bem nessa parte do código,
pelo menos há algo furado nessa parte, onde você cria um array de elementos tipo Object,
passando inteiros dentro dele, ou seja esse “args” aí está errado.

Integer ret = (Integer) call.invoke(new Object[]{new Integer(args[0])});

e deve estar assim:

// Parâmetros da função soma.
 Object[] param = new Object[]{ new Integer(1)};

:lol:

Muito obrigado esta parte foi resolvida, de falto não havia me atentado para isso. Mas agora não estou conseguindo dar continuidade neste tutorial, com por exemplo a configuração do classpath e exibir as saídas de forma correta será que existe uma forma mais clara que verificar isto pois a resposta ainda está sendo recebida em .xml. Apartir daqui não estou entendendo /conseguindo executar. Utilizo ubuntu 8.04 e eclipse 3.4. Desde já muito obrigado pela ajuda dispensada. Abaixo colocarei trechos de onde não consigo realizar o tutorial.

[code]Voce deverá ter o CLASSPATH configurado corretamente. Eu assumo que os leitores regulares da newsletter irão saber da propriedade do sistema java.ext.dirs, a qual você pode usar para apontar para um diretório ou arquivo JAR, ao invés de colocar todos eles no seu CLASSPATH. For exemplo, vamos considerar que o Axis foi instalado em c:\java\axis-1_1, e as classes compiladas estão no diretório “classes”. Uma vez que tenhamos compilado o programa FibClient, podemos rodá-lo usando:

java -Djava.ext.dirs=c:\java\axis-1_1\lib -classpath classes FibClient 0
Got result : 0
java -Djava.ext.dirs=c:\java\axis-1_1\lib -classpath classes FibClient 1
Got result : 1
java -Djava.ext.dirs=c:\java\axis-1_1\lib -classpath classes FibClient 2
Got result : 1
java -Djava.ext.dirs=c:\java\axis-1_1\lib -classpath classes FibClient 3
Got result : 2
java -Djava.ext.dirs=c:\java\axis-1_1\lib -classpath classes FibClient 4
Got result : 3
java -Djava.ext.dirs=c:\java\axis-1_1\lib -classpath classes FibClient 5
Got result : 5
java -Djava.ext.dirs=c:\java\axis-1_1\lib -classpath classes FibClient 6
Got result : 8
java -Djava.ext.dirs=c:\java\axis-1_1\lib -classpath classes FibClient 30
Got result : 832040

A IBM é uma grana companhia. Eles escrevem excelente código open source, free software, os quais podemos usar para produzir bom software. Uma de suas fantásticas ferramentas é o WSDL2Java. Você pode invocá-lo no WebService que acamos de escrever:

java -Djava.ext.dirs=c:\java\axis-1_1\lib org.apache.axis.wsdl.WSDL2Java
http://localhost:8080/axis/Fibonacci.jws?wsdl -o src -p com.maxoft.fib.clien

Isso gera alguns arquivos que podemos usar para tornar nosso cliente mais simples de escrever. O pacote onde os arquivos ficam esta em com.maxsoft.fib.clint, portanto é para lá que irei adicionar a nova classe FibClient:

01 package com.maxoft.fib.client;
02
03 public class FibClient2 {
04 public static void main(String[] args) throws Exception {
05 FibonacciService service = new FibonacciServiceLocator();
06 Fibonacci fib = service.getFibonacci();
07
08 for (int i=0; i<10; i++) {
09 System.out.println(“fib(” + i + “)=” + fib.calculate(i));
10 }
11 }
12 }

E isso é tudo o que você precisa fazer. Rode o código com o seguinte comando:

java -Djava.ext.dirs=lib -classpath classes com.maxoft.fib.client.FibClient2

fib(0)=0
fib(1)=1
fib(2)=1
fib(3)=2
fib(4)=3
fib(5)=5
fib(6)=8
fib(7)=13
fib(8)=21
fib(9)=34

Então, pelo que entendi, você não quer uma resposta em xml do
WebService é isso???

Sim a resposta será em .xml, porém com uma função que faça a leitura desta resposta em .xml. Isso é complicado?

Você está testando o serviço colocando diretamente
a URL do serviço no browser???
Assim… na sua classe Client você pode tratar essa resposta do webservice.
Se não me engano, na criação deste Client que o tutorial mostra,
já há uma forma de tratamento da resposta, sei lá, pode-se
escrever no próprio console essa sequência de Fibonacci que o
webservice gera.

A minha dúvida está em seguir o tutorial até o fim, nesta parte eu “travo” e não consigo configurar o classpath (nunca configurei).