Este ejemplo lo hice con Eclipse, por lo que es posible copiar y pegar en el Ide (debería devolver el resultado).
En esta direccion se encuentra el web se llama Calculator el método que utilizamos de este WS es el Add.
//funcion que consulta un método de un WS via URLConection
private static Hashtable
Hashtable
//ponemos como resultado 1, esto significa que la consulta tuvo error
resWS.put("resultado", "1");
//armamos el mensaje SOAP
String reqXML =
"
"
"
"
"
"
"
"+ "
"+ "
";
StringBuffer request = new StringBuffer();
request.append(reqXML);
String endPoint = "http://ws1.parasoft.com/glue/calculator";
try{
URL url = new URL(endPoint);
URLConnection connection = url.openConnection();
connection.setConnectTimeout(10000); //timeout
connection.setReadTimeout(10000); //timeout
connection.setDoOutput(true);
connection.addRequestProperty("SOAPAction", "");
connection.addRequestProperty("Content-Type", "text/xml; charset=utf-8");
OutputStreamWriter out = new OutputStreamWriter(connection.getOutputStream());
out.write(request.toString());
out.close();
BufferedReader bReader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
String decodedString;
StringBuffer resp = new StringBuffer();
while((decodedString = bReader.readLine()) != null)
{
resp.append(decodedString);
}
bReader.close();
String resXML = resp.toString();
System.out.println("resultado del envio:" + resXML);
}catch(Exception e){
System.out.println(" ERROR :" + e);
}
return resWS;
}