Andrea,
Proverò il tutto nei prossimi giorni e ti faccio sapere se si risolve il
problema su InvokerSOAP con la porta delegata Microsoft.
Non mi hai invece risposto alla domanda che ti avevo posto precedentemente su
come
impostare la proprietà enableNamespacePrefixOptimization a false per la porta
delegata.
La modifica nella <globalConfiguration> di server-config.wsdd infatti è
efficace solo per la porta applicativa, lasciando nel caso della porta delegata
il problema della rimozione dei "namespace prefix" del tag "Timestamp" di
WS-Security.
Ciao,
Luciano
-----Messaggio originale-----
Da: sviluppatori-bounces@openspcoop.org
[mailto:sviluppatori-bounces@openspcoop.org] Per conto di Andrea Poli
Inviato: lunedì 29 maggio 2006 10.34
A: sviluppatori@openspcoop.org; Montebove Luciano
Oggetto: Re: [OpenSPCoop-Dev] Problemi interoperabilità con Porta delegata
Microsoft
Montebove Luciano wrote:
> Nel caso in oggetto supero il controllo dell'header WSS da parte di
> WSSReceiver ma prendo questa eccezione come risposta:
> org.xml.sax.SAXParseException: The prefix "soapenv" for element
> "soapenv:Header" is not bound.
> at
> org.apache.xerces.util.ErrorHandlerWrapper.createSAXParseException(Unknown
> Source)
> at org.apache.xerces.util.ErrorHandlerWrapper.fatalError(Unknown Source)
> at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source)
> at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source)
> at
> org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown
> Source)
> at
> org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown
> Source)
> at
> org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown
> Source)
> at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
> at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
> at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
> at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
> at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown
> Source)
> at javax.xml.parsers.SAXParser.parse(Unknown Source)
> at
> org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227)
> at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696)
> at org.apache.axis.Message.getSOAPEnvelope(Message.java:435)
> at org.apache.axis.client.Call.invoke(Call.java:2698)
> at org.apache.axis.client.Call.invoke(Call.java:1870)
> at
> org.apache.axis.soap.SOAPConnectionImpl.call(SOAPConnectionImpl.java:90)
> at org.openspcoop.pdd.mdb.InvokerSOAP.send(InvokerSOAP.java:103)
> at
> org.openspcoop.pdd.mdb.ConsegnaBusteSoap.onMessage(ConsegnaBusteSoap.java:500)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> ............
>
> Il messaggio dopo la pulizia di WSSReceiver è il seguente:
>
> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
> xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/03/addressing"
>
> xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"
>
> xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
> xmlns:xsd="http://www.w3.org/2001/XMLSchema"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
> <soap:Header>
> <Intestazione soap:actor="http://www.cnipa.it/eGov_it/portadominio"
> soap:mustUnderstand="1"
> xmlns="http://www.cnipa.it/schemas/2003/eGovIT/Busta1_0/">
> <IntestazioneMessaggio>
> <Mittente>
> <IdentificativoParte tipo="SPC">PCLUC</IdentificativoParte>
> </Mittente>
> <Destinatario>
> <IdentificativoParte tipo="SPC">LINKIT</IdentificativoParte>
> </Destinatario>
> <ProfiloCollaborazione>EGOV_IT_ServizioSincrono</ProfiloCollaborazione>
> <Servizio tipo="SPC">Tracer</Servizio>
> <Azione>EchoWSS</Azione>
> <Messaggio>
> <Identificatore>PCLUC_001_0000001_2006-05-26_17:58</Identificatore>
> <OraRegistrazione
> tempo="EGOV_IT_Locale">2006-05-26T17:58:38.531+02:00</OraRegistrazione>
> </Messaggio>
> <ProfiloTrasmissione/>
> </IntestazioneMessaggio>
> </Intestazione>
> <wsa:Action
> wsu:Id="Id-40ccc5a3-4c58-4aa8-942d-81686a06c866">WebMethod</wsa:Action>
> <wsa:MessageID
> wsu:Id="Id-48ab5ebe-2ac1-4f90-acc3-7696777ac378">uuid:87950c6f-8e8c-471f-b8db-825ae4fd4e10</wsa:MessageID>
> <wsa:ReplyTo wsu:Id="Id-e2317f15-dc86-4b6d-a919-1ace73f78fae">
>
> <wsa:Address>http://schemas.xmlsoap.org/ws/2004/03/addressing/role/anonymous</wsa:Address>
> </wsa:ReplyTo>
> <wsa:To
> wsu:Id="Id-7c40aad0-7e0b-4bcd-9e98-b33dd87aaa43">http://localhost:81/o
> penspcoop/PA</wsa:To>
> </soap:Header>
> <soap:Body>
> <ns1:contenuto xmlns:ns1="urn:prova">Esempio di
> richiesta</ns1:contenuto> </soap:Body> </soap:Envelope>
>
> Qualche idea di cosa succede?
>
> Ciao
>
> Luciano
>
> _______________________________________________
> Sviluppatori mailing list
> Sviluppatori@openspcoop.org
> http://www.openspcoop.org/mailman/listinfo/sviluppatori
>
>
Ciao Luciano,
ho pubblicato sul CVS l'ultima versione di OpenSPCoop
conprendente la ristrutturazione dei file XML (registro e configurazione).
In allegato ti ho mandato due file di esempio (config.xml e
registroServizi.xml), dove oltre ad alcuni esempi di utilizzo della nuova
sintassi e' configurata una porta delegata e applicativa per l'utilizzo di
WSSecurity. (La porta delegata e' presente con suffisso 'WSS'. Quindi
invocabile dal solito Client PDInvoker con la voce openspcoop.pd=WSS).
In particolare ho aggiunto le varie classi che mi hai mandato per WSS:
1. Gestione del mustUnderstand.
2. L'interfaccia Authorization (e le classi demo) prende nel metodo la busta
eGov processata dalla porta di dominio.
Cosi' almeno puo' disporre di tutte le informazioni che servono per
una autorizzazione personalizzata (oltre al mittente, servizio e azione)
3. WSDoAllReceiverNoActionOrderCheck.
Le librerie per la compilazione/creazione dell'ear, devono essere tutte
presenti in una unica directory, poi specificata nel file local.env. Nell'ear
saranno invece inseriti solo i jar che servono all'esecuzione di OpenSPCoop. In
particolar modo vengono inseriti tutti i .jar che ho trovato nei due .zip che
mi hai inviato (requires-libs-all e run) tranne che per i jar
Commons-logging-1.0.4.jar, j2ee.jar e log4j.jar gia' presenti nell'application
server.
4. per il problema riscontrato su InvokerSOAP, puoi provare con la nuova
versione di OpenSPCoop e poi farmi sapere...
Grazie.
Andrea.
|