Pessoal, Estou pegando varios valores de um dataTable e carregando em outra pagina (para edicao).
Estou utilizando o <f:setPropertyActionListener p fazer esse processo! O problema eh q a pagina carrega
com os outputText em branco.
Pagina q ta o dataTable:
<h:dataTable value="#{requisicaoBean.todasRequisicoesPend}" var="req" rules="rows"
cellpadding="5">
<f:facet name="caption">
<br />
</f:facet>
<f:facet name="header">Requisições pendentes</f:facet>
<f:facet name="footer">Final da listagem</f:facet>
<h:column>
<f:facet name="header">#R</f:facet>
<h:outputText value="#{req.codigoRequisicao}" />
</h:column>
<h:column>
<f:facet name="header">#IR</f:facet>
<h:outputText value="#{req.codigoItemRequisicao}" />
</h:column>
<h:column>
<f:facet name="header">Usuário</f:facet>
<h:outputText value="#{req.nomeUsuario}" />
</h:column>
<h:column>
<f:facet name="header">Data</f:facet>
<h:outputText value="#{req.dataHora}" />
</h:column>
<h:column>
<f:facet name="header">Item</f:facet>
<h:outputText value="#{req.nomeItem}" />
</h:column>
<h:column>
<f:facet name="header">Qtd.Solicitada</f:facet>
<h:outputText value="#{req.quantidadeSolicitada}" />
</h:column>
<h:column>
<f:facet name="header">Qtd.Atendida</f:facet>
<h:outputText value="#{req.quantidadeAtendida}" />
</h:column>
<h:column>
<f:facet name="header">Status</f:facet>
<h:outputText value="#{req.nomeStatus}" />
</h:column>
<h:column>
<h:commandLink action="#{requisicaoBean.editar}">
<h:graphicImage library="imagens" name="editar_requisicao.png" style="border:0"/>
<f:setPropertyActionListener target="#{movimentacaoModelBean.movimentacaoModel.codigoRequisicao}" value="#{req.codigoRequisicao}"/>
<f:setPropertyActionListener target="#{movimentacaoModelBean.movimentacaoModel.codigoItemRequisicao}" value="#{req.codigoItemRequisicao}"/>
<f:setPropertyActionListener target="#{movimentacaoModelBean.movimentacaoModel.nomeUsuario}" value="#{req.nomeUsuario}"/>
<f:setPropertyActionListener target="#{movimentacaoModelBean.movimentacaoModel.dataHora}" value="#{req.dataHora}"/>
<f:setPropertyActionListener target="#{movimentacaoModelBean.movimentacaoModel.nomeItem}" value="#{req.nomeItem}"/>
<f:setPropertyActionListener target="#{movimentacaoModelBean.movimentacaoModel.quantidadeSolicitada}" value="#{req.quantidadeSolicitada}"/>
<f:setPropertyActionListener target="#{movimentacaoModelBean.movimentacaoModel.quantidadeAtendida}" value="#{req.quantidadeAtendida}"/>
<f:setPropertyActionListener target="#{movimentacaoModelBean.movimentacaoModel.statusAtual}" value="#{req.nomeStatus}"/>
<f:setPropertyActionListener target="#{requisicaoBean.destinoSalvar}" value="pages/vip/movimentacao_requisicao"/>
</h:commandLink>
</h:column>
</h:dataTable>
</h:form>
</ui:define>
</ui:composition>
</html>
Pagina q deveria carregar os valores do dataTable:
Movimentação
</ui:define>
<ui:define name="corpo">
<h:form id="cadastro">
<h:messages />
<h:panelGrid columns="2">
<h:outputLabel value="#R" for="codigoRequisicao" />
<h:inputText id="codigoRequisicao" label="CodigoRequisicao"
value="#{movimentacaoBean.movimentacaoModel.codigoRequisicao}" required="true" size="3"/>
<h:outputLabel value="#RI:" for="codigoItemRequisicao" />
<h:inputText id="codigoItemRequisicao" label="CodigoItemRequisicao"
value="#{movimentacaoBean.codigoItemRequisicao}" required="true" size="3" />
<h:outputLabel value="Usuário:" for="nomeUsuario"/>
<h:inputText id="usuario" label="Usuario"
value="#{movimentacaoBean.nomeUsuario}" required="true"/>
<h:outputLabel value="Data e hora:" for="dataHora" />
<h:inputText id="dataHora" label="DataHora"
value="#{movimentacaoBean.dataHora}" required="true" />
<h:outputLabel value="Item:" for="nomeItem" />
<h:inputText id="nomeItem" label="NomeItem"
value="#{movimentacaoBean.nomeItem}" required="true" />
<h:outputLabel value="Quantidade Solicitada:" for="quantidadeSolicitada" />
<h:inputText id="quantidadeSolicitda" label="quantidadeSolicitada" size="4"
value="#{movimentacaoBean.quantidadeSolicitada}" />
<h:outputLabel value="Quantidade Atendida:" for="quantidadeAtendida" />
<h:inputText id="quantidadeAtendida" label="QuantidadeAtendida" size="4"
value="#{movimentacaoBean.quantidadeAtendida}" required="true" />
<h:outputLabel value="Status Atual:" for="statusAtual" />
<h:inputText id="statusAtual" label="Status Atual"
value="#{movimentacaoBean.statusAtual}" required="true" size="9" />
<h:outputText value="Status:"/>
<h:selectOneMenu value ="#{requisicaoBean.listarNomeStatus}">
<f:selectItem itemLabel="Selecione:" itemValue=""/>
<f:selectItems
value="#{requisicaoBean.listarNomeStatus}"
var ="status"
itemValue="#{status}"
itemLabel="#{status}"/>
</h:selectOneMenu>
<h:commandButton value="Atualizar" />
</h:panelGrid>
</h:form>
</ui:define>
</ui:composition>
</html>
Classe modelo p armazenar os dados q seriam carregados:
public class MovimentacaoModel implements Serializable{
private static final long serialVersionUID = 6389873628813633203L;
private int codigoRequisicao;
private int codigoItemRequisicao;
private String nomeUsuario;
private String dataHora;
private String nomeItem;
private int quantidadeSolicitada;
private int quantidadeAtendida;
private String statusAtual;
private String statusMovimentacao;
MovimentacaoModel:
public class MovimentacaoModel implements Serializable{
private static final long serialVersionUID = 6389873628813633203L;
private int codigoRequisicao;
private int codigoItemRequisicao;
private String nomeUsuario;
private String dataHora;
private String nomeItem;
private int quantidadeSolicitada;
private int quantidadeAtendida;
private String statusAtual;
private String statusMovimentacao;
...
MovimentacaoModelBean:
@ManagedBean(name="movimentacaoModelBean")
@RequestScoped
public class MovimentacaoModelBean implements Serializable {
private static final long serialVersionUID = -2152063137612742988L;
public String destinoSalvar;
private MovimentacaoModel movimentacaoModel = new MovimentacaoModel();
public MovimentacaoModel getMovimentacaoModel() {
return movimentacaoModel;
}
public void setMovimentacaoModel(MovimentacaoModel movimentacaoModel) {
this.movimentacaoModel = movimentacaoModel;
}
}
RequisicaoBean
@ManagedBean(name = "requisicaoBean")
@RequestScoped
public class RequisicaoBean {
...
private Requisicao requisicao = new Requisicao();
public String editar() {
return "/pages/vip/movimentacao_requisicao";
}
}
...