Re: [jboss-user] [JBoss Microcontainer Development] - JBoss Reflect Performance Javassist vs Introspection
by Kabir Khan
Kabir Khan [http://community.jboss.org/people/kabir.khan%40jboss.com] replied to the discussion
"JBoss Reflect Performance Javassist vs Introspection"
To view the discussion, visit: http://community.jboss.org/message/538809#538809
--------------------------------------------------------------
> Kabir Khan wrote:
>
> I have modified the bootstrap project as shown in the attached patch to set JavassistTypeInfoFactoryImpl's classPoolFactory to be RepositoryClassPoolFactory. A quick check in the debugger shows this to kick in.
>
> I am now getting some exceptions on startup that I need to look into.
I modified JavassistTypeInfoFactoryImpl to give some extra output. When a class can not be found it ends up in this method:
private TypeInfo delegateToIntrospectionImplementation(ClassLoader cl, String name) throws ClassNotFoundException
{
System.out.println("======> " + name + " " + cl);
//Extra code just for debugging
ClassPool pool = poolFactory.getPoolForLoader(cl);
try
{
CtClass ct = pool.get(name);
}
catch(Exception alreadyHandled)
{
System.out.println("---> Not found in " + pool);
}
Class<?> clazz = cl.loadClass(name);
System.out.println("---> Loaded real class from " + clazz.getClassLoader());
try
{
CtClass ct = pool.get(name);
}
catch(Exception alreadyHandled)
{
System.out.println("---> Not found again in " + pool);
}
pool = poolFactory.getPoolForLoader(clazz.getClassLoader());
try
{
CtClass ct = pool.get(name);
System.out.println("---> Found in actual pool " + pool);
}
catch(Exception alreadyHandled)
{
System.out.println("---> Not found in actual pool " + pool);
}
//Extra code - END
IntrospectionTypeInfoFactory factory = new IntrospectionTypeInfoFactory();
return factory.getTypeInfo(name, cl);
}
Here is the output, this is during installing the beans from conf/bootstrap
17:16:06,954 INFO [JMXKernel] Legacy JMX core initialized
17:16:07,009 INFO [STDOUT] ======> org.jboss.aop.deployers.AspectManagerJMXRegistrar BaseClassLoader@47ac1adf{jmx-classloader:0.0.0$MODULE}
17:16:08,927 INFO [STDOUT] ---> Not found in [org.jboss.classpool.plugins.jbosscl.JBossClDelegatingClassPool@2002512083 [class path: BaseClassLoader@47ac1adf{jmx-classloader:0.0.0$MODULE}:] - dcl:BaseClassLoader@47ac1adf{jmx-classloader:0.0.0$MODULE} domain: [org.jboss.classpool.plugins.jbosscl.JBossClClassPoolDomain@101ebf5c name:DefaultDomain]]
17:16:08,930 INFO [STDOUT] ---> Loaded real class from BaseClassLoader@8a85268{aop-classloader:0.0.0$MODULE}
17:16:08,931 INFO [STDOUT] ---> Not found again in [org.jboss.classpool.plugins.jbosscl.JBossClDelegatingClassPool@2002512083 [class path: BaseClassLoader@47ac1adf{jmx-classloader:0.0.0$MODULE}:] - dcl:BaseClassLoader@47ac1adf{jmx-classloader:0.0.0$MODULE} domain: [org.jboss.classpool.plugins.jbosscl.JBossClClassPoolDomain@101ebf5c name:DefaultDomain]]
17:16:08,931 INFO [STDOUT] ---> Found in actual pool org.jboss.classpool.spi.AbstractClassPool@697579067 [class path: BaseClassLoader@8a85268{aop-classloader:0.0.0$MODULE}:] - dcl:BaseClassLoader@8a85268{aop-classloader:0.0.0$MODULE}
17:16:09,563 INFO [STDOUT] ======> org.jboss.aop.asintegration.jboss5.AOPAnnotationMetaDataParserDeployer BaseClassLoader@280bca{deployers-classloader:0.0.0$MODULE}
17:16:10,283 INFO [STDOUT] ---> Not found in [org.jboss.classpool.plugins.jbosscl.JBossClDelegatingClassPool@404225673 [class path: BaseClassLoader@280bca{deployers-classloader:0.0.0$MODULE}:] - dcl:BaseClassLoader@280bca{deployers-classloader:0.0.0$MODULE} domain: [org.jboss.classpool.plugins.jbosscl.JBossClClassPoolDomain@101ebf5c name:DefaultDomain]]
17:16:10,287 INFO [STDOUT] ---> Loaded real class from BaseClassLoader@8a85268{aop-classloader:0.0.0$MODULE}
17:16:10,289 INFO [STDOUT] ---> Not found again in [org.jboss.classpool.plugins.jbosscl.JBossClDelegatingClassPool@404225673 [class path: BaseClassLoader@280bca{deployers-classloader:0.0.0$MODULE}:] - dcl:BaseClassLoader@280bca{deployers-classloader:0.0.0$MODULE} domain: [org.jboss.classpool.plugins.jbosscl.JBossClClassPoolDomain@101ebf5c name:DefaultDomain]]
17:16:10,289 INFO [STDOUT] ---> Found in actual pool org.jboss.classpool.spi.AbstractClassPool@697579067 [class path: BaseClassLoader@8a85268{aop-classloader:0.0.0$MODULE}:] - dcl:BaseClassLoader@8a85268{aop-classloader:0.0.0$MODULE}
As you can see AspectManagerJMXRegistrar is loaded from the classloader used to install jmx.xml, and AOPAnnotationMetaDataParserDeployer from deployers.xml's classloader. If I use the pools for those loaders directly I get a NotFoundException. If I try to load the class from the loader directly it works, and in both cases the classes returned are loaded from the classloader used for aop.xml (AspectManagerJMXRegistrar comes from jboss-aop-asintegration-core.jar, and AOPAnnotationMetaDataParserDeployer comes from jboss-aop-deployers.jar).
Next I get an error that brings everything to a halt (with some extra debug information compared to the error message that is in svn):
17:16:13,036 ERROR [AbstractKernelController] Error installing to PreInstall: name=AOPClassLoaderDeployer state=Real: java.lang.NoClassDefFoundError: Unable to find class org.jboss.aop.asintegration.jboss5.AOPClassLoaderDeployer from org.jboss.osgi.integration.jbossas.AOPClassLoaderDeployerJBAS7909 in pool [org.jboss.classpool.plugins.jbosscl.JBossClDelegatingClassPool@404225673 [class path: BaseClassLoader@280bca{deployers-classloader:0.0.0$MODULE}:] - dcl:BaseClassLoader@280bca{deployers-classloader:0.0.0$MODULE} domain: [org.jboss.classpool.plugins.jbosscl.JBossClClassPoolDomain@101ebf5c name:DefaultDomain]]
at org.jboss.reflect.plugins.javassist.JavassistTypeInfoFactoryImpl.raiseClassNotFound(JavassistTypeInfoFactoryImpl.java:104) [jboss-reflect.jar:2.2.0-SNAPSHOT]
at org.jboss.reflect.plugins.javassist.JavassistTypeInfo.getSuperclass(JavassistTypeInfo.java:235) [jboss-reflect.jar:2.2.0-SNAPSHOT]
at org.jboss.beans.info.plugins.AbstractBeanInfoFactory.getMethods(AbstractBeanInfoFactory.java:262) [jboss-reflect.jar:2.2.0-SNAPSHOT]
at org.jboss.beans.info.plugins.AbstractBeanInfoFactory.getBeanInfo(AbstractBeanInfoFactory.java:152) [jboss-reflect.jar:2.2.0-SNAPSHOT]
at org.jboss.config.plugins.AbstractConfiguration.getBeanInfo(AbstractConfiguration.java:87) [jboss-reflect.jar:2.2.0-SNAPSHOT]
at org.jboss.kernel.plugins.config.AbstractKernelConfig.getBeanInfo(AbstractKernelConfig.java:80) [jboss-kernel.jar:2.2.0.Alpha9]
at org.jboss.kernel.plugins.config.AbstractKernelConfigurator.getBeanInfo(AbstractKernelConfigurator.java:78) [jboss-kernel.jar:2.2.0.Alpha9]
at org.jboss.kernel.plugins.config.AbstractKernelConfigurator.getBeanInfo(AbstractKernelConfigurator.java:97) [jboss-kernel.jar:2.2.0.Alpha9]
at org.jboss.kernel.plugins.dependency.PreInstallAction.installActionInternal(PreInstallAction.java:88) [jboss-kernel.jar:2.2.0.Alpha9]
at org.jboss.kernel.plugins.dependency.InstallsAwareAction.installAction(InstallsAwareAction.java:54) [jboss-kernel.jar:2.2.0.Alpha9]
at org.jboss.kernel.plugins.dependency.InstallsAwareAction.installAction(InstallsAwareAction.java:42) [jboss-kernel.jar:2.2.0.Alpha9]
at org.jboss.dependency.plugins.action.SimpleControllerContextAction.simpleInstallAction(SimpleControllerContextAction.java:62) [jboss-dependency.jar:2.2.0.Alpha9]
at org.jboss.dependency.plugins.action.AccessControllerContextAction.install(AccessControllerContextAction.java:71) [jboss-dependency.jar:2.2.0.Alpha9]
at org.jboss.dependency.plugins.AbstractControllerContextActions.install(AbstractControllerContextActions.java:51) [jboss-dependency.jar:2.2.0.Alpha9]
at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:377) [jboss-dependency.jar:2.2.0.Alpha9]
at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:2042) [jboss-dependency.jar:2.2.0.Alpha9]
at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:1081) [jboss-dependency.jar:2.2.0.Alpha9]
at org.jboss.dependency.plugins.AbstractController.executeOrIncrementStateDirectly(AbstractController.java:1320) [jboss-dependency.jar:2.2.0.Alpha9]
at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1244) [jboss-dependency.jar:2.2.0.Alpha9]
at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1137) [jboss-dependency.jar:2.2.0.Alpha9]
at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:892) [jboss-dependency.jar:2.2.0.Alpha9]
at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:639) [jboss-dependency.jar:2.2.0.Alpha9]
at org.jboss.kernel.plugins.deployment.AbstractKernelDeployer.deployBean(AbstractKernelDeployer.java:319) [jboss-kernel.jar:2.2.0.Alpha9]
at org.jboss.kernel.plugins.deployment.AbstractKernelDeployer.deployBeans(AbstractKernelDeployer.java:297) [jboss-kernel.jar:2.2.0.Alpha9]
at org.jboss.kernel.plugins.deployment.AbstractKernelDeployer.deploy(AbstractKernelDeployer.java:130) [jboss-kernel.jar:2.2.0.Alpha9]
at org.jboss.kernel.plugins.deployment.BasicKernelDeployer.deploy(BasicKernelDeployer.java:76) [jboss-kernel.jar:2.2.0.Alpha9]
at org.jboss.bootstrap.impl.mc.deployer.TempBasicXMLDeployer.deploy(TempBasicXMLDeployer.java:92) [jboss-bootstrap-impl-mc.jar:2.1.0-SNAPSHOT]
at org.jboss.bootstrap.impl.mc.deployer.TempBasicXMLDeployer.deploy(TempBasicXMLDeployer.java:193) [jboss-bootstrap-impl-mc.jar:2.1.0-SNAPSHOT]
at org.jboss.bootstrap.impl.mc.server.AbstractMCServerBase.bootstrapMcAndDescriptors(AbstractMCServerBase.java:318) [jboss-bootstrap-impl-mc.jar:2.1.0-SNAPSHOT]
at org.jboss.bootstrap.impl.mc.server.AbstractMCServerBase.doStart(AbstractMCServerBase.java:265) [jboss-bootstrap-impl-mc.jar:2.1.0-SNAPSHOT]
at org.jboss.bootstrap.impl.as.server.AbstractJBossASServerBase.doStart(AbstractJBossASServerBase.java:381) [jboss-bootstrap-impl-as.jar:2.1.0-SNAPSHOT]
at org.jboss.bootstrap.impl.base.server.AbstractServer$StartServerTask.run(AbstractServer.java:413) [jboss-bootstrap-impl-base.jar:2.1.0-SNAPSHOT]
at java.lang.Thread.run(Thread.java:637) [:1.6.0_17]
This is caused by a call to CtClass.getSuperClass() for org.jboss.osgi.integration.jbossas.AOPClassLoaderDeployerJBAS7909 which has the deployers.xml classpool, but the superclass lives in the aop.xml classpool.
So something is going wrong during bootstrap, and it looks like the classpools can't see classes from the other pools within the domain, while the classloaders can see classes from the other loaders in the domain. What is weird is that from bootstrap.xml it looks like the RegisterModuleCallback (from aop.xml) should be deployed before jmx.xml and deployers.xml, but could there be anything else missing at this stage?
<bootstrap xmlns="urn:jboss:bootstrap:1.0">
<url>bootstrap/vfs.xml</url>
<url>bootstrap/classloader.xml</url>
<url>bootstrap/stdio.xml</url>
<url>bootstrap/kernel.xml</url>
<url>bootstrap/aop.xml</url>
<url>bootstrap/jmx.xml</url>
<url>bootstrap/deployers.xml</url>
<url>bootstrap/profile.xml</url>
</bootstrap>
--------------------------------------------------------------
Reply to this message by going to Community
[http://community.jboss.org/message/538809#538809]
Start a new discussion in JBoss Microcontainer Development at Community
[http://community.jboss.org/choose-container!input.jspa?contentType=1&cont...]
16 years
Re: [jboss-user] [jBPM] - jBPM 4 is dead?
by Manuel Jordan
Manuel Jordan [http://community.jboss.org/people/dr_pompeii] replied to the discussion
"jBPM 4 is dead?"
To view the discussion, visit: http://community.jboss.org/message/538790#538790
--------------------------------------------------------------
Hello Alejandro
Well just few months ago I start this pretty cool journeying about learn jBPM, is very interesting and important, I have read the book
https://www.packtpub.com/jboss-business-process-management-jbpm-developer... jBPM Developer Guide, furthermore I am Technical Review in Apress for the two last book about Spring Enterprise/Web Recipes, and we have an interesting chapter about jBPM/Spring, therefore I am really interesting in go deeper to work with jBPM
> In the first place there will be another jBPM 4 release soon (version 4.4) to publish the issues fixed after jBPM 4.3
I am confuse, I wrote this post https://community.jboss.org/thread/150967 About differences between jPDL editors jBPM 3.2.6 and 4.3, since the book written by *+Salaboy+*, use the old jBPM version and in some reply in my post said
> The GPD for jBPM4 has not finished yet.
>
Therefore with *4.4* the GPD would be finished?
with 4.4 and *5* future release, spring support would be still available?
Saludos desde Perú
-Manuel
--------------------------------------------------------------
Reply to this message by going to Community
[http://community.jboss.org/message/538790#538790]
Start a new discussion in jBPM at Community
[http://community.jboss.org/choose-container!input.jspa?contentType=1&cont...]
16 years
Re: [jboss-user] [EJB 3.0] - Error working wih EJB3, Struts2 & JBoss 4.2GA
by NAG Kum
NAG Kum [http://community.jboss.org/people/nk_2010] replied to the discussion
"Error working wih EJB3, Struts2 & JBoss 4.2GA"
To view the discussion, visit: http://community.jboss.org/message/538779#538779
--------------------------------------------------------------
Hi,
Installed latest java version JDK6U20 & ubfortunate again same probelm ..:)
Plese see *error* beow -
icationBean: Container jboss.j2ee:ear=PaymentAdmin.ear,jar=AuthenticationBean.jar,name=AuthenticationBean,service=EJB3,VM
ID=4cbb36267847712f:-23e97a62:12820e1ed0c:-7ff9 + is already registered
at org.jboss.ejb3.deployers.Ejb3Deployer.deploy(Ejb3Deployer.java:196)
at org.jboss.ejb3.deployers.Ejb3Deployer.deploy(Ejb3Deployer.java:99)
at org.jboss.deployers.vfs.spi.deployer.AbstractVFSRealDeployer.internalDeploy(AbstractVFSRealDeployer.java:45)
at org.jboss.deployers.spi.deployer.helpers.AbstractRealDeployer.deploy(AbstractRealDeployer.java:50)
at org.jboss.deployers.plugins.deployers.DeployerWrapper.deploy(DeployerWrapper.java:171)
at org.jboss.deployers.plugins.deployers.DeployersImpl.doDeploy(DeployersImpl.java:1439)
at org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersImpl.java:1157)
at org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersImpl.java:1210)
at org.jboss.deployers.plugins.deployers.DeployersImpl.install(DeployersImpl.java:1098)
at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:348)
at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:1631)
at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:934)
at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1082)
at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:984)
at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:822)
at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:553)
at org.jboss.deployers.plugins.deployers.DeployersImpl.process(DeployersImpl.java:781)
at org.jboss.deployers.plugins.main.MainDeployerImpl.process(MainDeployerImpl.java:702)
at org.jboss.system.server.profileservice.repository.MainDeployerAdapter.process(MainDeployerAdapter.java:117)
at org.jboss.system.server.profileservice.repository.ProfileDeployAction.install(ProfileDeployAction.java:70)
at org.jboss.system.server.profileservice.repository.AbstractProfileAction.install(AbstractProfileAction.java:53)
at org.jboss.system.server.profileservice.repository.AbstractProfileService.install(AbstractProfileService.java:3
61)
at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:348)
at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:1631)
at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:934)
at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1082)
at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:984)
at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:822)
at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:553)
at org.jboss.system.server.profileservice.repository.AbstractProfileService.activateProfile(AbstractProfileServic
e.java:306)
at org.jboss.system.server.profileservice.ProfileServiceBootstrap.start(ProfileServiceBootstrap.java:271)
at org.jboss.bootstrap.AbstractServerImpl.start(AbstractServerImpl.java:461)
at org.jboss.Main.boot(Main.java:221)
at org.jboss.Main$1.run(Main.java:556)
at java.lang.Thread.run(Thread.java:619)
Caused by: org.jboss.deployers.spi.DeploymentException: Error creating ejb container AuthenticationBean: Container jboss.
j2ee:ear=PaymentAdmin.ear,jar=AuthenticationBean.jar,name=AuthenticationBean,service=EJB3,VMID=4cbb36267847712f:-23e97a62
:12820e1ed0c:-7ff9 + is already registered
at org.jboss.ejb3.Ejb3Deployment.deployElement(Ejb3Deployment.java:732)
at org.jboss.ejb3.Ejb3Deployment.deployElement(Ejb3Deployment.java:669)
at org.jboss.ejb3.Ejb3Deployment.deployUrl(Ejb3Deployment.java:651)
at org.jboss.ejb3.Ejb3Deployment.deploy(Ejb3Deployment.java:614)
at org.jboss.ejb3.Ejb3Deployment.create(Ejb3Deployment.java:491)
at org.jboss.ejb3.deployers.Ejb3Deployer.deploy(Ejb3Deployer.java:182)
... 34 more
Caused by: java.lang.IllegalStateException: Container jboss.j2ee:ear=PaymentAdmin.ear,jar=AuthenticationBean.jar,name=Aut
henticationBean,service=EJB3,VMID=4cbb36267847712f:-23e97a62:12820e1ed0c:-7ff9 + is already registered
at org.jboss.ejb3.Ejb3Registry.register(Ejb3Registry.java:128)
at org.jboss.ejb3.Ejb3Deployment.deployElement(Ejb3Deployment.java:728)
... 39 more
20:30:41,515 ERROR [ProfileServiceBootstrap] Failed to load profile: Summary of incomplete deployments (SEE PREVIOUS ERRO
RS FOR DETAILS):
DEPLOYMENTS IN ERROR:
Deployment "vfszip:/E:/jboss-5.1.0.GA/server/default/deploy/PaymentAdmin.ear/" is in error due to the following reason(
s): java.lang.IllegalStateException: Container jboss.j2ee:ear=PaymentAdmin.ear,jar=AuthenticationBean.jar,name=Authentica
tionBean,service=EJB3,VMID=4cbb36267847712f:-23e97a62:12820e1ed0c:-7ff9 + is already registered
I don't know when can I fix this!!!! HMMMMMMM
Trails never end till goal is achieved..
NK
--------------------------------------------------------------
Reply to this message by going to Community
[http://community.jboss.org/message/538779#538779]
Start a new discussion in EJB 3.0 at Community
[http://community.jboss.org/choose-container!input.jspa?contentType=1&cont...]
16 years
Re: [jboss-user] [jBPM] - Error while deploying the JBPM project from eclipse
by Maurice de Chateau
Maurice de Chateau [http://community.jboss.org/people/MohReece] replied to the discussion
"Error while deploying the JBPM project from eclipse"
To view the discussion, visit: http://community.jboss.org/message/538773#538773
--------------------------------------------------------------
Hi Sameer,
>From your description I cannot see exactly how you integrated jBPM with your JBoss AS server; I'm guessing that you followed the installation script that adds the /jbpm directory to the /deploy directory of your server?
Fact is that this "hibernate.identity.hbm.xml" file is inside the identity.jar file (which resides in the /deploy/jbpm/jbpm-service.sar directory if you followed said script), so this may be missing or corrupt.
If you are starting out with jBPM, chances are that you're not using the functionality in the identity module yet. If that is the case, you can remove the dependency on that module by commenting out the following lines from jBPM's Hibernate configuration (hibernate.cfg.xml file):
<mapping resource="hibernate.extra.hbm.xml" />
<mapping resource="hibernate.identity.hbm.xml" />
That way this particular file will not be read and you should be able to proceed with your deployment.
HTH.
Cheers,
Maurice
--------------------------------------------------------------
Reply to this message by going to Community
[http://community.jboss.org/message/538773#538773]
Start a new discussion in jBPM at Community
[http://community.jboss.org/choose-container!input.jspa?contentType=1&cont...]
16 years
Re: [jboss-user] [jBPM] - jBPM 4 is dead?
by O S
O S [http://community.jboss.org/people/gelos] replied to the discussion
"jBPM 4 is dead?"
To view the discussion, visit: http://community.jboss.org/message/538769#538769
--------------------------------------------------------------
just to add my 2c to the topic
changing focus to version 5 when version 4 is broken in major ways in very concerning
our team's chosen to use version 4 over 3 (which we regret) and right now we are stuck and struggling
we got version 4.0 to work but had to patch basic things such as transaction management in offline processing, timers not supporting absolute dates and only durations, etc.
tried to upgrade to 4.3 and discovered that it introduces yet more bugs that are even more impacting and touch basic flow functionality. we understand that it's software and it's a normal cycle of stabilizing new code, but not having version 4 roadmap clearly stated and committed to and starting to talk about version 5 is premature and disruptive to many
gelos
--------------------------------------------------------------
Reply to this message by going to Community
[http://community.jboss.org/message/538769#538769]
Start a new discussion in jBPM at Community
[http://community.jboss.org/choose-container!input.jspa?contentType=1&cont...]
16 years