akretion / terminatooor

Ruby Scripting for Kettle provides Ruby scripting capabilities to PDI a.k.a. Kettle by means of a Ruby scripting step.
http://type-exit.org/adventures-with-open-source-bi/kettle-plugins/ruby-scripting-plugin/
Other
1 stars 0 forks source link

JRuby 9k classloader bug #2

Open rvalyi opened 8 years ago

rvalyi commented 8 years ago

with branch https://github.com/akretion/terminatooor/tree/jruby-9k getting this classloader error opening the Ruby step dialog box:

java.lang.ExceptionInInitializerError
    at org.jruby.RubyIO.<clinit>(RubyIO.java:113)
    at org.jruby.RubyInstanceConfig.setupEnvironment(RubyInstanceConfig.java:677)
    at org.jruby.RubyInstanceConfig.<init>(RubyInstanceConfig.java:123)
    at org.jruby.embed.internal.AbstractLocalContextProvider.<init>(AbstractLocalContextProvider.java:59)
    at org.jruby.embed.internal.SingleThreadLocalContextProvider.<init>(SingleThreadLocalContextProvider.java:50)
    at org.jruby.embed.ScriptingContainer.getProviderInstance(ScriptingContainer.java:260)
    at org.jruby.embed.ScriptingContainer.<init>(ScriptingContainer.java:241)
    at org.jruby.embed.ScriptingContainer.<init>(ScriptingContainer.java:227)
    at org.typeexit.kettle.plugin.steps.ruby.RubyStepFactory.createScriptingContainer(RubyStepFactory.java:18)
    at org.typeexit.kettle.plugin.steps.ruby.RubyStepParseErrorHelper.<init>(RubyStepParseErrorHelper.java:34)
    at org.typeexit.kettle.plugin.steps.ruby.RubyStepDialog.open(RubyStepDialog.java:234)
    at org.pentaho.di.ui.spoon.delegates.SpoonStepsDelegate.editStep(SpoonStepsDelegate.java:124)
    at org.pentaho.di.ui.spoon.Spoon.editStep(Spoon.java:8712)
    at org.pentaho.di.ui.spoon.trans.TransGraph.editStep(TransGraph.java:3061)
    at org.pentaho.di.ui.spoon.trans.TransGraph.mouseDoubleClick(TransGraph.java:747)
    at org.eclipse.swt.widgets.TypedListener.handleEvent(Unknown Source)
    at org.eclipse.swt.widgets.EventTable.sendEvent(Unknown Source)
    at org.eclipse.swt.widgets.Widget.sendEvent(Unknown Source)
    at org.eclipse.swt.widgets.Display.runDeferredEvents(Unknown Source)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Unknown Source)
    at org.pentaho.di.ui.spoon.Spoon.readAndDispatch(Spoon.java:1319)
    at org.pentaho.di.ui.spoon.Spoon.waitForDispose(Spoon.java:7939)
    at org.pentaho.di.ui.spoon.Spoon.start(Spoon.java:9190)
    at org.pentaho.di.ui.spoon.Spoon.main(Spoon.java:654)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at org.pentaho.commons.launcher.Launcher.main(Launcher.java:92)
Caused by: java.lang.SecurityException: Prohibited package name: java.util.concurrent
    at java.lang.ClassLoader.preDefineClass(ClassLoader.java:658)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:794)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
    at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
    at org.pentaho.di.core.plugins.KettleURLClassLoader.loadClassFromThisLoader(KettleURLClassLoader.java:76)
    at org.pentaho.di.core.plugins.KettleURLClassLoader.loadClass(KettleURLClassLoader.java:99)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
    at org.jruby.util.ByteList.<clinit>(ByteList.java:1222)
    ... 29 more
rvalyi commented 8 years ago

seems the same problem that appeared with JRuby 1.7.23 https://github.com/akretion/terminatooor/issues/1