2011-03-23 2 views
0

대기 활동이있는 BPEL 프로세스를 작성했으며, 프로세스 시작 시간 (datetime) 및 간격 (지속 시간)에 대한 입력이 있습니다. 과정에서 인스턴스 (작업 항목)을 만드는 동안, 그것은 기다릴 이동하고 콘솔에 내가 프로세스유효 기간 형식이 잘못되었습니다.이 만료 날짜는 무시됩니다.

<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'))

,536,913,632

WaitForStart (보류) 열 2011년 3월 23일 오후 9시 27분 53초 나쁜 만료 날짜 "에 대한"10

표현 ": 30 : 2011-03-23T16 + 08 00.000 : 00" 3 월 23 일 2011 9:27:53 PM "절대"만료 시간을 기다리고 있습니다.

환경은 다음과 같습니다 SOA 11.1.1.3.0 JDeveloper를 : 11.3

답변

1

입력이 "2011-03-23T16 : 30 : 00.000 + 08 : 00 PT2M"문제는 아주 분명하다. 첫 번째 부분은 dateTime이고 두 번째 부분은 기간입니다. BPEL의 요소는 지속 기간을 예상하므로이 값은 단지 "PT2M"이어야합니다. 이는 2 분을 의미합니다. 그 끈의 첫 부분은 나에게 틀린 것처럼 보입니다.

+0

죄송합니다. 올바른 형식으로 질문을 게시하지 않았습니다. 이제 확인하십시오 ... 이제 우리는 두 개의 입력을 갖는 입력에 대해 페이로드 XML을 볼 수 있습니다. – Pedantic

+0

오케이 (Okee). 그래도 클라이언트의 값을 startDate 요소로 사용하는 것처럼 보입니다. 그것은 클라이언트가 아니어야합니다 : "for"값의 간격? – vanto

관련 문제