• Bug
  • Status: Open
  • 2 Major
  • Resolution:
  • kkannaiy
  • Reporter: teck
  • October 24, 2008
  • 3
  • Watchers: 5
  • October 11, 2011

Attachments

Description

http://forums.terracotta.org/forums/posts/list/1492.page

I’ll attach the sample EAR file an the sources for it shortly. Using Jboss 4.2.2 (unsupported jboss version at this time), drop the EAR in server/default/deploy and start using TC.

You’ll be one of the two NPE listed in the forum post.

Disabling the code in L1Management.attemptToRegister() will make the problem go away. The thread running that method is constantly getting an exception since it can’t see the JBoss mbean server builder classes that are on CLASSPATH.

DEV-2058 *might* be related and/or the same issue

Comments

Fiona OShea 2008-10-27

To be fixed when we support JBoss 4.2.x

Greg Balmer 2009-02-04

Are there any plans to fix this?, or is there a viable workaround? I have the same issue in JB4.2.3 which is now supported I believe and this seams to be a show stopper

Fiona OShea 2009-02-05

Tim, what are your thoughts on an LOE for fixing?

Tim Eck 2009-02-05

I’d have to look into it again to get something solid since I don’t remember exactly what was going wrong.

I suspect it has something to do with the L1 code polling the VM wide JMX server at inappropriate times (specifically too early). I think this has the side effect of initializing JMX internals things in the “wrong” thread (and thus wrong thread context loader). If that is true, the only fix I can think of is to hack on the sun java classes to not start any of our jmx registration until the real app has initialized things.

With the unknowns I’d say 2 days LOE to get this done

Fiona OShea 2009-02-06

Will this bug be obsolete with Quintara because of JMX removal.?

Tim Eck 2009-02-06

I have no idea what you’re talking about when you say “jmx removal” :-)

Unless we don’t want to use any jmx at all on the L1 side, this bug will still exist

Geert Bevin 2009-03-11

Just commenting for myself that Tim told me that he debugged it at one point in time and that he can give me more insight when I actually look into this issue.

Frederic Simon 2009-05-24

This is also a show stopper for our latest customer. Disabling the tim-annotations does not seems to help. We will spend more time on this, but is there any viable workaround?

Frederic Simon 2009-05-24

Looks like it’s a JBoss bug after all :) We are checking: https://jira.jboss.org/jira/browse/JBPAPP-1784 and https://jira.jboss.org/jira/browse/JBWS-2580 It means upgrading the JBoss webservice stack to 3.1.1 or above.

Frederic Simon 2009-05-24

OK, problem solved with JBoss webservice framework 3.1.1 (for JBoss App 4.2.x). Could not use 3.1.2 since it’s JBoss 5 only.

Tim Eck 2009-05-26

thanks Frederic! I’d have to debug this again to tell for sure but reading the jboss bug descriptions sounds right. The terracotta client was initializing the “first” jmx server and the bad assumption in the jboss code was broken as a result.

Anyone watching this bug should apply the jboss updates to fix this issue

Geert Bevin 2009-12-07

Tim, it seems to me from reading the comments that this is not a TC bug and can be closed, right?

Tim Eck 2009-12-07

Yeah perhaps, but I think someone should run the attached sample app a few times with the suggested fix to make sure the issue goes away. Even with that we still might want to think about if it possible to have things work without the jboss update. Of course if it is just a simple bug in jboss maybe there isn’t anything we should be doing differently – hard to say without debugging this again

Fiona OShea 2010-01-18

Does this happen in express mode?

Fiona OShea 2010-02-26

Please run this with attached sample

Kalai Kannaiyan 2010-05-03

Ran with sample EAR (sample-web-service-ear-0.0.1-SNAPSHOT.ear) deployed on Jboss 4.2.2 + 3.2.1_1 throws NPE (custom mode)

Steps:

  1. copy the sample EAR (attached) under /jboss-4.2.2.GA/server/default/deploy
  2. edit run.conf JAVA=/export2/homes/kkannaiy/terracotta-3.2.1_1/bin/dso-java.sh JAVA_OPTS=”$JAVA_OPTS -Dtc.config=localhost:9510”
  3. start the TC server
  4. start the jboss server ./run.sh

java.lang.NullPointerException at org.jboss.wsf.stack.jbws.WSDLFilePublisher.getPublishLocation(WSDLFilePublisher.java:303) at org.jboss.wsf.stack.jbws.WSDLFilePublisher.publishWsdlFiles(WSDLFilePublisher.java:103) at org.jboss.wsf.stack.jbws.PublishContractDeploymentAspect.create(PublishContractDeploymentAspect.java:52) at org.jboss.wsf.framework.deployment.DeploymentAspectManagerImpl.deploy(DeploymentAspectManagerImpl.java:115) at org.jboss.wsf.container.jboss42.ArchiveDeployerHook.deploy(ArchiveDeployerHook.java:97) at org.jboss.wsf.container.jboss42.DeployerInterceptor.start(DeployerInterceptor.java:90) at org.jboss.deployment.SubDeployerInterceptorSupport$XMBeanInterceptor.start(SubDeployerInterceptorSupport.java:188) at org.jboss.deployment.SubDeployerInterceptor.invoke(SubDeployerInterceptor.java:95) at org.jboss.mx.server.Invocation.invoke(Invocation.java:88) at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264) at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659) at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210) at $Proxy35.start(Unknown Source) at org.jboss.deployment.MainDeployer.start(MainDeployer.java:1025) at org.jboss.deployment.MainDeployer.start(MainDeployer.java:1015) at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:819) at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:782) at sun.reflect.GeneratedMethodAccessor26.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155) at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94) at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133) at org.jboss.mx.server.Invocation.invoke(Invocation.java:88) at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142) at org.jboss.mx.server.Invocation.invoke(Invocation.java:88) at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264) at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659) at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210) at $Proxy10.deploy(Unknown Source) at org.jboss.deployment.scanner.URLDeploymentScanner.deploy(URLDeploymentScanner.java:421) at org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentScanner.java:634) at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.doScan(AbstractDeploymentScanner.java:263) at org.jboss.deployment.scanner.AbstractDeploymentScanner.startService(AbstractDeploymentScanner.java:336) at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:289) at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:245) at sun.reflect.GeneratedMethodAccessor7.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155) at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94) at org.jboss.mx.server.Invocation.invoke(Invocation.java:86) at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264) at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659) at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:978) at $Proxy1.start(Unknown Source) at org.jboss.system.ServiceController.start(ServiceController.java:417) at sun.reflect.GeneratedMethodAccessor13.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155) at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94) at org.jboss.mx.server.Invocation.invoke(Invocation.java:86) at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264) at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659) at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210) at $Proxy5.start(Unknown Source) at org.jboss.deployment.SARDeployer.start(SARDeployer.java:302) at org.jboss.deployment.MainDeployer.start(MainDeployer.java:1025) at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:819) at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:782) at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:766) 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:597) at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155) at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94) at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133) at org.jboss.mx.server.Invocation.invoke(Invocation.java:88) at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142) at org.jboss.mx.server.Invocation.invoke(Invocation.java:88) at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264) at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659) at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210) at $Proxy6.deploy(Unknown Source) at org.jboss.system.server.ServerImpl.doStart(ServerImpl.java:482) at org.jboss.system.server.ServerImpl.start(ServerImpl.java:362) at org.jboss.Main.boot(Main.java:200) at org.jboss.Main$1.run(Main.java:508) at java.lang.Thread.run(Thread.java:619) 14:38:08,630 ERROR [URLDeploymentScanner] Incomplete Deployment listing:

— Incompletely deployed packages — org.jboss.deployment.DeploymentInfo@8aecd0ad { url=file:/home/kkannaiy/jboss-4.2.2.GA/server/default/deploy/sample-web-service-ear-0.0.1-SNAPSHOT.ear } deployer: org.jboss.deployment.EARDeployer@7016ff status: Deployment FAILED reason: Could not create deployment: file:/home/kkannaiy/jboss-4.2.2.GA/server/default/tmp/deploy/tmp101890483042936288sample-web-service-ear-0.0.1-SNAPSHOT.ear-contents/sample-web-service.jar; - nested throwable: (java.lang.NullPointerException) state: FAILED watch: file:/home/kkannaiy/jboss-4.2.2.GA/server/default/deploy/sample-web-service-ear-0.0.1-SNAPSHOT.ear altDD: null lastDeployed: 1272922687079 lastModified: 1272922686000 mbeans: jboss.j2ee:ear=sample-web-service-ear-0.0.1-SNAPSHOT.ear,jar=sample-web-service.jar,name=SampleWebServiceImpl,service=EJB3 state: Started

Fiona OShea 2010-05-12

Were we running with an updated JBoss webservice stack to 3.1.1 or above per Fredericks comments?

I think we will always run into the issue without this upgrade.

Fiona OShea 2010-07-21

Kalai can you please try with the recommended versions? thanks