ESQL中的SOAP BODY字段

时间:2017-10-09 11:49:55

标签: soap entity-sql

如何获取Content-Transfer-Encoding =" CDATA"在我的肥皂体内。 我尝试过DECLARE IDOC_BLOB BLOB         甲

SBITSTREAM(InputRoot.BLOB,InputRoot.Properties.Encoding,InputRoot.Properties.CodedCharSetId );
        DECLARE IDOC_CHAR CHAR
        CAST(IDOC_BLOB AS CHAR CCSID InputRoot.Properties.CodedCharSetId);
        SET Environment.Messagecontent = IDOC_CHAR;
        SET BODYoutref.message.(XMLNSC.Attribute)'Content-Transfer-Encoding' = "CDATA";
        SET BODYoutref.message.(XMLNSC.CDataField) = Environment.Messagecontent;

但我没有得到Content-Transfer-Encoding =" CDATA" 。建议一些变化 我的要求是

< soap:Body>
    <Message Content-Transfer-Encoding="CDATA"><![CDATA[{message}]]</Message>
</soap:Body>

1 个答案:

答案 0 :(得分:0)

这是我们应该如何编码以获得正确的结果

DECLARE FILE NAMESPACE 'CDATA';
DECLARE IDOC_BLOB BLOB


ASBITSTREAM(InputRoot.BLOB,InputRoot.Properties.Encoding,InputRoot.Properties.CodedCharSetId );
        DECLARE IDOC_CHAR CHAR
        CAST(IDOC_BLOB AS CHAR CCSID InputRoot.Properties.CodedCharSetId); 
        SET BODYoutref.(XMLNSC.CDataField)Message = IDOC_CHAR;
        SET BODYoutref.Message.(XMLNSC.NamespaceDecl)"content-Transfer-Encodeing" = FILE;