アーカイブ

‘クラウド’ カテゴリーのアーカイブ

Force.com Free Editionのアカウント作成

2009 年 12 月 16 日 tdtsh コメントはありません

@ITの連載にのっかって、Force.comをいじってみようと思います。
まずはアカウント作成。
無料で利用できるのは、「Free Edition」と「Developer Edition」の2つ。
CRM/SFAとの連携の有無、作れるアプリケーション上限など、Free Editionの方が少ない代わりに100ユーザまでいける。
入門編ということで Free Edition で良いのではないかと。

Force.comのアカウントを作成 (Free Edition)

 

以上です。
拍子抜けする位に簡単です。

ログインすると、ホームとチュートリアルの2つのタブしか無い。詳細なメニューは > タブの奥に隠れてる。
いいですね。次に何をすれば良いか迷わないです。
全ての会員制Webサービスは見習うべきですね。

カテゴリー: force.com, クラウド タグ:

Google App Engine / Java (GAE/J) で独自ドメイン (Google Apps側だけで設定)

2009 年 11 月 27 日 tdtsh コメントはありません

Google App Engine/Java (以下 GAE/J) にデプロイしたアプリケーションは、appspot.comドメインで、下記の様に公開されます。

http://アプリケーションID.appspot.com/

企業ユースの場合は特に、独自ドメインで公開したいのが普通ですね。

GAE/Jを独自ドメインで利用したい場合、Google Apps を申し込めば良いようです。
早速挑戦してみました。

Google Apps を申し込む

まずは、Google Apps を使用できる様にします。
独自ドメインを持っていてDNSサーバの管理権限があれば、Standard Edition で無料でできます。

  • Google Appsをブラウズします。
  • 機能比較とお申し込みをクリックします。
  • Standard Editionの[申し込み]をクリックします。
  • [Google Apps にお申し込みいただくには、お客様の組織のドメイン名を入力してください]にて、以下の様に入力し、[次へ]をクリックします。

    • ●管理者: このドメインを所有または管理しています
    • ドメイン名を入力 : my.domain.xxx
  • [Google Apps Standard Edition への申し込み (手順 2/3)]にて、必要事項を入力し、[次へ進む]をクリックします。(xxxxは伏字)

    • 名 : 権兵衛
    • 姓 : 名無
    • メール アドレス : xxxxxxxxx@gmail.com <- 取り合えず、GAE/Jでも使用しているGoogle Accountを使用しました
    • 電話番号 : xxxx-xxx-xxxx
    • 国/地域 : 日本
    • 役職 : システム管理者
    • Google Apps では、サービスを正しく設定するため DNS を変更する必要があります。
      ■ドメインの DNS レコードを変更できない場合、組織で使用できる Google Apps の機能に影響する場合があることを理解します。
    • 組織名 : xxxxxx株式会社
    • タイプ : 適宜選択
    • 組織の規模 : 適宜選択
    • 組織内で現在メール アカウントを提供していますか
      ●はい
    • 提供している場合、メールサーバー ソフトは何をお使いですか。 (例: Microsoft Exchange)

      外部ASP
    • Google Apps へのお申し込みに関して Google のセールス チームのサポートはありましたか。

      ●いいえ
  • [設定 - 最初の管理者アカウントを作成 (手順 3/3)]にて、必要事項を入力し、[同意して、設定を続行]をクリックします。

    • ユーザー名 : gae@my.domain.xxx
    • パスワード : 適宜入力

    • パスワードの再入力 : 適宜入力

Google Apps のダッシュボードが表示されれば、完了です。


ドメイン所有権を確認

  • Google Apps のダッシュボードをブラウズします。
  • [ドメインの所有権を確認]をクリックします。
  • [ドメインの所有権を確認] で、今回は [HTMLファイルをアップロード]を選択しました。

    ※(ネイキッド ドメイン (my.domain.xxx)へのAレコードが適宜登録されている必要があります)

Google App Engine 側での設定

参考サイト

CB NANASHI管理人ブログ : GAE/J、アプリを独自ドメインで使う
Google App Engine – Google Apps ヘルプ

の通り、GAE/Jのダッシュボードから、Version をクリックしたんですけど、[Domain Setup (ドメイン設定)] も [Add Domain (ドメインを追加)] も出現しません。
GAE/J と Google Apps Googleアカウント が違うアカウントである事と関係するのかもしれません。
なので、この方法は取れません。


Google Apps側でGoogle App Engine の割り当て

色々やっているウチに、Google Apps側だけで、設定が完結できました。

  • Google Apps のダッシュボードをブラウズします。
  • [ドメインの設定]をクリックします。
  • [コントロールパネル]で以下を選択し、[変更を保存]をクリックします。
    ●拡張版 (アメリカ英語のみ)
  • Google Apps のダッシュボードをブラウズします。
  • [add more services]をクリックします。
  • [Other services] の [Google App Engine] に、App IDを入力し、[Add it now]をクリックします。
  • [You have requested that the 'App ID' service be added to your domain]にて、[Activate this service]をクリックします。
  • [App ID settings]が表示されるので、- [Web address]の[Add new URL]をクリックします。
  • なにか適当※に入力し、[Add]をクリックします。 ※たとえば www (http://www.my.domain.xxx/)など
  • [Changing CNAME record]が表示されるので、指示に従い、DNSサーバにCNAMEを登録します。
    www.my.domain.xxx IN CNAME ghs.google.com

しばらくすると、http://www.my.domain.xxx/ で、GAE/J のアプリケーションが表示出来る様になります。

カテゴリー: Google App Engine, クラウド タグ:

GAE/J (Google App Engine for Java) で Apache Velocityを動かす

2009 年 10 月 31 日 tdtsh コメントはありません

GAE/J で Apache Velocity は動く

わたしにとってGAE/Jをガンガン使えるか否かは、Apache Velocityが動くかどうかに強く依存しています。
他のテンプレートエンジンを触ったことないし、JSPは絶対イヤだからです。

Will it play in App Engine – Google App Engine for Java | Google GroupsにはVelocityのことは書かれていてない(2009年10月30日現在)。

結論から言うとGAE/JでVelocityは動きます。すでに動かしちゃってる先人の方もいらっしゃる様です。
ちょっと安心です。

GAEにデプロイしたサンプルはこちら
http://tdtsh-blog.appspot.com/velocity/top.vm


インストール手順

今個人的に使っているのは、velocity-1.4 と velocity-tools-1.1 なんですが、この際だから最新にしちゃいます。
Downloads – Apache Velocity Siteから、

velocity-1.6.2.zip
velocity-tools-1.4.zip

をダウンロードします。

ダウンロードした2つのzipをローカルのどっかに解凍します。

解凍したディレクトリから、jarファイルを、eclipseのプロジェクトのwar/WEB-INF/lib/にコピーします。

velocity-1.6.2\velocity-1.6.2.jar
velocity-tools-1.4\lib\velocity-tools-1.4.jar

ここまでで実行すると、依存性が解決できずに (org.apache.commons達) Exceptionはきまくりでした。
細かい依存性の管理については後回しにして、velocity-tools-1.4\lib\ の下の、commons-* を片っ端からeclipseのプロジェクトのwar/WEB-INF/lib/にコピーしました。

こいつらです。
commons-beanutils-1.7.0.jar
commons-chain-1.1.jar
commons-collections-3.2.jar
commons-digester-1.8.jar
commons-lang-2.2.jar
commons-logging-1.1.jar
commons-validator-1.3.1.jar

最終的に、依存性は maven で管理したいなぁ、と思います。


動かしてみる

先ずは、クラス my.package.VelocityServlet として、org.apache.velocity.tools.view.servlet.VelocityViewServlet を拡張してクラスを作ります。とりあえずは何も実装しなくていいです。

war/WEB-INF/web.xmlを修正して、こんな感じにしました。

<servlet>
	<servlet-name>velocity</servlet-name>
	<servlet-class>
		my.package.VelocityServlet
	</servlet-class>
</servlet>

<servlet-mapping>
	<servlet-name>velocity</servlet-name>
	<url-pattern>/velocity/*</url-pattern>
</servlet-mapping>

<servlet-mapping>
	<servlet-name>velocity</servlet-name>
	<url-pattern>*.vm</url-pattern>
</servlet-mapping>

それから、VMファイルはサーブレットからアクセス出来る必要があるので、war/WEB-INF/appengine-web.xmlを修正して、リソースファイルとして設定しておきます。今回はこんな感じにしました。

<resource-files>
	<include path="/velocity/*" />
</resource-files>

war/velocityディレクトリを作成し、その中に test.vm ファイルを作成します。
中身はなんでもいいんですが、簡単にテストする方法としては、VTLでのコメントを書けばいいです。

<html>
<body>
	<h1>Test VelocityServlet</h1>
	## if you see this message, VelocityViewServlet might not work.
</body>
</html>

http://localhost:8080/velocity/test.vm にアクセスします。

404エラーや500エラーなら、何かの設定が間違っています。
if you see… が表示されたなら、静的ファイルとして読まれているかもしれません。
(VelocityViewServletがリクエストを正しく処理していれば、if you see… の部分は見えません)

今回は、VM_global_library.vm とか velocity.properties のことには触れていないけど、リソースファイルとして配備すればもちろん使えます。encodingをきちんと設定すれば、日本語もちゃんと使えます。

カテゴリー: Google App Engine, eclipse, java, クラウド タグ:

GAE (Google App Engine) SDK for Javaで ログの取得

2009 年 10 月 30 日 tdtsh コメントはありません

Google App Engineのログは、WEB上( appengine.google.com のLogs )で見る事も出来るけど、デバッグにはイマイチ使いにくいですね。
GAE SDK for Java を使えば、ログをダウンロード出来ます。

インストール手順はこちらを参照。(Windows XPです)

cd %GAE_HOME%

bin\appcfg.cmd –severity=0 request_logs “c:\Documents and Settings\myname\workspace\myapp\war” .\request.log

severityでログレベルを指定する
4 は「CRITICAL(致命的)」
3 は「ERROR(エラー)」
2 は「WARNING(警告)」
1 は「INFO(情報)」(デフォルト)
0 は「DEBUG(デバッグ)」

サーバにSSHでログインして、ログファイルを tail -f しちゃうのがデフォルトになっちゃっているので、やっぱり不便だなぁ。

参考サイト

Java アプリケーションのアップロードと管理 – Google Code

カテゴリー: Google App Engine, java, クラウド タグ:

GAE SDK for Java で update 時にcannot find javac executable based on java.home

2009 年 10 月 29 日 tdtsh コメントはありません

※開発機はWindows XPです。

Google App Engine SDK for javaを使って、コマンドラインでデプロイしようと

bin\appcfg.cmd update .\war

すると、javac.exeが見つからないと怒られた。

java.lang.IllegalStateException: cannot find javac executable based on java.home, tried “C:\Program Files\Java\jre6\bin\ javac.exe” and “C:\Program Files\Java\bin\javac.exe”

これに対する対処法は、Google App Engine SDK for java のインストールディレクトリにある、bin/appcfg.cmdを編集し、

	@java -cp .....

	@"%JAVA_HOME%\bin\java" -cp ...

に書き換えれば良い。

“でくくっているのは、JDKのインストール先にスペースが含まれる( c:\Program Files )から。

参考サイト

Issue 1226: appcfg cannot find javac – Project Hosting on Google Code

カテゴリー: Google App Engine, java, クラウド タグ: