'|'로 구분 된 non-xml 텍스트 파일을 전송하고 싶습니다. 문자를 Datapower를 사용하여 xml로 변환합니다.datapower를 사용하여 xml로 텍스트 파일 변환
Following is file (sample1)
10 | 20003 | 24/23/25 | 23,890
지금 나는이었다 무슨 짓을 다음과 같은 XML
<ResponseType>
<ResCode>10</ResCode>
<Id>20003</Id>
<SoftCode>24/23/25</SoftCode>
<StatusCode>23890</StatusCode>
</ResponseType>
에이 휴식 할 following--
1> 비 XML 요청을받을 서비스에서 변형 동작을 만듭니다.
2> "비 XML 메시지에서이 작업에 지정된 XSLT 사용"을 선택하여 이진 변환으로 지정하십시오.
3> 처리 제어 파일로 다음 스타일 시트를 업로드하십시오.
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:dp="http://www.datapower.com/extensions"
version="1.0">
<dp:input-mapping href="sample1.ffd" type="ffd"/>
<xsl:output method="xml"/>
<xsl:template match="/">
<xsl:copy-of select="ResponseType"/>
<xsl:call-template name="str:tokenize">
<xsl:with-param name="string" select="string" />
</xsl:call-template>
</xsl:template>
<xsl:template name="str:tokenize">
<xsl:with-param name="string" select="">
str:tokenize('string', '|')
</xsl:with param>
</xsl:template>
</xsl:stylesheet>
여기에 내가 내 로컬에 업로드 한 내 sample1.ffd (수 있습니다 : 데이터 파워
<File name="ResponseType">
<!-- capture all data into this tag -->
<Field name="ResCode/Id/SoftCode/StatusCode" />
</File>
에서 // 디렉토리하지만 출력을 원하는지고 있지 않다, 내 생각 내 XSLT는 매우 잘못된 것입니다 ? 내가 무엇을 할 수 내가 IBM 데이터 파워는이 문제를 해결하는 방법을 모르겠어요
흠, XSLT는 XML -> 뭔가 (일반적으로 다른 XML) 변환을위한 것입니다. AFAIK는 XML (또는 적어도 동등한 데이터 유형)이 XSLT의 유일한 데이터 소스가 될 수 있습니다. – user3159253
XSLT에는 몇 가지 문제가 있습니다. "str"은 정의되지 않은 네임 스페이스이고'xsl : template '에서'xsl : with-param'을 사용하면 아마도'xsl : param'이어야합니다. –
IBM DataPower에는 FFD (Contivo)라는 변압기가 있습니다. DataPower는 들어오는 데이터가 XML이 아니므로 일반 XSLT가 불행히도 작동하지 않는다는 것을 이해해야합니다 ... 아래 FFD 사용에 대한 내 대답을 참조하십시오. 바이너리 (= non-xml) 변환을 위해 WebSphere Transformation Extender (WTX)를 조사해야 할 것이다. – Anders