Uploaded image for project: 'EJB 3.0'
  1. EJB 3.0
  2. EJBTHREE-2168

env-entry with an injection-target but without an explicit env-entry-type fails with java.lang.ClassNotFoundException: Null class name

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Major Major
    • depchain-1.0.0-alpha-17
    • depchain-1.0.0-alpha-4
    • core
    • None
    • jboss-ejb3-core:1.5.2

      Consider the following content in ejb-jar.xml:

      <session>
      <ejb-name>Bean</ejb-name>
      <env-entry>
      <env-entry-name>someString</env-entry-name>
      <env-entry-value>Hello world</env-entry-value>
      <injection-target>
      <injection-target-class>org.myapp.ejb.MyEJB</injection-target-class>
      <injection-target-name>someString</injection-target-name>
      </injection-target>
      </env-entry>

      Note that we haven't explicitly specified the env-entry-type element. This runs into:

      Caused by: java.lang.ClassNotFoundException: Null class name
      at org.jboss.classloader.plugins.ClassLoaderUtils.checkClassName(ClassLoaderUtils.java:53) [jboss-classloader.jar:2.2.0.Alpha8]
      at org.jboss.classloader.spi.base.BaseClassLoader.loadClass(BaseClassLoader.java:425) [jboss-classloader.jar:2.2.0.Alpha8]
      at java.lang.ClassLoader.loadClass(ClassLoader.java:252) [:1.6.0_16]
      at org.jboss.injection.EnvEntryEncInjector.getEnvEntryValue(EnvEntryEncInjector.java:66) [:1.5.1]
      at org.jboss.injection.EnvEntryEncInjector.inject(EnvEntryEncInjector.java:53) [:1.5.1]
      ... 82 more

      As per the spec, in the absence of explicit env-entry-type, the type has to be inferred from the injection-target (if present).

              jaikiran Jaikiran Pai (Inactive)
              jaikiran Jaikiran Pai (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

                Created:
                Updated:
                Resolved: