Sidebar
0 votes
292 views
by scott-m-6181 (230 points)
reshown by jon-t-7005

I have a message created from an XML template. 

message = qie.createXMLMessage("....", 'UTF-8');

I am able to modify the message

message.setNode("/ClinicalDocument/id/@extension", source.getNode("/note/id"));

But for some reason, when I try to base64 encode it, I get an error

messageCache.setValue('cda_base64', qie.base64Encode(message.toString()));
messageCache.setValue('cda_sha1', qie.getSHA1Hash(message.toString()));
 

2024-02-04 05:48:58,328 EST [Test Mapping Function Runner] WARN com.qvera.qie.engine.ChannelManagerImpl - com.sun.phobos.script.util.ExtendedScriptException: org.mozilla.javascript.EcmaError: TypeError: Cannot call method "toString" of null (<Unknown Source>#1) in <Unknown Source> at line number 1 []
com.sun.phobos.script.util.ExtendedScriptException: org.mozilla.javascript.EcmaError: TypeError: Cannot call method "toString" of null (<Unknown Source>#1) in <Unknown Source> at line number 1
    at com.sun.phobos.script.javascript.RhinoCompiledScript.eval(RhinoCompiledScript.java:68) ~[rhino-js-engine-1.7.7c.jar:?]
    at javax.script.CompiledScript.eval(CompiledScript.java:92) ~[?:1.8.0_332]
    at com.qvera.qie.utils.message.ChannelNodeHelper.runScript(ChannelNodeHelper.java:1693) ~[classes/:?]
    at com.qvera.qie.utils.message.ChannelNodeHelper.runScript(ChannelNodeHelper.java:1667) ~[classes/:?]
    at com.qvera.qie.engine.ChannelManagerImpl$8.runImpl(ChannelManagerImpl.java:11364) ~[classes/:?]
    at com.qvera.qie.web.zone.server.TestRunner.run(TestRunner.java:25) ~[classes/:?]
    at java.lang.Thread.run(Thread.java:750) ~[?:1.8.0_332]
Caused by: org.mozilla.javascript.EcmaError: TypeError: Cannot call method "toString" of null (<Unknown Source>#1)
    at org.mozilla.javascript.ScriptRuntime.constructError(ScriptRuntime.java:4048) ~[rhino-js-1.7.7c.jar:1.7.8-SNAPSHOT]
    at org.mozilla.javascript.ScriptRuntime.constructError(ScriptRuntime.java:4026) ~[rhino-js-1.7.7c.jar:1.7.8-SNAPSHOT]
    at org.mozilla.javascript.ScriptRuntime.typeError(ScriptRuntime.java:4059) ~[rhino-js-1.7.7c.jar:1.7.8-SNAPSHOT]
    at org.mozilla.javascript.ScriptRuntime.typeError2(ScriptRuntime.java:4078) ~[rhino-js-1.7.7c.jar:1.7.8-SNAPSHOT]
    at org.mozilla.javascript.ScriptRuntime.undefCallError(ScriptRuntime.java:4095) ~[rhino-js-1.7.7c.jar:1.7.8-SNAPSHOT]
    at org.mozilla.javascript.ScriptRuntime.getPropFunctionAndThisHelper(ScriptRuntime.java:2473) ~[rhino-js-1.7.7c.jar:1.7.8-SNAPSHOT]
    at org.mozilla.javascript.ScriptRuntime.getPropFunctionAndThis(ScriptRuntime.java:2466) ~[rhino-js-1.7.7c.jar:1.7.8-SNAPSHOT]
    at org.mozilla.javascript.Interpreter.interpretLoop(Interpreter.java:1322) ~[rhino-js-1.7.7c.jar:1.7.8-SNAPSHOT]
    at org.mozilla.javascript.Interpreter.interpret(Interpreter.java:815) ~[rhino-js-1.7.7c.jar:1.7.8-SNAPSHOT]
    at org.mozilla.javascript.InterpretedFunction.call(InterpretedFunction.java:109) ~[rhino-js-1.7.7c.jar:1.7.8-SNAPSHOT]
    at org.mozilla.javascript.ContextFactory.doTopCall(ContextFactory.java:395) ~[rhino-js-1.7.7c.jar:1.7.8-SNAPSHOT]
    at org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:3358) ~[rhino-js-1.7.7c.jar:1.7.8-SNAPSHOT]
    at org.mozilla.javascript.InterpretedFunction.exec(InterpretedFunction.java:120) ~[rhino-js-1.7.7c.jar:1.7.8-SNAPSHOT]
    at com.sun.phobos.script.javascript.RhinoCompiledScript.eval(RhinoCompiledScript.java:55) ~[rhino-js-engine-1.7.7c.jar:?]
    ... 6 more

 

1 Answer

0 votes
This can be the result of invalid or special characters in your XML.  The solution is to make sure and escape any blocks of text with qie.escapeXml(), which will ensure any special characters are escaped properly for the XML.
by jon-t-7005 (8.3k points)
...