1

我有一个在本地开发 appengine 上运行良好的小应用程序,但 appengine 本身并没有处理我的 .jspx 文件。

jspx 文件位于 WEB-INF 中,因此不应被 appengine 排除(作为静态资源)

我正在使用 Apache Tiles 来定义我的视图。

所以生成的html是这样的:

<html 
    xmlns:jsp="http://java.sun.com/JSP/Page"
    xmlns:c="http://java.sun.com/jsp/jstl/core"
    xmlns:tiles="http://tiles.apache.org/tags-tiles"
    >  
    <jsp:output omit-xml-declaration="yes"/>
    <jsp:directive.page contentType="text/html;charset=UTF-8" />  
    <jsp:directive.page isELIgnored="false"/>

(等等等等)

我怎么解决这个问题?

4

2 回答 2

2

我进行了一次探索,并找到了我自己问题的答案...

Appengine 在部署时预编译所有 JSP。

如果在 webapp 中找不到 .jsp 文件,Appengine 的当前版本 (1.3.4) 不允许 Jasper 编译器启动。但是,如果您将 dummy.jsp 文件添加到 web 应用程序,Jasper 编译器将实际启动,它会选择 .jspx 文件。

显然,这是 Google 的 appengine 团队的一个已知问题。

感谢Stefan Schmidt @ Springsource,他从 Google 的 Appengine 团队获得了内幕消息 :)

于 2010-06-15T12:46:11.560 回答
1

请参阅http://groups.google.com/group/google-appengine-java/browse_thread/thread/367cc9d6c9815535?pli=1

于 2010-06-13T21:35:38.190 回答