[英]How to convert a json to EDIFACT using smooks with java
我發現的唯一方法是 edi 而不是 edifact,但是當我用 edifact 更改 smooks-config.xml 時
<smooks-resource-list
xmlns="https://www.smooks.org/xsd/smooks-2.0.xsd"
xmlns:edifact="https://www.smooks.org/xsd/smooks/edifact-2.0.xsd">
<edifact:unparser unparseOnElement="/Order" schemaURI="/edi-to-xml-mapping.dfdl.xsd" segmentTerminator="%NL;" compositeDataElementSeparator="^"/>
<edifact:parser schemaURI="/edi-to-xml-order-mapping.dfdl.xsd" segmentTerminator="%NL;" dataElementSeparator="*"
compositeDataElementSeparator="^"/>
我總是收到錯誤消息:架構定義錯誤:位置/EDIFACT-Interchange.dfdl.xsd 處沒有架構文檔。
如Smooks EDI 盒文檔 中所述,應該導入EDIFACT-Messages.dfdl.xsd DFDL 架構。 例如:
<?xml version="1.0"?>
<smooks-resource-list xmlns="https://www.smooks.org/xsd/smooks-2.0.xsd"
xmlns:edifact="https://www.smooks.org/xsd/smooks/edifact-2.0.xsd">
<edifact:parser schemaURI="/d03b/EDIFACT-Messages.dfdl.xsd"/>
<edifact:unparser schemaURI="/d03b/EDIFACT-Messages.dfdl.xsd" unparseOnNode="/Interchange"/>
</smooks-resource-list>
確保相應的模式包在您的 Java 類路徑中。 上面例子的模式包 Maven 依賴聲明是:
<dependency>
<groupId>org.smooks.cartridges.edi</groupId>
<artifactId>edifact-schemas</artifactId>
<version>2.0.0-M3</version>
<classifier>d03b</classifier>
</dependency>
嘗試edigenerator.com ,接收任何數量的 #X12 或 #EDIFACT 文檔。 將它們翻譯成您喜歡的格式,例如 JSON、XML、CSV 等,然后只需點擊幾下即可推送到您的網絡掛鈎。
它比您當前的方法更快。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.