A simple step by step guide to develop a bottom up web service using Java Web Services Developer Pack.
Step #1 Install JWSDP
Download Java Web Services Developer Pack 1.6 (JWSDP) from http://java.sun.com/webservices/downloads/webservicespack.html and install it. The installation directory will be called hereafter as $JWSDP_HOME.
Step #2 Write code and Package war file
Write an interface and implementation of it. This interface will be exposed as web service through servlet end-point. Write a configuration file named jaxrpc-ri.xml and save it in WEB-INF folder of the project. This configuration file contains information about web service interface and it’s implementation, location of WSDL file, web service URL. All these information will be used by JWSDP at the time of processing input war file for generating web service.
The jaxrpc-ri.xml looks like below-<?xml version="1.0" encoding="UTF-8"?>
The web.xml must have following entries-
<webServices
xmlns="http://java.sun.com/xml/ns/jax-rpc/ri/dd"
version="1.0"
targetNamespaceBase="http://myhost/myService"
typeNamespaceBase="http://myhost/types"
urlPatternBase="/myWs">
<endpoint
name="MyWebService"
displayName="My Web Service"
description="Test JAX-RPC web service"
wsdl="/WEB-INF/myWs.wsdl"
interface="myPackage.MyWsInterface"
implementation="myPackage.MyWsImplementation" />
<endpointMapping
endpointName="MyWebService"
urlPatternBase="/myWs" />
</webServices><listener>
<listener-class>com.sun.xml.rpc.server.http.JAXRPCContextListener</listener-class>
</listener>
<servlet>
<servlet-name>myWs</servlet-name>
<servlet-class>com.sun.xml.rpc.server.http.JAXRPCServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>myWs</servlet-name>
<url-pattern>/myWs</url-pattern>
</servlet-mapping>
Step #3 Process war file
Copy above created war file say myWS-in.war to $JWSDP_HOME/jaxrpc/bin directory and create a directory named tmp there. Open command prompt and go to above mentioned directory and fire following command-$ wsdeploy -o myWs.war myWs-in.war -keep -tmpdir ./tmp -verbose
This will create a war file myWs.war
Step #4 Deploy Processed war file on Tomcat
Now deploy the processed war file,
Step #5 Generate Web Service client
Create a file named config.xml with following contents-<configuration xmlns="http://java.sun.com/xml/ns/jax-rpc/ri/config">
Here location is the URL of the web service WSDL, which may change according to server installation, hence update it accordingly and packageName is the package name of the generated web service client classes, which could also be changed to anything.
<wsdl location="http://localhost:8080/myWs/myWs?WSDL"
packagename="myWsClient" />
</configuration>
Save config.xml in $JWSDP_HOME/jaxrpc/bin directory. Now fire following command-$ wscompile -gen:client -keep config.xml
This will create a directory name
An example of client accessing web service is given below-public class WsTest {
public static void main(String[] args) {
try {
MyWsImpl stub = new MyWsImplService_Impl().getXXX();
((Stub)stub)._setProperty(Stub.ENDPOINT_ADDRESS_PROPERTY, "http://myHost/myWs/myWs");
// call the desired method
stub.xxxXXX(. . .);
} catch (Exception e) {
e.printStackTrace();
}
}
}
Tuesday, August 14, 2007
Bottom Up JAX-RPC web service with JWSDP
Subscribe to:
Post Comments (Atom)
8 Comments:
How do i configure JAX-WS on eclipse.What IDE used for creating a sample web service.
There is nothing to configure about JAX-WS. See this post http://blog.vinodsingh.com/2008/09/building-jax-ws-web-service.html for details about building JAX-WS web services.
HI VINOD, I REALLY LIKE YOUR blogging style.
Could you please let me know how do you add source code in your blog. It looks like some editor. I am refereing to your blog "Bottom Up JAX-RPC web service with JWSDP " where you have embedded some source code in some special format.
Biswajit,
Code formatting is done using
Syntax Highlighter.
Vinod,Thanks for your article. I tried your JAX_WS on Jboss 4.2.3GA. It is working fine.
I need your help to add FAULT to the existing webservice.
Need your advice / samples.
AShok
Hi Vinod
I use stament
D:\JAVAProjects\WSDPExample01>%JWSDP_HOME%\jaxrpc\bin\wsdeploy.bat -verbose -o temp/myWStest.war temp/TestWEB_INF.war
to create WS war file, but I can't do that.
No error message appear.
Pls help me to solve this problem
Thanks
Thanks for your document. I have just resolved my issue by it.
Nguyen Van Hoan
Best eCOGRA Sportsbook Review & Welcome Bonus 2021 - CA
Looking for 1xbet app an eCOGRA sol.edu.kg Sportsbook https://deccasino.com/review/merit-casino/ Bonus? At this eCOGRA Sportsbook review, casinosites.one we're talking about a variety of ECCOGRA sportsbook poormansguidetocasinogambling promotions.
Post a Comment