I define a transaction is a set of continuous activities (one method or set of methods) in a component.
I wrote a simple example as follows:
//service interface
public interface Hello {
String sayHello(String name);
String sayBonjour(String name);
}
//service implementation
@Component
public class HelloImpl implements Hello {
public String sayHello(String name) {
//start local transaction
return "hello " + name;
//finish local transaction
}
public String sayBonjour(String name) {
//start local transaction
return "bonjour " + name;
//finish local transaction
}
}
//client
@Component
public class Client {
Hello client;
public Client() {
//start local transaction
client.sayBonjour(client.sayHello("world"));
//finish local transaction
}
}
In this example, there are local transactions in the components HelloImpl and Client. I define that global transaction of the system consists of a set of local transactions through all components.
How to manage transactions (global transaction and the local transtions in this example) in OSGi or iPOJO ?
Regards,