SOAP WSDL ....esperti? aiuto!

di il
2 risposte

SOAP WSDL ....esperti? aiuto!

Salve gente
Premetto che ho usato xmlrpc, ora mi trovo a cozzare con SOAP e wsdl (per mia ignoranza). La sostanza è questa:
devo interrogare un servizio dell'aci, per i dati relativi alle targhe automobilistiche.

Nella documentazione fornita, mi è stato dato il link al wsdl

https://aci.ancitel.it/acipra-ws-server/ws/wsAcipra.wsdl

e un esempio xml di chiamata:
<soapenv:Envelope>
	<soapenv:Header/>
	<soapenv:Body>
		<vtt:visura-targa-telaio-request>
			<username>xxxxxxxxxx</username>
			<password>xxxxxxxxxx</password>
			<DatiRichiesta>
				<DataRichiesta>02/05/2017</DataRichiesta>
				<TipoRichiesta>Targa</TipoRichiesta>
				<SerieTarga>1</SerieTarga>
				<Targa>XXXXXXX</Targa>
				<AltriDati>
					<AltroDato1/>
					<AltroDato2/>
					<AltroDato3/>
				</AltriDati>
			</DatiRichiesta>
			<canale>Comune di XXXXXX</canale>
		</vtt:visura-targa-telaio-request>
	</soapenv:Body>
</soapenv:Envelope>
Ho provato a creare il client e collegarmi.... e fin qui funziona tutto. Ho chiamato anche la funzione getFunctions e mi restituisce le funzioni tra cui "visura-targa-telaio" che a me serve.

Ho provato a creare l'array contenente la struttura sopra, ma quando faccio la soapCall, sembrerebbe che l'xml generato non sia quello atteso.
Ho la vaga impressione che la funzione soapCall, quando genera l'xml, ci metta del suo, ossia non crei la struttura sopra. Ho guardato anche se poteva essere usato un xml raw, in modo da spedire direttamente quello sopra, ma picche.

Qualcuno sa dirmi come devo fare a ricreare la chiamata sopra?

Grazie anticipatamente

Gianni

2 Risposte

  • Re: SOAP WSDL ....esperti? aiuto!

    La compatibilita' tra sistemi SOAP e' sempre stata una mera illusione
    SOAP implementato in .NET e' incompatibile con quello implementato in Java che e' incompatibile con quello fatto in PHP, ...

    Non esiste la SOLUZIONE MAGGGGGGICA: l'unico modo e' martellare il client in modo che generi un XML copatibile con quello richiesto dal servizio, hackerando il codice generato dal tool che, partendo dal WSDL, genera il corrispondente codice client.

    Tool del genere ce ne sono diversi, per i diversi linguaggi: devi cercare quello che genera il client piu' compatibile, cioe' che bisogna modificare meno

    Alla peggio, generare il messaggio di risposta A MANO.
  • Re: SOAP WSDL ....esperti? aiuto!

    Bel mio vecchio xmlrpc (con tutti i suoi limiti)
Devi accedere o registrarti per scrivere nel forum
2 risposte