AmazonのProduct Advertising APIのサンプルコードが動作しない件
専門学校の授業でAmazonのProduct Advertising APIを使ってWebアプリを作ろうって実習をやってるんだけど、Amazonに掲載されてるサンプルコードが動かなくて困った。
件のサンプルコードはこちらからダウンロードできる。
このページには「動かんやんけー!」ってコメントがどっさり投稿されてるし、中には修正方法まで書いてくれている人もいる。でも、書かれてる修正方法を試しても残念ながら動作しない。
ダウンロードした2つのクラスファイルをEclipseにインポートして実行させるとエラーがでる。そこで、Eclipseのコンソールに表示されるURLをクリックすると、サインが間違ってるというXMLが開く。
ここが落とし穴。サインは間違ってない。
コンソールに出力するURLの後に、サンプルコードがダブルコーテーションを付加してるんだけど、これをEclipseがURLの一部だと勘違いして、ダブルコーテーションを含んだURLを開こうとする。結果、サインが違うとAmazonから怒られる。
URLの末尾のダブルコーテーションを削除してリクエストすれば、サインは間違ってなくて、Amazonから別のエラーが返される。そのエラーメッセージは、「リクエストパラメータにAssociateTagが足りないよ」って言ってる。サンプルコードにリクエストパラメータを追加すれば、きちんと動作する。
専門学校だと、はてなダイアリーなどのブログはブロックされていて参照できないので、詳しい説明は satoshi's Java のサイトにまとめておいた。
≫http://java.satoshis.com/index.php/java/7-webservices/15-amazon-api.html
次回の授業では、ここ↑を見てもらって動作確認してもらおう。
というか、satoshi's Java のコンテンツをもっと充実させないと、寂しすぎる。。。