Значение атрибута пересылки из jsp в java - PullRequest
1 голос
/ 04 января 2012

У меня есть ниже action mappings в файле struts-config.xml.

  <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");

Здесь я не мог получить атрибут.Возвращает нулевое значение в Список tareWeights.

Пожалуйста, дайте мне знать, что нужно сделать, чтобы получить содержимое атрибута в ExportTareToExcelAction.java ...

1 Ответ

1 голос
/ 04 января 2012

Если атрибут сеанса имеет значение NULL, существует пять возможностей:

  • Вы сохранили значение NULL в атрибуте
  • время сеанса истекло, поскольку вы не просматривали ни одной страницыВ течение некоторого времени перед тем, как щелкнуть ссылку экспорта
  • , вы аннулировали сеанс, прежде чем щелкнуть ссылку экспорта
  • . Вы не использовали тот же браузер для получения весов тары и их экспорта
  • что-то еще изменило сеанс (например, фильтр, другое действие и т. Д.)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...