Kenobi, não entendi muito bem o que o tutorial queria passar, admito inglês fraco, bom mas para deixar deixar mais claro o que estou precisando
esta é a minha classe que pega a mensagem soap e transforma em HTML
import java.io.IOException;
import java.io.OutputStream;
import java.io.StringReader;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import javax.xml.soap.SOAPElement;
import javax.xml.soap.SOAPException;
import javax.xml.soap.SOAPMessage;
import org.jdom.*;
import org.jdom.input.*;
import org.jdom.output.*;
public class GeradorHTML {
public GeradorHTML(){
}
public List<String> GeraPermissoes(SOAPMessage soap) throws SOAPException
{
List<String> retorno = new ArrayList<String>();
String codigoP = "";
String codigoNP = "";
String nome = "";
String Liberado = "";
int cont = 0;
String XMLr = "";
//Obtendo a XML ******************************
XMLr = soap.getSOAPBody().getTextContent();
SAXBuilder builder = new SAXBuilder();
org.jdom.Document d = null;
try
{
d = builder.build(new StringReader(XMLr));
}
catch (JDOMException e)
{
e.printStackTrace();
}
catch (IOException e)
{
e.printStackTrace();
}
//-----------------------------------------------
//Recupera o elemento root
Element mural = (Element) d.getRootElement();
//Recupera os elementos filhos (children)
List elements = mural.getChildren();
Iterator i = elements.iterator();
//Itera com os elementos filhos, e filhos do dos filhos e gera codigo
while (i.hasNext())
{
Element element = (Element) i.next();
Liberado = element.getChildText("Liberado");
nome = element.getChildText("Nome");
if(Liberado.equals("1")){
codigoP = codigoP.concat("<tr>\n\t<td>"+Integer.toString(cont)+"</td>\n\t<td>"+nome+"</td>\n\t<td><img src=\"<%=request.getContextPath()%>/x.png\" onclick=\"submitPermissoes('"+nome+"','0')\"></td>\n</tr>\n");
cont++;
}
else
{
codigoNP = codigoNP.concat("\t<OPTION VALUE=\""+nome+"\">"+nome+"</OPTION>\n");
}
}
System.out.print(codigoP);
retorno.add(codigoP);
retorno.add(codigoNP);
return retorno;
}
XML que vem como parametro
<env:Envelope xmlns:env='http://schemas.xmlsoap.org/soap/envelope/'>
<env:Header></env:Header>
<env:Body>
<ns2:executeTabelaPermitidosResponse xmlns:ns2="http://xxx.xx.xx.xx/webservice_a/process">
<return>
<TabelaPermitidos><Usuario><Nome>a</Nome><Liberado>1</Liberado></Usuario>
</return>
</ns2:executeTabelaPermitidosResponse>
</env:Body>
</env:Envelope>
ai se eu fizer um print no soap.getSOAPBody().getTextContent() me aparece esse xml
<TabelaPermitidos>
<Usuario>
<Nome>a</Nome>
<Liberado>1</Liberado>
</Usuario>
<TabelaPermitidos>
ate ai tudo beleza, isto esta rodando bem na minha maquina, mas quando tento rodar no jboss portal aparece o erro que comentei, estou ficando doido atras da informação, o xml que eu preciso para fazer o html é o que vem do soap.getSOAPBody().getTextContent()