Tomcat のコネクションプールで CData JDBC Driver for Webflow を構成
CData JDBC Driver は、JVM 上で動作するWeb アプリケーションと連携するための標準JDBC インターフェースをサポートしています。ここでは、Tomcat のコネクションプールから Webflow のデータ に接続する方法を説明します。
Tomcat のコネクションプールから Webflow のデータ に接続
- CData JAR ファイルと CData .lic ファイルを $CATALINA_HOME/lib にコピーします。CData JAR ファイルは、インストールディレクトリの lib サブフォルダにあります。
- コンテキストにリソースの定義を追加します。ここでJDBC URL を指定します。
認証
Webflow は、サイト、CMS コレクション、e コマースデータ、その他のリソースへの安全なアクセスを確保するために、OAuth 2.0 認証を使用します。この認証方式により、Webflow ワークスペースに安全に接続し、適切な認可のもとでリソースを管理できます。
OAuth 2.0 のセットアップと設定
ステップ 1:Webflow OAuth アプリケーションの作成
OAuth 認証をセットアップするには、以下のステップで進めます:
- Webflow Developer Portal にアクセスします
- Webflow アカウントの「Apps & Integrations」に移動します
- 「Register an App」をクリックして新しい OAuth アプリケーションを作成します
- アプリケーション名、説明、リダイレクト URI(CallbackURL)を設定します
- 接続で使用する Client ID と Client Secret をコピーします
必須の接続プロパティ
- AuthScheme:OAuth に設定します(必須)
- OAuthClientId:Webflow OAuth アプリケーションの Client ID(必須)
- OAuthClientSecret:Webflow OAuth アプリケーションの Client Secret(必須)
- CallbackURL:OAuth アプリケーションで指定したリダイレクト URI(必須)
- InitiateOAuth:トークンを自動管理するには GETANDREFRESH に設定します(推奨)
必須の OAuth スコープ
Webflow API プロファイルでは、以下の OAuth スコープが必要です:
- sites:read - サイト情報および設定への読み取りアクセス
- pages:read - サイトページへの読み取りアクセス
- cms:read - CMS コレクションおよびアイテムへの読み取りアクセス
- forms:read - フォームおよびフォーム送信への読み取りアクセス
- assets:read - メディアアセットおよびフォルダーへの読み取りアクセス
- ecommerce:read - 製品、注文、在庫への読み取りアクセス
- authorized_user:read - 認可されたユーザーへの読み取りアクセス
組み込みの接続文字列デザイナー
JDBC URL の構成については、Webflow JDBC Driver に組み込まれている接続文字列デザイナーを使用してください。JAR ファイルをダブルクリックするか、コマンドラインからJAR ファイルを実行します。
java -jar cdata.jdbc.api.jar
接続プロパティを入力し、接続文字列をクリップボードにコピーします。
以下のリソース定義で指定されたJDBC URL を確認できます。
<Resource name="jdbc/api" auth="Container" type="javax.sql.DataSource" driverClassName="cdata.jdbc.api.APIDriver" factory="org.apache.tomcat.jdbc.pool.DataSourceFactory" url="jdbc:api:Profile=C:\profiles\Webflow.apip;AuthScheme=OAuth;InitiateOAuth=GETANDREFRESH;OAuthClientId=your_client_id;OAuthClientSecret=your_client_secret;CallbackUrl=your_callback_url;" maxActive="20" maxIdle="10" maxWait="-1" />
特定のアプリケーションのみに Webflow のデータ へのアクセスを許可するには、上記のコードをアプリケーションのMETA-INF ディレクトリにあるcontext.xml に追加します。
共有リソースの構成の場合は、上記のコードを $CATALINA_BASE/conf にあるcontext.xml に追加します。共有リソースの構成では、すべてのアプリケーションが Webflow に接続できるようになります。
- アプリケーションの web.xml にリソースへの参照を追加します。
Webflow のデータ JSP jdbc/API javax.sql.DataSource Container
-
コネクションプールから接続を初期化します。
Context initContext = new InitialContext(); Context envContext = (Context)initContext.lookup("java:/comp/env"); DataSource ds = (DataSource)envContext.lookup("jdbc/API"); Connection conn = ds.getConnection();
Tomcat との連携について
上記の手順では、シンプルなコネクションプーリングのシナリオで Webflow のデータ に接続する方法を説明しました。その他のユースケースや詳細については、Tomcat のドキュメントに記載されている JNDI Datasource How-To を参照してください。