Bom dia!
Estou com uma dúvida de iniciante mesmo. Tenho um classe PedidoMaterialAction que tem um método que cadastra um pedido de material.
A próxima tela seria a de cadastro dos itens desse pedido de material.
Para isso preciso passar para essa outra Action o idPedidoMaterial. Qual será a melhor maneiro de fazer isso?
public String cadastrarPedidoMaterial() {
Date dtAtual= new Date();
statusPedido.setIdStatusPedido(1);
quadra.setIdQuadra(idQuadra);
pedidoMaterial.setDtPedidoAlmox(dtAtual);
pedidoMaterial.setGetQuadra(quadra);
pedidoMaterial.setLinkImgPedido("Não Informado");
pedidoMaterial.setGetStatusPedido(statusPedido);
try {
pMaterialDAO.getInstance().cadastrarUsuario(pedidoMaterial);
return "sucesso";
} catch (Exception e) {
e.printStackTrace();
}
return "";
}
Preciso passar esse idPedidoMaterial para esse método:
public String cadastrarItemPedido() {
StatusItem statusItem = new StatusItem();
PedidoMaterial pMaterial = new PedidoMaterial();
ItemPedidoDAO itemPedidoDAO = new ItemPedidoDAO();
pMaterial = (PedidoMaterial)session.get("pedidoMaterial");
itemPedido.setGetPedidoMaterial(pMaterial);
statusItem.setIdStatusItem(4);
itemPedido.setGetStatusItem(statusItem);
itemPedido.setGetPedidoMaterial(pMaterial);
try {
itemPedidoDAO.getInstance().cadatrarItemPedido(itemPedido);
return "sucesso";
} catch (Exception e) {
e.printStackTrace();
return "";
}
}
}
Aguardo Ajuda.
Se você estiver utilizando Struts e esses dois métodos estar contido na mesma classe, você poderá utilizar o FormBean, ou seja, o próprio form para passar essa informação. Ou também através da url.
Ex: …aplicacao.do?idPedidoMaterial=5
Você pode fazer isso de mais de uma maneira ! Mais depende de algumas coisas, rapidamente posso te aconselhar a passar isso como um atributo do request.
request.setAttribute("parametro", "valor do parametro);
e depois pegar ele no outro metodo
request.getAttribute("parametro");
seria mais ou menos isso?
<h:form>
<h:outputText value="Código do Pedido:"></h:outputText>
<h:outputLabel value="#{pMaterial.pedidoMaterial.idPedidoMaterial}"></h:outputLabel>
<h:outputText value="Data Pedido:"></h:outputText>
<h:outputLabel value="#{pMaterial.pedidoMaterial.dtPedidoQuadra}"></h:outputLabel>
<br /><br /><br />
<h:outputLabel value="Insira a descrição do item:"></h:outputLabel>
<h:inputText value="#{itemPedido.itemPedido.descItemPedido}" size="45"></h:inputText>
<h:outputLabel value="Quantidade:"></h:outputLabel>
<h:inputText value="#{itemPedido.itemPedido.qtdItem}" size="1" maxlength="2"></h:inputText>
<h:commandButton value="Inserir Item" action="#{itemPedido.cadastrarItemPedido}"></h:commandButton>
<t:updateActionListener value="#{pMaterial.pedidoMaterial.idPedidoMaterial}" property="#{itemPedido.idPedidoMaterial}"></t:updateActionListener>
</h:form>
vou reformular a duvida:
preciso pegar o que tem aki
<h:outputLabel value="#{pMaterial.pedidoMaterial.idPedidoMaterial}"></h:outputLabel>
e passar para ká
#itemPedido.idPedido
será que seria válida salvá-lo em uma sessão?