Duvida caminho e arquivo gerado na publicação do serviço javaws

Olá,

uma duvida qdo executei esse metodo abaixo aonde foi criado esse serviço ???

gostaria de saber o caminho e o arquivo ???

se alguém puder me ajudar agradeceria.

abs

public class PublicaService {

public static void main(String[] args){
HelloWeb service = new HelloWeb();
Endpoint endpoint = Endpoint.publish("http://localhost:8080/hello", service);
}

paribe,

O método publish cria um mini servidor local de testes (só pra isso mesmo) na sua máquina pra que o seu serviço esteja disponível através da url http://localhost:8080/hello .
Pra saber o que ele recebe/retorna de parâmetros vc abre http://localhost:8080/hello?wsdl
Quer dizer vc definiu o serviço na classe HelloWeb, disponibilizou pelo EndPoint.publish e quando vc quizer usar esse serviço , vc cria uma classe client que aponta pra url.

Dê uma olhada:
http://blog.caelum.com.br/webservices-sem-servidor-de-aplicacao-no-java-6/

Olá,

obrigado pelo retorno…

Mais um duvida como fazer isso nomeu servidor pois estou fazendo isso local …

o que fiz local …


Etapas:
1 ? Com o java 6, para criar um web service deve-se usar as anotações @WebService e @WebMethod na sua classe, pois o jdk 6 já vem com a tecnologia jax-ws implementada. Crie a seguinte classe :

@WebService
public class HelloWeb {

@WebMethod
public String hello(String nome) {
return "Hello " + nome;
}
}

2 ? Você deve utilizar a ferramente apt (annotation processing tool) que encontra-se na pasta bin do jdk para gerar as classes do web service. Para isso, dentro do diretório src do seu projeto, use a seguinte linha de comando:

apt pacote\HelloWeb.java

Gera um pacote pacote.javaws com duas classes, uma classe Hello.java para os parâmetros do WebService (no nosso caso String nome do método hello) e outra HelloResponse.java que representa o retorno.

3 - Para publicar o serviço/endpoint e iniciá-lo, use a classe seguinte:

public class PublicaService {

public static void main(String[] args){
HelloWeb service = new HelloWeb();
Endpoint endpoint = Endpoint.publish("http://localhost:8080/hello", service);
}
}

Pronto, o WebService está rodando sem servidor de aplicação nem web container. Tudo isso com javaSE 6 jdk. Para acessar a wsdl dele, usa-se o URL:

http://localhost:8080/hello?wsdl

4 - Para criar o cliente do serviço, o javaSE 6 já vem com as ferramentas necessárias. Precisamos usar o wsimport (na pasta bin do jdk) para gerar as classes do cliente. Com o serviço rodando, fazemos na linha de comando (dentro da pasta src do projeto):

wsimport -keep -p pacote.cliente http://localhost:8080/hello?wsdl

A opção keep não apaga os arquivos fontes e p gera as classes dentro do pacote especificado.

5 - Para chamar o serviço pelas classes geradas, escreva a seguinte classe:

public class TesteServico {

public static void main(String[] args) {
pacote.cliente.HelloWeb port = new HelloWebService().getHelloWebPort();
System.out.println(port.hello("Luis"));
}
}

Minha duvida vou criar uma página JSF pra mostrar o nome na tela o que penso em fazer
um MB que chame o WS conforme TEsteServico…está certo isso ??? sim ou não

Minha duvida é com criar essa estrura Ws no TOMCAT 6 que estou usando na produção
tem que fazer o deploy da aplicação e rodar etapa 2 (como está acima) todas essas etapas …alguém poderi ame ajudar…

abs