Jetty の接続プールから Bullhorn CRM のデータ に接続
CData JDBC Driver for Bullhorn CRM は、Java Web アプリケーションへの統合が簡単です。この記事では、接続プールを設定することで Jetty から Bullhorn CRM のデータ に効率的に接続する方法を説明します。Jetty で Bullhorn CRM 用の JNDI リソースを設定していきましょう。
Salesforce 用の JDBC Driver を JNDI データソースとして設定
以下のステップで Jetty から Salesforce に接続します。
Jetty ベースで JNDI モジュールを有効にします。次のコマンドは、コマンドラインから JNDI を有効にします。
java -jar ../start.jar --add-to-startd=jndi
- インストールディレクトリの lib サブフォルダにある CData およびライセンスファイルを、コンテキストパスの lib サブフォルダに追加します。
-
リソースとそのスコープを宣言します。リソース宣言に必要な接続プロパティを入力します。次の例では、WEB-INF\jetty-env.xml に Web アプリレベルで Bullhorn CRM データソースを宣言しています。
<Configure id='bullhorncrmdemo' class="org.eclipse.jetty.webapp.WebAppContext"> <New id="bullhorncrmdemo" class="org.eclipse.jetty.plus.jndi.Resource"> <Arg><Ref refid="bullhorncrmdemo"/></Arg> <Arg>jdbc/bullhorncrmdb</Arg> <Arg> <New class="cdata.jdbc.bullhorncrm.BullhornCRMDriver"> <Set name="url">jdbc:bullhorncrm:</Set> <Set name="DataCenterCode">CLS33</Set> <Set name="OAuthClientId">myoauthclientid</Set> <Set name="OAuthClientSecret">myoauthclientsecret</Set> </New> </Arg> </New> </Configure>Bullhorn CRM 接続プロパティの取得・設定方法
Bullhorn CRM に接続するには、Bullhorn CRM アカウントの資格情報を入力します。また、DataCenterCode プロパティをデータセンターに対応するデータセンターコードに設定してください。詳しくは、こちら を参照してください。
CLS2、CLS21 などのコードはクラスタID で、ログインした際のブラウザのURL(アドレスバー)に含まれます。
例えば、
https://cls21.bullhornstaffing.com/BullhornSTAFFING/MainFrame.jsp?#no-baこちらのURL は、ログインしたユーザーがCLS21 クラスタに存在することを示しています。
ちなみに、コールバックURL の末尾に"/" を含む値、例えば http://localhost:33333/ を指定する場合は、アプリケーション設定で指定したコールバックURL と厳密に同じ値を指定する必要があります。このパラメータの文字が一致しない場合、エラーとなります。
Bullhorn CRM への認証(OAuth)
Bullhorn CRM ではOAuth 2.0 認証標準を利用できます。 OAuth を使用して認証するには、すべてのシナリオでカスタムOAuth アプリケーションを作成して設定する必要があります。詳しい認証方法については、ヘルプドキュメントの「OAuth」セクションを参照してください。
-
Web.xml でリソースを設定します。
jdbc/bullhorncrmdb javax.sql.DataSource Container
-
これで、java:comp/env/jdbc/bullhorncrmdb をルックアップして Bullhorn CRM にアクセスできます。
InitialContext ctx = new InitialContext(); DataSource mybullhorncrm = (DataSource)ctx.lookup("java:comp/env/jdbc/bullhorncrmdb");
Jetty 統合の詳細
上記のステップでは、シンプルな接続プールのシナリオでドライバーを設定する方法を説明しました。その他のユースケースや詳細については、Jetty ドキュメントのWorking with Jetty JNDI の章を参照してください。