I guess my questions do not make too much sense since nobody us replying :-)
I will try to do further research.
I'd like to add two more questions (hopefully these ones make nore sense):
1) Can I create multiple cache instances (multiple MBean instance for a TreeCache) and that they all share the same JGroups channels? If yes, is there any recommendations as when it is better to share or not? I have the impression that the protocol stak of JGroups is doing enough things that for a few caches without too many objects in it, sharing the channels is better from a network traffic point of view.
2) What are the classpath requirements for the TreeCache MBean? Does it need to have in its classpath the classes of the object that will be cached? It seems not to be the case with JBoss but JBoss class loading is "special enough" that I do not know if it will be the case if I do the same thing on WebSphere or WebLogic for example.
Basically, I'd like to see if I can create a J2EE application to wrap the JBossCache Mbean in order to create and manage caches instances dynamically (create and register new Mbeans dynamically) and have some other J2EE applications (deployed in a separate ear) accessing this cache management app and adding new objects in a new cache (through a session facade). On WebSphere and WebLogic, the two app are definitely not sharing classes and I am wondering if that will work.
For example, the documentation is saying that TreeCacheAOP does not need to have serializable classes because class instances are re-created via reflection. If this is the case, I suppose that I need the cached object class in the classpath somewhere, don't I?
Here are the answers to some of your questions. Sorry for the late reply. Bela and I are swamped recently.
1. Locking. Yes and no. During a tx context, locking is obtained in the current node. But it is not propogated untill tx is committed. If it fails, it will rollback.
2. XAResource is not implemented yet.
3. There is currently no security mechanism
4. Yes, you can create multiple cache clusters sharing the smae channel (but different cluster names). Main problem is if the cache cluster traffic is heavy, the channel will become nosiy.
5. JBossCache deployed under application server (e.g. JBoss AS) requires special attention for classloader scope if you application has special scope (e.g., different child repository under JBoss). I have posted this couple weeks back. I will put this into FAQ.
Thanks for the answers. I appreciate.
I think I found the post you mentioned about the class loader (http://www.jboss.org/index.html?module=bb&op=viewtopic&t=52082).
I will do a few tests as I need JBossCache to work in WebSphere and WebLogic (which, I think have scoped class loader by default).