一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

orbeon form 的架構(gòu)簡(jiǎn)介 - 如何訪(fǎng)問(wèn)用戶(hù)通過(guò) form 存儲(chǔ)的數(shù)據(jù)

 汪子熙 2021-12-19

從用戶(hù)的視角出發(fā),Orbeon Forms 架構(gòu)很簡(jiǎn)單。 它由 Form Builder(表單編輯器)和 Form Runner(表單運(yùn)行時(shí))組成,與數(shù)據(jù)庫(kù)(持久層)對(duì)話(huà)。 此外,與用戶(hù)管理系統(tǒng)的集成也是一種常見(jiàn)的場(chǎng)景。

您已經(jīng)使用 Form Builder 創(chuàng)建了表單,發(fā)布了這些表單,并設(shè)置了 Orbeon Forms,以便它將表單捕獲的數(shù)據(jù)存儲(chǔ)在您的關(guān)系數(shù)據(jù)庫(kù)中。 現(xiàn)在,您的另一個(gè)應(yīng)用程序如何訪(fǎng)問(wèn)這些數(shù)據(jù)?

有三種設(shè)計(jì)方式。

  • 當(dāng)用戶(hù)單擊表單中的提交按鈕時(shí),讓 Orbeon 表單將數(shù)據(jù)發(fā)送到您的應(yīng)用程序。

  • 您的應(yīng)用程序?yàn)榇苏{(diào)用 Orbeon Forms 提供的 REST API。

  • 您的應(yīng)用程序直接訪(fǎng)問(wèn) Orbeon Forms 保存的數(shù)據(jù)庫(kù)中的數(shù)據(jù)。

下面逐一介紹。

方法1. Send data on submit

在大多數(shù)情況下,這是最好的選擇,也是我們推薦的選擇。 本質(zhì)上,您設(shè)置 Orbeon Forms,以便當(dāng)用戶(hù)填寫(xiě)表單并提交時(shí),Orbeon Forms 會(huì)將用戶(hù)輸入的數(shù)據(jù)發(fā)送到您的應(yīng)用程序。 您的應(yīng)用程序可以使用這些數(shù)據(jù)做任何它想做的事情,如果需要,在對(duì) Orbeon Forms 的響應(yīng)中,您的應(yīng)用程序可以告訴 Orbeon Forms 用戶(hù)接下來(lái)應(yīng)該轉(zhuǎn)到哪個(gè)頁(yè)面。

當(dāng)用戶(hù)單擊在 Form Builder 中創(chuàng)建的表單上的提交按鈕(或就此而言表單底部的任何其他按鈕)時(shí),將運(yùn)行一個(gè)流程。 本質(zhì)上,一個(gè)流程定義了一系列要執(zhí)行的操作,其中之一可以是將數(shù)據(jù)發(fā)送到您的應(yīng)用程序。

目前,流程定義在您的 properties-local.xml 中。

在您的流程中,您將使用 send() 操作來(lái)指示 Orbeon Forms 將用戶(hù)輸入的數(shù)據(jù)發(fā)布到您選擇的 URL。

你的應(yīng)用程序可以用它接收的數(shù)據(jù)做它想做的事情:在數(shù)據(jù)庫(kù)中執(zhí)行一些操作,調(diào)用服務(wù)等。

如果您將 replace = "all" 參數(shù)傳遞給 send(),那么您的應(yīng)用程序在 HTTP 響應(yīng)中發(fā)送回 Orbeon Forms 的內(nèi)容將被 Orbeon Forms 發(fā)送/代理回瀏覽器。

這允許您發(fā)送自定義確認(rèn)頁(yè)面,或重定向到用戶(hù)接下來(lái)應(yīng)該轉(zhuǎn)到的另一個(gè)頁(yè)面或表單。

方法2. Call the REST API

您的第二個(gè)選擇是讓您的應(yīng)用程序調(diào)用 Orbeon Forms 持久性 API 來(lái)檢索 Orbeon Forms 保存在數(shù)據(jù)庫(kù)中的數(shù)據(jù)。 這是一個(gè)簡(jiǎn)單的 REST API,您需要首先調(diào)用搜索 API 以列出使用特定表單提交或保存的數(shù)據(jù),然后調(diào)用 CRUD API 以檢索您感興趣的任何數(shù)據(jù)。

如前所述,Orbeon Forms 提供的 API 非常簡(jiǎn)單,但在調(diào)用此類(lèi) API 時(shí)需要記住一些復(fù)雜情況,這通常會(huì)使上述選項(xiàng) 1 更可?。?/p>

  • 您正在決定何時(shí)調(diào)用 API。您很可能希望定期(例如每小時(shí)或每天)執(zhí)行此操作,以處理提交給系統(tǒng)的任何新數(shù)據(jù)。這意味著您需要有一個(gè)類(lèi)似 cron 的基礎(chǔ)設(shè)施來(lái)定期執(zhí)行該任務(wù),并且您的應(yīng)用程序不會(huì)實(shí)時(shí)了解新數(shù)據(jù)。

  • 假設(shè)您的應(yīng)用程序只對(duì)處理新數(shù)據(jù)感興趣,它需要以某種方式跟蹤它已經(jīng)處理的數(shù)據(jù)。

  • 出于安全原因,開(kāi)箱即用的 REST API 訪(fǎng)問(wèn)被阻止。您可以在 Orbeon Forms 級(jí)別完全開(kāi)放對(duì) API 的訪(fǎng)問(wèn),并通過(guò)其他方式(例如過(guò)濾器)保護(hù)它,或者通過(guò)授權(quán)服務(wù)在 API 的調(diào)用者和 Orbeon Forms 之間設(shè)置一些身份驗(yàn)證。

方法3. Accessing the database

根據(jù)上述選項(xiàng) 2,訪(fǎng)問(wèn)數(shù)據(jù)庫(kù)中的數(shù)據(jù)而不是通過(guò) API 會(huì)增加升級(jí) Orbeon Forms 時(shí)需要更改代碼的可能性,因?yàn)?Orbeon 表的格式比 API 更可能更改。 盡管有此警告,但我們發(fā)現(xiàn)客戶(hù)訪(fǎng)問(wèn)數(shù)據(jù)庫(kù)中的數(shù)據(jù)通常比通過(guò) API 訪(fǎng)問(wèn)更實(shí)用。

    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶(hù) 評(píng)論公約

    類(lèi)似文章 更多

    国产三级不卡在线观看视频| 亚洲成人久久精品国产| 夫妻性生活动态图视频| 国产午夜福利在线免费观看| 欧美日韩校园春色激情偷拍| 免费亚洲黄色在线观看| 亚洲成人精品免费在线观看| 国产精品一区二区三区黄色片| 亚洲国产成人爱av在线播放下载| 2019年国产最新视频| 国产内射在线激情一区| 亚洲清纯一区二区三区| 欧美日韩国产二三四区| 日本不卡在线一区二区三区| 日韩精品一级片免费看| 亚洲国产色婷婷久久精品| 亚洲精品国产美女久久久99| 亚洲精品一区三区三区| 91麻豆视频国产一区二区| 精品日韩中文字幕视频在线| 成人精品一区二区三区综合| 中文字幕久久精品亚洲乱码| 亚洲熟妇熟女久久精品 | 国产一级二级三级观看| 国产av熟女一区二区三区蜜桃| 自拍偷拍一区二区三区| 丝袜诱惑一区二区三区| 国产精品免费福利在线| 久草视频这里只是精品| 国产av一区二区三区四区五区| 美女黄片大全在线观看| 亚洲日本韩国一区二区三区| 亚洲一区二区久久观看| 日韩国产亚洲一区二区三区| 亚洲精品日韩欧美精品| 亚洲另类女同一二三区| 国产日韩欧美专区一区| 婷婷亚洲综合五月天麻豆| 国产极品粉嫩尤物一区二区| 蜜桃传媒在线正在播放| 五月婷婷亚洲综合一区|