[ http://wso2.org/jira/browse/ESBJAVA-352?page=comments#action_14126 ] Evanthika Amarasiri commented on ESBJAVA-352: ---------------------------------------------
When you create the script mediator with $ symbol as Indika has stated, the mediators are saved successfully and the sequence executes successfully as well. But the documents are not updated. Therefore please update the document guides (sample 353). > Unable to specify a JRuby script inline and invoke a service due to an > javax.script.ScriptException > --------------------------------------------------------------------------------------------------- > > Key: ESBJAVA-352 > URL: http://wso2.org/jira/browse/ESBJAVA-352 > Project: WSO2 ESB > Issue Type: Bug > Components: Sequences Management > Affects Versions: 1.5-beta-1 > Environment: Ubuntu7.04, Firefox2.0.0.9, JDK1.5.0_12, > jruby-complete-1.0.1 > Reporter: Evanthika Amarasiri > Assigned To: indika kumara > Fix For: NIGHTLY > > > Tried to invoke a service with a configuration which contains an inline ruby > script and received an error > The configuration used > =============== > <syn:sequence statistics="enable" name="sample_353" trace="enable"> > <syn:in> > <syn:script language="rb"> > newRequest= Document.new '<m:getQuote > xmlns:m="http://services.samples/xsd">'<< > '<m:request><m:symbol></m:symbol></m:request></m:getQuote>' > newRequest.root.elements[1].elements[1].text = > mc.getPayloadXML().root.elements[1].get_text > mc.setPayloadXML(newRequest) > </syn:script> > <syn:send> > <syn:endpoint> > <syn:address > uri="http://10.100.1.228:9001/soap/SimpleStockQuoteService"/> > </syn:endpoint> > </syn:send> > </syn:in> > <syn:out> > <syn:script language="rb"> > newResponse = Document.new '<m:CheckPriceResponse > xmlns:m="http://services.samples/xsd"><m:Code>' << > '</m:Code><m:Price></m:Price></m:CheckPriceResponse>' > newResponse.root.elements[1].text = > mc.getPayloadXML().root.elements[1].elements[1].get_text > newResponse.root.elements[2].text = > mc.getPayloadXML().root.elements[1].elements[2].get_text > mc.setPayloadXML(newResponse) > </syn:script> > <syn:send/> > </syn:out> > </syn:sequence> > Error printed on the ESB console > ===================== > 2007-11-19 13:44:34,241 [127.0.1.1-testc-ubuntu] [HttpServerWorker-2] DEBUG > ScriptMediator Start : Script mediator > 2007-11-19 13:44:34,242 [127.0.1.1-testc-ubuntu] [HttpServerWorker-2] DEBUG > ScriptMediator Scripting language : rb source : specified inline function : > mediate > 2007-11-19 13:44:34,258 [127.0.1.1-testc-ubuntu] [HttpServerWorker-2] ERROR > ScriptMediator The script engine returned an error executing the inlined rb > script function mediate > javax.script.ScriptException: null > at > com.sun.script.jruby.JRubyScriptEngine.evalNode(JRubyScriptEngine.java:362) > at > com.sun.script.jruby.JRubyScriptEngine.access$000(JRubyScriptEngine.java:46) > at > com.sun.script.jruby.JRubyScriptEngine$JRubyCompiledScript.eval(JRubyScriptEngine.java:75) > at javax.script.CompiledScript.eval(CompiledScript.java:64) > at > org.apache.synapse.mediators.bsf.ScriptMediator.mediateForInlineScript(ScriptMediator.java:246) > at > org.apache.synapse.mediators.bsf.ScriptMediator.invokeScript(ScriptMediator.java:193) > at > org.apache.synapse.mediators.bsf.ScriptMediator.mediate(ScriptMediator.java:166) > at > org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:60) > at > org.apache.synapse.mediators.filters.InMediator.mediate(InMediator.java:60) > at > org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:60) > at > org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:122) > at > org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:171) > at > org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:60) > at > org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:122) > at > org.apache.synapse.core.axis2.Axis2SynapseEnvironment.injectMessage(Axis2SynapseEnvironment.java:154) > at > org.apache.synapse.core.axis2.SynapseMessageReceiver.receive(SynapseMessageReceiver.java:89) > at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:145) > at > org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275) > at > org.apache.synapse.transport.nhttp.ServerWorker.processPost(ServerWorker.java:218) > at > org.apache.synapse.transport.nhttp.ServerWorker.run(ServerWorker.java:182) > at > java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675) > at java.lang.Thread.run(Thread.java:595) > Caused by: org.jruby.exceptions.RaiseException > at > org.jruby.exceptions.JumpException.originalFillInStackTrace(JumpException.java:116) > at > org.jruby.exceptions.RaiseException.fillInStackTrace(RaiseException.java:137) > at java.lang.Throwable.<init>(Throwable.java:181) > at java.lang.Exception.<init>(Exception.java:29) > at java.lang.RuntimeException.<init>(RuntimeException.java:32) > at org.jruby.exceptions.JumpException.<init>(JumpException.java:89) > at org.jruby.exceptions.RaiseException.<init>(RaiseException.java:67) > at org.jruby.Ruby.newNameError(Ruby.java:1678) > at org.jruby.RubyModule.const_missing(RubyModule.java:511) > at org.jruby.RubyModuleInvokerconst_missing1.call(Unknown Source) > at > org.jruby.runtime.callback.InvocationCallback.execute(InvocationCallback.java:49) > at > org.jruby.internal.runtime.methods.FullFunctionCallbackMethod.internalCall(FullFunctionCallbackMethod.java:78) > at > org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:79) > at org.jruby.RubyObject.callMethod(RubyObject.java:575) > at org.jruby.RubyObject.callMethod(RubyObject.java:445) > at org.jruby.RubyObject.callMethod(RubyObject.java:595) > at org.jruby.RubyModule.getConstantInner(RubyModule.java:879) > at org.jruby.RubyModule.getConstant(RubyModule.java:889) > at org.jruby.runtime.ThreadContext.getConstant(ThreadContext.java:534) > at > org.jruby.evaluator.EvaluationState.constNode(EvaluationState.java:767) > at > org.jruby.evaluator.EvaluationState.evalInternal(EvaluationState.java:225) > at > org.jruby.evaluator.EvaluationState.callNode(EvaluationState.java:550) > at > org.jruby.evaluator.EvaluationState.evalInternal(EvaluationState.java:207) > at > org.jruby.evaluator.EvaluationState.localAsgnNode(EvaluationState.java:1236) > at > org.jruby.evaluator.EvaluationState.evalInternal(EvaluationState.java:286) > at > org.jruby.evaluator.EvaluationState.blockNode(EvaluationState.java:533) > at > org.jruby.evaluator.EvaluationState.evalInternal(EvaluationState.java:201) > at > org.jruby.evaluator.EvaluationState.rootNode(EvaluationState.java:1611) > at > org.jruby.evaluator.EvaluationState.evalInternal(EvaluationState.java:356) > at org.jruby.evaluator.EvaluationState.eval(EvaluationState.java:164) > at org.jruby.Ruby.eval(Ruby.java:290) > at > com.sun.script.jruby.JRubyScriptEngine.evalNode(JRubyScriptEngine.java:360) > ... 22 more > 2007-11-19 13:44:34,270 [127.0.1.1-testc-ubuntu] [HttpServerWorker-2] WARN > SynapseMessageReceiver Executing fault handler due to exception encountered > 2007-11-19 13:44:34,271 [127.0.1.1-testc-ubuntu] [HttpServerWorker-2] WARN > FaultHandler Fault handler - setting ERROR_MESSAGE : The script engine > returned an error executing the inlined rb script function mediate > 2007-11-19 13:44:34,272 [127.0.1.1-testc-ubuntu] [HttpServerWorker-2] WARN > FaultHandler Fault handler - setting ERROR_DETAIL : > org.apache.synapse.SynapseException: The script engine returned an error > executing the inlined rb script function mediate > at > org.apache.synapse.mediators.AbstractMediator.handleException(AbstractMediator.java:220) > at > org.apache.synapse.mediators.bsf.ScriptMediator.invokeScript(ScriptMediator.java:202) > at > org.apache.synapse.mediators.bsf.ScriptMediator.mediate(ScriptMediator.java:166) > at > org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:60) > at > org.apache.synapse.mediators.filters.InMediator.mediate(InMediator.java:60) > at > org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:60) > at > org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:122) > at > org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:171) > at > org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:60) > at > org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:122) > at > org.apache.synapse.core.axis2.Axis2SynapseEnvironment.injectMessage(Axis2SynapseEnvironment.java:154) > at > org.apache.synapse.core.axis2.SynapseMessageReceiver.receive(SynapseMessageReceiver.java:89) > at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:145) > at > org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275) > at > org.apache.synapse.transport.nhttp.ServerWorker.processPost(ServerWorker.java:218) > at > org.apache.synapse.transport.nhttp.ServerWorker.run(ServerWorker.java:182) > at > java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675) > at java.lang.Thread.run(Thread.java:595) > Caused by: javax.script.ScriptException: null > at > com.sun.script.jruby.JRubyScriptEngine.evalNode(JRubyScriptEngine.java:362) > at > com.sun.script.jruby.JRubyScriptEngine.access$000(JRubyScriptEngine.java:46) > at > com.sun.script.jruby.JRubyScriptEngine$JRubyCompiledScript.eval(JRubyScriptEngine.java:75) > at javax.script.CompiledScript.eval(CompiledScript.java:64) > at > org.apache.synapse.mediators.bsf.ScriptMediator.mediateForInlineScript(ScriptMediator.java:246) > at > org.apache.synapse.mediators.bsf.ScriptMediator.invokeScript(ScriptMediator.java:193) > ... 17 more > Caused by: org.jruby.exceptions.RaiseException > at > org.jruby.exceptions.JumpException.originalFillInStackTrace(JumpException.java:116) > at > org.jruby.exceptions.RaiseException.fillInStackTrace(RaiseException.java:137) > at java.lang.Throwable.<init>(Throwable.java:181) > at java.lang.Exception.<init>(Exception.java:29) > at java.lang.RuntimeException.<init>(RuntimeException.java:32) > at org.jruby.exceptions.JumpException.<init>(JumpException.java:89) > at org.jruby.exceptions.RaiseException.<init>(RaiseException.java:67) > at org.jruby.Ruby.newNameError(Ruby.java:1678) > at org.jruby.RubyModule.const_missing(RubyModule.java:511) > at org.jruby.RubyModuleInvokerconst_missing1.call(Unknown Source) > at > org.jruby.runtime.callback.InvocationCallback.execute(InvocationCallback.java:49) > at > org.jruby.internal.runtime.methods.FullFunctionCallbackMethod.internalCall(FullFunctionCallbackMethod.java:78) > at > org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:79) > at org.jruby.RubyObject.callMethod(RubyObject.java:575) > at org.jruby.RubyObject.callMethod(RubyObject.java:445) > at org.jruby.RubyObject.callMethod(RubyObject.java:595) > at org.jruby.RubyModule.getConstantInner(RubyModule.java:879) > at org.jruby.RubyModule.getConstant(RubyModule.java:889) > at org.jruby.runtime.ThreadContext.getConstant(ThreadContext.java:534) > at > org.jruby.evaluator.EvaluationState.constNode(EvaluationState.java:767) > at > org.jruby.evaluator.EvaluationState.evalInternal(EvaluationState.java:225) > at > org.jruby.evaluator.EvaluationState.callNode(EvaluationState.java:550) > at > org.jruby.evaluator.EvaluationState.evalInternal(EvaluationState.java:207) > at > org.jruby.evaluator.EvaluationState.localAsgnNode(EvaluationState.java:1236) > at > org.jruby.evaluator.EvaluationState.evalInternal(EvaluationState.java:286) > at > org.jruby.evaluator.EvaluationState.blockNode(EvaluationState.java:533) > at > org.jruby.evaluator.EvaluationState.evalInternal(EvaluationState.java:201) > at > org.jruby.evaluator.EvaluationState.rootNode(EvaluationState.java:1611) > at > org.jruby.evaluator.EvaluationState.evalInternal(EvaluationState.java:356) > at org.jruby.evaluator.EvaluationState.eval(EvaluationState.java:164) > at org.jruby.Ruby.eval(Ruby.java:290) > at > com.sun.script.jruby.JRubyScriptEngine.evalNode(JRubyScriptEngine.java:360) > ... 22 more > 2007-11-19 13:44:34,758 [127.0.1.1-testc-ubuntu] [HttpServerWorker-2] WARN > MediatorFaultHandler Executing fault handler mediator : fault > 2007-11-19 13:44:34,758 [127.0.1.1-testc-ubuntu] [HttpServerWorker-2] DEBUG > SequenceMediator Start : Sequence <fault> > 2007-11-19 13:44:34,759 [127.0.1.1-testc-ubuntu] [HttpServerWorker-2] DEBUG > SequenceMediator Sequence <SequenceMediator> :: mediate() > 2007-11-19 13:44:34,759 [127.0.1.1-testc-ubuntu] [HttpServerWorker-2] DEBUG > LogMediator Start : Log mediator > 2007-11-19 13:44:34,760 [127.0.1.1-testc-ubuntu] [HttpServerWorker-2] INFO > LogMediator text = An unexpected error occured,message = The script engine > returned an error executing the inlined rb script function mediate -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://wso2.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira _______________________________________________ Esb-java-dev mailing list [email protected] http://wso2.org/cgi-bin/mailman/listinfo/esb-java-dev
