Thx Thomas, I will try that.
Also do I still need to do the same even if my app on jboss is just a web service consumer invoking axis1.2 client calls? i.e. I do not want to deploy my web svcs on it yet.
Actually, Anil, your link points to a previous discussion which has not resulted in a solution.
I too have the same original problem deploying an Axis Stub Client within a Session EJB that was reported in this discussion.
There doesn't seem to be a way (as far as I know) to remove Jboss.net cleanly - and we need this to solve this problem.
I did, however, attempt to solve it by including the jboss-net-client.jar in the lib directory of my server instance (standard). This lead to another error:
Namespace URI cannot be null
Which my investigations tell me is a 'feature' of the JBOSS fork of Axis due for removal in 4.0.2.
Now, it seems that Axis is going to be dropped from JBOSS? This is getting frustrating.... :-(
It is actually very easy
A) Use JBossWS for J2EE-1.4 compliant webservices. You WS client/server code should not have any dependency on a particular SOAP stack (no Axis API should be used)
B) Use JBoss.NET or leagcy Axis based implemenation, which is now deprecated and has entered maintainance
C) Use neither of the above and make sure you remove *all* traces of WS implementation from JBoss before you start deploying whatever SOAP stack you prefer.
Yes, I'm sure it's very easy when you know how....
Before I open up to you how un-easy your proposals are, please would you clarify whether JBOSS provides a JAX-RPC compiler which takes a WSDL file and generates the JAVA interfaces and classes to implement a web service?
I can find nothing in the new Admin Guide, and to quote the book 'J2EE Web Services - The Ultimate Guide (Richard Monson-Haefel):
J2EE vendors provide their own JAX-RPC compilers, some as command-line utilities, some built into GUI deployment tools.
So I expect JBOSS has something we can use?
No jboss does not provide its own compiler, although the new implementation will include a set of tools supporting the new JAX-RPC2 standard. Currently we recommend using the wscompile tool which is part of the Sun JWSDP. There is alot of information about this available in the wiki, so I would recommend taking some time to read through it.
I have tried to create the stubs using wscompile as per the instructions pointed to by the Wiki page (link: Consuming a web service using JAX-RPC), but I get the following error:
error: modeler error: model error: invalid entity name: "schema" (in namespace: "http://www.w3.org/2001/XMLSchema")
This error does not occur using AXIS.
The wscompile command I used:
wscompile -gen:client ../ws-config/gne.xml
The gne.xml config file:
<?xml version="1.0" encoding="UTF-8"?> <configuration xmlns="http://java.sun.com/xml/ns/jax-rpc/ri/config"> <wsdl location="http://gnesearch.au.flitech.net/service/search.asmx?WSDL" packageName="mystuff.datastore.external.gne"/> </configuration>
NOTE that the WSDL url is internal and so does not need a proxy - nor is it accessible from the outside (sorry).
So as you can see I am dammned anywhere I go!
BTW I will raise a new thread on this error as soon as possible. If you think the WSDL file is incorrect, then I'm happy to send it, but as I said AXIS generates the stubs fine.
I have just investigated this wscompile error and note that it is s B-U-G in jax-rpc!
This just isn't my day!
So as you can see - about as easy as parking an elephant on a button...