Excellent. Now I've got it all working, and we'll add WSIF to our list of Toolkits.
Dave -----Original Message----- From: Anthony Elder [mailto:[EMAIL PROTECTED] Sent: 03 April 2003 16:50 To: [EMAIL PROTECTED] Subject: RE: Can you help with this problem running the complex soap sampl e Yes its probably easier to update your CLASSPATH variable. The existing scripts are really just to help new users try the samples quickly. Be nice to change this in the next release but its a scarry area to touch. I use the following two scripts to do this: WSIF.bat @echo off REM set WSIF_HOME to your WSIF install root directory set WSIF_HOME=\WSIFBuilding\Nightly\wsif if "%WSIF_HOME%"=="" set WSIF_HOME=. if exist %JAVA_HOME%\lib\tools.jar call cp.bat %JAVA_HOME%\lib\tools.jar for %%i in (%WSIF_HOME%\lib\*.jar) do call cp.bat %%i for %%i in (%WSIF_HOME%\build\lib\*.jar) do call cp.bat %%i set CLASSPATH=%WSIF_HOME%\build\tests;%WSIF_HOME%\build\samples;%WSIF_HOME% \build\classes;%CLASSPATH% @echo %CLASSPATH% and cp.bat: set CLASSPATH=%1;%CLASSPATH% ...ant Anthony Elder [EMAIL PROTECTED] Web Services Development IBM UK Laboratories, Hursley Park (+44) 01962 818320, x248320, MP208. [EMAIL PROTECTED] on 03/04/2003 16:31:17 Please respond to [EMAIL PROTECTED] To: [EMAIL PROTECTED] cc: Subject: RE: Can you help with this problem running the complex soap sampl e Anthony, Thanks very much. I think this is because I had to run all commands from D:\wsif, as that is where classpath.bat is run from. In order to do that I had to add complexsoap.client.stub in front of the package names. Should I put the contents of the classpath into the CLASSPATH environment variable instead ? Doing it the way suggested in the examples just doesn't seem to work. Cheers Dave Technical Architecture BT -----Original Message----- From: Anthony Elder [mailto:[EMAIL PROTECTED] Sent: Thu 03/04/2003 16:20 To: [EMAIL PROTECTED] Cc: Subject: RE: Can you help with this problem running the complex soap sampl e This works ok for me. One likely reason you see this type of problem is when the complex type package name is not what the automatic type mapping expects so it can't find your complex type classes. How did you generate the types or WSDL? If the complex type package name is different from the type namespace you'll need to tell WSIF with a mapPackage call. For example, using the WSDL you sent if I generate the complex types and testcase with: java org.apache.wsif.tools.WSDL2Java -v -t ch020x.wsdl It all works ok as the namespace http://www.bt.com/css/mmbi/2002/06/types <http://www.bt.com/css/mmbi/2002/06/types> is mapped to the default package name of com.bt.www.css.mmbi._2002. _06.types. However if I use override the default package name with: java org.apache.wsif.tools.WSDL2Java -v -t -pdefects.prout ch020x.wsdl Then it fails with the same error as you report as WSIF cant find the complex type classes. To fix this you need to change the CH020XTestCase after the factory getService call to include: service.mapPackage( "http://www.bt.com/css/mmbi/2002/06/types <http://www.bt.com/css/mmbi/2002/06/types> ", "defects.prout"); (Probably a bug that the WSDL2Java testcase doesn't add the call itself when you override the default package, but these tools are still in beta) ...ant Anthony Elder [EMAIL PROTECTED] Web Services Development IBM UK Laboratories, Hursley Park (+44) 01962 818320, x248320, MP208. [EMAIL PROTECTED] on 03/04/2003 14:16:17 Please respond to [EMAIL PROTECTED] To: [EMAIL PROTECTED] cc: Subject: RE: Can you help with this problem running the complex soap sampl e Here's the wsdl for the problem below Dave -----Original Message----- From: Anthony Elder [mailto:[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> ] Sent: 03 April 2003 13:54 To: [EMAIL PROTECTED] Subject: Re: Can you help with this problem running the complex soap sample Could you post the wsdl for this. If the attachments are large its probably better to raise a bugzilla and add any attachments to that. See http://ws.apache.org/wsif/bugs.html <http://ws.apache.org/wsif/bugs.html> ...ant Anthony Elder [EMAIL PROTECTED] Web Services Development IBM UK Laboratories, Hursley Park (+44) 01962 818320, x248320, MP208. [EMAIL PROTECTED] on 03/04/2003 09:35:23 Please respond to [EMAIL PROTECTED] To: [EMAIL PROTECTED] cc: Subject: Can you help with this problem running the complex soap sample Hi, I've amended the comples soap sample to try to run of my web services. When I run it I get the following error D:\wsif>java complexsoap.client.stub.RunCH020X samples/complexsoap/CH020X.wsdl 1 0005 Error while executing sample, received an exception from WSIF; details: org.apache.wsif.WSIFException: Method getCustomerProfile(class complexsoap.clien t.stub.com.bt.www.css.mmbi._2002._06.types.E2E, class complexsoap.client.stub.co m.bt.www.css.mmbi._2002._06.types.MmbiInput, class java.lang.String) was not fou nd in portType {http://www.bt.com/css/mmbi/CH020X/ <http://www.bt.com/css/mmbi/CH020X/> }CH020XSoapPort at org.apache.wsif.base.WSIFClientProxy.findMatchingOperation(Unknown So urce) at org.apache.wsif.base.WSIFClientProxy.invoke(Unknown Source) at $Proxy0.getCustomerProfile(Unknown Source) at complexsoap.client.stub.RunCH020X.main(runch020x.java:73) The method exists in CH020XSoapPort, and it has the right signature. Is this likely to be something wrong in my code in RunCH020X.java, or a problem with the wsdl. Am I allowed to insert attachments for wsdl and program source in emails to this list ?# Thanks Dave Dave Prout Technical Architecture 01442 296778 -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> ] Sent: 02 April 2003 22:06 To: [EMAIL PROTECTED] Subject: RE: Can't get dynamic invocation working - now works Ant, I downloaded the nightly build from 1st April, and now it works. I'd still like to know if I should/could use WSIF for more complex method calls with four or five input fields. These are services that ultimately run on our IBM mainframes under CICS. Dave -----Original Message----- From: Anthony Elder [mailto:[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> ] Sent: Wed 02/04/2003 18:49 To: [EMAIL PROTECTED] Cc: Subject: Re: Can't get dynamic invocation working Hi Dave, the problem you're having is the same as an existing bugzilla: http://nagoya.apache.org/bugzilla/show_bug.cgi?id=18520 <http://nagoya.apache.org/bugzilla/show_bug.cgi?id=18520> . I hope to get a fix in for this tomorrow. Incidentally you don't really need to copy WSDL locally to monitor calls with TCPMON. In the TCPMON Admin screen if you select Act as a proxy you can then set the Java proxy system properties to point to this when you run your wsif client. For example if TCPMON is acting as a proxy on port 4321: java -Dhttp.proxyHost=localhost -Dhttp.proxyPort=4321 clients.DynamicInvoker http://www.bipolar.org.uk/webservices/StringOut.asmx?WSDL <http://www.bipolar.org.uk/webservices/StringOut.asmx?WSDL> getName(StringOutSoap) ...ant Anthony Elder [EMAIL PROTECTED] Web Services Development IBM UK Laboratories, Hursley Park (+44) 01962 818320, x248320, MP208. Aleksander Slominski <[EMAIL PROTECTED]> on 02/04/2003 17:39:55 Please respond to [EMAIL PROTECTED] To: [EMAIL PROTECTED] cc: Subject: Re: Can't get dynamic invocation working [EMAIL PROTECTED] wrote: > Hope you saw my two emails of last night. > > Trying to do as you said and use tcpmon. How do I change the port >that the Dynamic Invokes calls ? > > Thanks > > hi Dave, simple thing to do is to save WSDL document locally and edit it to change port address to point to localhost:port where tcpmon is running and use such modified WSDL. you can also modify dynamically WSDL just before invoking methods on it by using WSDL4J API but it requires more effort. here is one possible way to do this described: http://marc.theaimsgroup.com/?l=wsif-user <http://marc.theaimsgroup.com/?l=wsif-user&m=104563322923276&w=2> &m=104563322923276&w=2 thanks, alek > > > >-----Original Message----- >From: Aleksander Slominski [mailto:[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> ] >Sent: 01 April 2003 17:15 >To: [EMAIL PROTECTED] >Subject: Re: Can't get dynamic invocation working > > >[EMAIL PROTECTED] wrote: > > > >>Hi, >> >> I'm trying to use DynamicInvoker to call a simple service defined in >>.Net, that takes one string in, and returns this as out put. >> >> Although the call doesn't produce any errors, it also doesn't >>produce any output. >> >> Can you think of anything I might be missing, or do you need all the >>details >> >> >> >hi, > >yes - if you provide more details such as how you execute dynamic >invoker, what WSDL is used, and what are SOAP messages on the wire (use >tools such as TCP Mon or as described in AXIS users guide: > http://cvs.apache.org/viewcvs.cgi/~checkout~/xml-axis/java/docs/user-guide.h <http://cvs.apache.org/viewcvs.cgi/~checkout~/xml-axis/java/docs/user-guide . h> >tml#tcpmon) >then there is good chance somebody will be able to help you but if you >say it does not work it is not too helpful (i can say you that it works >for me ...) > >thanks, > >alek > > > -- "Mr. Pauli, we in the audience are all agreed that your theory is crazy. What divides us is whether it is crazy enough to be true." Niels H. D. Bohr
