Я делаю свой проект Struts, теперь я хочу получить данные как json.Но переменная, которую я хочу получить в ответе json, не извлекает значения json, которые мне нужны.
Вот мой класс Action
import com.myDrDirect.hbmobj.Doctor;
import com.myDrDirect.order.dao.DoctorDashBoardDao;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;
import java.util.List;
import java.util.Map;
public class patientOrderDetails extends ActionSupport {
private int rows;
private int total;
private int records;
private int page;
private List recentOrders;
public String jsonRecentOrderDetails() {
try{
Map sessionSingleDoctor = ActionContext.getContext().getSession();
Doctor SessionObj = (Doctor) sessionSingleDoctor.get("Doctor");
records = DoctorDashBoardDao.getInstance().getCount();
//records = 10;
setRows(Integer.parseInt(getText("number.rows.per.page")));
//rows = 10;
int to = (getRows() * getPage());
int from = (getRows() * (getPage()-1));
total =(int) Math.ceil((double)records / (double)rows);
recentOrders= DoctorDashBoardDao.getInstance().getDoctorRecentOrderDetails(rows,from,SessionObj.getId());
} catch (Exception e) {
e.printStackTrace();
System.out.println(e.getCause());
//log.error("Error occured " + e.toString());
return ERROR;
}
return SUCCESS;
}
public int getRows() {
return rows;
}
public void setRows(int rows) {
this.rows = rows;
}
public int getPage() {
return page;
}
public void setPage(int page) {
this.page = page;
}
public int getRecords() {
return records;
}
public void setRecords(int records) {
this.records = records;
}
public int getTotal() {
return total;
}
public void setTotal(int total) {
this.total = total;
}
public List getRecentOrders() {
return recentOrders;
}
public void setRecentOrders(List recentOrders) {
this.recentOrders= recentOrders;
}
}
, а мой struts.xml имеет
<package name="json" extends="json-default">
<action name="DashBoardActivityJson" class="com.myDrDirect.doctor.action.patientOrderDetails" method="jsonRecentOrderDetails">
<result name="success" type="json">
<!-- serialize the result property of the action -->
<param name="includeProperties">recentOrders</param>
</result>
</action>
<action name="grid" >
<result name="success" >/WEB-INF/doctor/jsonGrid.jsp</result>
</action>
</package>
Мне нужно получить ответ в RecentOrders1
varable, но эта переменная неполучить данные JSON.Когда я получаю переменную records
, я получаю ответ правильно.Записывающее устройство имеет только общий счет в списке, но RecentOrder1 возвращает список.Мне нужно получить недавний заказ в виде списка на странице просмотра.Может кто-нибудь, пожалуйста, скажите мне, что является проблемой в вышеупомянутом действии или файле XML.Пожалуйста, помогите.
Одна вещь, которую я заметил здесь, это возвращаемое значение в RecentOrder это список.Нужно ли конвертировать этот список в строку JSON.Это необходимо, или struts2 автоматически меняет мою переменную списка в строку json?