“新的”JSP 2.0标记文件标记非常有用,对于大多数情况(至少我已经看到),它们提供了比Java类更易读的格式。然而,虽然标记文件可以几乎 Java类标记可以做的所有事情,但是有一件巨大的事情是他们做不到的:拥有“脚本”身体内容(即“<%”之间的东西开始和结束标签)。
所以,我的问题是多部分的:
基本上我的梦想是有一天会写一些标签文件,如果有人提出
,这些文件不会导致异常 <%= myVar %>
答案 0 :(得分:3)
JSP标记是以这种方式设计的,因此表示层和后面的代码之间将完全分离关注点。 JSP页面应该由设计者编辑,因此使用Java代码是不合适的。
我想你需要在这个哲学中调整你的编码习惯。您可以将所有Java代码移动到bean中。做任何需要的东西,然后将适当的bean传递给JSP页面。异常处理也应该去那里。如果这还不够,您可以随时创建自己的标签。
答案 1 :(得分:2)
如果您使用旧样式标签,即可以从BodyTag派生,它们可以。但是,SimpleTag实现不能。
因为JSP片段不支持scriptlet,所以 SimpleTag 不能是“JSP”
就个人而言,如果可以,我会尽量避免使用Java来编写标签,并且只使用新的.tag样式。您可以将Java代码合并到这样的标记文件中,但一般情况下,如果您被迫这样做,那么您可能做错了。