加载jsp页面报#{} is not allowed in template text

问题是在引进jQueryUI时遇到

解决方法:

在page指令添加:             deferredSyntaxAllowedAsLiteral="true"

 例如:<%@ page contentType="text/html; charset=UTF-8" session="false"  deferredSyntaxAllowedAsLiteral="true"%>

注意:一定要在对应的jsp文件上添加,而不是其他文件,我就在引进该jsp的源文件上添加一直没效果

该属性指示在JSP页面的模板文本中是否允许出现字符序列#{。如果该属性的值为false(默认值),当模板文本中出现字符序列#{时,将引发页面转换错误。

注意,该属性是在JSP 2.1规范中引入的,JSP 2.1规范对JSP 2.0和Java Server Faces 1.1中的表达式语言进行了统一。在JSP 2.1中,字符序列#{被保留给表达式语言使用,你不能在模板本中使用字符序列#{。如果JSP页面运行在JSP 2.1之前版本的容器中,则没有这个限制。对于JSP 2.1的容器,如果在模板文本中需要出现字符序列#{,那么可以将该属性设置为true。

原文地址:https://www.cnblogs.com/gaoguofeng/p/5836653.html