Archive
Archive for January, 2013
Java Webservice with Axis
January 20, 2013
Leave a comment
WebServices with Apache Axis:
A) Creating the WebService Server.
- Create a java dynamic web project with eclipse
2. Create Java Class, this class will contain a method which converts a given string into upper case string, very small method. We will call this method from the webservice client program.package com; public class TestWebService { public String getName(String name){ return name.toUpperCase(); } }
3. Righ click on the class select New -> WebServices -> WebService
4. Click Next -> Next
5. Click on Start Server leave everything as default and click finish
6. Now check http://localhost:8080/WebServiceTest/services/TestWebService?wsdl in browser
It will give you the WSDL file
<wsdl:definitions targetNamespace="http://com"><!--WSDL created by Apache Axis version: 1.4 Built on Apr 22, 2006 (06:55:48 PDT)--><wsdl:types><schema elementFormDefault="qualified" targetNamespace="http://com"><element name="getName"><complexType><sequence><element name="name" type="xsd:string"/></sequence></complexType></element><element name="getNameResponse"><complexType><sequence><element name="getNameReturn" type="xsd:string"/></sequence></complexType></element></schema></wsdl:types><wsdl:message name="getNameRequest"><wsdl:part element="impl:getName" name="parameters"> </wsdl:part></wsdl:message><wsdl:message name="getNameResponse"><wsdl:part element="impl:getNameResponse" name="parameters"> </wsdl:part></wsdl:message><wsdl:portType name="TestWebService"><wsdl:operation name="getName"><wsdl:input message="impl:getNameRequest" name="getNameRequest"> </wsdl:input><wsdl:output message="impl:getNameResponse" name="getNameResponse"> </wsdl:output></wsdl:operation></wsdl:portType><wsdl:binding name="TestWebServiceSoapBinding" type="impl:TestWebService"><wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/><wsdl:operation name="getName"><wsdlsoap:operation soapAction=""/><wsdl:input name="getNameRequest"><wsdlsoap:body use="literal"/></wsdl:input><wsdl:output name="getNameResponse"><wsdlsoap:body use="literal"/></wsdl:output></wsdl:operation></wsdl:binding><wsdl:service name="TestWebServiceService"><wsdl:port binding="impl:TestWebServiceSoapBinding" name="TestWebService"><wsdlsoap:address location="http://localhost:8080/WebServiceTest/services/TestWebService"/></wsdl:port></wsdl:service></wsdl:definitions>
B) Creating the WebService Client
- Right click and select New-> WebService->WebServiceClient
2. Paste the WSDL path in server definition and change the client project to WebServiceTestClient( you can give anything as a name)
3. Click Next and Finish
4. It will create a new java dynamic project with named as WebServiceTestClient and some java files
5. Open TestWebServiceProxy.java and write a main() method in that
TestWebServiceProxy.java
public static void main(String... args){ try{ TestWebServiceProxy proxy = new TestWebServiceProxy(); String name = proxy.getName("webservice"); System.out.println("name -->"+name); }catch(RemoteException re){ re.printStackTrace(); } }
C) Running the client
Right click on TestWebServiceProxy.java and run as java application, it will print the result in Uppercase.
Categories: Java, WebService