think you hit the fact the built-in jcache.ccf is used cause before your own one in the classpath, https://issues.apache.org/jira/browse/JCS-152 fixes it
Romain Manni-Bucau @rmannibucau <https://twitter.com/rmannibucau> | Blog <http://rmannibucau.wordpress.com> | Github <https://github.com/rmannibucau> | LinkedIn <https://www.linkedin.com/in/rmannibucau> | Tomitriber <http://www.tomitribe.com> 2015-09-07 5:45 GMT-07:00 Steve Goldsmith <[email protected]>: > OK, so now that is out of the way, is there a way to configure a cache with > commons-jcs configuration file? It doesn't seem to pick up my jcache.ccf in > the classpath. If that works I can live without getCacheNames picking it > up. > > On Sat, Sep 5, 2015 at 7:19 PM, Romain Manni-Bucau <[email protected]> > wrote: > > > Le 5 sept. 2015 06:22, "Steve Goldsmith" <[email protected]> a écrit : > > > > > > I believe the behavior of -all- providers should be the same from a > > JCache > > > perspective. I'm not sure why it matters how I create the cache if it's > > > visible to JCache API getCacheManager().getCache("testCache") then > > > testCache should show up via getCacheNames. It's not a game changer for > > me > > > right now, but what happens when someone relies on the behavior of > > > getCacheNames? > > > > > > > Should be but is not specified. > > > > GetCache doesnt create a cache by spec. CreateCache does. > > > > > On Fri, Sep 4, 2015 at 5:40 PM, Romain Manni-Bucau < > > [email protected]> > > > wrote: > > > > > > > Then you suppose it is created if declare which is another not > defined > > > > assumption. Why wouldnt it be lazy? > > > > > > > > My point is only you cant rely on what you suppose if you want to > stay > > > > standard and not to say it is good or bad. > > > > Le 4 sept. 2015 23:09, "Steve Goldsmith" <[email protected]> a écrit > : > > > > > > > > > In my mind it should show up even if it's automatically created. > > > > > On Sep 4, 2015 3:06 PM, "Romain Manni-Bucau" < > [email protected]> > > > > > wrote: > > > > > > > > > > > We can in jcs since we have it but not sure from a API point of > > view > > > > what > > > > > > is better - trying to not use test as an excuse ;) > > > > > > Le 4 sept. 2015 20:42, "Steve Goldsmith" <[email protected]> a > > écrit > > : > > > > > > > > > > > > > Yea, just nice to see the cache show up before you use it in > unit > > > > tests > > > > > > :) > > > > > > > Not a biggie from a normal coding perspective. > > > > > > > > > > > > > > On Fri, Sep 4, 2015 at 2:32 PM, Romain Manni-Bucau < > > > > > > [email protected]> > > > > > > > wrote: > > > > > > > > > > > > > > > Not portable behavior then. But nothing in the standard about > > the > > > > > > config > > > > > > > so > > > > > > > > looks ok and if your cache is not therz size is empty so nthg > > > > > blocking > > > > > > > IMO. > > > > > > > > Le 4 sept. 2015 20:25, "Steve Goldsmith" <[email protected]> > a > > > > écrit > > > > > : > > > > > > > > > > > > > > > > > So, you have to explicitly do the createCache? This is > > different > > > > > > > behavior > > > > > > > > > then Ehcache provider. I do not want to code to a provider > if > > > > > > possible. > > > > > > > > The > > > > > > > > > weird thing is everything works except getCacheNames, so > far > > :) > > > > > > > > > > > > > > > > > > On Fri, Sep 4, 2015 at 1:35 PM, Romain Manni-Bucau < > > > > > > > > [email protected]> > > > > > > > > > wrote: > > > > > > > > > > > > > > > > > > > Le 4 sept. 2015 19:30, "Steve Goldsmith" < > [email protected] > > > > > a > > > > > > écrit > > > > > > > : > > > > > > > > > > > > > > > > > > > > > > So if I specify jcache.ccf in classpath, then > technically > > it > > > > > > should > > > > > > > > > show > > > > > > > > > > up > > > > > > > > > > > via getCacheNames? It doesn't appear to pick it up from > > > > > > > > > > > src/main/resources/jcache.ccf. > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > No. If you use one of these cache through jcache then the > > > > config > > > > > > > should > > > > > > > > > get > > > > > > > > > > used and the cache be listed. If you start and dont use > > jcache > > > > - > > > > > > even > > > > > > > > > using > > > > > > > > > > jcs internals - you ll get an empty iterable. > > > > > > > > > > > > > > > > > > > > > On Fri, Sep 4, 2015 at 1:17 PM, Romain Manni-Bucau < > > > > > > > > > > [email protected]> > > > > > > > > > > > wrote: > > > > > > > > > > > > > > > > > > > > > > > Think it does but maybe it takes another one. About > > > > > > getCacheNames > > > > > > > > it > > > > > > > > > is > > > > > > > > > > > > only *created* caches ie the one jcache saw and not > the > > > > ones > > > > > > jcs > > > > > > > > has. > > > > > > > > > > > > Le 4 sept. 2015 19:14, "Steve Goldsmith" < > > [email protected] > > > > > > > > > > a > > > > > > > > écrit > > > > > > > > > : > > > > > > > > > > > > > > > > > > > > > > > > > Looking at > > > > org.apache.commons.jcs.jcache.JCSCachingProvider > > > > > > it > > > > > > > > > > doesn't > > > > > > > > > > > > > appear to search classpath? Do you have to > explicitly > > > > > specify > > > > > > > > path > > > > > > > > > in > > > > > > > > > > > > > getCacheManager call? > > > > > > > > > > > > > > > > > > > > > > > > > > On Fri, Sep 4, 2015 at 2:40 AM, Romain Manni-Bucau > < > > > > > > > > > > > > [email protected]> > > > > > > > > > > > > > wrote: > > > > > > > > > > > > > > > > > > > > > > > > > > > Hi, > > > > > > > > > > > > > > > > > > > > > > > > > > > > final CachingProvider cachingProvider = > > > > > > > > > > Caching.getCachingProvider(); > > > > > > > > > > > > > > final CacheManager cacheManager = > > > > > > > > > > cachingProvider.getCacheManager(); > > > > > > > > > > > > > > cacheManager.createCache("c1", new > > > > > > > MutableConfiguration<String, > > > > > > > > > > > > > String>()); > > > > > > > > > > > > > > cacheManager.createCache("c2", new > > > > > > > MutableConfiguration<String, > > > > > > > > > > > > > String>()); > > > > > > > > > > > > > > final Collection<String> actualNames = new > > > > > > > > ArrayList<String>(2); > > > > > > > > > > > > > > for (final String s : > cacheManager.getCacheNames()) > > > > > > > > > > > > > > { > > > > > > > > > > > > > > actualNames.add(s); > > > > > > > > > > > > > > } > > > > > > > > > > > > > > assertEquals(2, actualNames.size()); > > > > > > > > > > > > > > assertEquals(new HashSet<String>(asList("c1", > > "c2")), > > > > new > > > > > > > > > > > > > > HashSet<String>(actualNames)); > > > > > > > > > > > > > > cachingProvider.close(); > > > > > > > > > > > > > > > > > > > > > > > > > > > > works fine so you have a setup issue somewhere - > or > > you > > > > > > dont > > > > > > > > use > > > > > > > > > > the > > > > > > > > > > > > > > same cache manager. > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > Romain Manni-Bucau > > > > > > > > > > > > > > @rmannibucau <https://twitter.com/rmannibucau> | > > Blog > > > > > > > > > > > > > > <http://rmannibucau.wordpress.com> | Github < > > > > > > > > > > > > > > https://github.com/rmannibucau> | > > > > > > > > > > > > > > LinkedIn < > https://www.linkedin.com/in/rmannibucau> > > | > > > > > > > > Tomitriber > > > > > > > > > > > > > > <http://www.tomitribe.com> > > > > > > > > > > > > > > > > > > > > > > > > > > > > 2015-09-04 3:52 GMT+02:00 sgjava < > [email protected] > > >: > > > > > > > > > > > > > > > > > > > > > > > > > > > > > getCacheManager().getCacheNames() is not > working > > with > > > > > > JCS. > > > > > > > I > > > > > > > > > get > > > > > > > > > > an > > > > > > > > > > > > > empty > > > > > > > > > > > > > > > > org.apache.commons.jcs.jcache.ImmutableIterable. > > The > > > > > > > Ehcache > > > > > > > > > > provider > > > > > > > > > > > > > > > correctly returns a String iterator with the > > cache > > > > > names. > > > > > > > My > > > > > > > > > > tests > > > > > > > > > > > > run > > > > > > > > > > > > > > > fine, > > > > > > > > > > > > > > > but this is a good way to check that your > > > > configuration > > > > > > is > > > > > > > > > picked > > > > > > > > > > up > > > > > > > > > > > > > with > > > > > > > > > > > > > > > multiple caches defined. > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > -- > > > > > > > > > > > > > > > View this message in context: > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > http://tomee-openejb.979440.n4.nabble.com/commons-jcs-jcach-getCacheNames-not-working-tp4676111.html > > > > > > > > > > > > > > > Sent from the TomEE Users mailing list archive > at > > > > > > > Nabble.com. > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > -- > > > > > > > > > > > > > Steven P. Goldsmith > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > -- > > > > > > > > > > > Steven P. Goldsmith > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > -- > > > > > > > > > Steven P. Goldsmith > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > -- > > > > > > > Steven P. Goldsmith > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > -- > > > Steven P. Goldsmith > > > > > > -- > Steven P. Goldsmith >
