Google App Engine + Scala2.8.0 + Lift 2, все в порядке, но не работает, почему? - PullRequest
0 голосов
/ 06 сентября 2010

Я строю проект лифта с помощью этой команды:

mvn archetype:generate -U \
  -DarchetypeGroupId=net.liftweb \
  -DarchetypeArtifactId=lift-archetype-basic \
  -DarchetypeVersion=2.0-scala280-SNAPSHOT \
  -DarchetypeRepository=http://scala-tools.org/repo-snapshots \
  -DremoteRepositories=http://scala-tools.org/repo-releases \
  -DgroupId=demo.helloworld \
  -DartifactId=helloworld \
  -Dversion=1.0-SNAPSHOT

Когда я запускаю `mvn jetty: run, это работает.Затем я создаю этот файл конфигурации (helloworld / src / main / webapp / WEB-INF / appengine-web.xml):

<?xml version="1.0" encoding="utf-8"?>
  <appengine-web-app xmlns="http://appengine.google.com/ns/1.0">
  <application>MY_APPLICATION-ID</application>
  <version>3</version>
  <system-properties>
    <property name="in.gae.j" value="true" />
  </system-properties>
  <sessions-enabled>true</sessions-enabled>
  <static-files>
    <exclude path="/**" />
  </static-files>
</appengine-web-app>

Затем я запускаю эту команду: mvn package Когда я запускаю dev_appserver.sh helloworld/target/helloworld-1.0-SNAPSHOTэто работает в моем браузере.Затем я загружаю на сервер Google App Engine с: appcfg.sh update helloworld/target/helloworld-1.0-SNAPSHOT и получаю: Update completed successfully. Success..Но когда я перехожу на http://MY_APPLICATION -ID.appspot.com / , я получаю 500 ошибок сервера:

Ошибка: ошибка сервера Сервер обнаружил ошибку и не смог завершитьВаш запрос.

Если проблема сохраняется, сообщите о своей проблеме и укажите это сообщение об ошибке и запрос, вызвавший ее.

Почему?

Ответы [ 3 ]

2 голосов
/ 06 сентября 2010

Какую версию Lift вы используете?Google App Engine не запускает все байт-код, насколько я понимаю. В этой статье указано, что успешный порт приложения scala для движка приложения содержит несколько заостренных предложений:

Дэвид Поллак подтвердил, что большая часть платформы Lift работает на App Engine

и

В целом, похоже, что компилятор scalac создает файлы, которые настолько близки к Java, что App Engine просто не замечает и не заботится

Теперь эта статья написана в середине 2009 года, поэтому я думаю, что если вы используете последний Lift и scala 2.8, могут возникнуть проблемы.Я бы попробовал спросить на форумах Lift , которые очень полезны.

2 голосов
/ 11 сентября 2010

Я рекомендую прочитать эту тему: Lift 2.0, Scala 2.8 и AppEngine

2 голосов
/ 06 сентября 2010

Войдите в систему https://appengine.google.com/ и проверьте журналы вашего приложения.

На вкладке Main> Logs вы можете увидеть запросы, которые вызвали ошибку, а также трассировку стека. Это может быть полезно, чтобы выяснить, в чем проблема.

...