2017-09-11 71 views
1

在自定义标签我有这样可选属性,防止型号名称冲突属性

<%@ attribute name="message" required="false" type="java.lang.String" %> 

一个可选的属性,当属性设置做一些

<c:if test="${not empty message}">do something</c:if> 

但是当有一个变量“消息”与范围会话或请求混合。

有没有可能确定变量是来自模型还是属性?

回答

0

还有一个更简单的方法。属性拥有自己的页面范围。访问它们时只需简单命名示波器:

$ {pageScope.message}

0

一种丑陋的方式是采取与范围页面属性,并把它变成另一个变量:

<% 
int scope = PageContext.PAGE_SCOPE; 
Object msg = jspContext.getAttribute("message", scope); 
jspContext.setAttribute("messageattribute", msg); 
%>