MySQL バックエンドを使用して XPages アプリケーションを作成しています。アプリケーションは複数の顧客によって使用されます。それぞれに独自の NSF データベースと、対応する MySQL データベースがあります。各顧客には独自の MySQL ユーザー名があります。Extension Library JDBC コンポーネント ( ConnectionManager
) を使用しています。
ユーザー名とパスワードを に保存する予定でしたNotesDocument
。このようにして、このデータに影響を与えることなく、NSF の設計を NTF テンプレートから簡単に更新できます。ただし、ConnectionManager コンポーネントとSSJS 関数はどちらも、 WEB-INF/jdbcフォルダー@GetJdbcConnection
に保存されているファイルからユーザー名、パスワード、およびその他の接続情報を読み取ります。そこに保存されたファイルは、NSF 設計が更新されると上書きされるため、顧客固有の情報が失われます。
これらのファイルを動的にする方法 (WEB-INF は仕様により読み取り専用です) や、それらの中に動的要素を含める方法はないようです (私の前の質問を参照してください)。
で動的な JDBC URL を使用することもできますがConnectionManager
、ExtLib ブックではこの方法に対して警告しています。その後、接続プーリングが失われるようです。さらに、この@GetJdbcConnection
関数は JDBC URL を受け入れません。
では、NSF 固有の JDBC 接続情報を格納する最良の方法は何でしょうか?
編集:解決済み
jdbcConnectionManager コンポーネントのサブクラスを作成しました。手順の詳細はこちら: http://lazynotesguy.net/blog/2013/08/09/subclassing-an-extlib-component/