在我的GAE项目中使用SiteMesh时遇到了两个问题,现将解决方法整理如下:
一、 NoClassDefFoundError异常
在GAE中直接使用SiteMesh会抛如下异常:
Error for /
java.lang.NoClassDefFoundError: javax.naming.InitialContext is a restricted class. Please see the Google App Engine developer's guide for more details.
at com.google.apphosting.runtime.security.shared.stub.javax.naming.InitialContext.<clinit>(InitialContext.java)
at com.opensymphony.module.sitemesh.Factory.getEnvEntry(Factory.java:91)
……
针对这个问题,我在网上找到了三个办法:
1、 修改com.opensymphony.module.sitemesh.Factory. getEnvEntry()方法,将catch(Exception e)改成catch(Trowable e)即可。
2、 同样修改上面的方法,直接返回缺省值
3、 下载最新的2.4.2版本,地址是:https://sitemesh.dev.java.net/servlets/ProjectDocumentList?folderID=11231&expandFolder=11231&folderID=11231
建议选择第一种或第三种方法解决。
二、 Excludes无效
在decorators.xml配置的excludes标签无效,里面的页面仍然被装饰了。在网上搜到一个小技巧解决之,如下:
<decorator name="none">
<pattern>/excludes/*</pattern>
<pattern>/excludes.jsp</pattern>
</decorator>
分享到:
相关推荐
GAE使用规则GAE使用规则GAE使用规则GAE使用规则GAE使用规则GAE使用规则GAE使用规则GAE使用规则GAE使用规则
博文链接:https://pickerel.iteye.com/blog/181969
jiql - (允许你的应用在GAE上使用SQL语句) jiql是在JAVA GAE上访问Google Datastore的JDBC wrapper jiql支持标准的sql语言进行访问原版的官方主页 www.jiql.org 由于原版源代码存在一些问题,所以对改版本做了...
Eclipse开发 Gae,Struts2,Spring,云计算,学习gae云计算的好例子
NULL 博文链接:https://obullxl.iteye.com/blog/777727
图自编码器GAE的pytorch实现,参考论文vgae
pass之GAE入门教程, 学习GAE
GAE平台开发应用时,简单的webapp框架的使用
《GAE编程指南》是介绍使用这个强大平台的专家级实践指南。高级工程师Dan sanderson将向你讲述如何设计高可伸缩性应用程序的方法,以及如何使用App Engine的API和可伸缩的服务来实现常见的开发任务。你将会学到有关...
GAE(Google App Engine)空间 GAE(Google App Engine)空间申请使用教程及 GAE域名捆绑方法使用教程及 GAE域 GAE(Google App Engine)空间申请使用教程及 GAE域名捆绑方法捆绑方法
图形自动编码器GAE的pytorch实现,可参考论文VGAE
可以在GAE上直接使用,支持图片上传等。 源代码是修改其他网友的普通blog程序而来,只做了必要的修改,原结构保留 最新版本请去主页下载 http://redpower1998.appspot.com 主页包括原始的普通版本
云计算下的PaaS中的GAE和SAE平台
架设在GAE上的GTalk翻译机器人 **目前已经存在的功能: 1. (0.1版开始支持) 可以直接识别中文和英文,并自动进行互译 1. (0.1版开始支持) 可以翻译一段文章,而不单单只是一个单词** **以后可能会有的功能: 1. (0.2...
《GAE编程指南》是介绍使用这个强大平台的专家级实践指南。高级工程师Dan sanderson将向你讲述如何设计高可伸缩性应用程序的方法,以及如何使用App Engine的API和可伸缩的服务来实现常见的开发任务。你将会学到有关...
博文链接:https://pickerel.iteye.com/blog/181964