ColdFusion から Zoho Recruit のデータにクエリ

Jerod Johnson
Jerod Johnson
Director, Technology Evangelism
ColdFusion の標準データアクセスコードで Zoho Recruit のデータ に接続。



CData JDBC ドライバーを使用すると、ColdFusion の高速開発ツールを使って Zoho Recruit のデータ にシームレスに接続できます。本記事では、ColdFusion から Zoho Recruit のデータ に接続し、Zoho Recruit テーブルにクエリを実行する方法を説明します。

ColdFusion で Zoho Recruit 用JDBC データソースを作成

JDBC データソースを設定すると、cfquery タグや executeQuery などのCFScript から標準SQL を実行できるようになります。

  1. インストールディレクトリから、ドライバーのJAR ファイルと.lic ファイルをColdFusion のクラスパスにコピーします。例えば、C:\MyColdFusionDirectory\cfusion\wwwroot\WEB-INF\lib にコピーします。または、ColdFusion Administrator の[Java と JVM]ページで、[ColdFusion Class Path]ボックスにファイルへのパスを入力します。

    ドライバーのJAR ファイルとライセンスファイルは、インストールディレクトリの lib サブフォルダにあります。

    この手順の後、サーバーを再起動してください。

  2. ドライバーをデータソースとして追加します。

    ColdFusion Administrator 画面で、[データ&サービス]ノードを展開し、[データソース]をクリックします。[新しいデータソースの追加]セクションで、データソースの名前を入力し、[ドライバー]メニューから[Other]を選択します。

  3. ドライバーのプロパティを設定します。

    • JDBC URL:JDBC URL に接続プロパティを入力します。JDBC URL は jdbc:api: で始まり、その後にセミコロン区切りで name=value 形式の接続プロパティを指定します。

      ZohoRecruit への認証では、OAuth 標準を使って自分のデータに接続したり、他のユーザーが各自のデータに接続できるようにしたりできます。

      OAuth 認証の設定

      まず、ZohoRecruit に OAuth アプリケーションを登録する必要があります。登録するには、Zoho Developer Console に移動して、新しい Client(Server-based application)を追加し、有効な OAuth リダイレクト URL を設定します。OAuth アプリケーションには client id と client secret が割り当てられます。さらに、該当する Domain(.com、.eu、.in、.com.cn、または .jp)を設定する必要があります。デフォルトは .com です。

      以下の接続プロパティを設定して接続を確立してください:

      • AuthScheme:OAuth に設定します。
      • InitiateOAuthGETANDREFRESH に設定します。InitiateOAuth を使うと、OAuthAccessToken を取得するプロセスを管理できます。
      • OAuthClientId:アプリ設定で指定された client_id に設定します。
      • OAuthClientSecret:アプリ設定で指定された client_secret に設定します。
      • CallbackURL:アプリ設定で指定されたリダイレクト URI に設定します。
      • Domain:ProfileSettings に設定して、ZohoRecruit アカウントのドメイン(例:.com、.eu、.in、.com.cn、.jp)を指定します。

      接続文字列の例:

      Profile=C:\profiles\ZohoRecruit.apip;ProfileSettings='Domain=.com';AuthScheme=OAuth;InitiateOAuth=GETANDREFRESH;OAuthClientId=your_client_id;OAuthClientSecret=your_client_secret;CallbackUrl=your_callback_url;
      

      組み込みの接続文字列デザイナー

      JDBC URL の構築には、Zoho Recruit JDBC ドライバーに組み込まれた接続文字列デザイナーをご利用ください。JAR ファイルをダブルクリックするか、コマンドラインから実行します。

      java -jar cdata.jdbc.api.jar
      

      接続プロパティを入力し、接続文字列をクリップボードにコピーします。

      一般的なJDBC URL は次のようになります。

      jdbc:api:Profile=C:\profiles\ZohoRecruit.apip;ProfileSettings='Domain=.com';AuthScheme=OAuth;InitiateOAuth=GETANDREFRESH;OAuthClientId=your_client_id;OAuthClientSecret=your_client_secret;CallbackUrl=your_callback_url;
    • Driver Class:ドライバークラスを入力します。ドライバークラスは cdata.jdbc.api.APIDriver です。
    • Driver Name:ドライバーのユーザー定義名を入力します。
    • Username:認証に使用するユーザー名を入力します。
    • Password:認証に使用するパスワードを入力します。

これで、[操作]列で CData Zoho Recruit データソースを有効にして接続をテストできます。ステータスがOK と表示されたら、Zoho Recruit データソースの準備完了です。

クエリの実行

cfquery タグで Zoho Recruit にSQL ステートメントを送信できます。cfqueryparam タグを使用して、パラメータ化クエリを作成し、クエリ文字列によるSQL インジェクションを防止します。

注意cfquerycfscript を使用するには、.cfm ファイルを作成します。その.cfm ファイル内に、クエリを実行するコードを記述します(下記参照)。ファイルをWeb サーバーのルートディレクトリ(Adobe ColdFusion の場合はwwwroot など)に直接配置します。変更を反映するには、ファイル配置後にサービスを再起動してください。


<cfquery name="APIQuery" dataSource="CDataAPI">
  SELECT * FROM Attachments WHERE Module = <cfqueryparam value="#Module#" cfsqltype="cf_sql_varchar">
</cfquery>
<cfdump var="#APIQuery#">

CFScript で記述すると以下のようになります。


<cfscript>
result = queryExecute(
  "SELECT * FROM Attachments WHERE Module = ?",
  [
    { value="Candidates", cfsqltype="cf_sql_varchar" }
  ],
  { datasource="CDataAPI" }
);

writeDump( var= result );
</cfscript>

その後、以下のように.cfm ファイルにリクエストを送信できます。

http://MyServer:8500/query.cfm?Module=Candidates

はじめる準備はできましたか?

API Driver で Zoho Recruit のライブデータに接続

Zoho Recruit に接続