Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 1.0.0-beta-2, 1.5.0
    • Component/s: None
    • Labels:
      None
    • Environment:
      1.0.0-beta-2-20111019.211229-11-plus

      Description

      Having and extension A which provides optional integration with an extension B, the deployment of an application that contains A but does not contain B seems to fail with CNFE even though the optional integration classes are not used by the application.

      What should actually happen is that the ClassNotFoundException should be suppressed by the deployer and the related beans should not be registered as CDI beans, instead of failing the entire deployment.

      INFO - Configuring enterprise application: /home/jharting/jboss/testing/TOMEE/apache-tomee-plus-1.0.0-beta-2-SNAPSHOT/webapps/faces-shortly
      java.lang.NoClassDefFoundError: Lorg/jboss/seam/security/Identity;
      at java.lang.Class.getDeclaredFields0(Native Method)
      at java.lang.Class.privateGetDeclaredFields(Class.java:2291)
      at java.lang.Class.getDeclaredFields(Class.java:1743)
      at org.apache.xbean.finder.AnnotationFinder.findAnnotatedFields(AnnotationFinder.java:638)
      at org.apache.openejb.config.rules.CheckInjectionPointUsage.validate(CheckInjectionPointUsage.java:35)
      at org.apache.openejb.config.rules.ValidationBase.validate(ValidationBase.java:45)
      at org.apache.openejb.config.AppValidator.validate(AppValidator.java:88)
      at org.apache.openejb.config.ValidateModules.deploy(ValidateModules.java:29)
      at org.apache.openejb.config.ConfigurationFactory$Chain.deploy(ConfigurationFactory.java:263)
      at org.apache.openejb.config.ConfigurationFactory.configureApplication(ConfigurationFactory.java:692)
      at org.apache.tomee.catalina.TomcatWebAppBuilder.startInternal(TomcatWebAppBuilder.java:448)
      at org.apache.tomee.catalina.TomcatWebAppBuilder.configureStart(TomcatWebAppBuilder.java:405)
      at org.apache.tomee.catalina.GlobalListenerSupport.lifecycleEvent(GlobalListenerSupport.java:117)
      at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
      at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)
      at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5103)
      at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:148)
      at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:812)
      at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:787)
      at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:607)
      at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:932)
      at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:723)
      at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:470)
      at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1329)
      at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
      at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
      at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)
      at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:389)
      at org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:334)
      at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1041)
      at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:774)
      at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:148)
      at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1033)
      at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:291)
      at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:148)
      at org.apache.catalina.core.StandardService.startInternal(StandardService.java:443)
      at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:148)
      at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:727)
      at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:148)
      at org.apache.catalina.startup.Catalina.start(Catalina.java:621)
      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.apache.catalina.startup.Bootstrap.start(Bootstrap.java:322)
      at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:450)
      Caused by: java.lang.ClassNotFoundException: org.jboss.seam.security.Identity
      at org.apache.openejb.core.TempClassLoader.loadClass(TempClassLoader.java:98)
      at org.apache.openejb.core.TempClassLoader.loadClass(TempClassLoader.java:65)
      ... 46 more

        Attachments

        1. faces-shortly.war
          1.74 MB
          Jozef Hartinger

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              jharting Jozef Hartinger
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: