首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Orbeon将实例数据发送到web服务

Orbeon将实例数据发送到web服务
EN

Stack Overflow用户
提问于 2017-05-22 15:45:53
回答 1查看 115关注 0票数 1

我为web服务调用和响应创建了一个实例。

代码语言:javascript
复制
<xf:instance id="ws-request-instance">                         
                            <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://ws.estat.zzi.si/">
                               <soapenv:Header/>
                               <soapenv:Body>
                                  <ws:orbeonGet>
                                     <dokumentId/>
                                     <type/>
                                     <formData/>
                                  </ws:orbeonGet>
                               </soapenv:Body>
                            </soapenv:Envelope>
</xf:instance>

<xf:instance id="ws-response-instance">                       
                            <soapenv:Envelope>
                            </soapenv:Envelope>
</xf:instance>

提交函数调用创建的服务,如下所示:

代码语言:javascript
复制
<xf:submission id="submit" action="http://was7test.zzi.si:8081/EStat-RO-WS-91-XX/orbeon" method="post" ref="instance('ws-request-instance')" replace="instance" mediatype="application/soap+xml" instance="ws-response-instance">
                <xf:message ev:event="xforms-submit-done" level="modal">Done Result:<xf:output value="instance('ws-response-instance')"/>
                <xf:output value="event('error-type')"/>; Status: <xf:output value="event('response-status-code')"/>; URI: <xf:output value="event('resource-uri')"/>; Headers: <xf:output value="event('response-headers')"/>; Body: <xf:output value="event('response-body')"/>
                </xf:message>

                <xf:message ev:event="xforms-submit-error" level="modal">
                A submission error occurred: <xf:output value="event('error-type')"/>; Status: <xf:output value="event('response-status-code')"/>; URI: <xf:output value="event('resource-uri')"/>; Headers: <xf:output value="event('response-headers')"/>; Body: <xf:output value="event('response-body')"/>
                </xf:message>
            </xf:submission>

当单击submit按钮时,我们像这样填写web服务调用的参数:

代码语言:javascript
复制
<xf:action ev:event="submit-form">
            <xf:setvalue ref="instance('ws-request-instance')//type" value="xxf:get-request-parameter('type')"/>
            <xf:setvalue ref="instance('ws-request-instance')//dokumentId" value="xxf:get-request-parameter('documentId')"/>
            <xf:setvalue ref="instance('ws-request-instance')//formData" value="instance('fr-form-instance')"/>
            <xf:send submission="submit"/>
</xf:action>

在formData参数中,我希望获得fr-form-instance的"XML“数据。例如,实例是"X",而我只得到X,而不是XML中的整个“实例”。

这是可能的吗?你能指引我到正确的方向吗?

EN

回答 1

Stack Overflow用户

发布于 2017-05-22 18:16:05

我只是使用了"saxon“,并写道:

代码语言:javascript
复制
<xf:setvalue
    ref="instance('ws-request-instance-get')//formData"
    value="saxon:serialize(instance('fr-form-instance'), 'xml')"/>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44107364

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档