0

我正在尝试在 Google 应用引擎上运行 Scala/Scalate。我想测试该项目,所以我在本地运行 GAE,它已成功部署,当我尝试调用主 url 时出现以下异常

org.fusesource.scalate.TemplateException: 无法在 org.fusesource.scalate.TemplateEngine.compileAndLoadEntry(TemplateEngine.sc ala: 595) 在 org.fusesource.scalate.TemplateEngine.compileAndLoad(TemplateEngine.scala: 739) 在 org 创建临时文件.fusesource.scalate.TemplateEngine.liftedTree1$1(TemplateEngine.scala: 327) at org.fusesource.scalate.TemplateEngine.load(TemplateEngine.scala:321) at org.fusesource.scalate.TemplateEngine.load(TemplateEngine.scala:391)在 org.scalatra.scalate.ScalateSupport $class.renderErrorPage(ScalateSupport.scala:56) 在 MyScalatraFilter.renderErrorPage(MyScalatraFilter.scala:5) 在 org.scalatra.scalate.ScalateSupport $class.handleError(ScalateSupport.scala:51) 在MyScalatraFilter。handleError(MyScalatraFilter.scala:5) at org.scalatra.ScalatraKernel$$anonfun$handle$1$$anonfun$apply $mcV$sp$1$$anonfun$apply$mcV$sp$2.apply$mcV$sp(ScalatraKernel.scala : 140) at org.scalatra.ScalatraKernel$$anonfun$handle$1$$anonfun$apply $mcV$sp$1$$anonfun$apply$mcV$sp$2.apply(ScalatraKernel.scala:134) at org.scalatra.ScalatraKernel $$anonfun$handle$1$$anonfun$apply $mcV$sp$1$$anonfun$apply$mcV$sp$2.apply(ScalatraKernel.scala:134) at scala.util.DynamicVariable.withValue(DynamicVariable.scala: 71)在 org.scalatra.ScalatraKernel$$anonfun$handle$1$$anonfun$apply $mcV$sp$1.apply$mcV$sp(ScalatraKernel.scala:134) 在 org.scalatra.ScalatraKernel$$anonfun$handle$1$$anonfun $apply $mcV$sp$1.apply(ScalatraKernel.scala:134) 在 org.scalatra。ScalatraKernel$$anonfun$handle$1$$anonfun$apply $mcV$sp$1.apply(ScalatraKernel.scala:134) at scala.util.DynamicVariable.withValue(DynamicVariable.scala: 71) at org.scalatra.ScalatraKernel$$anonfun $handle$1.apply$mcV $sp(ScalatraKernel.scala:133) at org.scalatra.ScalatraKernel$$anonfun$handle $1.apply(ScalatraKernel.scala:133) at org.scalatra.ScalatraKernel$$anonfun$handle $1。 apply(ScalatraKernel.scala:133) at scala.util.DynamicVariable.withValue(DynamicVariable.scala: 71) at org.scalatra.ScalatraKernel $class.handle(ScalatraKernel.scala:132) at MyScalatraFilter.handle(MyScalatraFilter.scala:5 ) 在 org.scalatra 的 org.scalatra.ScalatraFilter$$anonfun$doFilter$1.apply$mcV $sp(ScalatraFilter.scala:18)。ScalatraFilter$$anonfun$doFilter $1.apply(ScalatraFilter.scala:18) at org.scalatra.ScalatraFilter$$anonfun$doFilter $1.apply(ScalatraFilter.scala:18) at scala.util.DynamicVariable.withValue(DynamicVariable.scala: 71) at org.scalatra.ScalatraFilter $class.doFilter(ScalatraFilter.scala:17) at MyScalatraFilter.doFilter(MyScalatraFilter.scala:5) at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1157 ) 在 com.google.appengine.tools.development.HeaderVerificationFilter.doFilter(He aderVerificationFilter.java: 35) 在 org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1157) 在 com.google.appengine .api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter.java:58) 在 org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1157) 在 com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(Trans actionCleanupFilter.java: 43) 在 org.mortbay。 jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1157) at com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFile Filter.java: 122) at org.mortbay.jetty.servlet.ServletHandler $CachedChain .doFilter(ServletHandler.java:1157) 在 com.google.appengine.tools.development.BackendServersFilter.doFilter(Backen dServersFilter.java: 97) 在 org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java: 1157) 在 org.mortbay.jetty.servlet.ServletHandler。org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java: 216) 的句柄(ServletHandler.java: 388) org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java: 182) 的 org.mortbay .jetty.handler.ContextHandler.handle(ContextHandler.java: 765) at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418) at com.google.apphosting.utils.jetty.DevAppEngineWebAppContext.handle(DevAppEn gineWebAppContext.java: 70) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java: 152) at com.google.appengine.tools.development.JettyContainerService $ApiProxyHandler.handle(JettyContainerService.java:351) at org .mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) 在 org.mortbay.jetty.Server.handle(Server.java:326) 在 org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java: 542) 在 org.mortbay.jetty.HttpConnection $RequestHandler.headerComplete(HttpConnection .java:923) 在 org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:547)

    at

org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java: 212) 在 org.mortbay.jetty.HttpConnection.handle(HttpConnection.java: 404) 在 org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java: 409) 在 org.mortbay.thread.QueuedThreadPool $PoolThread.run(QueuedThreadPool.java:582) 原因:java.lang.SecurityException: 无法在 java.io.File.checkAndCreate(File.java:1701) 创建临时文件在 java.io.File.createTempFile(File.java:1792) 在 java.io.File.createTempFile(File.java:1828) 在 org.fusesource.scalate.TemplateEngine.workingDirectory(TemplateEngine.scala : 200) 在 org. fusesource.scalate.TemplateEngine.sourceDirectory(TemplateEngine.scala: 156) 在 org.fusesource.scalate.TemplateEngine。sourceFileName(TemplateEngine.scala: 612) at org.fusesource.scalate.TemplateEngine.compileAndLoad(TemplateEngine.scala: 650) ... 56 更多 2011 年 8 月 19 日下午 3:45:16 com.google.appengine.tools.development。 LocalResourceFileServlet doGet 警告:找不到文件:/favicon.ico

有人帮我解决这个问题吗?

4

2 回答 2

0

GAE 有一些多线程限制,scalate 用户指南有关于 GAE 的注释,带有指向示例项目的链接,指向指南的链接

于 2011-08-22T11:23:17.837 回答
0

更具体地说,您需要按照文档指定的方式预编译模板。

于 2011-08-29T17:39:27.623 回答