Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
sun.org.mozilla.javascript.internal.EcmaError:ReferenceError_Java_Javascript_Mysql_Xml_Activiti - Fatal编程技术网

sun.org.mozilla.javascript.internal.EcmaError:ReferenceError

sun.org.mozilla.javascript.internal.EcmaError:ReferenceError,java,javascript,mysql,xml,activiti,Java,Javascript,Mysql,Xml,Activiti,我在一个xml文件中创建了一个流程定义。 在这个过程中,我有一个步骤,假设将数据插入mysql数据库,但当我运行代码时,我得到以下错误: Exception in thread "main" org.activiti.engine.ActivitiException: problem evaluating script: sun.org.mozilla.javascript.internal.EcmaError: ReferenceError:"ReportingUtil"is not def

我在一个xml文件中创建了一个流程定义。 在这个过程中,我有一个步骤,假设将数据插入mysql数据库,但当我运行代码时,我得到以下错误:

Exception in thread "main" org.activiti.engine.ActivitiException: problem evaluating
script: sun.org.mozilla.javascript.internal.EcmaError: ReferenceError:"ReportingUtil"is 
not defined.(<Unknown source>#7) in <Unknown source> at line number 
at 
org.activiti.engine.impl.scripting.ScriptingEngines.evaluate(ScriptingEngines.java:89)
...
Caused by: javax.script.ScriptException: sun.org.mozilla.javascript.internal.EcmaError:    
ReferenceError: "ReportingUtil" is not defined. (<Unknown source>#7) in <Unknownsource>
at  
line number 7
at com.sun.script.javascript.RhinoScriptEngine.eval(Unknown Source)
...
线程“main”org.activiti.engine.activitieException中的异常:评估问题 脚本:sun.org.mozilla.javascript.internal.EcmaError:ReferenceError:“ReportingUtil”为 未在at行号中定义。(#7) 在 org.activiti.engine.impl.scripting.ScriptingEngines.evaluate(ScriptingEngines.java:89) ... 原因:javax.script.ScriptException:sun.org.mozilla.javascript.internal.EcmaError: ReferenceError:未定义“ReportingUtil”。(#7)英寸 在 第7行 位于com.sun.script.javascript.RhinoScriptEngine.eval(未知源) ... 我从java类启动流程引擎

这是我的流程定义:

  <?xml version="1.0"?>
  <definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" 
  xmlns:activiti="http://activiti.org/bpmn"   
  targetNamespace="http://activiti.org/bpmn20" id="definitions">
  <process id="simpleEmailProcess" name="simple email">
  <startEvent id="theStart"/>
  <sequenceFlow id="flow1" targetRef="sendMail" sourceRef="theStart"/>
  <sequenceFlow id="flow2" targetRef="waitState" sourceRef="sendMail"/>
   <serviceTask id="sendMail" activiti:class="org.mywebbapp.activiti.RiskProcess" 
  activiti:type="mail">
  <extensionElements>
  <activiti:field name="from" stringValue="workflowact@gmail.com"/>
  <activiti:field name="to" expression="${recipient}"/>
  <activiti:field name="subject" expression="Are you responsible for risk ${riskID}?"/>
  <activiti:field name="html">
  <activiti:expression>
   <![CDATA[ <html> <body> Hello ${name},<br/><br/> Are you responsibible for risk 
   ${riskID}? Please reply to this email by either Y/N.<br/><br/> Kind regards,<br/>   
   The company. </body> </html> ]]>  
    </activiti:expression>
   </activiti:field>
     </extensionElements>
    </serviceTask>
    <receiveTask id="waitState" name="wait" />   

    <scriptTask id="generateDataset" name="Execute script" scriptFormat="JavaScript" activiti:autoStoreVariables="false">
           <script><![CDATA[

           importPackage(java.sql);
           importPackage(java.lang);
           importPackage(org.activiti.explorer.reporting.ReportUtil);

           ReportingUtil.executeSelectSqlQuery("insert into risk values ('123', 'user@gmail.com', 'Y')");
      ]]></script>
    </scriptTask>
    <sequenceFlow id="flow3" targetRef="generateDataset" sourceRef="waitState"/>
    <sequenceFlow id="flow4" targetRef="theEnd" sourceRef="generateDataset"/>
    <endEvent id="theEnd"/>

你好${name},

你有责任承担风险吗 ${riskID}?请通过Y/N回复此电子邮件。

问候,
公司。]]>

我在这里的某个地方读过,所以需要使用绑定? 有什么建议吗

谢谢

您正试图将一个类作为一个包。使用导入类


我假设Java 8和Nashorn。

我有一个模块,要求我使用一个特定的Util类,与您正在使用的类似

试试这个

 Packages.org.activiti.explorer.reporting.ReportingUtil.executeSelectSqlQuery(
          "insert into risk values ('123', 'user@gmail.com', 'Y')");]]

谢谢你的快速回复!我尝试使用importClass(org.activiti.explorer.reporting);代替进口包装(org.activiti.explorer.reporting);但这给了我一个错误:javax.script.ScriptException:sun.org.mozilla.javascript.internal.EvaluatorException:Function importClass必须用类调用;是否改为“[JavaPackage org.activiti.explorer.reporting]”?我不明白,我对js都是新手。我忘了说我在使用Java6,没有使用Nashorn,使用Rhino。试试
importPackage(org.activiti.explorer.reporting)嗨,我试过了,没什么区别,我还是会遇到同样的错误。对不起,我的意思是:
importPackage(Packages.org.activiti.explorer.reporting)。或者,
importClass(Packages.org.activiti.explorer.reporting.ReportUtil)
 Packages.org.activiti.explorer.reporting.ReportingUtil.executeSelectSqlQuery(
          "insert into risk values ('123', 'user@gmail.com', 'Y')");]]