문제

안녕하세요. 저는 Mule Studio에서 작업 중이며 Google Gson 라이브러리를 사용하여 XML을 Json으로 변환하는 Custom Transformer를 만들고 싶습니다.따라서 이 경우에는 Java Transformer 구성 요소를 추가해야 하고 이에 대한 사용자 정의 코드를 작성해야 합니다.하지만 내가 직면하고 있는 문제는 입력 매개 변수를 개체로 받아들이는 메서드를 재정의한다는 것입니다. 그게 제가 생각하는 유일한 방법이거나 입력 매개 변수를 XMl 문자열로 받아들이는 다른 방법입니다.실행 가능하도록 코드를 공유해 주세요.

public class Transfomer extends AbstractTransformer { protected Object doTransform(Object src, String enc) throws TransformerException { // TODO Auto-generated method stub
return null; } }

도움이 되었습니까?

해결책

기존 변환기를 살펴보십시오. https://github.com/mulesoft/mule/blob/mule-3.x/modules/xml/src/main/java/org/mule/module/xml/transformer/XmlPrettyPrinter.java

  • 다음과 같이 생성자에서 허용되는 소스 유형이 어떻게 등록되는지 확인하세요. registerSourceType(DataTypeFactory.create(org.dom4j.Document.class));
  • 방법을 확인하세요. doTransform 일반적인 방법 Object src 변환됩니다.

다른 팁

XML에서 JSON 트랜스포머에서 MULE 팔레트에서 노새 흐름까지 사용할 수 있습니다.

 <json:xml-to-json-transformer doc:name="XML to JSON"/>
.

또는

Dataweave 변환 사용 :

 <dw:transform-message doc:name="Transform Message">
             <dw:set-payload><![CDATA[%dw 1.0
 %output application/json
 ---
 payload]]></dw:set-payload>
         </dw:transform-message>
.

응용 프로그램 / JSON으로 DataWeave 출력 설정은 자동으로 수행됩니다.그러나 JSON을 XML로 수행 할 때 JSON이 루트 요소와 멤버 요소가있는 XML 양식으로 변환 될 수 있는지 확인해야합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top