WebLogic のコネクションプールからSpotifyに接続
CData JDBC Driver for Spotify を使えば、標準的な手順に沿ってSpotify のデータ をJava Web アプリケーションに統合できます。この記事では、CData JDBC Driver for Spotify をWebLogic Server にデプロイする方法を説明します。
WebLogic Server へのJDBC ドライバーのデプロイ
ドライバーをデプロイするには、ドライバーJAR をクラスパスに追加します。.lic ファイルは、JAR と同じフォルダに配置する必要があります。 これらのファイルは、インストールディレクトリのlib サブフォルダに格納されています。
すべてのドメインにドライバーを追加する場合は、WL_HOME\common\bin\commEnv.cmd/sh にあるWEBLOGIC_CLASSPATH 環境変数の先頭にJAR のパスを追加します。このスクリプトは WL_HOME\common\bin\ にあります。以下に例を示します。
set WEBLOGIC_CLASSPATH=your-installation-directory\lib\cdata.jdbc.api.jar;%WEBLOGIC_CLASSPATH%
WebLogic 12.2.1 では、特定のドメインにドライバーを追加する場合、ドライバーJAR と.lic ファイルをDOMAIN_HOME\lib(例:ORACLE_HOME\user_projects\domains\MY_DOMAIN\lib)に配置するだけで済みます。これらのファイルは、起動時にサーバーのクラスパスに追加されます。
以前のバージョンでは、手動でドライバーをクラスパスに追加する必要があります。setDomainEnv.cmd/sh のPRE_CLASSPATH 環境変数の先頭に、以下の内容を追加します。このスクリプトは、対象ドメインのフォルダのbin サブフォルダにあります。
set PRE_CLASSPATH=your-installation-directory\lib\cdata.jdbc.api.jar;%PRE_CLASSPATH%
これらの変更を行った後、サーバーを再起動します。
Spotify 用JDBC データソースの作成
ドライバーをデプロイしたら、WebLogic 管理コンソールにログインして接続を作成します。
- ドメイン構造ツリーで、Services -> Data Sources -> New -> Generic Data Source をクリックします。
-
JDBC Data Source Properties ページで、以下の情報を入力します。
- Name: ユーザーフレンドリーな名前を入力します(例:apijdbc)。
- JNDI Name: JDBC データソースのバインド先のパスを入力します(例:jdbc/API)。
Database Type: Other を選択します。
-
Next をクリックしてデフォルトオプションを使用します。最後のページで、以下の情報を入力してTest Configuration をクリックします。
- Driver Class Name: ドライバークラスを入力します(cdata.jdbc.api.APIDriver)。
URL: JDBC URL を入力します。一般的なJDBC URL は次のとおりです。
jdbc:api:Profile=C:\profiles\Spotify.apip;AuthScheme=OAuth;InitiateOAuth=GETANDREFRESH;OAuthClientId=your_client_id;OAuthClientSecret=your_client_secret;CallbackURL=http://localhost:33333;
OAuth 認証の設定
Spotify は認証に OAuth 2.0 を使用します。クライアント認証情報を取得するには、Spotify Developer Dashboard でアプリケーションを作成する必要があります。
Spotify アプリケーションのセットアップ
- Spotify Developer Dashboard にアクセスします。
- Spotify アカウントでログインして Create app をクリックします。
- アプリ名、説明を入力し、Redirect URI を設定します(デスクトップアプリケーションの場合は
http://localhost:33333
など)。 - アプリ設定から Client ID と Client Secret をコピーします。
接続プロパティ
以下の接続プロパティを設定して接続を確立してください:
- AuthScheme:OAuth に設定します。
- InitiateOAuth:GETANDREFRESH に設定します。InitiateOAuth を使うと、OAuthAccessToken を取得するプロセスを管理できます。
- OAuthClientId:Spotify アプリケーションの Client ID に設定します。
- OAuthClientSecret:Spotify アプリケーションの Client Secret に設定します。
- Scope:必要な OAuth スコープ(スペース区切り)に設定します。デフォルトには、このプロファイルのテーブルに必要なすべての読み取りスコープが含まれます。
- CallbackURL:Spotify アプリケーションで設定したリダイレクト URI に設定します(例:http://localhost:33333)。
接続文字列の例
Profile=C:\profiles\Spotify.apip;AuthScheme=OAuth;InitiateOAuth=GETANDREFRESH;OAuthClientId=your_client_id;OAuthClientSecret=your_client_secret;CallbackURL=http://localhost:33333;
利用可能な OAuth スコープ
- user-read-private:ユーザーのサブスクリプション詳細と露骨なコンテンツ設定への読み取りアクセス。
- user-read-email:ユーザーのメールアドレスへの読み取りアクセス。
- user-library-read:ユーザーが保存したトラック、アルバム、エピソード、ショー、オーディオブックへの読み取りアクセス。
- playlist-read-private:ユーザーの非公開プレイリストへの読み取りアクセス。
- playlist-read-collaborative:ユーザーがフォローしているコラボレーティブプレイリストへの読み取りアクセス。
- user-follow-read:現在のユーザーがフォローしているアーティストの一覧への読み取りアクセス。
- user-read-playback-state:ユーザーのプレーヤー状態(デバイス、現在のトラック、再生位置)への読み取りアクセス。
- user-read-currently-playing:ユーザーが現在再生中のコンテンツへの読み取りアクセス。
- user-read-playback-history:ユーザーが最近再生したトラックへの読み取りアクセス。
- user-top-read:ユーザーのトップアーティストとトラックへの読み取りアクセス。
組み込みの接続文字列デザイナー
JDBC URL の作成には、Spotify JDBC Driver に組み込まれている接続文字列デザイナーを使用できます。JAR ファイルをダブルクリックするか、コマンドラインからjar ファイルを実行します。
java -jar cdata.jdbc.api.jar
接続プロパティを入力し、接続文字列をクリップボードにコピーします。
- Database User Name: JDBC URL で指定していない場合は、ユーザー名を入力します。
- Password: JDBC URL で指定していない場合は、パスワードを入力します。
JDBC データソースをデプロイするサーバーを選択すると、Spotify のデータ に接続できるようになります。
その他のWebLogic 連携
上記の手順では、シンプルなコネクションプーリングシナリオでのドライバー設定方法を説明しました。その他のユースケースや詳細については、Oracle Fusion Middleware ドキュメントのWebLogic Data Sources 章のJDBC セクションを参照してください。