1 2 Previous Next 24 Replies Latest reply on Feb 8, 2008 8:19 PM by Brian Stansberry

    FIELD granularity web session replication tests

    Scott Stark Master

       

      "brian.stansberry@redhat.com" wrote:

      The FIELD granularity web session replication tests are now all failing in hudson (http://hudson.qa.jboss.com/hudson/view/JBoss%20AS/job/JBoss-AS-5.0.x-TestSuite-sun15/354/testReport/). I updated my workspace today and now see the same thing. I *suspect* it's related to the WarClassloaderDeployer change, just because that looked like the main thing that came in during my svn update.

      There's a problem instantiating an instance of a class that's been AOP-prepared for use in PojoCache:

      2008-02-02 12:53:02,190 ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[localhost].[/http-field-pass].[jsp]] Servlet.service() for servlet jsp threw exception
      java.lang.RuntimeException: No MemoryContext exists for ai028-q8bzp-fc6gnyco-1-fc6gqut5-26
      at org.jboss.virtual.plugins.context.memory.MemoryContextFactory.putFile(MemoryContextFactory.java:156)
      at org.jboss.aop.asintegration.jboss5.JBoss5ClassPool.toClass(JBoss5ClassPool.java:100)
      at javassist.CtClass.toClass(CtClass.java:1089)
      at org.jboss.aop.instrument.TransformerCommon$ToClassAction$2.toClass(TransformerCommon.java:293)
      at org.jboss.aop.instrument.TransformerCommon.toClass(TransformerCommon.java:128)
      at org.jboss.aop.instrument.JoinPointGenerator.toClass(JoinPointGenerator.java:327)
      at org.jboss.aop.instrument.JoinPointGenerator.doGenerateJoinPointClass(JoinPointGenerator.java:290)
      at org.jboss.aop.instrument.JoinPointGenerator.access$100(JoinPointGenerator.java:77)
      at org.jboss.aop.instrument.JoinPointGenerator$GenerateJoinPointClassAction$2.generateJoinPointClass(JoinPointGenerator.java:1672)
      at org.jboss.aop.instrument.JoinPointGenerator.generateJoinPointClass(JoinPointGenerator.java:251)
      at org.jboss.aop.GeneratedClassAdvisor.generateJoinPointClass(GeneratedClassAdvisor.java:1031)
      at


      I'm seeing a different problem. I did:
      1. ant -Dtest=org/jboss/test/cluster/defaultcsedTestCase.class one-cluster-test-field
      
      2. cp testsuite/output/lib/http-field.war ../build/output/jboss-5.0.0.Beta4/server/cluster-field-udp-0/deploy
      
      3. ./run.sh -c cluster-field-udp-0 -b localhost
      
      4. http://localhost:8080/http-field/setSession.jsp
      


      I see:
      10:11:30,885 INFO [ServerImpl] JBoss (Microcontainer) [5.0.0.Beta4 (build: SVNT
      ag=JBoss_5_0_0_Beta4 date=200802021034)] Started in 52s:719ms
      10:12:21,745 ERROR [[jsp]] Servlet.service() for servlet jsp threw exception
      java.lang.NoSuchFieldException: joinpoint_removeObserver8952720666748720206
       at java.lang.Class.getField(Class.java:1507)
       at org.jboss.aop.instrument.JoinPointGenerator.findAdvisedField(JoinPoin
      tGenerator.java:539)
       at org.jboss.aop.instrument.JoinPointGenerator.<init>(JoinPointGenerator
      .java:189)
       at org.jboss.aop.instrument.MethodJoinPointGenerator.<init>(MethodJoinPo
      intGenerator.java:74)
       at org.jboss.aop.GeneratedClassAdvisor$ClassAdvisorStrategy.getJoinPoint
      Generator(GeneratedClassAdvisor.java:1306)
       at org.jboss.aop.GeneratedClassAdvisor.getJoinPointGenerator(GeneratedCl
      assAdvisor.java:767)
       at org.jboss.aop.GeneratedClassAdvisor.fullWorkFinalizeMethodChain(Gener
      atedClassAdvisor.java:611)
       at org.jboss.aop.GeneratedClassAdvisor.finalizeMethodChain(GeneratedClas
      sAdvisor.java:575)
       at org.jboss.aop.GeneratedClassAdvisor.finalizeChains(GeneratedClassAdvi
      sor.java:556)
       at org.jboss.aop.ClassAdvisor.createInterceptorChains(ClassAdvisor.java:
      608)
       at org.jboss.aop.GeneratedClassAdvisor.access$201(GeneratedClassAdvisor.
      java:63)
       at org.jboss.aop.GeneratedClassAdvisor$ClassAdvisorStrategy.createInterc
      eptorChains(GeneratedClassAdvisor.java:1298)
       at org.jboss.aop.GeneratedClassAdvisor.createInterceptorChains(Generated
      ClassAdvisor.java:388)
       at org.jboss.aop.ClassAdvisor$1.run(ClassAdvisor.java:303)
       at java.security.AccessController.doPrivileged(Native Method)
       at org.jboss.aop.ClassAdvisor.attachClass(ClassAdvisor.java:273)
       at org.jboss.aop.AspectManager.initialiseClassAdvisor(AspectManager.java
      :655)
       at org.jboss.aop.GeneratedClassAdvisor$ClassAdvisorStrategy.initialise(G
      eneratedClassAdvisor.java:1286)
       at org.jboss.aop.GeneratedClassAdvisor.initialise(GeneratedClassAdvisor.
      java:137)
       at org.jboss.test.cluster.web.aop.Person$PersonAdvisor.initialise(Person
      $PersonAdvisor.java)
       at org.jboss.test.cluster.web.aop.Person$PersonAdvisor.<init>(Person$Per
      sonAdvisor.java)
       at org.jboss.test.cluster.web.aop.Person.<clinit>(Person.java)
       at org.apache.jsp.setSession_jsp._jspService(setSession_jsp.java:65)
       at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
       at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper
      .java:369)
       at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:3
      37)
       at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
       at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
      icationFilterChain.java:290)
       at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
      ilterChain.java:206)
       at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFi
      lter.java:96)
       at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
      icationFilterChain.java:235)
       at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
      ilterChain.java:206)
       at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
      alve.java:233)
       at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
      alve.java:175)
       at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(Securit
      yAssociationValve.java:189)
       at org.jboss.web.tomcat.service.session.ClusteredSessionValve.invoke(Clu
      steredSessionValve.java:89)
       at org.jboss.web.tomcat.service.session.BatchReplicationClusteredSession
      Valve.invoke(BatchReplicationClusteredSessionValve.java:102)
       at org.apache.catalina.authenticator.AuthenticatorBase.invoke(Authentica
      torBase.java:433)
       at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValv
      e.java:90)
       at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invok
      e(SecurityContextEstablishmentValve.java:96)
       at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
      ava:127)
       at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
      ava:102)
       at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedC
      onnectionValve.java:157)
       at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
      ve.java:109)
       at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav
      a:309)
       at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java
      :844)
       at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.proce
      ss(Http11Protocol.java:601)
       at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:44
      7)
       at java.lang.Thread.run(Thread.java:595)
      



        • 1. Re: FIELD granularity web session replication tests
          Scott Stark Master

          or I see this NoClassDefFoundError with no class shown:

          2008-02-03 10:32:55,526 DEBUG [org.jboss.cache.interceptors.InvocationContextInterceptor] Resetting invocation-scope options
          2008-02-03 10:32:55,526 DEBUG [org.jboss.cache.pojo.impl.PojoCacheDelegate] put(): inserting PojoReference with id: /JSESSION/localhost/http-field/ZV4oJXGFytHeS98c+wPdqg__/ATTRIBUTE/TEST_ID
          2008-02-03 10:32:55,541 ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[localhost].[/http-field].[jsp]] Servlet.service() for servlet jsp threw exception
          java.lang.NoClassDefFoundError
           at org.apache.jsp.setSession_jsp._jspService(setSession_jsp.java:65)
           at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
           at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
           at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:369)
           at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:337)
           at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
           at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
           at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
           at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
           at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
           at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
           at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
           at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
           at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
           at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:189)
           at org.jboss.web.tomcat.service.session.ClusteredSessionValve.invoke(ClusteredSessionValve.java:89)
           at org.jboss.web.tomcat.service.session.BatchReplicationClusteredSessionValve.invoke(BatchReplicationClusteredSessionValve.java:102)
           at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433)
           at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:90)
           at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:96)
           at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
           at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
           at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
           at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
           at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:309)
           at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
           at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:601)
           at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
           at java.lang.Thread.run(Thread.java:595)
          



          • 2. Re: FIELD granularity web session replication tests
            Kabir Khan Master

            AOP of classes from the WEB-INF/classes directory is broken following the changes to the war classloaders, I am looking into it.

            • 3. Re: FIELD granularity web session replication tests
              Kabir Khan Master

              I think I need access to the JBossWebMetaData attachment from my AspectDeployer. The problem is that jboss-metadata.jar is in a different classloader, i.e. AspectDeployer is in bootstrap cl, and jboss-metadata.jar is deployed in the deploy/ directory.

              • 4. Re: FIELD granularity web session replication tests
                Kabir Khan Master

                I can work around this, but would like to know if there are any chances of moving jboss-metadata.jar to the bootstrap level? Although, I expect this isn't really an option?

                • 5. Re: FIELD granularity web session replication tests
                  Scott Stark Master

                  Adding jboss-metadata.jar to the bootstrap-beans.xml BootstrapClassLoader config won't be a problem.

                  • 6. Re: FIELD granularity web session replication tests
                    Kabir Khan Master

                    Ah yes, I had muddled my facts slightly

                    • 7. Re: FIELD granularity web session replication tests
                      Kabir Khan Master

                      Moving jboss-metadata.jar and jboss-javaee.jar to jboss-5.0.0.Beta4/lib from jboss-5.0.0.Beta4/server/xxx/lib, and adding them to the bootstrap-beans.xml BootstrapClassLoader works.
                      Leaving jboss-javaee.jar gives the error shown. Please let me know if having jboss-javaee.jar in the bootstrap is also fine?

                      17:10:57,921 ERROR [AbstractKernelController] Error installing to Start: name=WarDeployer state=Create
                      java.lang.NoClassDefFoundError: javax/persistence/PersistenceContextType
                       at java.lang.Class.getDeclaredMethods0(Native Method)
                       at java.lang.Class.privateGetDeclaredMethods(Class.java:2395)
                       at java.lang.Class.getDeclaredMethods(Class.java:1763)
                       at org.jboss.reflect.plugins.introspection.IntrospectionTypeInfoFactoryImpl.getDeclaredMethods(IntrospectionTypeInfoFactoryImpl.java:479)
                       at org.jboss.reflect.plugins.introspection.IntrospectionTypeInfoFactoryImpl.getMethods(IntrospectionTypeInfoFactoryImpl.java:188)
                       at org.jboss.reflect.plugins.ClassInfoImpl.getDeclaredMethods(ClassInfoImpl.java:394)
                       at org.jboss.beans.info.plugins.AbstractBeanInfoFactory.getMethods(AbstractBeanInfoFactory.java:203)
                       at org.jboss.beans.info.plugins.AbstractBeanInfoFactory.getBeanInfo(AbstractBeanInfoFactory.java:136)
                       at org.jboss.config.plugins.AbstractConfiguration.getBeanInfo(AbstractConfiguration.java:83)
                       at org.jboss.xb.builder.JBossXBNoSchemaBuilder.generateType(JBossXBNoSchemaBuilder.java:767)
                       at org.jboss.xb.builder.JBossXBNoSchemaBuilder.generateBean(JBossXBNoSchemaBuilder.java:695)
                       at org.jboss.xb.builder.JBossXBNoSchemaBuilder.generateBean(JBossXBNoSchemaBuilder.java:683)
                       at org.jboss.xb.builder.JBossXBNoSchemaBuilder.generateTypeBinding(JBossXBNoSchemaBuilder.java:462)
                       at org.jboss.xb.builder.JBossXBNoSchemaBuilder.resolveTypeBinding(JBossXBNoSchemaBuilder.java:421)
                       at org.jboss.xb.builder.JBossXBNoSchemaBuilder.bindProperty(JBossXBNoSchemaBuilder.java:1715)
                       at org.jboss.xb.builder.JBossXBNoSchemaBuilder.generateType(JBossXBNoSchemaBuilder.java:1054)
                       at org.jboss.xb.builder.JBossXBNoSchemaBuilder.generateBean(JBossXBNoSchemaBuilder.java:695)
                       at org.jboss.xb.builder.JBossXBNoSchemaBuilder.generateBean(JBossXBNoSchemaBuilder.java:683)
                       at org.jboss.xb.builder.JBossXBNoSchemaBuilder.generateTypeBinding(JBossXBNoSchemaBuilder.java:462)
                       at org.jboss.xb.builder.JBossXBNoSchemaBuilder.resolveTypeBinding(JBossXBNoSchemaBuilder.java:421)
                       at org.jboss.xb.builder.JBossXBNoSchemaBuilder.createElementBinding(JBossXBNoSchemaBuilder.java:300)
                       at org.jboss.xb.builder.JBossXBNoSchemaBuilder.createRootElementBinding(JBossXBNoSchemaBuilder.java:280)
                       at org.jboss.xb.builder.JBossXBNoSchemaBuilder.createRootElements(JBossXBNoSchemaBuilder.java:260)
                       at org.jboss.xb.builder.JBossXBNoSchemaBuilder.build(JBossXBNoSchemaBuilder.java:184)
                       at org.jboss.xb.builder.JBossXBBuilder.build(JBossXBBuilder.java:102)
                       at org.jboss.web.tomcat.service.deployers.TomcatDeployer.start(TomcatDeployer.java:401)
                       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.reflect.plugins.introspection.ReflectionUtils.invoke(ReflectionUtils.java:56)
                       at org.jboss.reflect.plugins.introspection.ReflectMethodInfoImpl.invoke(ReflectMethodInfoImpl.java:110)
                       at org.jboss.joinpoint.plugins.BasicMethodJoinPoint.dispatch(BasicMethodJoinPoint.java:66)
                       at org.jboss.kernel.plugins.dependency.KernelControllerContextAction$JoinpointDispatchWrapper.execute(KernelControllerContextAction.java:214)
                       at org.jboss.kernel.plugins.dependency.ExecutionWrapper.execute(ExecutionWrapper.java:45)
                       at org.jboss.kernel.plugins.dependency.KernelControllerContextAction.dispatchExecutionWrapper(KernelControllerContextAction.java:108)
                       at org.jboss.kernel.plugins.dependency.KernelControllerContextAction.dispatchJoinPoint(KernelControllerContextAction.java:69)
                       at org.jboss.kernel.plugins.dependency.LifecycleAction.installActionInternal(LifecycleAction.java:221)
                       at org.jboss.kernel.plugins.dependency.KernelControllerContextAction.installAction(KernelControllerContextAction.java:135)
                       at org.jboss.kernel.plugins.dependency.KernelControllerContextAction.installAction(KernelControllerContextAction.java:46)
                       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.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.install(AbstractController.java:574)
                       at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:398)
                       at org.jboss.deployers.vfs.deployer.kernel.BeanMetaDataDeployer.deploy(BeanMetaDataDeployer.java:69)
                       at org.jboss.deployers.vfs.deployer.kernel.BeanMetaDataDeployer.deploy(BeanMetaDataDeployer.java:42)
                       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:239)
                       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)
                      


                      Moving jboss-javaee to the root lib directory and adding it to the BootstrapClassLoader fixes this problem. Please let me know if this is acceptable or not

                      • 8. Re: FIELD granularity web session replication tests
                        Scott Stark Master

                        No, needing metadata and javaee jars in /lib really is not valid for the core bootstrap. I'm not understanding why changing the class loader has changed where these jars need to be.

                        • 9. Re: FIELD granularity web session replication tests
                          Kabir Khan Master

                          I basically need access to the JBossWebMetaData attachment from the AspectDeployer. I can work around that though and do it via a bean that is deployed at the correct classloader level

                          • 10. Re: FIELD granularity web session replication tests
                            Scott Stark Master

                            How was this working before with the UnifiedLoaderRepository based class loader? There should be the same relationship between UnifiedClassLoaders and BaseClassLoaders in the new model in terms of peers and parents. The AspectDeployer should be loaded by a BaseClassLoader that is a peer of the BaseClassLoader which loads the jboss-metadata.jar. Don't really care how its fixed for beta4, but let's be clear on how aspects are being handled in terms of class loading.

                            • 11. Re: FIELD granularity web session replication tests
                              Kabir Khan Master

                              The JBossWebMetaData.classLoading file (of type ClassLoadingMetaData) always seems to be null. This also seems to be the only place for the information I would be interested in. Is this a bug?

                              • 12. Re: FIELD granularity web session replication tests
                                Scott Stark Master

                                There are several ClassLoadingMetaData types. The org.jboss.metadata.web.jboss.ClassLoadingMetaData would only be set for a war with a jboss-web.xml that includes a scoped class loader metadata element. There is code in the AbstractWarDeployer to always set this if it was not obtained from the parsing layer, but this is now obsolete information. There is a DeploymentUnit org.jboss.deployers.structure.spi.classloading.ClassLoaderMetaData attachment that drives the new class loaders. Is that what your looking for?

                                What do you need from ClassLoadingMetaData?

                                • 13. Re: FIELD granularity web session replication tests
                                  Kabir Khan Master

                                  If deploying an ear, I need to find the war files. I think the precense of a JBossWebMetaData attachment is the best way to determine if we are a war?

                                  Next, I need to check if the war classloader delegates to the parent or not. I will try looking for that info in the in ClassLoadingMetaData of the war's sub deployment.

                                  • 14. Re: FIELD granularity web session replication tests
                                    Scott Stark Master

                                     

                                    "kabir.khan@jboss.com" wrote:
                                    If deploying an ear, I need to find the war files. I think the precense of a JBossWebMetaData attachment is the best way to determine if we are a war?

                                    Yes. What is special about wars for the aspect deployer? I'm still trying to understand how the JBossWebMetaData is coming into the picture and causing problems now, but not before the war class loader change. Note that you can ask about whether an attachment is present using its name as DeploymentUnit.isAttachmentPresent(Class type) is just a convenience method for isAttachmentPresent(type.getName()).

                                    "kabir.khan@jboss.com" wrote:

                                    Next, I need to check if the war classloader delegates to the parent or not. I will try looking for that info in the in ClassLoadingMetaData of the war's sub deployment.

                                    Ok, this may not be in synch with the new org.jboss.deployers.structure.spi.classloading.ClassLoaderMetaData attachment. I'll have to check that.

                                    What is the code your working on here so I can understand what type of class loader processing your doing?


                                    1 2 Previous Next