Quantcast
Channel: SCN : All Content - All Communities
Viewing all articles
Browse latest Browse all 3257

Problem with webservice with nested objects in parameter

$
0
0

Hello I'm using PB 12.1 6639 / Win 7 64


Today I have a Problem consuming a webservice using the .NET engine.


The corresponding WSDL and XSD definitions can be found here:


https://finanzonline.bmf.gv.at/fonws/ws/regKasseService.wsdl

https://finanzonline.bmf.gv.at/fonws/ws/regKasseWs.xsd

https://finanzonline.bmf.gv.at/fonws/ws/regKasse.xsd


I try to call the function rkdb and get an exception with the short error message 'Validation error'.


To get closer Information I used Fiddler to look at the produced Soap envelope. Please see the attached file for the SOAP-Message.


From this I can see that the SOAP-message does not contain the full parameter information that I pass to it.

 

Have a look at the code I use to call the webservice:

 

// *** Start of code ***

rkdbrequest l_request

rkdbresponse l_response

registrierung_kasse l_kasse

 

try l_request = create rkdbrequest

l_request.tid = "ws_account"

l_request.benid = "ws_user1

l_request.id = "xau390xkie234AAb"

l_request.erzwinge_asynchron = false

l_request.erzwinge_asynchronspecified = true

l_request.art_uebermittlung = 0

 

l_kasse = create registrierung_kasse

l_kasse.satznr = as_satznr

l_kasse.kundeninfo = "John Doe"

l_kasse.kassenidentifikationsnummer = "1"

l_kasse.anmerkung = "Cashbox 1"

l_kasse.benutzerschluessel = "xe45...66==" // AES-KEY (Base64-encoded)

 

l_request.ws_rkdb = create rkdb

l_request.ws_rkdb.ts_erstellung = datetime(today(), now())

l_request.ws_rkdb.items[1] = l_kasse

l_response = l_rkdbservice.rkdb(l_request) // WS-Call to rkdb()

 

catch (soapexception e1)

Messagebox("e1", "Fehler während der Ausführung der Webservice-Funktion '" + ls_function + "' (Soapexception: '" + e1.text + "')!")

exit

end try

 

// *** End of code ***

 

As you can see, the whole information is passed in one object (l_request), that holds an array of any's (named 'items') in the member 'l_request.ws_rkdb'. I assign the object 'l_kasse' to the first item of the items-array. Now the whole information of 'l_kasse' is missing in the soap message.

In debugmode I can see all objects created well and filled with the correct values. I have also attached an Image of the imported webservice types (nvo's).

 

I really hope someone can help me to find the mistake! Thank you in advance

 

Regards Martin


Viewing all articles
Browse latest Browse all 3257

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>