Ich habe den Skriptcode:
var xmlHttp=null;
function GetXmlHttpObject()
{
try
{
// Firefox, Opera 8.0+, Safari
xmlHttp=new XMLHttpRequest();
}
catch (e)
{
//Internet Explorer
try
{
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
}
return xmlHttp;
}
function popSubCategory(){
xmlHttp=GetXmlHttpObject()
if (xmlHttp==null)
{
alert ("Browser does not support HTTP Request")
return;
}
var url="<%= request.getContextPath()%>/populatePropertySubCategory.action";
alert(url);
xmlHttp.onreadystatechange=stateChangedmp();
xmlHttp.open("POST",url,true);
xmlHttp.send(null);
}
function stateChangedmp(){
alert("Hello "+xmlHttp.readyState);
if(xmlHttp.readyState==4)
alert("lk"+xmlHttp.responseText);
}
Und meine Action
-Methode ist
public String populatePropertySubCategory() {
System.out.println("sub property called " );
String errorXml = "This is a Sample to Check";
response.setContentType("text/html");
response.setHeader("Cache-Control", "no-cache");
try {
response.getWriter().write(errorXml);
} catch (IOException ioe) {
ioe.printStackTrace();
}
return SUCCESS;
}
Meine Aktionsunterstützung für XML lautet
populatePropertySubCategory
submitProperty
Jetzt, wenn ich diesen Code aufrufe, wird nur 0 in einem Alert angezeigt und der Antworttext wird nicht gedruckt.
Ich habe bereits das ServletResonseAware
-Interface implementiert.