アーカイブ

‘eclipse’ カテゴリーのアーカイブ

eclipse の Google App Engine プロジェクトを実行した時リモートから見たい

2011 年 3 月 3 日 Comments off

良く忘れるので、メモ。

  1. eclipseを起動
  2. プロジェクトを右クリック
  3. [実行(R)] – [実行の構成(N)] をクリック
  4. 実行構成の左ペインより[Web アプリケーション] – [プロジェクト名]をクリック
  5. [(x)=引数]タブをクリック
  6. - [プログラムの引数]に[--address=0.0.0.0 ]を追記する
    • BEFORE
      –port=8888 C:\path\to\workspace\yourproject\war
    • AFTER
      –port=8888 –address=0.0.0.0 C:\path\to\\workspace\yourproject\war
カテゴリー: eclipse, Google App Engine, java, slim3 タグ:

slim3のバージョンアップをする (1.0.7から1.0.8に更新)

2011 年 3 月 2 日 Comments off

この手順は私が行ったことの記録として書いたものですので、誤りを含んでいる可能性があります。

実際の手順は、Slim3 日本語サイト(非公式)などを良く確認して行ってください。

ダウンロード

slim3プロジェクト から、slim3の最新版( 2011年3月2日現在 slim3-blank-1.0.8.zip ) をダウンロードして解凍する。

 
 


jarファイルを置換

slim3を置換
下記のファイルをを削除し

	yourproject/war/WEB-INF/lib/slim3-1.0.7.jar

解凍したslim3のものをプロジェクト内のディレクトリにペーストする

	yourproject/war/WEB-INF/lib/slim3-1.0.8.jar

 
 

slim3-genを置換
下記のファイルをを削除し

	yourproject/lib/slim3-gen-1.0.7.jar

解凍したslim3のものをプロジェクト内のディレクトリにペーストする

	yourproject/lib/slim3-gen-1.0.8.jar

 
 

slim3-*-sourceを置換
下記のファイルをを削除し

	yourproject/libsrc/slim3-1.0.7-sources.jar
	yourproject/libsrc/slim3-gen-1.0.7-sources.jar

解凍したslim3のものをプロジェクト内のディレクトリにペーストする

	yourproject/libsrc/slim3-1.0.8-sources.jar
	yourproject/libsrc/slim3-gen-1.0.8-sources.jar

 
 


ビルドパスの変更

eclipseを起動し、yourprojectプロジェクトを右クリック – [ビルド・パス(B)] – [ビルド・パスの構成(C)]をクリック

プロジェクトのプロパティー [Java のビルド・パス]が開くので、[ライブラリー(L)]タブを選択

下記を選択し[除去(R)]をクリック

	war/WEB-INF/lib/slim3-1.0.7.jar

左ペインの yourprojectプロジェクト の下記を右クリック

	war/WEB-INF/lib/slim3-1.0.8.jar

[ビルド・パス(B)] – [ビルド・パスに追加(A)]をクリック

 
 


アノテーション処理のファクトリパスを変更

パッケージ・エクスプローラにてyourprojectプロジェクトを選択する

[プロジェクト(P)] – [プロパティー(P)]をクリックする

[Javaコンパイラー] – [注釈処理] – [ファクトリーパス]をクリックする

[JAR の追加(J)]をクリックする

[JARの選択]ダイアログにて、[yourproject] – [lib] – [slim3-gen-1.0.8.jar]を選択し、[適用(A)]をクリックする

[OK]をクリックする

カテゴリー: eclipse, Google App Engine, java, slim3 タグ:

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

2009 年 10 月 31 日 Comments off

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をきちんと設定すれば、日本語もちゃんと使えます。

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

Google App Engine SDK for java でデプロイ

2009 年 10 月 28 日 Comments off

前回インストールした、Google App Engine SDK for javaを使って、コマンドラインでデプロイしてみる。

参考サイトの例に応用をきかせて、今回は SDKとは別ディレクトリに存在する Eclipseのワークスペース上のWARディレクトリを、デプロイします。

※開発機はWindows XPです。

cd %GAE_HOME%

bin\appcfg.cmd update “c:\Documents and Settings\myname\workspace\myapp\war” –sdk_root=”c:\Documents and Settings\myname\workspace\myapp”

Email: と聞かれるので、GAEアカウントのメールアドレスを入力。

Password for xxxx@gmail.com: と聞かれるので、GAEアカウントのパスワードを入力。

・・・う~ん、ちょっとめんどくさい。
このへんは最終的には Antタスクでやるつもり。

バッチ化して開発者(WEBデザイナ含む)に配布出来ないかな、と思ってはみたものの、やはり使いやすさ・説明のし易さ共にeclipseに軍配があがりますね。

参考サイト

アプリケーションのアップロード – Google Code

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

GAE/J で WARNING Can not serve hoge.html directly. You need to include it in <static-files> in your appengine-web.xml

2009 年 10 月 25 日 Comments off

Google App Engine for Java (GAE/J) で、静的ファイル ( html、css、js ) を扱おうとして、

WARNING: Can not serve /hoge/hoge.nocache.js directly. You need to include it in in your appengine-web.xml.

てな感じで怒られる。

appengine-web.xml の書き方が間違っているらしい。


<static-files>
	<include path="/**.html" />
	<include path="/**.css" />
	<include path="/**.js" />
</static-files>

こう書いてたけど、これではルート直下のんしか駄目らしい。

ルート以下の任意のサブディレクトリの下にも適用するには、


<static-files>
	<include path="**.html" />
	<include path="**.css" />
	<include path="**.js" />
</static-files>

こっちが正解らしい。

カテゴリー: eclipse, Google App Engine, java タグ: