Invalid character ':' in value part of property
thangamani_r Feb 11, 2009 2:43 AMHi ,
I get the following error when invoking the ejb interface for the jbosscache from a remote client.
javax.ejb.EJBException: org.jboss.cache.CacheException: java.lang.reflect.InvocationTargetException
...
Caused by: org.jboss.cache.CacheException: Failure while registering mbeans
at org.jboss.cache.jmx.JmxRegistrationManager.registerAllMBeans(JmxRegistrationManager.java:163)
at org.jboss.cache.jmx.PlatformMBeanServerRegistration.registerToPlatformMBeanServer(PlatformMBeanServerRegistration.java:70)
... 71 more
Caused by: javax.management.MalformedObjectNameException: Invalid character ':' in value part of property
at javax.management.ObjectName.construct(ObjectName.java:529)
at javax.management.ObjectName.(ObjectName.java:1304)
at org.jboss.cache.jmx.JmxRegistrationManager.registerAllMBeans(JmxRegistrationManager.java:147)[/colour]
Jboss cache is working fine when invoked from a servlet...
After the first invocation from the servlet , It works fine for subsequent calls from the client. Any ideas to resolve this?
Servlet code is
Context initialContext = new InitialContext(); BSLCache ejbRemote = (BSLCache)initialContext.lookup("/jbosscache/BSLCacheBean/remote"); Object val = ejbRemote.getCache(key);
My cache-config.xml is as follows
<?xml version="1.0" encoding="UTF-8"?> <jbosscache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="urn:jboss:jbosscache-core:config:3.0"> <locking isolationLevel="READ_COMMITTED"/> <transaction transactionManagerLookupClass="org.jboss.cache.transaction.GenericTransactionManagerLookup" syncRollbackPhase="false" syncCommitPhase="false"/> <eviction wakeUpInterval="500"> <default algorithmClass="org.jboss.cache.eviction.LFUAlgorithm" eventQueueSize="100000"> <property name="maxNodes" value="500" /> <property name="minNodes" value="10" /> <property name="minTimeToLive" value="1000" /> </default> </eviction> <loaders passivation="false" shared="false"> <preload><node fqn="/"></node></preload> <loader class="org.jboss.cache.loader.JDBCCacheLoader" async="false" fetchPersistentState="true" ignoreModifications="false" purgeOnStartup="true"> <properties> cache.jdbc.datasource=java:/BSLOracleDS location=./ cache.jdbc.table.drop=false cache.jdbc.table.name=bsl_cache_loader cache.jdbc.table.primarykey=FQN cache.jdbc.fqn.column=FQN cache.jdbc.node.column=cache_data cache.jdbc.parent.column=parent_fqn cache.jdbc.sql-concat=1||2 </properties> </loader> </loaders> </jbosscache>
and the code is as follows
factory = new DefaultCacheFactory(); objCache = factory.createCache("cache-config.xml"); objCache.start(); node = objCache.getRoot();