嗨,我有兩個JSP頁面,並且是引用相同的Struts Action類。當前進時,第一個JSP頁面中的值在第二個JSP中可用。但是當我點擊後退按鈕時,這些值是空的。請給出建議我有什麼辦法可以提供這個值前面和後面的動作。 在此先感謝。如何從Struts2中的兩個jsp頁面前進和後退動作獲取值?
第一個JSP:
<s:textarea name="incidentBean.description" id="descriptionId"
rows="2" cols="34" cssClass="textarea200" >
</s:textarea>
在我的第二個JSP:
<s:textarea name="descriptionId" id="descriptionId" readonly="true"
value="%{incidentBean.description}"
rows="2" cols="34" cssClass="textarea200" cssStyle="background-color: #C0C0C0">
</s:textarea>
這裏是我的Action類
public class BCMCaptureInitialIncidentAction extends DefaultActionSupport {
private BCMInitialIncidentBean incidentBean;
private String descriptionId;
public BCMInitialIncidentBean getIncidentBean() {
return incidentBean;
}
public void setIncidentBean(BCMInitialIncidentBean incidentBean) {
this.incidentBean = incidentBean;
}
public String getDescriptionId() {
return descriptionId;
}
public void setDescriptionId(String descriptionId) {
this.descriptionId = descriptionId;
}
/**
* This method is used for preparing the data to pre-populate the Capture Initial Incident Screen
* @return String
* @param
* @exception BcmException
* @exception BCMDatabaseException
*/
public String prepareInitIncident(){
System.out.println("prepareInitIncident Entered");
if(incidentBean!=null)
System.out.println("prepareInitIncident description:"+incidentBean.getDescription());
return SUCCESS;
}
public String validateCaptureIncident(){
if(incidentBean!=null)
System.out.println("validateCaptureIncident description:"+incidentBean.getDescription());
return SUCCESS;
}
}
您在您的動作類中定義了incidentBean,因此該值在第二個jsp中可用,而他們沒有範圍的框架在您從第二個jsp返回時設置「descriptionId」,因此值對第一個jsp不可用 –