DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=23374>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=23374

Enum's outer class may not be loaded for EnumUtils

           Summary: Enum's outer class may not be loaded for EnumUtils
           Product: Commons
           Version: 2.0 Final
          Platform: Other
        OS/Version: Other
            Status: NEW
          Severity: Minor
          Priority: Other
         Component: Lang
        AssignedTo: [EMAIL PROTECTED]
        ReportedBy: [EMAIL PROTECTED]


I have a class with an Enum inner class, and I call MyClass.MyEnum.getEnumList()
in a JSP page (with Tomcat 3.3.1).  I'm using enums pretty much exactly as
described in Enum's javadoc.  It returns an empty Collection, even though I have
defined several enums.  At any point in the JSP page after I reference a
specific Enum, the list shows up properly populated.

What's happening is presumably a classloader issue, where
MyClass.MyEnum.getEnumList() can be called without loading this class.  Perhaps
Tomcat's multiple classloaders make this possible.  In any case, the workaround
is easy.  I changed:

        public static List getEnumList() {
            return getEnumList(MyEnum.class);
        }

to:

        public static List getEnumList() {
            new MyParentClass();
            return getEnumList(MyEnum.class);
        }

for all the methods that need to access the enums.

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to