2010年4月13日火曜日

marketplace用の #appengine javaアプリの雛形を作ってみました

最近Apps MarketplaceというプラットフォームがGoogleから公開されました。B|CtoB なアプリケーションを登録できるプラットフォームです。アプリケーションの登録・公開方法については@ITさんに記事がありますので、そちらを参考にして下さい。今はまだ開発ベンダ向けのGoogleによる課金のサービスが提供されていませんが、これが開始される時までにそれなりにMarketplace向けのアプリの構築に慣れておきたいものです。私の場合は、モチロン AppEngine を使うことにします。

注意が必要な点として、登録できるアプリケーションには2種類あるって事です。アプリケーションの登録時に「directly installed into Google Apps domains」という選択肢をオンにするかしないか、という違いです。これをオンにすると、GoogleApps使用中のグローバルナビゲーション部分に統合されるアプリケーションを作成することができます。

こうやって統合されている方がユーザとしては使い易いと思われるので、たくさんのユーザに使ってもらうためにもこのタイプのアプリケーションを構築できるようにしておきたいところです。このタイプのアプリとして登録するには OpenIDによるSSO が可能なアプリケーション、という条件があります。しかし、現在のGoogle App EngineのUserServiceでは特定のGoogleアカウントドメインに固定した認証しか対応出来ていません。でも大丈夫です、Marketplace公開日にはSSOアプリとしてのチュートリアルはPHPバージョンしか存在していなかったのですが、いつの間にかAppEngineJavaによるチュートリアルが追加されています。

このサンプルをjarにして依存し、slim3で構築し直した雛形を作成して公開してみました。ライセンスはNYSLで扱って下さい。

使い方

  1. 上記プロジェクトをsvn checkoutやgit svn cloneします。
  2. eclipseを使う方は、checkoutされたフォルダに移動して mvn eclipse:eclipse を実行します。
    • maven-eclipseを連携させるために、eclipse側でM2_REPO変数にmavenのローカルリポジトリを設定しておく必要があります
  3. war/WEB-INF/appengine-web.xml内のそれっぽい変数をそれっぽく編集します。marketplace-sampleって文字を検索すると良いです。
  4. 自分のアプリの本体を実装します
  5. Marketplace用のManifest.xmlのサンプルも一緒にコミットされているので、コメントを参考に適宜いじると良いです。ここでもmarketplace-sampleって箇所を弄りましょう。
  6. デプロイします
  7. marketplaceに登録します

すごい大雑把に書いてしまいましたが、なんとしても appengine で marketplace 向けにアプリを…!って人には手抜きできて良いと思います。また、雛形の中にはOpenIDによるセットアップに続いて実行できるOAuthでの承認も含めていますが、これは本来はOpenIDによる認証とOAuthによる承認を同時に行うべきですので、とりあえずはコメントアウトしています。動作はしますので、誰かHybridに実装し直してくれると大変嬉しいな、とか思ってます。

コメントを投稿