...
- Tuscany modules should be deployable in Apache Geronimo.
For this we need to write a geronimo-plugin with a deployer that can handle tuscany modules.
On how to write a geronimo-plugin please refer the link below.
http://cwiki.apache.org/GMOxDOC11/advanced-plugin-sample.html
Initially we will be using a server wide SCADomain instance. The
org.apache.tuscany.sca.host.embedded.impl.EmbeddedSCADomain implementation or a derived
class will be used and exposed as a GBean in geronimo so that all the other configurations can
lookup the domain via GBean lookup and add their composites.
- Tuscany modules should use the existing geronimo http and web-service infrastructure. Geronimo provides both Tomcat and Jetty as web containers. They should be used for all incoming
http requests. This can be achieved by writing a custom
Create a tuscany-http-geronimo module that contains a geronimo specific.
We need to write a class that implements the
...
org.apache.tuscany.sca.http.ServletHost
interface. This interface has 2 methods namely
void addServletMapping(String uri, Servlet servlet) throws ServletMappingException;
Servlet removeServletMapping(String uri) throws ServletMappingException;
We need to implement these methods such that they will add the servlet passed to the
context corressponding to the URI in geronimo. If there is no context then a new context
must be created and the servlet should be added to that context. We should be able to add
to default context as well. We shouldn't be able to add to contexts of other web
applications. Here also geronimo can have either Jetty or Tomcat as the web container. Initially the
idea is to just support Tomcat.
- Tuscany modules should use the existing geronimo rmi infrastructure.
tuscany-host-rmi needs to be replaced with a geronimo specific version that uses
geronimo rmi infrastructure interface and registering it in the extension point registry.
This class is where the integration logic should be written
Geronimo also provides both axis2 and cxf as web service containers. These should be used instead of
separate instances.
Initially this is what we will be trying to achieve.
Things that need to be investigated
Better integration of the bindings to take care of using geronimo infrastructure
a)tuscany-binding-ejb
b)tuscany-binding-jms
c)tuscany-binding-rmi
d)tuscany-binding-ws
There are three mail chains providing more info
...