Uploaded image for project: 'ShrinkWrap'
  1. ShrinkWrap
  2. SHRINKWRAP-1

ClassLoader==null on ClassAsset with class loaded by bootstrap CL

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Major
    • 0.1.0
    • None
    • None
    • None

    Description

      This:

      archive.add(new BasicPath("somethingelse"), new ClassAsset(String.class));

      ...results in:

      java.lang.IllegalArgumentException: ClassLoader must be specified
      at org.jboss.declarchive.impl.base.Validate.notNull(Validate.java:44)
      at org.jboss.declarchive.impl.base.asset.ClassLoaderAsset.<init>(ClassLoaderAsset.java:62)
      at org.jboss.declarchive.impl.base.asset.ClassAsset.getStream(ClassAsset.java:71)
      at org.jboss.declarchive.impl.vfs.VfsMemoryArchiveImpl.add(VfsMemoryArchiveImpl.java:144)
      at org.jboss.declarchive.impl.vfs.VfsMemoryArchiveImpl.add(VfsMemoryArchiveImpl.java:1)
      at

      This is due to Class.getClassLoader() contract specifying that the bootstrap CL may be represented by null in some (ie. Sun) JDKs.

      http://java.sun.com/javase/6/docs/api/java/lang/Class.html#getClassLoader%28%29

      Add a test to cover and fix.

      Attachments

        Activity

          People

            Unassigned Unassigned
            arubinge@redhat.com Andrew Rubinger (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: