【问题标题】:WSO2 EI - < (less than symbol) throwing error in Script mediator (Javascript)WSO2 EI - <(小于符号)在脚本中介(Javascript)中抛出错误
【发布时间】:2021-06-23 15:42:51
【问题描述】:

我有 2 个变量存储在 WSO2 的属性中,称为 date1 和 date2,它们都是“YYYY-MM-DD”格式的日期字符串。然后我有一个脚本来解析日期并进行比较以查看 date2 是否小于 date1。

<script language ="js">
    var log = mc.getServiceLog();
    var date1 = Date.parse(mc.getProperty('date1'));
    var date2 = Date.parse(mc.getProperty('date2'));
    log.info(date1);
    log.info(date2);
    var date2Before1 = (date2 < date1) ? true : false;
    mc.setProperty("date2Before1", date2Before1);
</script>

但是,在构建我的 .car 文件并进行部署后,我收到此错误:

Caused by: org.apache.axiom.om.OMException: com.ctc.wstx.exc.WstxUnexpectedCharException: Unexpected character ' ' (code 32) in content after '<' (malformed start element?).

不太确定我做错了什么。日期是否无法正确解析?

【问题讨论】:

    标签: javascript wso2 mediator ei


    【解决方案1】:

    尝试用 CDATA 元素封装脚本中介逻辑,如下所示

    <script language="js">
        <![CDATA[
            var log = mc.getServiceLog();
            var date1 = Date.parse(mc.getProperty('date1'));
            var date2 = Date.parse(mc.getProperty('date2'));
            log.info(date1);
            log.info(date2);
            var date2Before1 = (date2 < date1 ) ? true : false;
            mc.setProperty("date2Before1", date2Before1);
        ]]>
    </script>
    

    【讨论】:

    • 看起来修复了!谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多