[jboss-user] [JBossCache] - PojoCache: java.lang.NoSuchMethodException: addObserver

chencao0524 do-not-reply at jboss.com
Tue Jan 9 11:08:23 EST 2007


Hi All, 
I am trying to use jBoss PojoCache in my application and I am using AOP pre-compiler to precompile my POJO. I am getting an exception when trying to create an instance of the POJO in Windows. 

I am running jBoss 4.0.5.GA and JDK 1.5.0_06
I am using jboss-cache-jdk50.jar and I am attaching the MANIFEST below

Manifest-Version: 1.0
Ant-Version: Apache Ant 1.6.2
Created-By: 1.5.0_10-b03 (Sun Microsystems Inc.)
Built-By: smcgowan
Created-On: December 20 2006
Main-Class: org.jboss.cache.Version
Specification-Title: JBossCache
Specification-Version: 1.4.1.CR1
Specification-Vendor: JBoss Inc.
Implementation-Title: JBossCache
Implementation-Version: 1.4.1.CR1
Implementation-Vendor: JBoss Inc.

I am using jboss-aop-jdk50.jar and I am attaching the MANIFEST below

Manifest-Version: 1.0
Ant-Version: Apache Ant 1.6.5
Created-By: 1.5.0_06-b05 (Sun Microsystems Inc.)
Specification-Title: JBoss AOP Framework
Specification-Version: jboss-aop-1.5.2.GA
Specification-Vendor: JBoss (http://www.jboss.org/)
Implementation-Title: JBoss AOP Framework
Implementation-URL: http://www.jboss.org/
Implementation-Version: jboss-aop-1.5.2.GA
Implementation-Vendor: JBoss.org
Implementation-Vendor-Id: http://www.jboss.org/
Premain-Class: org.jboss.aop.standalone.Agent
Can-Redefine-Classes: true

replSync-in-service.xml is below
<mbean code="org.jboss.cache.TreeCache"
  |         name="jboss.cache:service=TestPojoCache">
  | 
  |         <depends>jboss:service=Naming</depends>
  |         <depends>jboss:service=TransactionManager</depends>
  | 
  |       
  |         <attribute name="TransactionManagerLookupClass">org.jboss.cache.JBossTransactionManagerLookup</attribute>
  | 
  |         
  |         <attribute name="IsolationLevel">REPEATABLE_READ</attribute>
  | 
  |      
  |         <attribute name="CacheMode">REPL_SYNC</attribute>
  | 
  |         <attribute name="UseReplQueue">false</attribute>
  | 
  |         <attribute name="ReplQueueInterval">0</attribute>
  | 
  |         
  |         <attribute name="ReplQueueMaxElements">0</attribute>
  | 
  |         <attribute name="ClusterName">Messi</attribute>
  | 
  |         <attribute name="ClusterConfig">
  |             <config>
  |                 <UDP mcast_addr="228.1.2.3" mcast_port="48866"
  |                     ip_ttl="64" ip_mcast="true" 
  |                     mcast_send_buf_size="150000" mcast_recv_buf_size="80000"
  |                     ucast_send_buf_size="150000" ucast_recv_buf_size="80000"
  |                     loopback="false"/>
  |                 <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>
  | 
  | 
  |         <attribute name="FetchInMemoryState">true</attribute>
  | 
  |         <attribute name="InitialStateRetrievalTimeout">15000</attribute>
  | 
  |         <attribute name="SyncReplTimeout">15000</attribute>
  | 
  |         <!-- Max number of milliseconds to wait for a lock acquisition -->
  |         <attribute name="LockAcquisitionTimeout">10000</attribute>
  | 
  |         <!-- Name of the eviction policy class. -->
  |         <attribute name="EvictionPolicyClass"></attribute>
  | 
  |         <attribute name="UseRegionBasedMarshalling">true</attribute>
  |     </mbean>

Class is below
public class StudentMaintTest {
  | 
  | 	private Student mary_;
  | 
  | 	private PojoCache cache1_;
  | 
  | 	public StudentMaintTest() {
  | 
  | 		cache1_ = createCache("Messi");
  | 
  | 		init();
  | 
  | 		testPropagation();
  | 	}
  | 
  | 	private static PojoCache createCache(String name) {
  | 		try {
  | 			PojoCache tree = new PojoCache();
  | 			PropertyConfigurator config = new PropertyConfigurator(); 
  | 			config.configure(tree, "replSync-in-service.xml");
  | 			tree.setClusterName(name); // We can set a different cluster group.
  | 			tree.start(); // kick start the cache
  | 			return tree;
  | 		} catch (Exception ex) {
  | 			ex.printStackTrace();
  | 			return null;
  | 		}
  | 
  | 	}
  | 
  | 	protected void init() {
  | 
  | 		mary_ = new Student();
  | 		mary_.setName("Mary Smith");
  | 
  | 		Address address = new Address();
  | 		address.setStreet("456 Oak Drive");
  | 		address.setCity("Pleasantville, CA");
  | 		address.setZip(94555);
  | 
  | 		mary_.setAddress(address);
  | 		
  | 	}
  | 
  | 	public void testPropagation() {
  | 		try {
  | 			
  | 			cache1_.putObject("/students/54321", mary_);
  | 			
  | 		} catch (Exception ex) {
  | 			ex.printStackTrace();
  | 		}
  | 
  | 	}
  | 
  | }

stack trace is below

    *  org.jboss.aop.ClassAdvisor.attachClass(ClassAdvisor.java:312)
    * org.jboss.aop.AspectManager.initialiseClassAdvisor(AspectManager.java:590)
    * org.jboss.aop.AspectManager.getAdvisor(AspectManager.java:578)
    * cn.net.ce.cache.pojo.Address.(Address.java)
    * cn.net.ce.web.tapestry4.Home.pageBeginRender(Home.java:99)
    * org.apache.tapestry.AbstractPage.firePageBeginRender(AbstractPage.java:478)
    * org.apache.tapestry.AbstractPage.renderPage(AbstractPage.java:268)
    * org.apache.tapestry.engine.RequestCycle.renderPage(RequestCycle.java:366)
    * org.apache.tapestry.services.impl.ResponseRendererImpl.renderResponse(ResponseRendererImpl.java:71)
    * $ResponseRenderer_110079a410f.renderResponse($ResponseRenderer_110079a410f.java)
    * org.apache.tapestry.engine.HomeService.service(HomeService.java:65)
    * $IEngineService_110079a4177.service($IEngineService_110079a4177.java)
    * org.apache.tapestry.services.impl.EngineServiceInnerProxy.service(EngineServiceInnerProxy.java:77)
    * org.apache.tapestry.services.impl.EngineServiceOuterProxy.service(EngineServiceOuterProxy.java:66)
    * org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:248)
    * org.apache.tapestry.services.impl.InvokeEngineTerminator.service(InvokeEngineTerminator.java:60)
    * $WebRequestServicer_110079a4157.service($WebRequestServicer_110079a4157.java)
    * $WebRequestServicer_110079a4153.service($WebRequestServicer_110079a4153.java)
    * org.apache.tapestry.services.impl.WebRequestServicerPipelineBridge.service(WebRequestServicerPipelineBridge.java:56)
    * $ServletRequestServicer_110079a4139.service($ServletRequestServicer_110079a4139.java)
    * org.apache.tapestry.request.DecodedRequestInjector.service(DecodedRequestInjector.java:55)
    * $ServletRequestServicerFilter_110079a4135.service($ServletRequestServicerFilter_110079a4135.java)
    * $ServletRequestServicer_110079a413b.service($ServletRequestServicer_110079a413b.java)
    * org.apache.tapestry.multipart.MultipartDecoderFilter.service(MultipartDecoderFilter.java:52)
    * $ServletRequestServicerFilter_110079a4133.service($ServletRequestServicerFilter_110079a4133.java)
    * $ServletRequestServicer_110079a413b.service($ServletRequestServicer_110079a413b.java)
    * org.apache.tapestry.services.impl.SetupRequestEncoding.service(SetupRequestEncoding.java:53)
    * $ServletRequestServicerFilter_110079a4137.service($ServletRequestServicerFilter_110079a4137.java)
    * $ServletRequestServicer_110079a413b.service($ServletRequestServicer_110079a413b.java)
    * $ServletRequestServicer_110079a412d.service($ServletRequestServicer_110079a412d.java)
    * org.apache.tapestry.ApplicationServlet.doService(ApplicationServlet.java:123)
    * org.apache.tapestry.ApplicationServlet.doGet(ApplicationServlet.java:79)
    * javax.servlet.http.HttpServlet.service(HttpServlet.java:697)
    * javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
    * org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
    * org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
    * org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
    * org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
    * org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
    * org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
    * org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
    * org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
    * org.jboss.web.tomcat.tc5.session.ClusteredSessionValve.invoke(ClusteredSessionValve.java:87)
    * org.jboss.web.tomcat.tc5.session.JvmRouteValve.invoke(JvmRouteValve.java:84)
    * org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:524)
    * org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
    * org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
    * org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
    * org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156)
    * org.jboss.web.tomcat.tc5.sso.ClusteredSingleSignOn.invoke(ClusteredSingleSignOn.java:676)
    * org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
    * org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
    * org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:199)
    * org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:282)
    * org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:767)
    * org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:697)
    * org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:889)
    * org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
    * java.lang.Thread.run(Thread.java:595)
    * Caused by: java.lang.NoSuchMethodException: addObserver
    * org.jboss.aop.ClassAdvisor.getMethod(ClassAdvisor.java:323)
    * org.jboss.aop.ClassAdvisor.getMethod(ClassAdvisor.java:331)
    * org.jboss.aop.ClassAdvisor.populateMixinMethods(ClassAdvisor.java:394)
    * org.jboss.aop.ClassAdvisor$1.run(ClassAdvisor.java:290)
    * java.security.AccessController.doPrivileged(Native Method)
    * org.jboss.aop.ClassAdvisor.attachClass(ClassAdvisor.java:271)
    * ... 58 more

Anybody could help me.
Thanks.


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

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



More information about the jboss-user mailing list