Help needed: Why do we have to place the service classes in axis.war/soap.war etc...
Joined: May 03, 2010
I'm a newbie in developing webservices. However, I kept trying from two months mastering it. and read through books. surfed through a lot of good sites. Practiced and developed simple services using different API's includes:
SOAP 2.3.1, AXIS 1.4 ( latest ones ) However, started from XML RPC as well.
App Server: JBoss.
And I always had a doubt, why do we have to place our service classes in the axis.war/soap.war depoyed on the server.
So many experts had written services and given to people like us to start with. But my doubt is "A service is a business logic which involves a lot of business related information there". Why do we have to put those classes alone there in a different WAR. i.e., AXIS/SOAP war files.
I know without placing there that our service won't be detected. Is it how we should be devloping...? Because, I've seen services running simply without placing anything into Axis API. Masters here, kindly kindly advice and clear up my doubts...
One more doubt: Using this Axis API/Soap API how do I view the soap responses. I was very eager to view it. but I couldn't...
I know the tcp mon tools which shows the soap responses. But, I don't want it that way. through my program, how can i view the soap response...?
Thanks in advance for taking out your time...!!!
(SCJP 5.0, SCWCD 5.0, Certified for IBM Commerce)
Joined: Feb 19, 2010
Hi Murthy. I am also new to this, and here is what I have learned regarding your queries:
There is this thing called a "deployment directory" where you need to place your code (war) so that it will be picked up by your web service backend SOAP engines. The directory may vary with the vendor (e.g. Axis, WebLogic). "applications", "deploy" and "webapps" are some of the directory names you may have come across.
Regarding "place our service classes in the axis.war/soap.war": Its a convention, though in most real projects, the name will be different. The common item that all the wars will have is axis.jar (not war) which contains the Axis code that enables us to write web services. The war contains your web application. If your project is "Shopping Cart", then your file might be called "shoppingcart.war".
All are welcome to correct and/or add to the above Thanks.