Я столкнулся с проблемой при установке класса действия Строка через вызов ajax. Вот мой кодУстановить атрибут класса действия с помощью ajax jquery Struts-1
DashBoardGraphAction.java
public class DashBoardGraphAction extends DispatchAction
{
private String testString;
public ActionForward getTransactionsByStatus(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception
{
System.out.println(fromDate);
return null;
}
public String getTestString() {
return testString;
}
public void setTestString(String testString) {
this.testString = testString;
}
Ajax вызов выглядит следующим образом:
<script>
var testString = "testName";
$.ajax({
url: '${pageContext.request.contextPath}/gettransactionData.do?parameter=getTransactionsByStatus',
type: 'POST',
data: 'testString='+testString,
dataType: 'json',
success: function(data)
{
str = data;
},
async:false,
error: function(XMLHttpRequest, textStatus, errorThrown){
alert('Error ' + textStatus);
alert(errorThrown);
alert(XMLHttpRequest.responseText);
}
});
</script>
распорка-config.xml
<action path="/gettransactionData" parameter="parameter"
type="com.pp.dashboard.DashBoardGraphAction">
<forward name = "getTransactionsByStatus" path = "/jsp/pp/dashboardReportStatus.jsp" />
<forward name = "getTransactionsByProcessor" path = "/jsp/pp/dashboardReportProcessorWise.jsp" />
</action>
Когда действие вызывает я получаю СравниваемаяСтроку как null. Я попытался изо всех сил решить эту проблему, но не могу найти то, чего не хватает. Любой из них очень ценится.
где вы определили свой ActionForm, я полагаю, вы отправляете testString в качестве тела сообщения? но я не могу видеть, как вы защищаете Actionform, в котором действие будет заполнять это значение. – Bilal