2012-02-25 12 views
6

He creado con éxito Web Service. Lo probé y también obtuve el archivo WSDL. El cliente que utilizará este servicio web es una clase Java simple.¿Cómo crear un cliente Java para el servicio web?

Soy capaz de crear un cliente jsp y llamar a los métodos del servicio web. Pero necesito llamar al servicio web desde una clase de Java.

¿Cómo puedo vincular este cliente de Java con el servicio web?

Los siguientes pasos que hemos seguido en NetBeans para crear el cliente de Java ...

  1. he creado una sencilla aplicación J2SE.
  2. Lo hice un cliente de servicio web del servicio web hecho por mí.
  3. Recibo las referencias del servicio web de mi servicio web.

Pero no puedo llamar al método del WebService. Aquí está el archivo de cliente ...

package client_package; 
public class client { 

public static void main(String args[]) 
{ 
    System.out.println("1"); 
    System.out.println(hello("megha")); 
    System.out.println("2"); 
} 
private static String hello(String name) { 


    WS_package.WebService1 service = new WS_package.WebService1(); //package WS_package does not exists 
    WS_package.WebService1 port = service.getWebService1Port(); //package WS_package does not exists 


name = port.hello(name); 

return name; 
} 
} 
+0

Esto puede ayudar (en general): http://stackoverflow.com/questions/209385/java-webservice-client –

+1

¿Recibe una excepción cuando ejecuta este código? Si es así, ¿podemos ver el seguimiento de la pila? –

+0

@MichaelRighi, sí, recibo un error de que el paquete WS_package no existe. y entonces no puedo usar métodos de eso. el puerto no se está creando y, por lo tanto, no se está llamando al método 'port.hello (name)' – jQueen

Respuesta

0

Usted podría intentar Jersey y su Client API

+0

Ahora puedo vincular el cliente java simple a mi servicio web. Ambos residen en una sola máquina. que debería hacer para atar – jQueen

2

Usted podría utilizar wsimport herramienta para generar unos archivos de marcadores cliente, desde la línea de comandos:

wsimport -keep http://localhost:8080/webservices/helloService?wsdl 

entonces importe los archivos generados y úselos como lo hizo anteriormente

HelloServiceImplService helloService = new HelloServiceImplService(); 
HelloService hello = helloService.getHelloServiceImplPort(); 

También hay algunos marcos arround para trabajar con servicios web, como Apache CXF y Apache Axis

Actualización: Sólo su cuenta de una vieja pregunta, si el OP sabía la respuesta, debe actualizar el tema.

Cuestiones relacionadas