ColdFusion でGoogle Cloud Storage データに連携する方法

詳細情報をご希望ですか?

無償トライアル:

ダウンロードへ

製品の詳細情報へ:

Google Cloud Storage JDBC Driver

Google Cloud Storage データを組み込んだパワフルなJava アプリケーションを短時間・低コストで作成して配布できます。



ColdFusion の標準的なデータアクセスコードでGoogle Cloud Storage にデータ連携。



CData JDBC Driver for Google Cloud Storage は、ColdFusion のrapid development tools を使ってGoogle Cloud Storage への接続をシームレスに統合します。この記事では、ColdFusion でGoogle Cloud Storage に連携しGoogle Cloud Storage テーブルをクエリする方法を説明します。

※製品について詳しい情報をご希望の方は以下からお進みください。

ColdFusion にGoogle Cloud Storage のJDBC データソースを作成

下記の手順に従ってGoogle Cloud Storage データソースを作成し、ColdFusion アプリケーションへの連携を可能にします。

  1. ドライバーのJAR および.lic ファイルを、インストールディレクトリから C:\ColdFusion10\cfusion\wwwroot\WEB-INF\lib にコピーします。

    ドライバーのJAR およびlicense はインストールディレクトリの[lib]サブフォルダに配置されています。

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

    ColdFusion Administrator インターフェースで[Data & Services]ノードを展開し、[Data Sources]>[Add New Data Source]をクリックします。ダイアログが表示されたら、以下のプロパティを入力します。

    • Data Source Name:データソースの名前を入力。名前はColdFusion 変数命名規則に一致する必要があります。
    • Driver:[Other]を選択。
  3. JDBC Driver のプロパティ設定:

    • JDBC URL:JDBC URL に接続プロパティを入力。JDBC のURL は以下で始まり jdbc:googlecloudstorage: 次に、セミコロン区切りでname=value ペアの接続プロパティを入力します。以下は一般的なJDBC URL です:

      jdbc:googlecloudstorage:ProjectId='project1';

      ユーザーアカウントでの認証

      ユーザー資格情報の接続プロパティを設定することなく接続できます。InitiateOAuth をGETANDREFRESH に設定したら、接続の準備が完了です。

      接続すると、Google Cloud Storage OAuth エンドポイントがデフォルトブラウザで開きます。ログインして権限を付与すると、OAuth プロセスが完了します。

      サービスアカウントでの認証

      サービスアカウントには、ブラウザでユーザー認証を行わないサイレント認証があります。サービスアカウントを使用して、企業全体のアクセススコープを委任することもできます。

      このフローでは、OAuth アプリケーションを作成する必要があります。詳しくは、ヘルプドキュメントを参照してください。以下の接続プロパティを設定したら、接続の準備が完了です:

      • InitiateOAuth: GETANDREFRESH に設定。
      • OAuthJWTCertType: PFXFILE に設定。
      • OAuthJWTCert: 生成した.p12 ファイルへのパスに設定。
      • OAuthJWTCertPassword: .p12 ファイルのパスワードに設定。
      • OAuthJWTCertSubject: 証明書ストアの最初の証明書が選ばれるように"*" に設定。
      • OAuthJWTIssuer: [サービスアカウント]セクションで[サービスアカウントの管理]をクリックし、このフィールドをサービスアカウントID フィールドに表示されているE メールアドレスに設定。
      • OAuthJWTSubject: サブジェクトタイプが"enterprise" に設定されている場合はエンタープライズID に設定し、"user" に設定されている場合はアプリユーザーID に設定。
      • ProjectId: 接続するプロジェクトのID に設定。

      これで、サービスアカウントのOAuth フローが完了します。

    • Driver Class:ドライバーのクラスを入力。ドライバークラスは、以下のとおりです。cdata.jdbc.googlecloudstorage.GoogleCloudStorageDriver
    • Driver Name:ユーザー定義のドライバー名を入力。ドライバー名はColdFusion Administrator コンソールでデータソースを認識するために使われます。
    • Username:認証するユーザーネームを入力。
    • Password:認証するパスワードを入力。

[Actions] カラムのCData Google Cloud Storage データソースを有効にして、接続をテストできます。ステータスがOK になったら、Google Cloud Storage データソースを使うことができます。

クエリを実行

下記の手順に従って、Google Cloud Storage の基準に合ったレコードをクエリし、結果をHTML テーブルに出力する簡単なアプリケーションを作成します。

  1. 新規ColdFusion markup ファイルでクエリを定義:C:\ColdFusion10\cfusion\wwwroot directory for ColdFusion の.cfm ファイルに次のコードを入力:

    <cfquery name="GoogleCloudStorageQuery" dataSource="CDataGoogleCloudStorage"> SELECT * FROM Buckets </cfquery>

    Note:CData JDBC Drivers は、cfqueryparam エレメントを使ってパラメータ化されたクエリもサポートします。例:

    <cfquery name="GoogleCloudStorageQuery" dataSource="CDataGoogleCloudStorage"> SELECT * FROM Buckets WHERE Name = <cfqueryparam>TestBucket</cfqueryparam> </cfquery>
  2. CFTable を使ってHTML にテーブルを出力:

    <cftable query = "GoogleCloudStorageQuery" border = "1" colHeaders colSpacing = "2" headerLines = "2" HTMLTable maxRows = "500" startRow = "1"/> <cfcol header="<b>Name</b>" align="Left" width=4 text="#Name#"></cfcol> <cfcol header="<b>OwnerId</b>" align="Left" width=7 text="#OwnerId#"></cfcol> </cftable>
  3. コードを実行してグリッドを表示します。

HTML 部分を含む以下のフルコードが利用できます。

<html> <head><title>Hello World</title></head> <body> <cfoutput>#ucase("hello world")#</cfoutput> <cfquery name="GoogleCloudStorageQuery" dataSource="CDataGoogleCloudStorage"> SELECT * FROM Buckets </cfquery> <cftable query = "GoogleCloudStorageQuery" border = "1" colHeaders colSpacing = "2" headerLines = "2" HTMLTable maxRows = "500" startRow = "1"> <cfcol header="<b>Name</b>" align="Left" width=4 text="#Name#"></cfcol> <cfcol header="<b>OwnerId</b>" align="Left" width=7 text="#OwnerId#"></cfcol> </cftable> </body> </html>