apache+playアプリの設定

apacheとplayアプリを連携させる手順について調べてみました。

(実施した環境)
OS: CentOS6.0
java 1.7.0_01
play 1.2.3

1. /etc/httpd/conf/httpd.confの編集

#ここから追加
ProxyRequests Off

Order deny,allow
Allow from all


ProxyPreserveHost On
ProxyPass / http://127.0.0.1:9000/
ProxyPassReverse / http://127.0.0.1:9000/

2. playアプリ起動!

play run helloworld

3. 管理者権限にて以下を実行する

/usr/sbin/setsebool httpd_can_network_connect 1

4. http://localhost/へアクセス
これで昨日(http://d.hatena.ne.jp/b_TAT_d/20120101)の記事内で作った
アプリへアクセスできました。

(参考)
Play documentation("Put your application in production")
http://www.playframework.org/documentation/1.2.3/production

Techie-Gyan("HTTP proxy problem – Permission denied")
http://www.techiegyan.com/2008/08/31/http-proxy-problem-permission-denied-proxy-http-attempt-to-connect-to-1270018080/

Playアプリの作成からeclipseでの実行まで

今年も一年よろしくお願いします。

今年は1日1記事を目標にしてがんばりたいと思っています。

今年1発目の記事はplayアプリの作成からeclipseでの実行までの
手順をまとめることにします。

(実施した環境)
OS:Windows Vista
java,playがインストール済み
(うちの環境はjavaが1.6.0_20、playが1.2.4です)


1.playコマンドにてアプリを作成します

cd d:\
cd d:\_hb\dev\playframework

d:\_hb\dev\playframework>play new helloworld

2.アプリに名前をつけます

~ _ _
~ _ __ | | __ _ _ _| |
~ | '_ \| |/ _' | || |_|
~ | __/|_|\____|\__ (_)
~ |_| |__/
~
~ play! 1.2.4, http://www.playframework.org
~
~ The new application will be created in d:\_hb\dev\playframework\helloworld
~ What is the application name? [helloworld]HelloWorld
~
~ OK, the application is created.
~ Start it with : play run helloworld
~ Have fun!
~

ステップ2までの状態ででアプリがひな形より作成され、
「helloworld」という名前のフォルダ内に保存されています。

3.eclipseプロジェクトとして開けるようにします

d:\_hb\dev\playframework>play eclipsify helloworld
~ _ _
~ _ __ | | __ _ _ _| |
~ | '_ \| |/ _' | || |_|
~ | __/|_|\____|\__ (_)
~ |_| |__/
~
~ play! 1.2.4, http://www.playframework.org
~
~ OK, the application is ready for eclipse
~ Use File/Import/General/Existing project to import d:\_hb\dev\playframework\helloworld into eclipse
~
~ Use eclipsify again when you want to update eclipse configuration files.
~ However, it's often better to delete and re-import the project into your workspace since eclipse keeps dirty caches...
~

d:\_hb\dev\playframework>

4.eclipseよりプロジェクトを開く
(「ファイル」→「インポート」→「既存プロジェクトをワークスペースへ」→ステップ2の「helloworld」フォルダをルートとして選択して完了)
下のキャプチャのように「パッケージエクスプローラ」に「HelloWorld」(ステップ2でつけたアプリの名前)が表示されていればOKです。

5.いよいよ実行!
パッケージエクスプローラより「eclipse」フォルダ内の「HelloWorld.launch」を右クリックします。
その後「実行」→「HelloWorld」のクリックでアプリが起動します。
「コンソール」ビューに下のキャプチャのようなメッセージが出てくれば実行できています。

最後にブラウザより確認します。
http://localhost:9000」へアクセス!
キャプチャのような表示であれば成功です。

GoogleAppEngine使い始め

GoogleAppEngineを使ってみようと思いやってみました。

[アプリケーション作成の準備]
1.SMSによるアカウントの認証
https://appengine.google.com/startを開き、「Create Application」をクリック
このとき初回だけ表示される「SMSによるアカウントの認証」画面にて
アカウント認証を行います。
私はソフトバンクを利用していて以下の設定で行いました。

「Country」→「Other(Not Listed)」
「Phone Number」→「+81xxxxxxxxxx」(先頭の0を除いた残りの番号09012345678の場合、+819012345678)


「Country」→「Japan」
「Carrier」→「Vodafone(i.softbank.jp)」
だとうまくいかなかったので少し調べて上記のやり方でやるとうまくいきました!

2.GoogleよりSMSで送られてくるGoogle App Engine Codeを次の画面で入力

次はアプリを作ってみて公開するまでを行ってみます。

Play Eclipse plug-inを使ってみる

ビュー(HTMLファイル)やapplication.conf、routesファイルの編集をサポートする
eclipseプラグインがPlay環境一式に同梱されているので使ってみようと思います。

ドキュメントにも記載されています。↓
http://www.playframework.org/documentation/1.2.3/ide

手順は3ステップで簡単です。

1.$PLAY_HOME/support/eclipseの下にある「jar」ファイルをコピー
(play1.2.4では「org.playframework.playclipse_0.7.0.jar」というファイルでした)
2.コピーしたjarファイルを$ECLIPSE_HOME/dropins下におく
3.eclipseの再起動!

以下のようにキーワード等が色付けされます。

また、メニューに新しい項目が追加されます。
(※「再生!」となっているのは誤訳でしょうか?)
例えばコントローラクラスのソースの「render」行上で「Go to View」を実行すると
適切なビューファイルを開いてくれます(なにげに便利!)

Play frameworkをインストール

play frameworkなるものを見つけてjavaでもRailsっぽく
アプリを開発できることを知って
学習を始めてみることにしました。

とりあえず自分の備忘録として
残していきますが
同じようにplayを学ぶ人の役に立てばいいなと思います。

まずはインストールでしょってことで
始めます。

前提として
・OSはWindows
javaはインストール済み
で進めます。

[ダウンロード]
http://www.playframework.org/download

へ行き、「play-1.2.1.zip」を
ダウンロードします。

[インストール]
そしたら好きなところに解凍すればOKです。
私は「D:\play-1.2.1」に解凍しました。

コマンドプロンプトからコマンドを叩いて
プロジェクト作成等を行うので
環境変数を設定してパスを通しておきましょう。

私は「PLAY_HOME」という名で
「D:\play-1.2.1」を登録しておきました。

[インストールの確認]
インストールできたことを確認するので
コマンドプロンプトを開いて
「play」を叩いてみましょう。
下のような感じになればOKです。

C:\Users\that-is-life>play
~ _ _
~ _ __ | | __ _ _ _| |
~ | '_ \| |/ _' | || |_|
~ | __/|_|\____|\__ (_)
~ |_| |__/
~
~ play! 1.2.1, http://www.playframework.org
~
~ Usage: play cmd [app_path] [--options]
~
~ with, new Create a new application
~ run Run the application in the current shell
~ help Show play help
~

とりあえず今日はここまで。