我们如何以wso2esb邮件格式发送正文

fai*_*aik 1 wso2 wso2esb wso2carbon wso2-data-services-server

我正在使用邮件传输,我已经完成了axis2文件的更改,我的esb毁了罚款邮件但我的问题是它不发送更合适的格式我希望发送正文但它只是发送"主题"我的配置像这样

<?xml version="1.0" encoding="UTF-8"?>
<proxy xmlns="http://ws.apache.org/ns/synapse"
       name="StaticMail"
       transports="http"
       startOnLoad="true"
       trace="disable">
   <description/>
   <target>
      <inSequence>
         <property name="senderAddress"
                   expression="//mail/text()"
                   scope="default"/>
         <property name="Subject" value="Alert:Reading Out of Range" scope="transport"/>
         <property name="message" value="Response message" scope="transport"/>
         <property name="body" expression="//list/text()" scope="default"/>
         <header name="To"
                 expression="fn:concat('mailto:', get-property('senderAddress'))"/>
         <property name="OUT_ONLY" value="true"/>
         <log level="full">
            <property name="message" value="Response message"/>
            <property name="Sender Address" expression="get-property('senderAddress')"/>
         </log>
         <send/>
      </inSequence>
      <outSequence/>
   </target>
</proxy>
Run Code Online (Sandbox Code Playgroud)

但它只发送这样的邮件格式

提醒:作为主题读取超出范围没有人用于邮件和一个带有"noname"的空附件我们如何发送带有正确身体的邮件请告诉我

Isu*_*ana 6

为此,您可以使用脚本中介的样本是这里

这是另一个将错误消息作为电子邮件正文和错误代码作为主题发送的示例.这里使用有效负载工厂而不是脚本中介.

<faultSequence>
     <property xmlns:ns="http://org.apache.synapse/xsd" name="ErrorCode" expression="get-property('ERROR_CODE')" scope="default" type="INTEGER"/>
     <property name="ErrorMessage" expression="get-property('ERROR_MESSAGE')" scope="default" type="STRING"/>         
     <property name="messageType" value="text/html" scope="axis2"/>
     <property name="ContentType" value="text/html" scope="axis2"/>
     <property xmlns:ns="http://org.apache.synapse/xsd" name="Subject" expression="$ctx:ErrorCode" scope="transport"/>
     <payloadFactory>
        <format>
           <ns:text xmlns:ns="http://ws.apache.org/commons/ns/payload">$1</ns:text>
        </format>
        <args>
           <arg expression="$ctx:ErrorMessage"/>
        </args>
     </payloadFactory>
     <property name="OUT_ONLY" value="true"/>
     <send>
        <endpoint>
           <address uri="mailto:youremail@gmail.com"/>
        </endpoint>
     </send>
  </faultSequence>
Run Code Online (Sandbox Code Playgroud)