We have test class DocumentIndicatorTest. Early it work with @RunWith(MockitoJUnitRunner.class). Now we change it on @RunWith(PowerMockRunner.class). And it perfect work on local pc (win7). But when this script running on bamboo server (linux), it failed:
java.lang.ExceptionInInitializerError: null
at sun.org.mozilla.javascript.internal.ContextFactory.initGlobal(ContextFactory.java:196)
at com.sun.script.javascript.RhinoScriptEngine.<clinit>(RhinoScriptEngine.java:49)
at java.lang.J9VMInternals.initializeImpl(Native Method)
at java.lang.J9VMInternals.initialize(J9VMInternals.java:236)
at com.sun.script.javascript.RhinoScriptEngineFactory.getScriptEngine(RhinoScriptEngineFactory.java:57)
at javax.script.ScriptEngineManager.getEngineByName(ScriptEngineManager.java:226)
at ru.blogic.lecm.common.scripting.ScriptExecutorImpl.getEngine(ScriptExecutorImpl.java:28)
at ru.blogic.lecm.common.scripting.ScriptExecutorImpl.addScript(ScriptExecutorImpl.java:39)
at ru.blogic.lecm.util.js.CommandResolverJsImpl.resolveScript(CommandResolverJsImpl.java:53)
at ru.blogic.lecm.util.js.CommandResolverJsImpl.resolve(CommandResolverJsImpl.java:70)
at ru.blogic.lecm.util.DocumentIndicatorTest.assertResultCode(DocumentIndicatorTest.java:1226)
at ru.blogic.lecm.util.DocumentIndicatorTest.resolutionHasReportTest(DocumentIndicatorTest.java:125)
at ru.blogic.lecm.util.DocumentIndicatorTest.resolutionHasExecutionReportTest(DocumentIndicatorTest.java:184)
java.lang.NoClassDefFoundError: com.sun.script.javascript.RhinoScriptEngine (initialization failure)
at sun.org.mozilla.javascript.internal.ContextFactory.initGlobal(ContextFactory.java:196)
at com.sun.script.javascript.RhinoScriptEngine.<clinit>(RhinoScriptEngine.java:49)
at java.lang.J9VMInternals.initializeImpl(Native Method)
at java.lang.J9VMInternals.initialize(J9VMInternals.java:236)
at com.sun.script.javascript.RhinoScriptEngineFactory.getScriptEngine(RhinoScriptEngineFactory.java:57)
at javax.script.ScriptEngineManager.getEngineByName(ScriptEngineManager.java:226)
at ru.blogic.lecm.common.scripting.ScriptExecutorImpl.getEngine(ScriptExecutorImpl.java:28)
at ru.blogic.lecm.common.scripting.ScriptExecutorImpl.addScript(ScriptExecutorImpl.java:39)
at ru.blogic.lecm.util.js.CommandResolverJsImpl.resolveScript(CommandResolverJsImpl.java:53)
at ru.blogic.lecm.util.js.CommandResolverJsImpl.resolve(CommandResolverJsImpl.java:70)
at ru.blogic.lecm.util.DocumentIndicatorTest.assertResultCode(DocumentIndicatorTest.java:1226)
at ru.blogic.lecm.util.DocumentIndicatorTest.resolutionHasReportTest(DocumentIndicatorTest.java:125)
at ru.blogic.lecm.util.DocumentIndicatorTest.resolutionHasExecutionReportTest(DocumentIndicatorTest.java:184)
Without powerMockito all is ok.
Problem point is new ScriptEngineManager().getEngineByName(engineType.name().toLowerCase());.
RhinoScriptEngine - class from IBM jdk, javascript.jar. May be problem in different jar versions (WebSphere versions) on local and dev pc.
There is ideas, how fix it?
P.S. sorry for my english