2013-05-14 14 views

답변

5

뮬은 이벤트에 어떤 속성을 추가하지 않습니다 그래서 당신의 옵션은 다음과 같습니다

  • 사용 <set-variable>는 개인 흐름을 호출하기 전에 흐름 이름의 변수를 설정하고 읽기 이 변수는 #[flowVars.yourVariableName]입니다.
  • 호출하는 사람을 알리는 방법으로 호출 흐름의 인바운드 끝점을 사용하십시오. #[message.inboundProperties.MULE_ENDPOINT] 인 인바운드 엔드 포인트 URL 또는 #[message.inboundProperties.MULE_ORIGINATING_ENDPOINT]이라는 이름을 얻을 수 있습니다.
  • FlowConstructAware을 구현하는 사용자 정의 MessageProcessor을 작성하십시오. 그러면 흐름 이름을 가져오고 MuleEvent의 메시지에서 자동으로 호출 이름으로 설정할 수 있습니다. flow-ref 앞에 모든 상위 플로우의 custom-processor 요소와 함께 사용하십시오.
+0

David이 표현식은 예외를 던지고 있습니다. '. 예외는 :'1. 토큰을 해결할 수 없습니다 : 'flow'변수를 확인할 수 없습니다. (org.mvel2.UnresolveablePropertyException) org.mvel2.integration.impl.BaseVariableResolverFactory : 60 (null) 2. "flow.name"표현식을 실행하지 못했습니다. (org.mule.api.expression.ExpressionRuntimeException)'입니다. 그러나 이것은 잘 작동합니다 :'' –

+0

'# [flow.name]'은 유효하지 않습니다 :'flow' 변수는 유효하지 않습니다. MEL에서 함축적 인 최상위 변수 - 참조 : http://www.mulesoft.org/documentation/display/current/MEL+Cheat+Sheet 다시 말하지만, Mule은 흐름 이름과 변수를 바인딩하지 않으므로 직접 설정해야합니다 :''. 나는 세 번째 옵션을 추가했습니다. –

+0

흐름이 최상위 변수가 아니지만이 명령문이 작동 할 때 동의합니다. , it 내가 불합리한 것을 시험해 보게했다. # [flow.name]이 로거와 함께 작동하는 이유를 말해 주시겠습니까 –

관련 문제