我的应用程序完美地向服务器提交了一个表单,并显示了从服务器接收到的响应消息,例如“表单已提交”或“对不起,出了点问题!”
但是,我需要允许所有用户访问表单页面,但只有授权用户才能提交表单。所以我使用 Spring 安全性,它被配置为在用户尝试访问安全页面时将其重定向到索引页面。
到目前为止一切正常,但问题是,由于我使用 message.jsp 页面显示服务器返回的消息,一旦未经授权的用户尝试提交表单,索引页面将显示为消息正文。 jsp 页面,并且由于 message.jsp 页面用于显示消息,它将在我的 form.jsp 页面中显示 index.jsp 页面。
如何解决问题?或者如何在 form.jsp 页面上显示服务器消息以避免这个问题?
表单.jsp
function Add(value){
if(window.XMLHttpRequest)
{
xmlhttp = new XMLHttpRequest();
}
else
{
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if(xmlhttp.readyState == 4 && xmlhttp.status == 200)
{
document.getElementById("msg").innerHTML = xmlhttp.responseText;
}
}
xmlhttp.open("get","add?myvalue="+value,false);
xmlhttp.send();
}
.....
form goes here
<label id="msg"></label>
表单提交.java
private String ServerMessage;
public String add(){
....
if(result)
this.ServerMessage = "form is submitted";
else
this.ServerMessage = "sorry, something went wrong!"
return "successful";
}
....
struts.xml
<result name="successful">message.jsp</result>
消息.jsp
required library goes here
<s:property value="ServerMessage"/>