[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
WSDL2RPG Logging Interpretation
Note: This e-mail is subject to the disclaimer contained at the bottom
of this message.
_________________________________________________________________
Having gone through the pain of baby steps with my R & D WSDL2 work, I
am now trying to build our first production web service. Unfortunately
the WSDL2RPG program is failing. The service has 13 separate xsd files
so I won't post them here. I would like to learn some more about
debugging the log information first. I found an earlier posting by
Thomas:
1. Open the member LOG4RPG (type PROPERTIES)
2. Change log4rpg=off to log4rpg=on
3. Put a '#' sign in front each line that starts with
'log4rpg.logger.WSDL2RPG.client'
4. Do not touch 'log4rpg.logger.WSDL2RPG.eXpatAdapter' because you do
not really want
to see the debug messages of this module.
5. Change 'log4rpg.rootLogger=ERROR, chainsaw' to
'log4rpg.rootLogger=DEBUG, file'.
I now have a (very large) log file.
I've also seen references to amending these option settings
programmatically in the generated code. Which is the most appropriate
method to use?
I've also down-loaded the help file from your site
([1]http://www.tools400.de/Downloads/Freeware/Service-Pgme/Log4rpg_Hel
p_File_Win95__ENG_.zip) as per the same post and am trying to absorb
that as well.
Have I done everything correctly so far? Is there more?
I've down-loaded all the xsd files (13 in all, so I won't be posting
them) but when I run the WSDL2RPG command, I get two warning messages
and then crash:
Warning: Element 'harmony:propertyRef' does not have child elements.
Empty <sequence> tag encountered in WSDL file.
Warning: Element 'harmony:HarmonyKeyRef' does not have child elements.
Empty <sequence> tag encountered in WSDL file.
Application error. MCH3601 unmonitored by WSDL2RPG at statement
0000212800, instruction
X'0000'.
The two elements do not exist in any of the xsd files. Remember this
is a service that is already being used successfully by our front-end,
so I preume it's well-formed. All I'm trying to do is use the same
service in our back-end legacy code so that we can use the green
screen application normally when the browser interface is unavailable.
I was wondering if WSDL2RPG has limits on how many levels of nesting
there might be? Or whether it makes assumptions about the structure of
the WSDLs?
When I look at the log file in /tmp the first reference to
harmony:propertyRef is:
2010-03-30-12.26.19.954000 ZDEBUGs
WSDL2RPG/WSDL2RPG(WSDL2R50).WSDL2R50_TypeDef_newType (26100) Created
(*TYPE): harmony:propertyRef
2010-03-30-12.26.19.955000 ZDEBUGs
WSDL2RPG/WSDL2RPG(WSDL2R59).produceReferenceType (109000) ... added
helper reference type harmony:propertyRef to global types list.
This service has 3 operations:
Option Web Services -> Port -> Operations
tns:HarmonyCAIWebService (service)
tns:HarmonyCAIWebServiceSOAP (port)
tns:GenerateKeys()
tns:MatchCustomerData()
tns:ParseCustomerData()
I discovered that I could put WSDL2RPG into debug mode and stepped
into it, but all I discovered was that the warning messages above are
generated prior to the Select Operation screen appearing indicating
that there is something wrong with the XSDs. Here is the point at
which the warning message is issued:
15543
15544 // Check, whether child elements are present or not
15545 if (not TypeDef_hasChildren(type));
15546 clear USR0025;
15547 USR00251 = TypeDef_toString(type);
15548 AppMsg_sendToCmdLine(AppMsg_new('USR0025': USR0025));
15549 endif;
And here is most of the type structure:
TYPE.ISCHOICE = '0'
TYPE.ISUSED = '0'
TYPE.ISSEQUENCE = '1'
TYPE.ISQUALIFIED = '0'
TYPE.ISEXTENSION = '0'
TYPE.ISABSTRACT = '0'
TYPE.ISSOAPENCODED = '0'
TYPE.REFERENCESTYPE = '0'
TYPE.ARRAYTYPE = '- '
TYPE.ARRAYID = 0
TYPE.DIM = 0
TYPE.LENGTH = -1
TYPE.FRACTION = -1
TYPE.DEFTYPE = '*TYPE'
TYPE.RESERVED_1 = ' '
TYPE.QNAME.LNAME =
....5...10...15...20...25...3
1 'propertyRef
61 '
121 '
181 '
241 '
301 '
361 '
421 '
481 '
TYPE.QNAME.NSPREFIX = 'harmony
TYPE.QNAME.NSVALUE =
....5...10...15...20...25...30...35...40...45...50...55...60
1 'urn:mastersoft.com.au:harmony:cai:ServiceEndpointInterface
'
61 '
'
121 '
'
181 '
'
241 '
'
301 '
'
361 '
'
421 '
'
481 '
'
TYPE.QTYPE.LNAME
=
....5...10...15...20...25...30...35...40...45...50...55...60
1 '
'
61 '
'
And I get the same messages as above when I select any of these
operations.
It appears that WSDL2RPG is creating a new type???
Thanks for your time Thomas.
_________________________________________________________________
The information transmitted in this message and its attachments (if
any) is intended only for the person or entity to which it is
addressed.
The message may contain confidential and/or privileged material. Any
review, retransmission, dissemination or other use of, or taking of
any action in reliance upon this information, by persons or entities
other than the intended recipient is prohibited.
If you have received this in error, please contact the sender and
delete this e-mail and associated material from any computer.
The intended recipient of this e-mail may only use, reproduce,
disclose or distribute the information contained in this e-mail and
any attached files, with the permission of the sender.
This message has been scanned for viruses.
_________________________________________________________________
References
1. http://www.tools400.de/Downloads/Freeware/Service-Pgme/Log4rpg_Help_File_Win95__ENG_.zip
-----------------------------------------------------------------------
This is the FTPAPI mailing list. To unsubscribe, please go to:
http://www.scottklement.com/mailman/listinfo/ftpapi
-----------------------------------------------------------------------