[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Null values and WSDL2RPG and HTTPAPI?



Charles,

If you start talking about about multiple nested qualified data structures 
and arrays passing each leave of that XML tree as a single parameter is 
almost impossible. Single parameters work well for simple web service with 
a maximum of let's say 10-15 parameters but no more.

Also passing the input parameters to the stub is only half the way to go. 
You also want to get back the response. And for sure you also want to now 
whether the response contains a NULL value or not.

Over all RPG, XML and web service do not work smoothly together. It is 
somewhat like a forced-wedding. ;-)

Though sometimes it is fun to see what is possible with RPG.

Regards,

Thomas.


Am 05.01.2011 21:20, schrieb Charles Wilt:
> Scott,
>
> Yeah, if he was using a parm list, *OMIT would be an easy
> solution...I'd imagine there's a reason he's not doing it that
> way...but I don't have enough experience with web services to see it
> for sure.  From what I've seen so far, my guess is that passing the
> single DS is a little cleaner perhaps when dealing with nested complex
> types and or array's of values.
>
> Hopefully Thomas will comment..
>
> Charles
>
> On Wed, Jan 5, 2011 at 2:45 PM, Scott Klement<sk@xxxxxxxxxxxxxxxx>  wrote:
>> Ahhh... sorry, I didn't recall that he was passing all of the parms in a
>> data structure instead of a parm list.
>>
>>
>> On 1/5/2011 11:44 AM, Charles Wilt wrote:
>>> Scott,
>>>
>>> Not as WSDL2RPG is currently written...
>>>
>>> As is, it generates a DS that you use directly: (from my post to Thomas)
>>>           parameters.contact.email = 'string';
>>>           parameters.contact.faxNumber = 0;
>>>
>>> Also, in my post to Thomas is an idea for handling NULL with a stub
>>> module level DS accessed via setters....which I in fact show using
>>> *OMIT...
>>>
>>>           ContactMaintainerPort_set_contact_email('string');
>>>           ContactMaintainerPort_set_contact_faxNumber(*OMIT);     //NULL
>>>
>>> Charles
>> -----------------------------------------------------------------------
>> This is the FTPAPI mailing list.  To unsubscribe, please go to:
>> http://www.scottklement.com/mailman/listinfo/ftpapi
>> -----------------------------------------------------------------------
>>
> -----------------------------------------------------------------------
> This is the FTPAPI mailing list.  To unsubscribe, please go to:
> http://www.scottklement.com/mailman/listinfo/ftpapi
> -----------------------------------------------------------------------
>
-----------------------------------------------------------------------
This is the FTPAPI mailing list.  To unsubscribe, please go to:
http://www.scottklement.com/mailman/listinfo/ftpapi
-----------------------------------------------------------------------