Re: AOP Mavenization
by Kabir Khan
Hi Paul,
I'll try to take a proper look over the next few days, but here are a
few initial points/questions:
* Does the build-tests-jdk50-maven.xml file basically work the same as
the old build file, apart from referencing stuff from the maven
repository? I am glad that we stuck with ant for the tests since they
are quite complex.
*Regarding this
!-- TODO: does this still need to be imported? -->
<import file="base-tests-maven.xml"/>
The answer is yes, although I think it should still reference
"base-tests.xml". This file lists all the tests that can be run in all
weaving configurations.
- In the build/ folder we have a task to build and package a full
release, how will that be managed? We want everything to be named the
same as they are in that release at present, i.e. we don't want to have
to update all the scripts that are part of the distribution etc. to use
the maven naming conventions with a version on the end. Or will we still
be packaging the releases with ant?
Cheers,
Kabir
Paul Gier wrote:
> Hey Kabir and Flavia,
> When you have a chance this week can either of you take a look at the
> maven build and the ant script that I created to run the tests against
> the maven generated files? From the aop subdirectory, just do "mvn
> install" followed by "ant -f build-tests-jdk50-maven.xml".
>
> Also let me know if there is anything missing from the build that still
> needs to be mavenized. I'd like to finish migration to maven for aop
> within the next week or two.
>
> Thanks!
--
Kabir Khan
JBoss AOP Lead
JBoss, a division of Red Hat
17 years
Fwd: Seam moving to SVN
by Pete Muir
At Andy's suggestion, I'm cross posting this here:
> We are in the process of migrating Seam to svn.jboss.org so I need
> to know the svn logins of any of the AP team who need commit on the
> Seam AP branches.
17 years
EJB3's EJBMetaDataLoader and AnnotationRepositoryToMetaData are on the move
by Carlo de Wolf
I've copied EJBMetaDataLoader and it's sister
AnnotationRepositoryToMetaData over to ejb3/metadata. This makes the
stuff in trunk and ejb3/core deprecated until I finalize the move.
Basically I need a component which extends the missing functionality of
AOP and MC to advise on multi-class components (bean + interceptors).
The real functionality of analyzing meta data and translating this to
annotations should not be in ejb3/metadata. It should be plugged into
there from the functional components. (So ejb3/interceptors can be fully
responsible for Chapter 12.) So a plug point SPI still needs to be created.
Carlo
17 years, 1 month
Problem with new beta3 build
by Andrew Dinn
Hi Foax,
I've got a bit of a weirdy with AS5.0.Beta3 and wondered if anyone has
any idea what is going on. Here's the problem.
I checked out a completely fresh build of the 5.0.0.Beta3 tag yesterday
(i.e. no previous source tree, no old files hanging around to screw up
the mix, etc). I built a release by cding to the build dir and executing
'bash build.sh all install'. The build appeared to complete ok (no error
messages) but when I run the server I get an error during deployment
because of a failure to load
org.jboss.remoting.ServerInvocationHandler
(n.b. snippet from log containing full error included at end of this note).
It appears that this class only exists in jboss-remoting.jar and
jboss-clientall.jar and that these only exist in the _client_ dir of the
installed tree.
I tried to patch things by copying the remoting jar into lib/endorsed
and this resolved the missing symbol cited above but the server then
failed to boot because it could not find
org.jboss.logger.Logger
Anyone have any idea why my bootstrap is failing to find the required
libs? Or, rather, any idea why the required code is not being installed
in a place where server can find it at runtime?
regards,
Andrew Dinn
-----------
Here's the snippet:
19:23:49,555 ERROR [AbstractKernelController] Error installing to
Instantiated: name=jboss:service=invoker,type=unified state=Described
mode=Manual requiredState=Configured
org.jboss.deployment.DeploymentException: Unable to createMBean for
jboss:service=invoker,type=unified
at
org.jboss.deployment.DeploymentException.rethrowAsDeploymentException(DeploymentException.java:52)
at org.jboss.system.ServiceCreator.install(ServiceCreator.java:141)
at
org.jboss.system.microcontainer.InstantiateAction.installAction(InstantiateAction.java:45)
at
org.jboss.system.microcontainer.InstantiateAction.installAction(InstantiateAction.java:37)
at
org.jboss.dependency.plugins.action.SimpleControllerContextAction.simpleInstallAction(SimpleControllerContextAction.java:62)
at
org.jboss.dependency.plugins.action.AccessControllerContextAction.install(AccessControllerContextAction.java:71)
at
org.jboss.dependency.plugins.AbstractControllerContextActions.install(AbstractControllerContextActions.java:51)
at
org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:327)
at
org.jboss.system.microcontainer.ServiceControllerContext.install(ServiceControllerContext.java:255)
at
org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:1309)
at
org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:734)
at
org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:862)
at
org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:784)
at
org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:622)
at
org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:411)
at org.jboss.system.ServiceController.doChange(ServiceController.java:659)
at org.jboss.system.ServiceController.install(ServiceController.java:272)
at
org.jboss.system.deployers.ServiceDeployer.deploy(ServiceDeployer.java:98)
at
org.jboss.system.deployers.ServiceDeployer.deploy(ServiceDeployer.java:46)
at
org.jboss.deployers.spi.deployer.helpers.AbstractSimpleRealDeployer.internalDeploy(AbstractSimpleRealDeployer.java:65)
at
org.jboss.deployers.spi.deployer.helpers.AbstractRealDeployer.deploy(AbstractRealDeployer.java:50)
at
org.jboss.deployers.plugins.deployers.DeployerWrapper.deploy(DeployerWrapper.java:169)
at
org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersImpl.java:853)
at
org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersImpl.java:874)
at
org.jboss.deployers.plugins.deployers.DeployersImpl.install(DeployersImpl.java:794)
at
org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:327)
at
org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:1309)
at
org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:734)
at
org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:862)
at
org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:784)
at
org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:622)
at
org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:411)
at
org.jboss.deployers.plugins.deployers.DeployersImpl.process(DeployersImpl.java:498)
at
org.jboss.deployers.plugins.main.MainDeployerImpl.process(MainDeployerImpl.java:506)
at
org.jboss.system.server.profileservice.ProfileServiceBootstrap.loadProfile(ProfileServiceBootstrap.java:215)
at
org.jboss.system.server.profileservice.ProfileServiceBootstrap.start(ProfileServiceBootstrap.java:131)
at
org.jboss.bootstrap.AbstractServerImpl.start(AbstractServerImpl.java:408)
at org.jboss.Main.boot(Main.java:208)
at org.jboss.Main$1.run(Main.java:534)
at java.lang.Thread.run(Thread.java:595)
Caused by: java.lang.NoClassDefFoundError:
org/jboss/remoting/ServerInvocationHandler
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
at java.net.URLClassLoader.access$100(URLClassLoader.java:56)
at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at
org.jboss.mx.loading.RepositoryClassLoader.findClassLocally(RepositoryClassLoader.java:608)
at
org.jboss.mx.loading.RepositoryClassLoader.findClass(RepositoryClassLoader.java:588)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at
org.jboss.mx.loading.RepositoryClassLoader.loadClassLocally(RepositoryClassLoader.java:225)
at
org.jboss.mx.loading.ClassLoadingTask$ThreadTask.run(ClassLoadingTask.java:131)
at org.jboss.mx.loading.LoadMgr3.nextTask(LoadMgr3.java:399)
at
org.jboss.mx.loading.UnifiedClassLoader.loadClassImpl(UnifiedClassLoader.java:296)
at
org.jboss.mx.loading.RepositoryClassLoader.loadClass(RepositoryClassLoader.java:441)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at
org.jboss.mx.server.MBeanServerImpl.instantiate(MBeanServerImpl.java:1213)
at
org.jboss.mx.server.MBeanServerImpl.instantiate(MBeanServerImpl.java:286)
at
org.jboss.mx.server.MBeanServerImpl.createMBean(MBeanServerImpl.java:344)
at
org.jboss.system.ServiceCreator.installPlainMBean(ServiceCreator.java:197)
at org.jboss.system.ServiceCreator.install(ServiceCreator.java:115)
... 38 more
19:23:49,578 INFO [TransactionManagerService] Stopping recovery manager
19:23:49,598 WARN [JaasSecurityManagerService] Stopping failed
jboss.security:service=JaasSecurityManager
javax.naming.NameNotFoundException: jaas not bound
at org.jnp.server.NamingServer.getBinding(NamingServer.java:542)
at org.jnp.server.NamingServer.getBinding(NamingServer.java:550)
at org.jnp.server.NamingServer.unbind(NamingServer.java:242)
at org.jnp.interfaces.NamingContext.unbind(NamingContext.java:814)
at org.jnp.interfaces.NamingContext.unbind(NamingContext.java:797)
at javax.naming.InitialContext.unbind(InitialContext.java:375)
at
org.jboss.security.plugins.JaasSecurityManagerService.stopService(JaasSecurityManagerService.java:492)
at
org.jboss.system.ServiceMBeanSupport.jbossInternalStop(ServiceMBeanSupport.java:328)
at
org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:247)
at sun.reflect.GeneratedMethodAccessor3.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:157)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:96)
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:668)
at
org.jboss.system.microcontainer.ServiceProxy.invoke(ServiceProxy.java:167)
at $Proxy5.stop(Unknown Source)
at
org.jboss.system.microcontainer.StartStopLifecycleAction.uninstallAction(StartStopLifecycleAction.java:56)
at
org.jboss.system.microcontainer.StartStopLifecycleAction.uninstallAction(StartStopLifecycleAction.java:37)
at
org.jboss.dependency.plugins.action.SimpleControllerContextAction.simpleUninstallAction(SimpleControllerContextAction.java:79)
at
org.jboss.dependency.plugins.action.AccessControllerContextAction.uninstall(AccessControllerContextAction.java:131)
at
org.jboss.dependency.plugins.AbstractControllerContextActions.uninstall(AbstractControllerContextActions.java:58)
at
org.jboss.dependency.plugins.AbstractControllerContext.uninstall(AbstractControllerContext.java:333)
at
org.jboss.dependency.plugins.AbstractController.uninstall(AbstractController.java:1323)
at
org.jboss.dependency.plugins.AbstractController.uninstallContext(AbstractController.java:1009)
at
org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:627)
at
org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:411)
at org.jboss.system.ServiceController.doChange(ServiceController.java:659)
at org.jboss.system.ServiceController.stop(ServiceController.java:481)
at
org.jboss.system.deployers.ServiceDeployer.stop(ServiceDeployer.java:156)
at
org.jboss.system.deployers.ServiceDeployer.undeploy(ServiceDeployer.java:136)
at
org.jboss.system.deployers.ServiceDeployer.undeploy(ServiceDeployer.java:46)
at
org.jboss.deployers.spi.deployer.helpers.AbstractSimpleRealDeployer.internalUndeploy(AbstractSimpleRealDeployer.java:73)
at
org.jboss.deployers.spi.deployer.helpers.AbstractRealDeployer.undeploy(AbstractRealDeployer.java:112)
at
org.jboss.deployers.plugins.deployers.DeployerWrapper.undeploy(DeployerWrapper.java:187)
at
org.jboss.deployers.plugins.deployers.DeployersImpl.doUninstallParentLast(DeployersImpl.java:1072)
at
org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersImpl.java:882)
at
org.jboss.deployers.plugins.deployers.DeployersImpl.install(DeployersImpl.java:794)
at
org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:327)
at
org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:1309)
at
org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:734)
at
org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:862)
at
org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:784)
at
org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:622)
at
org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:411)
at
org.jboss.deployers.plugins.deployers.DeployersImpl.process(DeployersImpl.java:498)
at
org.jboss.deployers.plugins.main.MainDeployerImpl.process(MainDeployerImpl.java:506)
at
org.jboss.system.server.profileservice.ProfileServiceBootstrap.loadProfile(ProfileServiceBootstrap.java:215)
at
org.jboss.system.server.profileservice.ProfileServiceBootstrap.start(ProfileServiceBootstrap.java:131)
at
org.jboss.bootstrap.AbstractServerImpl.start(AbstractServerImpl.java:408)
at org.jboss.Main.boot(Main.java:208)
at org.jboss.Main$1.run(Main.java:534)
at java.lang.Thread.run(Thread.java:595)
19:23:49,695 ERROR [AbstractKernelController] Error installing to Real:
name=vfsfile:/home/adinn/jboss/jbossas/JBoss_5_0_0_Beta3/build/output/jboss-5.0.0.Beta3/server/default/conf/jboss-service.xml
state=PostClassLoader mode=Manual requiredState=Real
org.jboss.deployment.DeploymentException: Unable to createMBean for
jboss:service=invoker,type=unified
at
org.jboss.deployment.DeploymentException.rethrowAsDeploymentException(DeploymentException.java:52)
at org.jboss.system.ServiceCreator.install(ServiceCreator.java:141)
at
org.jboss.system.microcontainer.InstantiateAction.installAction(InstantiateAction.java:45)
at
org.jboss.system.microcontainer.InstantiateAction.installAction(InstantiateAction.java:37)
at
org.jboss.dependency.plugins.action.SimpleControllerContextAction.simpleInstallAction(SimpleControllerContextAction.java:62)
at
org.jboss.dependency.plugins.action.AccessControllerContextAction.install(AccessControllerContextAction.java:71)
at
org.jboss.dependency.plugins.AbstractControllerContextActions.install(AbstractControllerContextActions.java:51)
at
org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:327)
at
org.jboss.system.microcontainer.ServiceControllerContext.install(ServiceControllerContext.java:255)
at
org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:1309)
at
org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:734)
at
org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:862)
at
org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:784)
at
org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:622)
at
org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:411)
at org.jboss.system.ServiceController.doChange(ServiceController.java:659)
at org.jboss.system.ServiceController.install(ServiceController.java:272)
at
org.jboss.system.deployers.ServiceDeployer.deploy(ServiceDeployer.java:98)
at
org.jboss.system.deployers.ServiceDeployer.deploy(ServiceDeployer.java:46)
at
org.jboss.deployers.spi.deployer.helpers.AbstractSimpleRealDeployer.internalDeploy(AbstractSimpleRealDeployer.java:65)
at
org.jboss.deployers.spi.deployer.helpers.AbstractRealDeployer.deploy(AbstractRealDeployer.java:50)
at
org.jboss.deployers.plugins.deployers.DeployerWrapper.deploy(DeployerWrapper.java:169)
at
org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersImpl.java:853)
at
org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersImpl.java:874)
at
org.jboss.deployers.plugins.deployers.DeployersImpl.install(DeployersImpl.java:794)
at
org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:327)
at
org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:1309)
at
org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:734)
at
org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:862)
at
org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:784)
at
org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:622)
at
org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:411)
at
org.jboss.deployers.plugins.deployers.DeployersImpl.process(DeployersImpl.java:498)
at
org.jboss.deployers.plugins.main.MainDeployerImpl.process(MainDeployerImpl.java:506)
at
org.jboss.system.server.profileservice.ProfileServiceBootstrap.loadProfile(ProfileServiceBootstrap.java:215)
at
org.jboss.system.server.profileservice.ProfileServiceBootstrap.start(ProfileServiceBootstrap.java:131)
at
org.jboss.bootstrap.AbstractServerImpl.start(AbstractServerImpl.java:408)
at org.jboss.Main.boot(Main.java:208)
at org.jboss.Main$1.run(Main.java:534)
at java.lang.Thread.run(Thread.java:595)
Caused by: java.lang.NoClassDefFoundError:
org/jboss/remoting/ServerInvocationHandler
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
at java.net.URLClassLoader.access$100(URLClassLoader.java:56)
at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at
org.jboss.mx.loading.RepositoryClassLoader.findClassLocally(RepositoryClassLoader.java:608)
at
org.jboss.mx.loading.RepositoryClassLoader.findClass(RepositoryClassLoader.java:588)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at
org.jboss.mx.loading.RepositoryClassLoader.loadClassLocally(RepositoryClassLoader.java:225)
at
org.jboss.mx.loading.ClassLoadingTask$ThreadTask.run(ClassLoadingTask.java:131)
at org.jboss.mx.loading.LoadMgr3.nextTask(LoadMgr3.java:399)
at
org.jboss.mx.loading.UnifiedClassLoader.loadClassImpl(UnifiedClassLoader.java:296)
at
org.jboss.mx.loading.RepositoryClassLoader.loadClass(RepositoryClassLoader.java:441)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at
org.jboss.mx.server.MBeanServerImpl.instantiate(MBeanServerImpl.java:1213)
at
org.jboss.mx.server.MBeanServerImpl.instantiate(MBeanServerImpl.java:286)
at
org.jboss.mx.server.MBeanServerImpl.createMBean(MBeanServerImpl.java:344)
at
org.jboss.system.ServiceCreator.installPlainMBean(ServiceCreator.java:197)
at org.jboss.system.ServiceCreator.install(ServiceCreator.java:115)
... 38 more
19:23:49,733 ERROR [ProfileServiceBootstrap] Failed to load profile:
Summary of incomplete deployments (SEE PREVIOUS ERRORS FOR DETAILS):
*** CONTEXTS IN ERROR: Name -> Error
vfsfile:/home/adinn/jboss/jbossas/JBoss_5_0_0_Beta3/build/output/jboss-5.0.0.Beta3/server/default/conf/jboss-service.xml
-> java.lang.NoClassDefFoundError:
org/jboss/remoting/ServerInvocationHandler
17 years, 1 month
Null securityDomain
by Heiko Braun
I remember a discussion about security metadata just recently.
With the latest checkout I'll get the following error:
--
Caused by: java.lang.IllegalArgumentException: Null securityDomain
at
org.jboss.metadata.ejb.jboss.JBossMetaData.setSecurityDomain(JBossMetaData.java:323)
at
org.jboss.ejb.deployers.MergedJBossMetaDataDeployer.deploy(MergedJBossMetaDataDeployer.java:100)
at
org.jboss.deployers.plugins.deployers.DeployerWrapper.deploy(DeployerWrapper.java:169)
... 58 more
--
It's an EAR that contains a bunch of EJB jars. Is it related to the
previous discussion?
/Heiko
17 years, 1 month
Removing ws-jaxme from jbossas testsuite (again)
by Jon Prindiville
Previously:
> Fernando had asked me to look into replacing usage of ws-jaxme
> in the AS testsuite (in Branch_4_2) with sun-jaxb. In doing so
> I found that it seemed to have been removed already, save for some
> references in build.xml and libraries.{ent,xml}.
There were some jaxme references kicking around in trunk's testsuite that I was
asked to look at removing as well.
After the removals in Branch_4_2, it built and ran the testsuite [1]. trunk
built fine as well, but the testsuite seemed to hang after letting it run
overnight on this machine. I'm trying to get an unmodified trunk's testsuite to
run as a comparison.
Unless someone has a reason not to, I'll wait on the testsuite runs before
committing the trunk patch; any reason for the Branch_4_2 changes to not go in?
Jon
[1] Reports for the modified and original checkout (respectively)
http://jonprindiville.net/jbossas/Branch_4_2/no-jaxme/testsuite-reports/
http://jonprindiville.net/jbossas/Branch_4_2/no-jaxme/testsuite-reports-p...
17 years, 1 month
Newer releases for jboss-common-logging-spi 2.0.4.GA?
by Trustin Lee
Hi,
I found the trunk contains support for MDC and NDC in
jboss-common-logging-spi, which is not provided in 2.0.4.GA. I tried to
find any deployed snapshots or newer releases, but couldn't find one.
Any pointers?
Cheers,
Trustin
--
what we call human nature is actually human habit
--
http://gleamynode.net/
--
PGP Key ID: 0x0255ECA6
17 years, 1 month
obfuscating xml/xsl jars
by Scott M Stark
The bundling of apache xml/xsl jars in jbossas using the jar extension
mechanism prevents web apps from overriding these. This is due to tomcat
looking to the system class loader for classes, and if found, ignoring
any web app version of the class. This is overly strict for extension
classes that can be loaded via the thread context class loader using the
jar services mechanism.
For example, the javax.xml.transform.TransformerFactory looks for a
META-INF/services/javax.xml.transform.TransformerFactory resource that
names the TransformerFactory implementation to use. A war with a
WEB-INF/lib/xalan.jar that has such a resource that points to an
alternate xalan implementation version, but still uses the same
org.apache.xalan.processor.TransformerFactoryImpl class name as used by
the jbossas endorsed lib version, will not be able to override this
because of the tomcat WebappClassLoader check against the system class
loader. A web app should be able to drop the xalan 2.7.1 jar into its
WEB-INF/lib to override the bundled 2.7.0 version for example. This does
not work currently.
We should obfuscate the apache xml/xsl endorsed jars using an org.jboss
prefix similar to how a com.sun prefix is used for the apache xml code
bundled in the sun jdk.
17 years, 1 month