转发从jsp到java的属性值

时间:2012-01-04 13:28:02

标签: java jsp struts

我在struts-config.xml文件中有以下action mappings

  <action path="/getTareWeight" 
  type="com.astrazeneca.usbod.scale.actions.GetTareByBarcodeAction"  
  name ="getTareByBarcodeForm" 
  scope="request" 
  validate="true" 
  input="/jsp/getTareByBarcode.jsp">

    <forward name="success" path="/jsp/tareWeightResult.jsp" />
    <forward name="failure" path="/jsp/tareWeight.jsp" />
  </action>


  <action path ="/ExportToExcel"
        type="com.astrazeneca.usbod.scale.actions.ExportTareToExcelAction">
    <forward name="success" path="/jsp/tareWeightResult.jsp"/>
    <forward name="failure" path="/jsp/tareWeight.jsp" />
  </action>

GetTareByBarcodeAction实际上设置了如下属性。

   request.getSession().setAttribute("TAREWEIGHT", tareWeightList);

tareWeightResult.jsp显示属性TAREWEIGHT的内容。现在,我在tareWeightResult.jsp放置一个按钮,点击后,属性TAREWEIGHT的内容应发送到下面的操作表单,

   <html:link forward="exportToExcel">Excel</html:link>

在ExportTareToExcelAction.java文件中,我有以下代码,

   List tareWeights = (List) request.getSession().getAttribute("TAREWEIGHT");

这里我无法获得该属性。它将null值返回到List tareWeights

请让我知道如何检索ExportTareToExcelAction.java中的属性内容......

1 个答案:

答案 0 :(得分:1)

如果session属性为null,则有五种可能:

  • 您在属性
  • 中存储了null
  • 会话已超时,因为您在点击导出链接之前没有浏览应用程序的任何页面
  • 您在点击导出链接
  • 之前使会话无效
  • 您没有使用相同的浏览器获取皮重并导出它们
  • 其他内容修改了会话(例如,过滤,不同的操作等)