Jsp 如何在Struts2中的多行上显示多个操作错误?
我有一个Struts2页面,其中我需要显示2个操作警告(本质上是带有标志集的错误):每次加载页面时显示1个警告,另一个警告取决于页面的属性 我用于添加操作消息的代码:Jsp 如何在Struts2中的多行上显示多个操作错误?,jsp,struts2,Jsp,Struts2,我有一个Struts2页面,其中我需要显示2个操作警告(本质上是带有标志集的错误):每次加载页面时显示1个警告,另一个警告取决于页面的属性 我用于添加操作消息的代码: addActionWarning(getText(MessageKeys.WARN_PROJECTSTREAM_NOT_SAFE_DELETE)); AddProjectStreamDependencyService addProjectStreamDependencyService = (AddProjectStreamDepe
addActionWarning(getText(MessageKeys.WARN_PROJECTSTREAM_NOT_SAFE_DELETE));
AddProjectStreamDependencyService addProjectStreamDependencyService = (AddProjectStreamDependencyService) ServiceFactory
.getInstance().createService(AddProjectStreamDependencyService.class);
isUsedByList = addProjectStreamDependencyService.getProjectStreamDependencies(oid,
AddProjectStreamDependencyService.DEPENDENCY_TYPE_IS_USED_BY);
if(!isUsedByList.isEmpty()){
addActionWarning(getText(MessageKeys.WARN_PROJECTSTREAM_IS_USED_BY_DELETE));
}
此页面的jsp代码(请注意,每个页面都会导入此代码,因此我无法轻松更改此代码):
警告:这还将删除历史项目流信息,如级别请求、生成、部署等。警告:此项目流仍被其他项目流用作依赖项。
在搜索我的项目源代码后,我发现了一个Freemarker模板,其中使用
对元素进行迭代。我编辑了此模板以包含
,因此它使用
作为分隔符。不幸的是,这不适用于我的项目使用的Freemarker版本(我们使用2.3.19,列表内置在2.3.23中)
作为替代,我最终使用了
,这在我的版本中是可用的。这就解决了问题。感谢Roman C建议检查模板。将返回标记添加到JSP。@Roman C您能澄清一下这是什么意思吗?我不知道你所说的“向JSP添加返回标记”是什么意思。这只是一个线索,说明了为什么你的代码不工作,你不知道代码是如何写入响应的,所以你必须检查模板。
<c:choose>
<c:when test='${! empty actionErrors || ! empty actionWarnings}'>
<s:actionerror id="globalError" cssClass="globalError" escape="false"/>
</c:when>
<c:when test='${! empty actionMessages}'>
<s:actionmessage id="globalError" cssClass="globalInfo" escape="false"/>
</c:when>
<c:otherwise>
<span id="globalError" class="globalError"> </span>
</c:otherwise>
</c:choose>