错误的到期日期格式,此失效日期将被忽略

时间:2011-03-23 13:55:17

标签: soa jdeveloper bpel

我创建了一个带有等待活动的BPEL流程,有流程开始时间(日期时间)和间隔(持续时间)的输入。在创建一个实例(工作项)的过程中,它移动到等待,在控制台上我得到了错误

<Mar 23, 2011 9:27:53 PM SGT> <Error> <oracle.soa.bpel.engine.bpel> <BEA-000000>
 <<BPELReceiveWMP::__defineExpirationDate> Bad expiration date format, and this
expiration date will be ignored
java.lang.IllegalArgumentException: Duration has to start with 'P'.

进程的输入有效负载是:

<inputVariable>  <part  name="payload">  <ns1:process>  <ns1:startDate>2011-03-23T16:30:00.000+08:00</ns1:startDate>  <ns1:interval>PT2M</ns1:interval>  </ns1:process>  </part>  </inputVariable>

等待推迟了

  

的字符串(的bpws:getVariableData( '传递InputVariable', '有效载荷', '/客户端:处理/客户端:的startDate'))

列中的

表达式

WaitForStart(待定) 2011年3月23日9:27:53错误的有效期“2011-03-23T16:30:00.000 + 08:00” 2011年3月23日下午9:27:53等待到期时间“从不”。

环境是: SOA 11.1.1.3.0 Jdeveloper:11.3

1 个答案:

答案 0 :(得分:1)

如果输入为“2011-03-23T16:30:00.000 + 08:00 PT2M”,则问题非常明显。第一部分是dateTime,第二部分是持续时间。 BPEL中的元素需要一个持续时间,因此其值应该只是“PT2M”,这意味着2分钟。字符串的第一部分对我来说是错误的。