Para expertos en Servlets y XML

Carlos
01 de Julio del 2005
Hola Gente, tengo un problema, necesito desde un servlet enviar o hacer una peticion a otro servlet(digamos el de otra empresa) para solicitar el perfil de la misma, pero este perfil se encuentra en una archivo XML, al igual que la peticion que tengo q hacer, es decir desde un servlet tengo que "enviar" una peticion XML al srvlet de mi proveedor y este "enviarme" una respuesta XML con su perfil. La estructura de ambos XML ya los tengo definidos, la cosa es como transmito esa informacion entres servlets.. por ahi via lgo de una CLASE URL y URLConnection.. pero bueno.. no se mas. La parte del parser lo hago con JDOM.. espero q me puedan ayudar... si tienen por ahi un ejemplo pequeño seria fabuloso, gracias.
Salu2

jtacosta
01 de Julio del 2005
A ver si te sirve esto
Pasos
1ª logarnos y acceder a la informacion
2º Tratar lo que nos llega

import org.jdom.Comment;
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.input.SAXBuilder;
import org.jdom.output.XMLOutputter;

1ª logarnos y acceder a la informacion

String server = "http://www.suserver.es/ubicacionxml";
// Build the request document
Element login = new Element("Login");
//create the document
Document miLogin = new Document(login);
//add an attribute to the root element
//add a comment
login.addContent(new Comment("REGISTRARSE"));
login.addContent(new Element("usUario").addContent("8888888"));
login.addContent(new Element("Password").addContent("8888888"));


// Transmit the request document
URL u = new URL(server);
URLConnection uc = u.openConnection();
HttpURLConnection connection = (HttpURLConnection) uc;
connection.setDoOutput(true);
connection.setDoInput(true);
connection.setRequestMethod("POST");
OutputStream out = connection.getOutputStream();

XMLOutputter serializer = new XMLOutputter();
serializer.output(miLogin, out);

out.flush();
out.close();

2º Tratar lo que nos llega
// Read the response
InputStream in = connection.getInputStream();
SAXBuilder parser = new SAXBuilder();
Document response2 = parser.build(in);

in.close();
connection.disconnect();

Element raiz = response2.getRootElement();
List lPAdres=raiz.getChildren("padre");
boolean findIt = false;
Element padre = null;


for (int i = 0; i < lPAdres.size(); i++)
{
padre = (Element)lPAdres.get(i);
Element nombre =oficina.getChild("nombre");
Element apellido =oficina.getChild("apellido");


}