製品をチェック

無償トライアル:

無償トライアルへ

製品の情報と無償トライアルへ:

Dynamics GP JDBC Driver

Dynamics GP アカウントデータ(ベンダー、顧客、請求書、見積もりなど)を組み込んだパワフルなJava アプリケーションを短時間・低コストで作成して配布できます。

データ連携でお困りですか?

お問い合わせ

Jetty コネクションプールからDynamics GP データに連携。


CData JDBC Driver for DynamicsGP は、コネクションプーリングをサポートします:本記事では、Jetty のWeb アプリからDynamics GP データに連携する手順を説明します。


加藤龍彦
ウェブデベロッパー

dynamicsgp ロゴ画像

JDBC Driver

jdbc ロゴ画像
Jetty ロゴ画像

CData JDBC Driver for DynamicsGP は、Java Web アプリケーションに簡単に統合して利用することができます。本記事では、Jetty でドライバーをコネクションプールとして設定することで、効率的にDynamics GP データをアプリケーションで連携利用する方法を説明します。Jetty でJNDI resource for DynamicsGP を設定します。

DBC Driver for DynamicsGP を JNDI Data Source として設定

次の手順で、Jetty とDynamics GP の接続を確立します。

  1. Jetty ベースでJNDI モジュールを有効化します。JNDI を有効化するコマンドラインは以下の通り:

    java -jar ../start.jar --add-to-startd=jndi
  2. JDBC Driver の.jar ファイルと.lic ファイル(インストールディレクトリのlib フォルダ下)をcontext path のlib フォルダに配置します。
  3. リソースおよびスコープを宣言します。リソース宣言で必要な接続プロパティを入力します。この例では、Dynamics GP データソースをWeb アプリケーションのWEB-INF\jetty-env.xml レベルにdeclare しています。

    <Configure id='dynamicsgpdemo' class="org.eclipse.jetty.webapp.WebAppContext"> <New id="dynamicsgpdemo" class="org.eclipse.jetty.plus.jndi.Resource"> <Arg><Ref refid="dynamicsgpdemo"/></Arg> <Arg>jdbc/dynamicsgpdb</Arg> <Arg> <New class="cdata.jdbc.dynamicsgp.DynamicsGPDriver"> <Set name="url">jdbc:dynamicsgp:</Set> <Set name="CompanyId">mycompanyId</Set> <Set name="user">myuser</Set> <Set name="password">mypassword</Set> <Set name="URL">http://{servername}:{port}/Dynamics/GPService</Set> </New> </Arg> </New> </Configure>

    認証するには、User およびPassword 接続プロパティを設定します。

    接続するには、Url をWeb サービスのエンドポイントに設定します。例えば、http://{servername}:{port}/Dynamics/GPService です。さらに、CompanyId を設定します。この値は組織のセットアップウィンドウで「ツール」->「設定」->「組織」をクリックして取得できます。

    デフォルトでデータサマリを返し、パフォーマンスを節約します。Line items などの詳細を返すには、LookupIds をtrue に設定します。ただしエンティティは一度に一つずつ返される必要があります。

  4. Web xml でリソースを設定します:

    jdbc/dynamicsgpdb javax.sql.DataSource Container
  5. これで、java:comp/env/jdbc/dynamicsgpdb へのルックアップでDynamics GP データにアクセスできます: InitialContext ctx = new InitialContext(); DataSource mydynamicsgp = (DataSource)ctx.lookup("java:comp/env/jdbc/dynamicsgpdb");

Jetty にさらに統合

ここでは、シンプルなコネクションプーリングシナリオでのドライバーの接続について説明しました。追加での連携ケースについては、Jetty ドキュメントのWorking with Jetty JNDI  参照してください。