Ciao a tutti,
la cosa mi viene difficile anche da spiegare, comunque ci provo.
Ho creato un web service e vorrei che tale webservice accetti in input un XML come parametro del messaggio SOAP di invocazione del servizio. Mi spiego: ho un servizio che accetta in input un messaggio del genere:
codice:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ord="http://orderreceived.agents.po.project.ics/">
  <soapenv:Header/>
  <soapenv:Body>
    <ord:esegui>
      <arg0>MSG</arg0>
    </ord:esegui>
  </soapenv:Body>
</soapenv:Envelope>
Vorrei che MSGfosse a sua volta un XML.
La classe che ho realizzato finora è:
codice:
@WebService(wsdlLocation = "WEB-INF/wsdl/OrderReceivedExecutorService.wsdl")
public class OrderReceivedExecutor extends AgentExecutorBase {
    
    public OrderReceivedExecutor() {
        super();
    }

    @WebMethod
    public String esegui(@WebParam(name = "arg0") String messaggio) throws Exception {
        if (!LoggerUtils.isInitialized())
            LoggerUtils.initLogger();
        LoggerUtils.logApp(getClass(), "Start: esegui");
        String result = "";
        result = super.esegui(messaggio, new OrderReceived());
        return result;
    }
}
però se passo una comunissima stringa la variabile messaggio viene valorizzata con quella stringa, se invece MSG è un XML, come ad esempio
codice:
<ImportazioneOrdini>
	<Partner>100001</Partner>
	<RigaOrdini>
		<IdMessaggio>2819894</IdMessaggio>
		<DataMessaggio>06072011</DataMessaggio>
		<CodiceDestinazione>935300</CodiceDestinazione>
		<Causale>00</Causale>
		<NumDDT>329442</NumDDT>
		<DataDDT>06072011</DataDDT>
		<Quantita>00000002.410</Quantita>
		<Offerta>0</Offerta>
		<CostoSupplier>000003.950</CostoSupplier>
		<UnitRetail>000000.000</UnitRetail>
		<Supplier>100001</Supplier>
	</RigaOrdini>
	<RigaOrdini>
		<IdMessaggio>2819894</IdMessaggio>
		<DataMessaggio>06072011</DataMessaggio>
		<CodiceDestinazione>935300</CodiceDestinazione>
		<Causale>00</Causale>
		<NumDDT>329442</NumDDT>
		<DataDDT>06072011</DataDDT>
		<Quantita>00000001.270</Quantita>
		<Offerta>0</Offerta>
		<CostoSupplier>000002.060</CostoSupplier>
		<UnitRetail>000000.000</UnitRetail>
		<Supplier>100001</Supplier>
	</RigaOrdini>
...
la variabile messaggio non mi viene correttamente valorizzata (è una serie di spazi...).
Che tipo di dato dovrei utilizzare per poter passare al webservice un XML in uno dei sui nodi? Non è corretto usare String? Googlando un po' ho visto che qualcuno suggerisce il formato base64binary, ma come viene usato? E' corretto? Non si trova molto altro...

Ciao e grazie a tutti
Alessio