database.comへのアクセス
Javaからのアクセス方法については、「Database.com Workbook」を見ながら作業を行っていきます。Workbookについては、米国で公開されているものが日本語に訳されてサイトにアップされています。このドキュメントは、Salesforceを理解する上で大変便利なものです。database.comの他にも、「Force.com」「Visualforce」「Mobile SDK」などが用意されています。
外部アプリケーションからdatabase.comへアクセスするには、「Database.com REST API」を使用します。APIには他にも、データベースへの設定のための「Metadata API」、Chatterのための「Chatter REST API」などもあります。
認証に関しては、OAuth2.0を使用しています。今回はRESTサービスを利用してアクセスを行いますが、Winter'12より機能追加された、Database.com Java SDKというものがあります。Force.com上やHeroku、または特定のランタイムに縛られないのでAmazonのEC2などから、Javaのロジックでアクセスしたい場合に簡単にアクセスすることが可能です。こちらもAPIのコールでアクセスしますが、SDKからのアクセスに関してはAPIのコール数やデータ量の制約を回避するよう実装されているようです。
Javaアプリケーションを作成する際は、Mavenのテンプレートを使用して作業を行います。そのため、予めMavenをダウンロードしてインストールしておきます。Maven(メイヴァン/メイヴィン)とは、Apacheのプロジェクトの1つで、オープンソースのプロジェクト管理ツールです。ライセンスは、Apache License 2.0となっています。Project Object Model(POM)という考え方に基づき、コンパイル・テスト実行・パッケージングなどのソフトウェア開発における一連の作業を自動化するためのツールです。
インストールといっても、ダウンロードしてきたデータを適当な場所に解凍して展開するだけです。解凍したフォルダ配下の/binにPATHを通しておくと、後々楽になります。注意点としては、Javaで作成されていますので、実行するPCにJDKがインストールされている必要があります。
また、Mavenはネットワークを通して動作するので、プロキシを使用して接続している環境では、プロキシの設定を行う必要があります。設定ファイルは、~/.m2/settings.xmlにあります。なければ作成してください。プロキシの設定は、下記のようになります。
<settings> <proxies> <proxy> <active>true</active> <protocol>http</protocol> <host>プロキシのホスト名</host> <port>プロキシのポート番号</port> <username>プロキシのユーザ名</username> <password>プロキシのパスワード</password> <nonProxyHosts>プロキシを使用しないホスト名をカンマ区切りで定義</nonProxyHosts> </proxy> </proxies> </settings>