所有文章
- 實作筆記:DRAPI 透過 Keycloak OIDC 登入 — Domino 12.0.2 就能用、不必等 14
想把 DRAPI(Domino REST API)接到現代 IdP — 譬如 Keycloak、Azure AD、Okta — 通常以為要等 Domino 14 才有 OIDC、其實 12.0.2 用 DRAPI 的 oidc 模式就能跑通。本文是本機完整重現整套設定的實作筆記、聚焦 DRAPI 三個 OIDC 模式怎麼選、三層獨立認證架構(身份驗證 / 身份對應 / 授權)為什麼要分層除錯、跟 4 個會卡很久的踩雷 — 最大那個是 providerUrl 用 localhost 因為 Java IPv4 解析造成跨機器整個失敗。完整逐步流程在 GitHub repo + Pages 上、文章本身不重複設定步驟、聚焦關鍵判斷跟陷阱。
2026.06.01 - HCL Domino 14 跟前版的關鍵差異整理 — 管理員與開發者必看
從 V11 / V12 升級到 Domino 14.x、真正會讓既有部署失效的「結構性變動」其實有限、集中在幾個面向。本文用五個維度整理 14.0 / 14.5 / 14.5.1 跟之前版本的差異 — notes.ini 路徑、Java / jar 環境、XPages 編輯器(CKEditor → TinyMCE 6.7)、新模組(Domino IQ / DQL @FTSearch / AdminCentral / AutoUpdate)、跟一份完整的棄用 / 移除清單(iNotes UI、SNMP MIB、DCT、Server Load Utility 等)。每條都標版本起跑點跟官方來源、結尾附一份升級前的檢查清單。
2026.05.31 - NotesRegistration:用 LotusScript 自動化使用者註冊
Domino 管理員每天都會收到新人報到、離職、留停的通知 — 一筆一筆在 Admin Client 點滑鼠很快就成為時間殺手。NotesRegistration 是 LotusScript 內建解法、把使用者註冊 / 認證 / ID 檔管理整套搬進可程式化的世界。本文從人事系統觸發的實務場景切入、拆解 RegisterNewUser 的 14 個參數、必要的屬性 setup、跟伺服器權限的關係、跟批次處理的範例。
2026.05.30 - FTSearch / db.Search / DQL:Domino 三種搜尋機制怎麼選
Domino 14 之後、文件搜尋有三條技術路徑:FTSearch(文字索引)、db.Search(@Formula 全表掃描)、DQL(V12 引入、結構化 query、走 design catalog 跟 NIF 索引)。本文用一張多維對比表 + 一棵決策樹整理三者的差異 — index 需求、語法、效能、即時性、回傳順序、可組合性 — 並深入講 Domino 14 開始 DQL 支援 `@FTSearch()` term 把全文檢索整合進結構化 query 的意義。三個實戰場景(一次性查詢 / scheduled agent / 高頻 REST API)對應建議路徑、附 cross-link 整個搜尋系列跟 DQL 三部曲。
2026.05.29 - db.Search:用 @Formula 暴力搜尋 — 不需要 index 的那條路
NotesDatabase.Search 是 LotusScript 第二種搜尋機制 — 不靠 full-text index、靠 @Formula 在每一份文件上跑判斷式。本文拆解三個參數(formula / dateTime / maxDocs)跟 FTSearch 不一樣的語意、為什麼回傳 unsorted collection、dateTime 怎麼當作增量處理的 cursor、maxDocs=0 是真的「不限」(不像 FTSearch 預設 5000 上限)、formula 裡哪些 @function 不能用(UI 互動類 / lookup 類)、Stamp 改完 collection 不會 refresh 的陷阱、跟 production-ready 增量 agent 範例。三部曲第二篇、續篇會把這個跟 FTSearch / DQL 三選一比較。
2026.05.28 - FTSearch:Domino 全文檢索的三層 API(NotesDatabase / NotesView / NotesDocumentCollection)
FTSearch 是 Domino 三個 class 都有的方法 — 三個層級回傳不同型別、語意各異。本文拆解 NotesDatabase.FTSearch(回傳新的 collection)、NotesView.FTSearch(直接過濾 view 本身、回傳 Long 計數)、NotesDocumentCollection.FTSearch(直接縮減 collection 本身、無回傳)三者差異、sortopt 與 options 常數、query syntax operators 速查、CreateFTIndex 的 5 個 options bitmask、跟 `load updall -x` 的對應、沒建 index 時 method 還會跑(只是降速)、5000 doc 預設上限、wildcard `*` 只能放 term 結尾、operators 必須大寫等實戰陷阱。三部曲第一篇、後續會接 db.Search 跟三選一決策篇。
2026.05.27