Mule 中查询参数日期改为字符串

问题描述 投票:0回答:1

我有一个名为modifiedDate的查询参数,在RAML文件中定义为仅日期,但是当我查看Mule调试器时,我看到modifiedDate 2001-10-10是一个字符串数据类型。

RAML

...
queryParameters:
   modifiedDate:
   type: date-only
   example: "2001-10-10
...

这给我带来了一个问题,因为当我调用 SQL Server 存储过程时,它返回错误“无法将 NVARCHAR 转换为日期”。

我需要将modifiedDate以YYYY-MM-DD格式传递给SQL Server,并作为日期数据类型才能工作,但我在将其转换为Mule中的日期数据类型时也遇到问题。

如何将 2001-10-10 更改为日期数据类型并保持值相同?

我正在使用 Anypoint Studio 6.2.2 和 Mule 3.8.3。

谢谢

sql-server mule dataweave date-conversion mule-el
1个回答
1
投票

有几种方法可以在 mule 中将字符串解析为日期

数据编织:

%dw 1.0
%output application/java
---
{
    "modifiedDate" :  inboundProperties.'http.query.params'['modifiedDate'] as :date
}

无需指定日期格式即可工作

律动

payload['modDate'] = 
    Date.parse("yyyy-MM-dd", message.getInboundProperty('http.query.params')['modifiedDate']);
payload;

这两者都会将值转换为 java.util.Date

© www.soinside.com 2019 - 2024. All rights reserved.