各製品の資料を入手。
詳細はこちら →Jetty コネクションプールからGMO MakeShop のデータに連携。
CData JDBC Driver は、コネクションプーリングをサポートします:本記事では、Jetty のWeb アプリからGMO MakeShop のデータに連携する手順を説明します。
最終更新日:2023-06-18
この記事で実現できるGMO MakeShop 連携のシナリオ
こんにちは!ウェブ担当の加藤です。マーケ関連のデータ分析や整備もやっています。
CData JDBC Driver for GMOMakeShop は、Java Web アプリケーションに簡単に統合して利用することができます。本記事では、Jetty でドライバーをコネクションプールとして設定することで、効率的にGMO MakeShop のデータをアプリケーションで連携利用する方法を説明します。Jetty でJNDI resource for GMOMakeShop を設定します。
DBC Driver for GMOMakeShop を JNDI Data Source として設定
次の手順で、Jetty とGMO MakeShop の接続を確立します。
Jetty ベースでJNDI モジュールを有効化します。JNDI を有効化するコマンドラインは以下の通り:
java -jar ../start.jar --add-to-startd=jndi
- JDBC Driver の.jar ファイルと.lic ファイル(インストールディレクトリのlib フォルダ下)をcontext path のlib フォルダに配置します。
-
リソースおよびスコープを宣言します。リソース宣言で必要な接続プロパティを入力します。この例では、GMO MakeShop のデータソースをWeb アプリケーションのWEB-INF\jetty-env.xml レベルにdeclare しています。
<Configure id='gmomakeshopdemo' class="org.eclipse.jetty.webapp.WebAppContext"> <New id="gmomakeshopdemo" class="org.eclipse.jetty.plus.jndi.Resource"> <Arg><Ref refid="gmomakeshopdemo"/></Arg> <Arg>jdbc/gmomakeshopdb</Arg> <Arg> <New class="cdata.jdbc.gmomakeshop.GMOMakeShopDriver"> <Set name="url">jdbc:gmomakeshop:</Set> <Set name="ShopId">MyShopId</Set> <Set name="ProductsAccessCode">MyProductsAccessCode</Set> <Set name="MembersAccessCode">MyMembersAccessCode</Set> <Set name="OrdersAccessCode">MyOrdersAccessCode</Set> </New> </Arg> </New> </Configure>
GMO MakeShop に接続するには、MembersAccessCode、OrdersAccessCode、ProductsAccessCode、およびShopId が必要です。
GMO MakeShop へのアクセスの設定
MembersAccessCode、OrdersAccessCode、ProductsAccessCode、およびShopId を取得するには、以下の手順に従ってください。
- GMO MakeShop には各API のAccessCode が必要です。
- GMO MakeShop Store Manager にログインし、メニューの「ショップ作成」をクリックします。
- 左ナビゲーションメニューの「外部システム連携」から任意の連携対象設定ををクリックします(メニューに表示されない場合は別途GMO MakeShop にご確認ください)。
- 商品データ連携設定の場合:認証コードの「発行」ボタンをクリックし、ProductsAccessCode を取得します。
- 注文データ連携設定の場合:最初に「注文情報参照」と「注文情報変更」の設定を選択します。選択後、認証コードの「発行」ボタンをクリックし、OrdersAccessCode を取得します。
- 会員データ連携設定の場合:最初に「会員情報の(参照・登録・変更・削除)」の設定を選択します。選択後、認証コードの「発行」ボタンをクリックし、MembersAccessCode を取得します。
- 会員認証連携設定の場合:認証コードの「発行」ボタンをクリックし、ProductsAccessCode を取得します。
GMO MakeShop アカウントの認証
次の接続プロパティを設定して接続します。
- ShopId:接続先のGMO MakeShop Store ID を設定。GMO MakeShop Store ID はログイン用の ID と同じです。
- OrdersAccessCode:「注文データ連携設定」から取得した「認証コード」を設定。このプロパティは Orders テーブルにアクセスする場合に必要です。
- ProductsAccessCode:「商品データ連携設定」から取得した「認証コード」を設定。このプロパティは Products テーブルにアクセスする場合に必要です。
- MembersAccessCode:「会員データ連携設定」から取得した「認証コード」を設定。このプロパティは Members テーブルにアクセスする場合に必要です。
- MemberAuthenticationCode:「会員認証連携設定」から取得した「認証コード」を設定。このプロパティは MemberAuthenticationConfirm を実行する場合に必要です。
- Password:GMO MakeShop Store Manager のログインユーザーのパスワードを指定。このプロパティは ProductCategoryRegistrationOrModification,ProductMemberGroupPriceRegistrationOrModification,ProductOptionRegistrationOrModification,ProductRegistrationOrModification を実行する場合に必要です。
-
Web xml でリソースを設定します:
jdbc/gmomakeshopdb javax.sql.DataSource Container -
これで、java:comp/env/jdbc/gmomakeshopdb へのルックアップでGMO MakeShop のデータにアクセスできます:
InitialContext ctx = new InitialContext(); DataSource mygmomakeshop = (DataSource)ctx.lookup("java:comp/env/jdbc/gmomakeshopdb");
Jetty にさらに統合
ここでは、シンプルなコネクションプーリングシナリオでのドライバーの接続について説明しました。追加での連携ケースについては、Jetty ドキュメントのWorking with Jetty JNDI 参照してください。