Found another potential problem with running the MBean inside of JBoss... When 
using a JDBC CacheLoader it seems to be trying to work with the datasource 
before its ready even though I have specified a dependancy on the datasource.

I checked the constructor for TreeCache and I don't see anything there that 
would be a problem. Constructors are the only thing I am aware of in an MBean 
that gets called regardless of dependancies. I drop the original 
jboss-cache.jar back in and jboss starts up just fine...

Below is the stack trace I am getting on start up and the service.xml I am 
using. Notice I have commented out the optimistic locking and the new 
"UseMarshalling" settings and the problem still occurs.

service.xml:
<mbean code="org.jboss.cache.TreeCache"
  |  name="jboss.cache:service=TreeCachePersisted">
  | 
  |         <depends>jboss:service=Naming</depends>
  |         <depends>jboss:service=TransactionManager</depends>
  |         
<depends>jboss.jca:service=DataSourceBinding,name=persistedCacheMySqlDS</depends>
  
  |         
  |         <!--
  |         Configure the TransactionManager
  |         -->
  |         <attribute 
name="TransactionManagerLookupClass">org.jboss.cache.JBossTransactionManagerLookup</attribute>
  | 
  |         <!-- 
  |             Node locking scheme:
  |                 OPTIMISTIC
  |                 PESSIMISTIC (default)
  | 
  |                 See 
http://wiki.jboss.org/wiki/Wiki.jsp?page=OptimisticNodeLocking for a discussion 
on this
  | 
  |             WARNING: Using node locking scheme of OPTIMISTIC is 
EXPERIMENTAL at this stage
  |             and is not officially released or supported.
  | 
  |             Use at your own risk (but do provide feedback on
  |             http://jira.jboss.com/jira/browse/JBCACHE-69)
  | 
  |             - Manik Surtani ([EMAIL PROTECTED])
  |         <attribute name="NodeLockingScheme">OPTIMISTIC</attribute>
  |         -->         
  |         <!--
  |             Isolation level : SERIALIZABLE
  |                               REPEATABLE_READ (default)
  |                               READ_COMMITTED
  |                               READ_UNCOMMITTED
  |                               NONE
  |         -->
  |         <attribute name="IsolationLevel">REPEATABLE_READ</attribute>
  | 
  |         <!--
  |              Valid modes are LOCAL, REPL_ASYNC and REPL_SYNC
  |         -->
  |         <attribute name="CacheMode">REPL_SYNC</attribute>
  | 
  |         <!--
  |         Just used for async repl: use a replication queue
  |         -->
  |         <attribute name="UseReplQueue">false</attribute>
  | 
  |         <!--
  |             Replication interval for replication queue (in ms)
  |         -->
  |         <attribute name="ReplQueueInterval">0</attribute>
  | 
  |         <!--
  |             Max number of elements which trigger replication
  |         -->
  |         <attribute name="ReplQueueMaxElements">0</attribute>
  | 
  |         <!-- Name of cluster. Needs to be the same for all clusters, in 
order
  |              to find each other
  |         -->
  |         <attribute name="ClusterName">TreeCachePersisted-Cluster</attribute>
  | 
  |         <!-- JGroups protocol stack properties. Can also be a URL,
  |              e.g. file:/home/bela/default.xml
  |            <attribute name="ClusterProperties"></attribute>
  |         -->
  | 
  |         <attribute name="ClusterConfig">
  |             <config>
  |                 <!-- UDP: if you have a multihomed machine,
  |                 set the bind_addr attribute to the appropriate NIC IP 
address -->
  |                 <!-- UDP: On Windows machines, because of the media sense 
feature
  |                  being broken with multicast (even after disabling media 
sense)
  |                  set the loopback attribute to true -->
  |                  <!--DO NOT MOVE OR REMOVE THIS COMMENT USED FOR CONFIG-->
  |                 <UDP mcast_addr="228.1.2.6" mcast_port="48899"
  |                     ip_ttl="64" ip_mcast="true" bind_addr="127.0.0.1"
  |                     mcast_send_buf_size="150000" mcast_recv_buf_size="80000"
  |                     ucast_send_buf_size="150000" ucast_recv_buf_size="80000"
  |                     loopback="true"/>
  | 
  |                 <PING timeout="2000" num_initial_members="3"
  |                     up_thread="false" down_thread="false"/>
  |                 <MERGE2 min_interval="10000" max_interval="20000"/>
  |                 <!--        <FD shun="true" up_thread="true" 
down_thread="true" />-->
  |                 <FD_SOCK/>
  |                 <VERIFY_SUSPECT timeout="1500"
  |                     up_thread="false" down_thread="false"/>
  |                 <pbcast.NAKACK gc_lag="50" 
retransmit_timeout="600,1200,2400,4800"
  |                     max_xmit_size="8192" up_thread="false" 
down_thread="false"/>
  |                 <UNICAST timeout="600,1200,2400" window_size="100" 
min_threshold="10"
  |                     down_thread="false"/>
  |                 <pbcast.STABLE desired_avg_gossip="20000"
  |                     up_thread="false" down_thread="false"/>
  |                 <FRAG frag_size="8192"
  |                     down_thread="false" up_thread="false"/>
  |                 <pbcast.GMS join_timeout="5000" join_retry_timeout="2000"
  |                     shun="true" print_local_addr="true"/>
  |                 <pbcast.STATE_TRANSFER up_thread="true" down_thread="true"/>
  |             </config>
  |         </attribute>
  | 
  |         <!--
  |         Whether or not to fetch state on joining a cluster
  |        -->
  |         <attribute name="FetchStateOnStartup">true</attribute>
  | 
  |         <!--
  |             The max amount of time (in milliseconds) we wait until the
  |             initial state (ie. the contents of the cache) are retrieved from
  |             existing members in a clustered environment
  |         -->
  |         <attribute name="InitialStateRetrievalTimeout">30000</attribute>
  | 
  |         <!--
  |             Number of milliseconds to wait until all responses for a
  |             synchronous call have been received.
  |         -->
  |         <attribute name="SyncReplTimeout">10000</attribute>
  | 
  |         <!-- Max number of milliseconds to wait for a lock acquisition -->
  |         <attribute name="LockAcquisitionTimeout">15000</attribute>
  | 
  | 
  |         <!-- Name of the eviction policy class. Not supported now. -->
  |         <attribute name="EvictionPolicyClass"></attribute>
  | 
  |         <!-- Configuration of the database persistence used for this cache. 
-->        
  |             <attribute 
name="CacheLoaderClass">org.jboss.cache.loader.JDBCCacheLoader</attribute>
  |             <attribute name="CacheLoaderShared">true</attribute>
  |             <attribute name="CacheLoaderPreload">/</attribute>
  |             <attribute 
name="CacheLoaderFetchTransientState">false</attribute>
  |             <attribute 
name="CacheLoaderFetchPersistentState">false</attribute>
  |             <attribute name="CacheLoaderConfig">
  |                 cache.jdbc.datasource=java:/persistedCacheMySqlDS
  |                 cache.jdbc.table.drop=false
  |             </attribute>
  | 
  |         <!-- 
  |           Indicate whether to use marshalling or not. Set this to true if 
you are running under a scoped
  |           class loader, e.g., inside an application server. Default is 
"false".
  |         <attribute name="UseMarshalling">true</attribute>
  |         --> 
  |     </mbean>
StackTrace:
14:20:09,877 ERROR [TreeCache] Initialization failed 
jboss.cache:service=TreeCachePersisted
  | java.lang.IllegalStateException: Failed to lookup datasource 
java:/persistedCacheMySqlDS: persistedCacheMySqlDS not bound
  |         at 
org.jboss.cache.loader.JDBCCacheLoader.setConfig(JDBCCacheLoader.java:130)
  |         at org.jboss.cache.TreeCache.createCacheLoader(TreeCache.java:1710)
  |         at org.jboss.cache.TreeCache._createService(TreeCache.java:1171)
  |         at org.jboss.cache.TreeCache.createService(TreeCache.java:1144)
  |         at 
org.jboss.system.ServiceMBeanSupport.jbossInternalCreate(ServiceMBeanSupport.java:238)
  |         at 
org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:220)
  |         at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
  |         at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  |         at java.lang.reflect.Method.invoke(Method.java:585)
  |         at 
org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)
  |         at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
  |         at org.jboss.mx.server.Invocation.invoke(Invocation.java:72)
  |         at 
org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:249)
  |         at 
org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:644)
  |         at 
org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:897)
  |         at $Proxy0.create(Unknown Source)
  |         at 
org.jboss.system.ServiceController.create(ServiceController.java:330)
  |         at 
org.jboss.system.ServiceController.create(ServiceController.java:275)
  |         at 
org.jboss.system.ServiceController.create(ServiceController.java:353)
  |         at 
org.jboss.system.ServiceController.create(ServiceController.java:275)
  |         at 
org.jboss.system.ServiceController.create(ServiceController.java:353)
  |         at 
org.jboss.system.ServiceController.create(ServiceController.java:275)
  |         at 
org.jboss.system.ServiceController.create(ServiceController.java:353)
  |         at 
org.jboss.system.ServiceController.create(ServiceController.java:275)
  |         at 
org.jboss.system.ServiceController.create(ServiceController.java:353)
  |         at 
org.jboss.system.ServiceController.create(ServiceController.java:275)
  |         at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
  |         at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  |         at java.lang.reflect.Method.invoke(Method.java:585)
  |         at 
org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)
  |         at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
  |         at org.jboss.mx.server.Invocation.invoke(Invocation.java:72)
  |         at 
org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:249)
  |         at 
org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:644)
  |         at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:177)
  |         at $Proxy4.create(Unknown Source)
  |         at org.jboss.deployment.SARDeployer.create(SARDeployer.java:229)
  |         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  |         at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
  |         at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  |         at java.lang.reflect.Method.invoke(Method.java:585)
  |         at 
org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)
  |         at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
  |         at 
org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:121)
  |         at org.jboss.mx.server.Invocation.invoke(Invocation.java:74)
  |         at 
org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:127)
  |         at org.jboss.mx.server.Invocation.invoke(Invocation.java:74)
  |         at 
org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:249)
  |         at 
org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:644)
  |         at 
org.jboss.mx.util.JMXInvocationHandler.invoke(JMXInvocationHandler.java:273)
  |         at $Proxy42.create(Unknown Source)
  |         at 
org.jboss.deployment.XSLSubDeployer.create(XSLSubDeployer.java:224)
  |         at org.jboss.deployment.MainDeployer.create(MainDeployer.java:918)
  |         at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:774)
  |         at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:738)
  |         at sun.reflect.GeneratedMethodAccessor16.invoke(Unknown Source)
  |         at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  |         at java.lang.reflect.Method.invoke(Method.java:585)
  |         at 
org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)
  |         at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
  |         at 
org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:121)
  |         at org.jboss.mx.server.Invocation.invoke(Invocation.java:74)
  |         at 
org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:127)
  |         at org.jboss.mx.server.Invocation.invoke(Invocation.java:74)
  |         at 
org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:249)
  |         at 
org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:644)
  |         at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:177)
  |         at $Proxy8.deploy(Unknown Source)
  |         at 
org.jboss.deployment.scanner.URLDeploymentScanner.deploy(URLDeploymentScanner.java:325)
  |         at 
org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentScanner.java:501)
  |         at 
org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.doScan(AbstractDeploymentScanner.java:204)
  |         at 
org.jboss.deployment.scanner.AbstractDeploymentScanner.startService(AbstractDeploymentScanner.java:277)
  |         at 
org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:272)
  |         at 
org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:222)
  |         at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
  |         at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  |         at java.lang.reflect.Method.invoke(Method.java:585)
  |         at 
org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)
  |         at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
  |         at org.jboss.mx.server.Invocation.invoke(Invocation.java:72)
  |         at 
org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:249)
  |         at 
org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:644)
  |         at 
org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:897)
  |         at $Proxy0.start(Unknown Source)
  |         at 
org.jboss.system.ServiceController.start(ServiceController.java:418)
  |         at sun.reflect.GeneratedMethodAccessor9.invoke(Unknown Source)
  |         at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  |         at java.lang.reflect.Method.invoke(Method.java:585)
  |         at 
org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)
  |         at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
  |         at org.jboss.mx.server.Invocation.invoke(Invocation.java:72)
  |         at 
org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:249)
  |         at 
org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:644)
  |         at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:177)
  |         at $Proxy4.start(Unknown Source)
  |         at org.jboss.deployment.SARDeployer.start(SARDeployer.java:273)
  |         at org.jboss.deployment.MainDeployer.start(MainDeployer.java:964)
  |         at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:775)
  |         at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:738)
  |         at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:722)
  |         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  |         at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
  |         at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  |         at java.lang.reflect.Method.invoke(Method.java:585)
  |         at 
org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)
  |         at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
  |         at 
org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:121)
  |         at org.jboss.mx.server.Invocation.invoke(Invocation.java:74)
  |         at 
org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:127)
  |         at org.jboss.mx.server.Invocation.invoke(Invocation.java:74)
  |         at 
org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:249)
  |         at 
org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:644)
  |         at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:177)
  |         at $Proxy5.deploy(Unknown Source)
  |         at org.jboss.system.server.ServerImpl.doStart(ServerImpl.java:434)
  |         at org.jboss.system.server.ServerImpl.start(ServerImpl.java:315)
  |         at org.jboss.Main.boot(Main.java:195)
  |         at org.jboss.Main$1.run(Main.java:463)
  |         at java.lang.Thread.run(Thread.java:595)

View the original post : 
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3898024#3898024

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3898024


-------------------------------------------------------
This SF.Net email is sponsored by:
Power Architecture Resource Center: Free content, downloads, discussions,
and more. http://solutions.newsforge.com/ibmarch.tmpl
_______________________________________________
JBoss-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jboss-user

Reply via email to