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

Re: WSDL2RPG Dynamic Array Patches question



Michael,

The dynamic array patch definitely does not fix your issue because you use WSDL2RPG v1.15 whereas the patch is for 1.14.

For me the error message clearly states that a field of the response data structure is too short to hold a value of 131 bytes. Without a debugger it is hard work to figure out the field that is too short. Actually you need to start the debugger for service program WSDL2RPGRT and add a breakpoint to procedure isTooShortV6() of module WSDL2R98 at statement:

   clear USR5020;

When the debugger stops it is easy to look at the call stack to figure out the failing field.

But without the debugger the only option you have is to check the field sizes of your response data structure. Maybe the "Parameter Structure Visualizer" might help you with this task. For the following sample:

WSDL2RPG

URL('http://tools400.dyndns.org:88/axis2/services/DownloadAttachmentService?wsdl')
  SRCFILE(QWSDL2RPG) SRCMBR(*NONE)
PARMSTRUCT(*STMF) STRUCTSTMF('DownloadAttachmentService.txt')

You get the following output:


WSDL2RPG Service Request and Response Parameter Structures
==========================================================

Generated at:  09.07.2012 / 20:46:51
WSDL URL : http://tools400.dyndns.org:88/axis2/services/DownloadAttachmentService?wsdl
Operation   :  tns:getAttachment

Service Request Parameters
--------------------------
i_tns_getAttachmentRequest(tns_getAttachmentRequest_t)
  fileType(128A  varying)

Service Response Parameters
---------------------------
o_tns_getAttachmentResponse(tns_getAttachmentResponse_t)
  fileName(128A  varying)
  fileID(128A  varying)

You can easily search for "128A" to get a list of fields in question. If the list is short it is easy to match the HTTPAPI debugger output with the list of fields. But if the list is loon, it is a pain.

Last but not least I have noticed that you set STRLEN to 256. Hence actually there should not be any fields of 128A. But you never know. ;-)

Good luck,

Thomas.

Am 09.07.2012 19:16, schrieb Koester, Michael:
My error seems similar to what I found in the ftpapi archives  -- [Subject: Re: Help needed on WSDL2RPG Date: Fri, 20 Apr 2012 18:29:01 +0200].  Last April Thomas replied to Babacar Diouf's question that the Dynamic Array Patches should solve his problems.

When testing the web service method stub, the runtime error shows:
16: recvchunk: saveproc: Not all data was written!
-1009: Field overflow. Field is too short to hold the specified value (128 versus 131 bytes).

I cannot tell exactly what is throwing the error, because our SEP debugger is currently out of service (subsystem configuration issues our SysAdmin is trying to resolve).

I can tell you that the Base Stub was created without Dynamic Arrays (I specified DIM 256 and STRLEN 256), and that I'm using WSDL2RPG 1.15beta7 / 25.01.2012 on an i/OS v7.1.

My question:  Is the "Dynamic Arrays Patches" fix likely to be appropriate for my issue?

I'll be happy to provide additional info as needed.

Thanks!

Michael Koester
DataEast
Weare, NH  USA

-----------------------------------------------------------------------
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
-----------------------------------------------------------------------