Hello Xasima,
WADI does not yet provide a POJO caching solution.
Regarding the http://incubator.apache.org/wadi/wadi-core/apidocs/org/
codehaus/wadi/gridstate/impl/GCache.html class, AFAIK it was more an
idea than an actual fully working caching implementation.
I know that a Geronimo POJO caching solution, GCache, was implemented
a while back in the geronimo-sandbox and documented here http://
cwiki.apache.org/GMOxDEV/geronimo-clustering-with-gcache.html.
However, as this caching solution has not been touched for a while, I
do not think it is in a working state.
The approach you are taking seems to me reasonable and I think it
would be quite useful for other users to have such GBean services for
JCS or EHCache.
FYI, I am currently working on the implementation of a hierarchical,
transactional, distributed, partitioned and replicated cache and data-
grid solution as part of WADI. I hope to have a working solution at
the end of the month and hopefully before you having the need for it :)
Thanks,
Gianny
On 01/05/2008, at 2:22 AM, Xasima Xirohata wrote:
Hi. I want to figure out what is the proper strategy to plug-in
POJO cache into geronimo (2.1).
I want to use the different implementation of caching (HashMap,
EHCACHE, JCS) and work in standalone mode (not explicit clustering
support for the first time).
In the existed code we just want to get a cache instance using
JNDI, cast this to java.util.Map and invoke plain put/get methods.
I have explored geronimo docs and found the following possibilities:
1) use the terracotta (http://www.terracotta.org/confluence/
display/orgsite/Distributed+Caches) that exposes such an wrapper
around different implementation.
2) use the wadi and the http://incubator.apache.org/wadi/wadi-
core/apidocs/org/codehaus/wadi/gridstate/impl/GCache.html class
somehow
3) use the custom gbean as wrapper upon different
implementation of caching (as the general solution for any separate
custom services).
Unfortunately, the 70Mb size of Terracotta seems too heavy to use
for such a use case when I don't plan to work with clustering at once.
I don't found a page to integrate this options with WADI, please
provide some details on this..
So I have stopped with the last way. I think that having POJO cache
exposed as gbean (instead of using as regular embedded jar) is a
right strategy since it is quite naturally to
1) implement initializing, clearing, storing (if persistence is
on) of POJO cache when the correspondent geronimo lifecycle events
occur
2) providing different <attribute > </attribute> in the gbean
plan to configure in external manner different POJO cache parameters
3) having MBean that reports on state and loads of the cache
( it may be interesting how much objects are consumes from this
and if we need to change expiration policy or allocate more size)
Am I right with the approach? Do you have any predefined gbeans (or
prototype in sandbox code area) code for this?
Could I use WADI for this purpose?
--
Best regards,
~ Xasima Xirohata ~