Как запустить лифт во встроенной пристани? - PullRequest
8 голосов
/ 25 декабря 2011

У меня есть сервер, который будет обслуживать некоторый веб-контент в рамках своих обязанностей.Он работал с использованием встроенного Jetty, и я хочу добавить к нему красоту Lift (шаблоны, актеры и т. Д.).

Проблема в том, что все примеры лифтов используют Jetty в качестве контейнера.Есть ли способ запустить лифт в моей встроенной пристани?И если да, то как?

1 Ответ

5 голосов
/ 25 декабря 2011

Нашел ответ: RunWebApp.scala

import _root_.org.mortbay.jetty.Connector
import _root_.org.mortbay.jetty.Server
import _root_.org.mortbay.jetty.webapp.WebAppContext
import org.mortbay.jetty.nio._

object RunWebApp extends Application {
  val server = new Server
  val scc = new SelectChannelConnector
  scc.setPort(8080)
  server.setConnectors(Array(scc))

  val context = new WebAppContext()
  context.setServer(server)
  context.setContextPath("/")
  context.setWar("src/main/webapp")

  server.addHandler(context)

  try {
    println(">>> STARTING EMBEDDED JETTY SERVER, PRESS ANY KEY TO STOP")
    server.start()
    while (System.in.available() == 0) {
      Thread.sleep(5000)
    }
    server.stop()
    server.join()
  } catch {
    case exc : Exception => {
      exc.printStackTrace()
      System.exit(100)
    }
  }
}

Моя единственная проблема сейчас состоит в том, чтобы построить это с помощью Lift 2.4, Scala 2.9.1 и Eclipse Jetty - в настоящее время я могу найти толькоартефакты для Lift 2.3, Scala 2.8.1 и Mortbay Jetty.

...