Uploaded image for project: 'Groovy'
  1. Groovy
  2. GROOVY-3501

NPE at groovy.lang.GroovyClassLoader.getPermissions(GroovyClassLoader.java:342)

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Blocker
    • Resolution: Duplicate
    • 1.6.2
    • 1.6.4, 1.7-beta-1
    • None
    • None

    Description

      ScriptEngine scriptEngine = new GroovyScriptEngineImpl();
      Object result = scriptEngine.eval("...");

      When executing this, I get:

      Caused by: java.lang.NullPointerException
      at groovy.lang.GroovyClassLoader.getPermissions(GroovyClassLoader.java:342)
      at java.security.SecureClassLoader.getProtectionDomain(SecureClassLoader.java:192)
      at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
      at groovy.lang.GroovyClassLoader.access$200(GroovyClassLoader.java:54)
      at groovy.lang.GroovyClassLoader$ClassCollector.createClass(GroovyClassLoader.java:468)
      at groovy.lang.GroovyClassLoader$ClassCollector.onClassNode(GroovyClassLoader.java:485)
      at groovy.lang.GroovyClassLoader$ClassCollector.call(GroovyClassLoader.java:489)
      at org.codehaus.groovy.control.CompilationUnit$10.call(CompilationUnit.java:727)
      at org.codehaus.groovy.control.CompilationUnit.applyToPrimaryClassNodes(CompilationUnit.java:924)
      at org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:462)
      at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:278)
      at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:249)
      at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:244)
      at org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.getScriptClass(GroovyScriptEngineImpl.java:320)
      at org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.eval(GroovyScriptEngineImpl.java:113)

      This is caused by "myDomain.getPermissions()" returning a null value.
      At runtime the myDomain is org.apache.felix.framework.BundleProtectionDomain.

      I think it is a bug in the groovy as the mettod is allowed to return the null
      (http://java.sun.com/javase/6/docs/api/java/security/ProtectionDomain.html#getPermissions()).

      Attachments

        Issue Links

          Activity

            People

              roshandawrani Roshan Dawrani
              zdila Martin Zdila
              Votes:
              1 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: