2016-12-30 7 views
0

변환 (xml에서 json)은 정상 실행 중에는 정상적으로 작동하지만 MUnit을 사용하여 동일한 흐름을 테스트하는 경우 클래스 java.lang.String : org.mule.api.transport.OutputHandler, 출력 인터페이스 : 그것은 입력 정확히 일치하는 두 개의 변압기가 있습니다 오류 메시지Mule - munit 테스트 중 데이터 직조 오류가 발생했습니다. 입력에 정확히 일치하는 두 개의 변압기가 있습니다.

와 dataweave에 실패합니다.
변압기는 다음과 같습니다 ObjectToAtomString (클래스 org.mule.transformer.simple.ObjectToString)와 ObjectToString는 (클래스 org.mule.transformer.simple.ObjectToString $$ EnhancerByMUNIT $$ 99111c4f)

내가 입력 MIME을 추가 한 데이터 변환에서도 TYPE.

다른 데모 프로젝트의 tranformation을 munit을 사용하여 테스트하려고했는데 오류없이 dataweave를 성공적으로 통과했습니다.

데이터 맵퍼 3.7.3 jar가 프로젝트 및 pom 파일에 포함되어 있습니다.

+0

개체 대 문자열 변환기에는 이름 특성이 있습니까? 어디있어? 하나는 시험중인 흐름이고 다른 하나는 munit입니까? –

+0

플로우 또는 munit에 오브젝트 - 문자열 변환기가 없습니다. 오류는 XML을 Json으로 변환하는 Dataweave에서 발생합니다. 오류는 2 개의 변환이있는 것처럼 보이지만 흐름에는 그러한 것이 없습니다. classpath에 문제가 될 수 있습니까? – Himanshu

답변

0

munit 용 Mule 3.8.2 버전에서 DataWeave와 비슷한 문제가 발생했습니다. 정상적으로 실행해도 문제가 없습니다. 우리는 아래의 해결 방법으로 해결했습니다 : 우리는이 예외를 던지고 문자열 변환 자에 바이트 배열했다. Byte Array를 Object로, java.lang.String으로 클래스에 준 객체로 변경했습니다.

+0

제 경우에는 Strimg 변환에 바이트 배열을 사용하지 않습니다. 나는 위에서 언급 한 것과 동일한 예외를 던지고있는 dataweave만을 사용하고있다. – Himanshu

+0

당신은 문제를 디버깅하기 위해 당신의 플로우 XML 파일을 공유 할 수 있습니까? –

+0

다른 데모 프로젝트의 흐름을 확인하고 MUNIT를 사용하여 정상적으로 작동하는지 확인했습니다. 그래서, 내 생각 엔 클래스 패스 나 라이브러리에 관한 문제입니다. – Himanshu