【问题标题】:Orbeon : Use of Rest API with Oracle persistence layerOrbeon:使用带有 Oracle 持久层的 Rest API
【发布时间】:2012-02-20 06:22:08
【问题描述】:

您能帮我们解决有关 Orbeon 的问题吗

我们有一个外部 Web 应用程序,该应用程序在其页面中包含使用 Orbeon Form Builder 创建并在 Form Runner 中发布的 Xforms。 我们为持久化表单数据配置了 Oracle 持久层。 到现在一切环境都还好。 现在我们有来自外部 Web 应用程序的数据,我们希望将这些数据发送到新的表单数据并将其保存在 Oracle 数据库中。 因此,我们考虑使用 Orbeon 提供的 Rest API 来创建数据,如下所述:persistence API 通过对链接进行 ajax 调用来形成数据。 但是,我们不知道如何准确地实现这一点(意味着如何构建 ajax 调用、请求正文等)。那么您能否告诉我们这是否是一个好的解决方案以及如何做?

我们也尝试过这个(将实例的一部分发布到 URL 的 ajax 调用):

var buffer = "<form>" +
                "<attachment>" +
                "<attachment_one filename=" + info.attachment.name + " mediatype=" + info.attachment.contentType
            + " size=" + info.attachment.size + " >" + info.attachment.bytes + "</attachment_one>" +
                "</attachment>" +
                "</form>";
        var xmlDoc = document.implementation.createDocument("", "", null);
        xmlDoc.load(buffer);
        $.ajax({
            type: "PUT",
            url: urlToXml, // "/crud/[APPLICATION_NAME]/[FORM_NAME]/data/[FORM_DATA_ID]/data.xml"
            processData: false,
            data: xmlDoc,
            dataType: "xml",
            success: function(msg) {
                alert ("xml data sent successfully");
            }
        });

但是响应返回一个无效的 XML 文档。

提前致谢

【问题讨论】:

    标签: javascript oracle orbeon


    【解决方案1】:

    我不鼓励您从 Web 浏览器执行此操作,因为这意味着您需要使您的持久性 API 可以从 Internet 访问。因此,任何用户都可以访问您数据库中的任何数据,包括更新和删除数据。

    如果您不关心安全性,或者如果您使用 Node.js 之类的东西从服务器运行此 JavaScript,那么您“只”需要像 Form Runner 那样执行PUT。要确切知道您需要发送的 XML 应该是什么样子,我会在 Form Runner 中进行操作,并使用诸如 HTTP ScoopWireshark 之类的 HTTP 分析器查看发送到持久层的数据。

    【讨论】:

    • 我通过使用 firebug 检查 FormRunner 保存按钮尝试了你所说的,但我只看到一个帖子:/orbeon/xforms-server 这与持久性 API 的解释不同
    • @user1173005 您正在查看从浏览器到服务器的请求。相反,您想查看从服务器到服务器的请求,这些请求是通过 HTTP 完成的。为此,您显然不能使用浏览器插件;您需要使用 HTTP Scoop 或 Wireshark 之类的软件(请参阅我的回复中的链接)。
    猜你喜欢
    • 2023-03-28
    • 2018-04-25
    • 2023-03-09
    • 2017-03-30
    • 1970-01-01
    • 2019-10-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多