Creating jax-ws webservice in Mule Project

This tutorial shows how to create jax-ws webservice in Mule ESB step by step. You need to have some idea on SOAP based webservice otherwise it will be a bit difficult to understand. From jdk 6 onwards we don’t need to put any extra jar for jax-ws based webservices as it comes out of the box. You can also implement jax-ws service using Metro, Axis2, CXF framework and among them Metro implementation has the best support for jax-ws service.

Prerequisites

Mule Studio 3.5.0
Mule 3.4.1
JDK 1.6
Maven 2.x

Step 1. Create Mule Project in Mule Studio from the navigation File -> New -> Mule Project. Make sure that Group Id and Artifact Id are given. Artifact Id is same as Project Name. Click Next.

creating jax-ws webservice in Mule ESB

Step 2. Check “Use default location” or you can change the project location as per your choice. Click Finish.

creating jax-ws webservice in Mule ESB

Step 3. Do right-click on jax-ws-cxf.mflow and rename to jax-ws-publisher.mflow because we are going to create webservice publisher.

creating jax-ws webservice in Mule ESB

Step 4. Do double-click on jax-ws-publisher.mflow and create a flow like below screen-shot
Endpoint: HTTP
Components: SOAP and Java

creating jax-ws webservice in Mule ESB

Step 5. Now click on jax-ws-publisherFlow1 and rename it to jax-ws-publisher. Click Save toolbar.

creating jax-ws webservice in Mule ESB

Step 6. Do double-click on HTTP endpoint and change the below properties
Host: localhost
Port: 8084
Path: jax-ws-publisher

creating jax-ws webservice in Mule ESB

Step 7. Before editing SOAP and Java components create jax-ws service – HelloService.java under src/main/java. This is an Interface java file. Also create an implementation class HelloServiceImpl.java

 

Step 8. Do double-click on SOAP component and change the properties

creating jax-ws webservice in Mule ESB

Step 9. Do double-click on the Java component and select the HelloServiceImpl.java for Class Name. Save All.

creating jax-ws webservice in Mule ESB

Step 10. Do right-click on jax-ws-cxf and run as Mule Application

creating jax-ws webservice in Mule ESB

Step 11. You will see the output similar like below at the end if successfully starts up

creating jax-ws webservice in Mule ESB

Step 12. Now hit the URL  http://localhost:8084/jax-ws-publisher?wsdl in the browser. You will see the WSDL output

creating jax-ws webservice in Mule ESB

So we have seen how to create a jax-ws webservice in Mule Project. We will see also consuming jax-ws webservice in Mule Project.

Thanks for your reading. Please do not forget to leave a comment.

Soumitra

Software Professional, I am passionate to work on web/enterprise application. For more information please go to about me. You can follow on Twitter. You can be a friend on Facebook or Google Plus or Linkedin

Leave a Reply

Your email address will not be published. Required fields are marked *

Time limit is exhausted. Please reload CAPTCHA.