如何使用筛选器和xpath比较WSO2 ESB代理服务中的日期
我需要制作一个具有以下条件的过滤器:如何使用筛选器和xpath比较WSO2 ESB代理服务中的日期,wso2,wso2esb,Wso2,Wso2esb,我需要制作一个具有以下条件的过滤器: <filter xpath= current-dateTime > ( lastUpdateDate + 30 days ) ... (lastUpdateDate+30天)。。。 在代理服务中执行此操作的最佳方式是什么?。因为可以在lastUpdateDate?上增加30天 谢谢。您可以使用脚本中介器和xpath在筛选器中介器中执行此任务。当您按如下方式获取属性的系统日期时 <property name="date" expressi
<filter xpath= current-dateTime > ( lastUpdateDate + 30 days ) ...
(lastUpdateDate+30天)。。。
在代理服务中执行此操作的最佳方式是什么?。因为可以在lastUpdateDate?上增加30天
谢谢。您可以使用脚本中介器和xpath在筛选器中介器中执行此任务。当您按如下方式获取属性的系统日期时
<property name="date" expression="get-property('SYSTEM_DATE', 'yyyy.MM.dd')" scope="default"/>
那么日期的值将采用“2012.11.23”格式。同样,当以该格式定义“lastUpdateDate”时,以下配置将创建所需的过滤器
<script language="js">
var date = new Date();
date.setDate(date.getDate()-30);
var formattedTime = date.getFullYear() + '.' + ("0" + (date.getMonth()+1)).slice(-2) + '.' + ("0" + date.getDate()).slice(-2);
mc.setProperty("modifiedDate",formattedTime);
</script>
<filter xpath="number(translate(get-property('modifiedDate'),'.','')) > number(translate(get-property('lastUpdateDate'),'.',''))">
<then>.....
变量日期=新日期();
date.setDate(date.getDate()-30);
var formattedTime=date.getFullYear()+'.+(“0”+(date.getMonth()+1)).slice(-2)+'.+(“0”+date.getDate()).slice(-2);
mc.setProperty(“modifiedDate”,formattedTime);
.....