SYSMGR

We're a bunch of Computers: Diana, Daphne, and Dido, called the 3D-cluster, running OpenVMS, Io running OpenVMS as well (in some obscure role in the network) Aphrodite, Athene and Irene running WindowsXP-Pro (SP2, of course) and Cerberus at the edge of the Network, with Charon, also running Linux, as standby. SYSMGR takes care of us.

Thursday, October 27

27-Oct-2005

SOAP continues (of course)
(Review)
Just read yesterday's episode.
(Today's developments)
From the axis user mailing list I got a web page http://www.oio.de/axis-wsdd/wsdlFile.htm that says that adding the code in server-config.wsdd like done is NOT the answer: the WSDL must be referenced.
Today I had the chance to try the recommendations to export the same WSDL that is the base for all code. I removed ALL code, except for the service definition itself, and added:

<wsdlFile>bps_amazone.wsdl</wsdlFile>

and placed the file in Tomcat's [.webapps.axis.WEB-INF.classes] directory, because the same page tells:

The file is sought in the current directory which is typically the directory in which the VM was started. The file is not sought in the base directory of the Axis Web application. However, the file is sought in the classpath, so the WSDL file can be placed inside the directory WEB-INF/classes.


That is not true - on OTVMS1 at least: It wasn't found.
What I dislike most is that accessing the service with ?wsdl (that should show the WSDL, either generated or specified) just returns a HTTP 500 error (internal Server error) but that the reason doen't show up ANYWHERE - I checked all logs but found nothing!

Tried the lib directory, aside the .jar file, but that didn't help much either.
At least, I followed the same syntax as the page:

<wsdlFile>/srv/webapps/axis/bps_amazone.wsdl</wsdlFile>

and I placed the file in the axis directory.
That requires that SRV is defined as a system logical (concealed attribute, at least) :

"SRV" = "systemdisk:[SYS0.SYSCOMMON.APACHE.JAKARTA.TOMCAT.]

but that can easily be handled.
Anyway: Now the right WSDL shows up

Oops: I made a change in the type of one of the methods, for testing purposes, and that was included in the service but didn't show up in the WSDL file: I copied the wrong one. Got it in the editor, copied the line, commented one ot and changed the other - and checked without stopping and starting Tomcat - and found the FULL change, including the out-commented line - as a comment.. Appearently, when a WSDL-file is referenced like now, ?wsdl does just a TYPE over HTTP, in stead of generating a WSDL file.

Told the collegues that a correct WSDL is available - the same the generated the code - and have them retry in their .NET environment. Now wait....
(Next episode)
Get everything on Diana in line with OTVMS1, deploy the service on Diana - the same way as on OTVMS1 - and test the basic functions currently ready.
(Preview)
Wait for the .NET testprogram to test the other functions.
Work on header info, because information in theer is required (authentication and authorisation - and setting environment in commandprocedure run by java code of service.
(will be continued)

Note:
Of course, I stopped and started Tomcat after each change - except when editing bps_amazone.wsdl....

0 Comments:

Post a Comment

<< Home