Petals-SE-JSR181

compared with
Key
This line was removed.
This word was removed. This word was added.
This line was added.

Changes (4)

View Page History

If you want more details about jsr181, you can consult this the specification on the Java Community Process portal : [http://jcp.org/en/jsr/detail?id=181|http://jcp.org/en/jsr/detail?id=181]

{column}
{column:width=350px}
{include:0 CDK SU Provide Configuration}
\\
*Configuration of a Service Unit to provide a service (JSR181)*
{table-plus}
|| Parameter\\ || Description\\ || Default\\ || Required\\ ||

h3. Annotated class

\\
The following class is a sample of JSR181 annotated class (taken from the Petals usecase sources) :
{code}package org.ow2.petals.usecase.jsr181;

import java.text.SimpleDateFormat;
import java.util.Date;
import javax.jws.WebMethod;
import javax.jws.WebService;

/**
*
* @author chamerling - eBM WebSourcing
*
*
* NOTE : The
* @WebService parameters are not used by the component, the service name is
* defined in the service unit. Need to modify the CDK to be able to
* create the endpoint from these values...
*/
@WebService(serviceName = "Hello", name = "MyService", targetNamespace = "http://petals.ow2.org")
public class TestService {

/**
* Say hello to the world !
*/
@WebMethod
public String sayHello(String str) {
System.out.println("Hey! This is the sayHello operation.");
return "You say me " + str;
}

/**
* Get a person from its id only to test 'complex' data binding.
*
* @param id
* @return
*/
@WebMethod
public Person getPerson(int id) {
System.out.println("Get person " + id);
return new Person(id, "Christophe", "Hamerling", 29, "France");
}

/**
*
* @return
*/
@WebMethod
public String getTime() {
System.out.println("Get time");
return new SimpleDateFormat().format(new Date(System.currentTimeMillis()));
}

/**
* NOP
*/
@WebMethod
public void voidvoid() {
System.out.println("The Void operation");
}

/**
* The final operation will be 'specializedOperation'
*/
@WebMethod(operationName = "specializedOperation")
public void operation() {
System.out.println("The specialized operation");
}

/**
*
* @throws Exception
*/
@WebMethod
public String iAmThrowingAnException() throws Exception {
System.out.println("throw exception");
throw new Exception("This is a server side Exception");
}
}{code}