Creating JAX-WS Webservice using Maven

This tutorial will show you how we can publish and consume SOAP based JAX-WS webservice using maven wsgen and wsimport plugin. For this tutorial we will create two maven projects – first will be an web project and second one will be a standalone project in Eclipse.

If you already have an idea on how to create a maven project in Eclipse will be great otherwise I will tell you here how to create a maven project in Eclipse.

Prerequisites

The following configurations are required in order to run the application

Eclipse Kepler
JDK 1.7
Tomcat 7
Have maven installed and configured
JAX-WS dependencies in pom.xml

Now we will see the below steps how to create a maven based spring project in Eclipse

First we will create service project

Step 1. Create a maven based web project in Eclipse

Go to File -> New -> Other. On popup window under Maven select Maven Project. Then click on Next. Select the workspace location – either default or browse the location. Click on Next. Now in next window select the row as highlighted from the below list of archtypes and click on Next button.

maven-arctype-webapp

Now enter the required fields (Group Id, Artifact Id) as shown below

Group Id : com.roytuts
Artifact Id : soapservice

Step 2. Modify the pom.xml file as shown below.

Step 3. If you see JRE System Library[J2SE-1.4] then change the version by below process

Do right-click on the project and go to Build -> Configure build path, under Libraries tab click on JRE System Library[J2SE-1.4], click on Edit button and select the appropriate jdk 1.7 from the next window. Click on Finish then Ok.

Step 4. Create below HelloServiceImpl.java

Step 5. Modify web.xml file as below under WEB-INF folder

Step 6. Create sun-jaxws.xml file with the below content under WEB-INF folder

Step 7. Now navigate to the project location from command prompt and build using maven tool by executing the below command

Step 8. Now run or deploy the project into Tomcat server

Step 9. Hit the below URL and you will see the output in the browser

SOAP_JAX-WS

Step 10. Click on the below URL to see the WSDL content

SOAP_JAX-WS

Now we will create a client project for consuming the service

Step 1. Create a standalone maven project in Eclipse

Go to File -> New -> Other. On popup window under Maven select Maven Project. Then click on Next. Select the workspace location – either default or browse the location. Click on Next. Now in next window select the row as highlighted from the below list of archtypes and click on Next button.

maven-arctype-quickstart

Now enter the required fields (Group Id, Artifact Id) as shown below

Group Id : com.roytuts
Artifact Id : soapclient

Step 2. Modify the pom.xml file as shown below.

Step 3. If you see JRE System Library[J2SE-1.4] then change the version by below process

Do right-click on the project and go to Build -> Configure build path, under Libraries tab click on JRE System Library[J2SE-1.4], click on Edit button and select the appropriate jdk 1.8 from the next window. Click on Finish then Ok.

Step 4. Navigate to the project location and build the project using maven based tool by executing the below command in command prompt.

Note that the service project (soapservice) must be up and running.

Step 5. Create a Java main class to test the service

Step 6. Now run the HelloClient.java and you will get the below output in the console.

That’s all. Thanks for reading.

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.