Would OSGi would be more useful to "end users" or to those who want to "embed" and "bundle" Axis2?

Samisa...

Asankha C. Perera wrote:
Saminda

Thanks for the detailed reply.. Please see my comments below, I will only take the top 5 points for each list I asked for to keep this discussion short, as I believe these are in the order of importance/use
1. When aar/mar behavior is mimicked in an OSGi bundle, these bundles be able to live in different class spaces. ex: If the bundles needed different hibernate versions they can be easily plug into different class spaces.
I see this as a good use for the "end users"!

2. We will be able to have multiple version of Axis2 instancres running inside same JVM.
   This require the need of minimizing System properties.
But you really will need to change ports/queues etc to really run two axis2 versions. (i.e. there is no way two instances can share the same http/s port, or the JMS queue or check for email on the same account etc..). So the probability of this use and the value would be less. So this is not a good candidate for position # 2.
3. Axis2 will be able to initiate same transport with different versions. This will require proper integration of OSGi services. I haven't touched this area yet, otherwise whole situation will be overwhelming.
See comment above.. again this is not something and "end user" will see much value in.. its like being able to deploy the same transport twice - at the same time. Also transports would be tied to axis2 versions, and if you have a newer version, its probably much better than a previous one anyway.. so again I don't see this as a good candidate for position # 3
4. OSGi life-cycle support. This will give the ability to start/stop/install/update/uninstall bundles. ex: I have myModule.jar which would mimic myModule.mar. We will be able use the above actions to to manipulate the AxisModule as we need.
What most end users would do is write services.. and I believe they already can do some amount of life cycle management.. can you tell me what "new" improvements this will give?
5. Once a user has written a bundle (which mimic aar/mar/transport/etc), they just need to upload them into a "Axis2 bundle repository", where the community can search them and install them into there system, without shutting down the running system.
Typically a "user" written aar file is not really shared AFAIK.. but this is possible even as they are already.. as for the mar's - the most famous ones are rampart, sandesha/mercury etc.. which are "released".

=================================================
In Synapse point of view.

1. Mediators can be written as OSGi bundles. When you start the bundle, the proper factory is called and build the relevant object model.
This is irrelevant, you will not just "add a mediator" at runtime.. but you can configure or update your sequence etc at runtime, and you can do it now itself (e.g. WSO2 ESB)
2. Different version of same mediator is highly possible. i.e two mediator can live in two different class spaces.
Again, this is highly unlikely, since a newer version is better improved or fixes a bug of an older version, also you will not be able to configure two mediators as they register a unique QName in the configuration.
3. You will be able to remove Sun service providers facility of loading extension to bundles, which will be support in all Java implementations.
This maybe good, but does not itself show much advantage, as we can do the Sun service provider with a bit of custom code in any JDK anyway..
4. Synapse guys like embedded devices ?
Not me.. but Synapse is being embedded.. but I don't see how this has relevance

thanks
asankha

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




--
Samisa Abeysinghe

http://people.apache.org/~samisa/


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to