any one help me to implement token for avoid resubmission problem in struts 2 step by step
action coding
public String enquiry_process()
{
qty=new ArrayList<BigDecimal>();
matcd=new ArrayList<Integer>();
purchaseRequisitionDets=procurementService.getPurchaseDet();
for(int i=0;i<orderCreationBean.getChk_no().length;i++)
{
Integer chkno=new Integer(i);
chkno=orderCreationBean.getChk_no()[i];
for(PurchaseRequisitionDet purchaseRDet:purchaseRequisitionDets)
{
if(purchaseRDet.getPurch_req_no().equals(chkno))
{
PurchaseRequisitionDet objPurchaseRequisitionDet =new PurchaseRequisitionDet();
objPurchaseRequisitionDet.setQty(purchaseRDet.getQty());
objPurchaseRequisitionDet.setMat_cd(purchaseRDet.getMat_cd());
objPurchaseRequisitionDet.setUnit(purchaseRDet.getUnit());
objPurchaseRequisitionDet.setUnit_price(purchaseRDet.getUnit_price());
objPurchaseRequisitionDet.setTotal(purchaseRDet.getTotal());
objprbeanarrays.add(objPurchaseRequisitionDet);
}
}
}
HttpSession session=request.getSession(true);
Integer id = (Integer) session.getAttribute("userId");
procurementService.saveenqdet(enquiryBean.getRef_no(),objprbeanarrays,orderCreationBean,id);
enquiryHeaderdets=procurementService.getenqhdr();
for(EnquiryHeaderdet headerdet:enquiryHeaderdets)
{
if(headerdet.getRef_no().equals(enquiryBean.getRef_no()))
{
Long enq_no=headerdet.getEnq_no();
qty=procurementService.createenq(enq_no);
matcd=procurementService.getmatcd(enq_no);
}
}
Long enqno=enquiryBean.getRef_no();
for(int i=0;i<qty.size();i++)
{
enquiryBean=new EnquiryBean();
enquiryBean.setQty(qty.get(i).doubleValue());
enquiryBean.setMat_cd(matcd.get(i));
MaterialMaster mMaster=procurementService.getMaterial(matcd.get(i));
enquiryBean.setMat_desc(mMaster.getMat_name());
enquiryBeans.add(enquiryBean);
}
for(EnquiryHeaderdet headerdet:enquiryHeaderdets)
{
enquiryBean2=new EnquiryBean();
if(headerdet.getRef_no().equals(enqno))
{
enquiryBean2.setEnq_no(headerdet.getEnq_no());
break;
}
}
orderCreationBean=new OrderCreationBean();
enquiryBean=new EnquiryBean();
objprbeanarrays=new ArrayList<PurchaseRequisitionDet>();
return "success";
}
struts.xml
<result name="success">/pages/procurement/EnquiryProcess.jsp</result>
</action>
<result name="success">/pages/procurement/EnquiryDetails.jsp</result>
</action>
when i refresh this EnquiryDetails.jsp its perform before page(EnquiryProcess.jsp) i am submit some one value that again resubmit and save in database.