需要由FileUploadInterceptor创建的Struts2字段错误键
我使用Struts2-FileUploadInterceptor来处理上传文件的内容类型和最大大小 为了显示错误消息,需要由FileUploadInterceptor创建的Struts2字段错误键,struts2,struts-validation,Struts2,Struts Validation,我使用Struts2-FileUploadInterceptor来处理上传文件的内容类型和最大大小 为了显示错误消息,正在显示完美的错误消息 我正在处理一个包含多个部分的页面,我需要显示只属于该部分的错误消息,的问题是它显示所有错误消息,并且要解决此问题,需要传递参数,如 <s:fielderror><s:param>firstName</s:param></s:fielderror> firstName 我不确定FileUploadInter
正在显示完美的错误消息
我正在处理一个包含多个部分的页面,我需要显示只属于该部分的错误消息,
的问题是它显示所有错误消息,并且要解决此问题,需要传递参数,如
<s:fielderror><s:param>firstName</s:param></s:fielderror>
firstName
我不确定FileUploadInterceptor为内容类型错误和最大大小错误创建的错误密钥是什么,请帮助我解决此问题。如果我理解正确,我认为您希望执行以下操作:
<s:fielderror>[some reference to a content type error]</s:fielderror>
<s:fielderror>[some reference to a max size error]</s:fielderror>
因此,您一次只能得到其中一个错误。感谢您的回复,如果我的问题让我感到困惑,很抱歉,我的问题是,从您的代码中,获取特定错误的关键应该是什么?
[某些内容类型错误的参考]
@PramodCA我想告诉你的是,对于内容类型错误或最大大小错误,没有这样的键。您唯一的选项是myFileFieldName
我的文件名是pramodu resume.doc,而不是编码为pramodu resume.doc
,即使这样,也不会显示错误。@PramodCA不是您的文件名,而是文件字段的名称。如果您的文件字段是
,那么您将使用uploadFile
353 } else if (maximumSize != null && maximumSize < file.length()) {
354 String errMsg = getTextMessage(action, "struts.messages.error.file.too.large", new Object[]{inputName, filename, file.getName(), "" + file.length()}, locale);
355 if (validation != null) {
356 validation.addFieldError(inputName, errMsg);
357 }
358
359 LOG.warn(errMsg);
360 } else if ((!allowedTypesSet.isEmpty()) && (!containsItem(allowedTypesSet, contentType))) {
361 String errMsg = getTextMessage(action, "struts.messages.error.content.type.not.allowed", new Object[]{inputName, filename, file.getName(), contentType}, locale);
362 if (validation != null) {
363 validation.addFieldError(inputName, errMsg);
364 }
365
366 LOG.warn(errMsg);
367 }