Googleで続けてきた投稿ですが、ネタが減ってきたので以前から気になっていたAmazon APIなるモノを試してみた。 今回はAmazonDevKitにあるJavaのサンプルを動作させるまでの本当に簡単な手順を記述します。
1.ユーザ登録とDeveloper's Tokenの取得
下記のサイトより・・・
http://www.amazon.co.jp/webservices
下記の手順を完了する。
1. Download our free developer's kit
2. Apply for a free developer's token
2.WebServices - Axisをダウンロードして環境を作る。
↓ここからダウンロード(今回はV1.1)
http://ws.apache.org/axis/index.html
展開してAXISのlibにあるJarファイルをCLASSPATHへ通す。
3.Amazon WSDLドキュメントからの Java コードの生成
( 参照WSLDL : http://soap.amazon.com/schemas3/AmazonWebServices.wsdl )
下記のコマンドを実行する。
[ for none-proxy environment ]
% java org.apache.axis.wsdl.WSDL2Java -v -p com.amazon.soap.axis
http://soap.amazon.com/schemas3/AmazonWebServices.wsdl
[ for proxy environment ]
% java -Dhttp.proxyHost=[ProxyServer] -Dhttp.proxyPort=[ProxyPort]
org.apache.axis.wsdl.WSDL2Java -v -p com.amazon.soap.axis
http://soap.amazon.com/schemas3/AmazonWebServices.wsdl
--- こんな感じでJavaコードが生成される。
Parsing XML file: http://soap.amazon.com/schemas3/AmazonWebServices.wsdl
Generating com\amazon\soap\axis\PowerRequest.java
Generating com\amazon\soap\axis\ShortSummary.java
Generating com\amazon\soap\axis\ListingProductInfo.java
・・・
生成されたコードをコンパイルする。(今回はこんな感じで!)
% javac com\amazon\soap\axis\*.java
出来上がった com package をCLASSPATHへ通す。
4.Amazon Dev KitのJavaのサンプルコードをコンパイルする。
↓このフォルダーにJavaのサンプルコードがあるので作業ディレクトリを移動する。
[kit]\AmazonWebServices\JavaCodeSample
% javac *.java
コンパイルしてみる・・・っがエラーが沢山出る。
「補足」20031108にリリースされたバージョンは問題ない。
コンパイルエラーで出力されるサンプルコード内にあるメソッド [ setXXXXXX_Id ]のId を idへ全て変更して再コンパイルすれば上手くいくはず!
5.サンプルの起動
None Proxy環境であれば、
% java run
っで実行可能
Proxy環境の場合は AbstractXmlQuery.java の 100行近辺にある。
[ Original ]
socket = new Socket(hostPort[0], (hostPort.length > 1) ? Integer.parseInt(hostPort[1]) : 80);
[ Modify ]
socket = new Socket( [ ProxyServer] , [ProxyPort] );
簡単な修正ではあるが、これで動作するはず!!(認証が必要なProxyは解りません!)
6.アプリケーションを実行
※起動が成功すると、Javaのサンプルアプリケーションが表示される。
XMLタブとSOAPタブがあるが、XMLタブの[Keyword Search]を選択する。
殆どの箇所はデフォルトで入っているので、そこは修正せず下記のみ入力する。
Developer Token [ 1で取得したID ]
Keyword [ 検索したワード ]
Mode [ 商品のカテゴリ ]
私は、Keywordを [ google ]で、Modeを [ books-jp ]で試した。
成功するとアプリを起動したコンソールへレスポンスのXMLが表示され、サンプルアプリケーションのGUIへはTreeViewで結果が見れる。
○今回は、ここまで・・・Google APIsより機能が多いので色々と探ってみたい。