- コンテキストが作られる
- narwhalの(engine個別の/ここではrhinoの)bootstrap.jsが実行される
ここでNARWHAL_HOMEはWEB-INF/packages/narwhalと決め打ち
その中で(NARWHAL_HOMEの)narwhal.jsが実行され環境が作られる - jackのservletハンドラ(proessメソッド)がrequireされる
アプリは(serviceメソッドから呼ばれ)このハンドラ内で実際に実行される - アプリのWEB-INF/src/jackconfig.jsがrequireされる
(web.xmlの)appとenvironmentに合わせた変数がexportされる - 上記exportされた変数(environmentとapp)を使ってアプリが初期化される
月曜日, 3月 22, 2010
appenginejsのアプリ初期化過程
最初のリクエストが飛んできたときに、appenginejsに同梱されているJSGIServlet.javaで行われていることをまとめておきます。
月曜日, 3月 08, 2010
hotデプロイなGAE開発!
appenginejsでは、war\WEB-INF\jackconfig.jsの中でlocalとhostedという2つの稼働方法をexportしている。
そして、同ディレクトリにあるweb.xmlの中でenvironmentという名前で指定して利用するのだが、これをlocalにしておけば、ソース修正が(jettyの再起動を行わずとも)反映できるようになる。
なお、jackconfig.jsというファイル、何かの設定ファイルのようだけどなんのことはなく、このファイルが、jack経由でJettyで実行されているだけである(このファイルのexports.app)。
そして、同ディレクトリにあるweb.xmlの中でenvironmentという名前で指定して利用するのだが、これをlocalにしておけば、ソース修正が(jettyの再起動を行わずとも)反映できるようになる。
なお、jackconfig.jsというファイル、何かの設定ファイルのようだけどなんのことはなく、このファイルが、jack経由でJettyで実行されているだけである(このファイルのexports.app)。
日曜日, 3月 07, 2010
appenginejsでtimezone
blog-gaeでのtimezone設定のやり方が分からず、ずっと時間表示がUTCだった。
調べてみると起動するservletであるjack-servletを最新ソースではこの設定が可能になっていたので差し替え。
ソースを落としたら、D:\work\blog-gaeに展開して、
調べてみると起動するservletであるjack-servletを最新ソースではこの設定が可能になっていたので差し替え。
ソースを落としたら、D:\work\blog-gaeに展開して、
ant runserverとするだけで、開発用サーバが8080ポートで上がります。ちなみに、WEB-INF\packages\narwhal\lib\sandbox.jsの6行目にある以下を修正すれば、配置場所は変更可能です(Windowsのディレクトリ記述がうまくパースできないようなので、このファイルは無理に改造しています)。
var zzWork = 'd:\\work\\blog-gae\\war\\WEB-INF\\';
土曜日, 3月 06, 2010
登録:
投稿 (Atom)