在字符串中添加一个新行

use*_*063 2 xpath axis2 wso2 xpath-2.0 wso2esb

您好,正在使用 wso2esb4.9.0,

我有一个生成电子邮件的服务,因为我有作为 mailbody 的属性,用于作为电子邮件的正文传递。

<property name="mailbody"
                   expression="fn:concat('You have received a new Ticket',':','TicketID-',get-property('Ticketid'),', ','TicketDetails-',get-property('Details'))"
                   scope="default"
                   type="STRING"/>
Run Code Online (Sandbox Code Playgroud)

当我在我的服务中传递这个属性时,我收到了一封邮件,邮件正文如下所示。

You have received a new Ticket: TicketID-3021668982752443, TicketDetails-Test ticket details
Run Code Online (Sandbox Code Playgroud)

我想在值中添加一个新行,以便邮件正文可以如下所示而不是单行。

You have received a new Ticket: 

TicketID-3021668982752443, 
TicketDetails-Test ticket details
Run Code Online (Sandbox Code Playgroud)

是否有任何 Xpath 函数或方法可以将新行添加到我的字符串值中。

我试图在 mailbody 属性的 fn-concat 中包含 \n 和但它不起作用。

Mar*_*nen 5

由于 XPath 表达式在 XML 文档中,所以这样做expression="fn:concat('You have received a new Ticket',':&#10;','TicketID-',get-property('Ticketid'),', ','TicketDetails-',get-property('Details'))"就足够了。

如果你真的使用 XPath 2.0 那么你也可以使用expression="fn:concat('You have received a new Ticket',':', codepoints-to-string(10),'TicketID-',get-property('Ticketid'),', ','TicketDetails-',get-property('Details'))".