GAE で Scala Lift を動かす

Google App Engine (GAE) 1.6.3 で Scala + Lift を動かしてみます。とりあえず作業の前提として:

Scala ライブラリの追加

Scala 公式サイトから最新版 (例として 2.9.1) のアーカイブを落とし、内包されている scala-2.9.1.final/lib/*.jar を WEB-INF/lib にコピーします。ランタイムに必要な作業はこれだけ。ビルドを行う開発端末は各 JAR ファイルにクラスパスを通して下さい。

Scala でテスト用のサーブレットを作成します。

package org.koiroha.aaa.server
import javax.servlet.http._
class TestServlet extends HttpServlet {
  override def doGet(request:HttpServletRequest, response:HttpServletResponse){
    response.setContentType("text/plain; charset=UTF-8")
    response.getWriter().println("hello, world")
  }
}

テスト用のサーブレットを web.xml で URL とマッピング

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
  http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
  version="2.5"
  xmlns="http://java.sun.com/xml/ns/javaee">
  <servlet>
    <servlet-name>TestServlet</servlet-name>
    <servlet-class>org.koiroha.aaa.server.TestServlet</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>TestServlet</servlet-name>
    <url-pattern>/test/greeting</url-pattern>
  </servlet-mapping>
</web-app>

ローカルで動作確認を行ったあと GAE にデプロイして動作すれば Scala の導入は完了です。

Lift の準備