Struts - Request não armazena atributos

Salve Pessoal!

Acho q o request aqui ta com mal de Alzheimer(num sei se é assim q escreve… :lol: ) pq ele não tá conseguindo encontrar um atributo que eu estou setando dentro da minha action.
Na minha action eu to buscando uma lista pra exibir usando display e se esse list retornar null vai realizar a busca em um banco de dados. A lógica de acesso ao banco tá certinha, mas o que eu gostaria de saber o porque o request não está armazenando a minha list…

O cógigo da Action:

public class MRPAction extends Action {

	public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response)
			throws Exception {
		List bean = (LinkedList) request.getSession().getAttribute("mrp");
		if (bean == null){
			MRPBusinessDelegate delegate = new MRPBusinessDelegate();
			bean = delegate.getProdValues();
		}
		request.setAttribute("mrp", bean);
		return mapping.findForward("success");
	}
}

o código do struts config:

<struts-config>
	<form-beans/>
	<global-exceptions/>
	<global-forwards/>
	<action-mappings>
		<action 
			path="/mrplitereport"
			scope="request"
			type="br.com.liveware.portalphihong.web.MRPAction">
			<forward path="/mrp-lite.jsp" name="success"/>
		</action>
	</action-mappings>
</struts-config>

agradeço qualquer ajuda…
[]'s
Diego

Olá,
Vamos analisar o seu código.
Parece tudo certo, mas creio q tenha um errinho ai:

Veja essa linha:

List bean = (LinkedList) request.getSession().getAttribute(“mrp”);
Aqui vc pegou a lista da seção (geSession())

na hora de setar seu request novamente, vc deveria usar
request. [color=“red”]getSession[/color].setAttribute(“mrp”, bean);

não acha?
Isto vai depender tb de como está seu código .jsp
onde vc deve fazer um requestSession() e não apenas um requestScope.

Outra forma é nao colocar na secao e apenas setar seus atributos (caso nao queira q esses dados permaneçam na seção até q expire)

Daí, eh só usar o request.getAtributte() e request.setAtributte()

Não sei se pude ajudar, ou se ficou confuso…
t+