Servlets y Web Services
Hola, estoy desarrollando un proyecto sobre web services y tengo que acceder a él mediante java. Mi pregunta es si un servlet puede llamar y hacer uso del web service en cuestión. Sería mejor hacer este acceso mediante páginas JSP?? Un saludo, gracias.
Puedes invocar un webservice desde cualquier clase, sea el tipo de clase que sea.
Un ejemplo:
import java.net.*;
import org.apache.soap.*;
import org.apache.soap.rpc.*;
public class GetCountApp {
public static void main(String[] args) throws Exception {
URL url =
new URL(
"direccion donde escucha el servicio web");
Call call = new Call();
call.setTargetObjectURI("urn:identificador del servicio que quiero llamar");
call.setMethodName("nombre del metodo que quiero invocar");
try {
Response resp = call.invoke(url, "");
Parameter ret = resp.getReturnValue();
Object value = ret.getValue();
System.out.println("Result is " + value);
}
catch (SOAPException e) {
System.err.println("Caught SOAPException (" +
e.getFaultCode() + "): " +
e.getMessage());
}
}
}
ciao
Un ejemplo:
import java.net.*;
import org.apache.soap.*;
import org.apache.soap.rpc.*;
public class GetCountApp {
public static void main(String[] args) throws Exception {
URL url =
new URL(
"direccion donde escucha el servicio web");
Call call = new Call();
call.setTargetObjectURI("urn:identificador del servicio que quiero llamar");
call.setMethodName("nombre del metodo que quiero invocar");
try {
Response resp = call.invoke(url, "");
Parameter ret = resp.getReturnValue();
Object value = ret.getValue();
System.out.println("Result is " + value);
}
catch (SOAPException e) {
System.err.println("Caught SOAPException (" +
e.getFaultCode() + "): " +
e.getMessage());
}
}
}
ciao
