Monday, July 01, 2013

Simple JAX-WS webservice in WebLogic using Java

1. Build jax-ws webservice using annotations
package foo;

import javax.jws.WebService;
import javax.jws.WebMethod;
import javax.jws.soap.SOAPBinding;

@WebService(name = "ConversionService", serviceName="ConversionService", targetNamespace = "http://tempuri.org/")
@SOAPBinding(style = SOAPBinding.Style.DOCUMENT, use = SOAPBinding.Use.LITERAL)
public class ConversionServiceImpl implements ConversionService {


/* (non-Javadoc)
* @see foo.ConversionService#convert(double)
*/
@WebMethod(operationName = "convert")
public double convert(double i)
{
double answer = 1.0;
return answer;
}
}

2. sun-jaxws.xml
<?xml version="1.0" encoding="UTF-8"?>
<endpoints
  xmlns="http://java.sun.com/xml/ns/jax-ws/ri/runtime"
  version="2.0">
  <endpoint
    name="ConversionService"
    implementation="foo.ConversionServiceImpl"
    url-pattern="/ConversionService"/>
</endpoints>

3. web.xml
<listener>
<listener-class>com.sun.xml.ws.transport.http.servlet.WSServletContextListener</listener-class>
</listener>

<servlet>
<servlet-name>jaxws</servlet-name>
<servlet-class>com.sun.xml.ws.transport.http.servlet.WSServlet</servlet-class>
</servlet>

<servlet-mapping>
<servlet-name>jaxws</servlet-name>
<url-pattern>/ConversionService</url-pattern>
</servlet-mapping>

4. WebLogic's web service test client
http://localhost:7001/wls_utc/

5. Access webserice wsdl
http://localhost:7001/WARContextRoot/ConversionService?wsdl

No comments: