Java 使用ajax在同一页面上上传struts2文件成功消息

Java 使用ajax在同一页面上上传struts2文件成功消息,java,javascript,ajax,jsp,struts2,Java,Javascript,Ajax,Jsp,Struts2,我正在上载.csv文件并在同一页上重定向,我想在同一页上显示文件上载成功消息。我不想使用ajax发送请求。我是struts框架的新手,我已经阅读了许多文件上载教程,但每个人都在重定向到另一页并在那里显示消息。上传后(如果出现错误),请发送您来自的同一页面: Struts.xml /upload.jsp /upload.jsp /upload.jsp /upload.jsp /upload.jsp /upload.jsp 上传动作 公共类UploadAction扩展了ActionSupport

我正在上载.csv文件并在同一页上重定向,我想在同一页上显示文件上载成功消息。我不想使用ajax发送请求。我是struts框架的新手,我已经阅读了许多文件上载教程,但每个人都在重定向到另一页并在那里显示消息。

上传后(如果出现错误),请发送您来自的同一页面:

Struts.xml


/upload.jsp
/upload.jsp
/upload.jsp
/upload.jsp
/upload.jsp
/upload.jsp
上传动作

公共类UploadAction扩展了ActionSupport{
文件上传;
字符串上传文件名;
字符串上传ContentType;
/*上述属性的getter和setter*/
公共字符串execute(){
回归成功;
}
公共字符串上载(){
试一试{
getService().upload(upload,uploadFileName,uploadContentType);
addActionMessage(“上传成功完成”);
回归成功;
}捕获(例外e){
addActionError(“上传时出错:+e.getMessage());
返回误差;
}
}
}
upload.jsp



这是最基本的,然后您可能需要更改URL或使用Post Redirect Get或令牌等,以防止用户在刷新时重新提交文件。

使用

否则设置操作消息

     addActionMessage("Upload successfully completed");
jsp页面

<body>
    <s:actionerror />
    <s:actionmessage />    

 <s:form action="uploadAction" >
    <s:file name="filename" /> 
    <s:submit />
 <s:form>
</body>


使用ajax,将响应返回到同一页面重定向到某个页面和同一页面之间没有区别。@Govi这在哪方面比提供的其他答案更好?除了缺少配置和检查是否存在消息/错误之外(您可能希望在具有特殊类的div中包含actionMessages和actionErrors,例如放置红色和绿色边框,这样您就不能),它也缺少
enctype=“multipart/form data”
…这甚至不起作用:|
<body>
    <s:actionerror />
    <s:actionmessage />    

 <s:form action="uploadAction" >
    <s:file name="filename" /> 
    <s:submit />
 <s:form>
</body>