它是一个两部分的问题。
第 1 部分:我想根据我正在做content-type
的标题设置 jsp 页面Accept
<c:if test="${fn:contains(header['accept'], 'xml')}">
<c:set var="contentType" value="application/xml;charset=UTF-8"/>
</c:if>
<c:if test="${fn:contains(header['accept'], 'json')}">
<c:set var="contentType" value="application/json;charset=UTF-8"/>
</c:if>
<jsp:directive.page contentType='${contentType}'/>
为此,我得到了响应,就像
我也尝试过的一样
,
我的其他 EL 表达式得到了正确评估,所以我已经对属性进行了实验。我也不想使用 scriptlet 标签。
第 2 部分:我想在没有来自JSP 页面的 scriptlet 标记的帮助下进行动态设置。
目前我正在做
我知道它可以在 a或 a中设置,但我希望它从页面或通过标签设置。请指导我完成此操作。
<c:set target="${pageContext.response}" property="ContentType" value="${contentType}"/>
Invalid property in <set>: "ContentType"
isELIgnored
status code
<% response.setStatus(200) %>
servlet
filter
jsp
custom