Estou com um dialogo com os dados selecionados de uma tabela e o dialogo exibe os dados, so que quando tento salvar esses dados no banco, no caso seria um update no objeto ele da o erro q o objeto selecionado esta nulo, estou quebrando a cabeça e nao sei mais oq fazer!!! pode ser erro bobo, estou começando a utilizar essa tecnologia
<p:dialog header="Enviar" widgetVar="dlg" modal="true"
showEffect="explode" hideEffect="explode" >
<p:outputPanel id="panelEnviar" style="text-align:center;" layout="block">
<h:panelGrid columns="2" cellpadding="5" >
<h:outputLabel for="idEnviar" value="Id: " />
<h:outputText id="idEnviar" value="#{controleDCTFBean.selecionadaObrigacoes.id}" />
<h:outputLabel for="mesEnviar" value="Mes: " />
<h:outputText id="mesEnviar" value="#{controleDCTFBean.selecionadaObrigacoes.mes.nome}" />
<h:outputLabel for="anoEnviar" value="Ano: " />
<h:outputText id="anoEnviar" value="#{controleDCTFBean.selecionadaObrigacoes.ano}" />
<h:outputLabel for="razaoEnviar" value="Razao: " />
<h:outputText id="razaoEnviar" value="#{controleDCTFBean.selecionadaObrigacoes.cliente.razao}" />
<h:outputLabel for="cnpjEnviar" value="CNPJ: " />
<h:outputText id="cnpjEnviar" value="#{controleDCTFBean.selecionadaObrigacoes.cliente.CNPJ}" />
<h:outputLabel for="protocolo" value="protocolo:" />
<h:inputText value="#{controleDCTFBean.selecionadaObrigacoes.protocolo}" id="protocolo"
label="protocolo" maxlength="50" size="60" />
<f:facet name="footer">
<p:commandButton id="EnviarButton" value="Enviar"
action="#{controleDCTFBean.enviarDCTF()}"
onclick="dlg.hide()" />
</f:facet>
</h:panelGrid>
</p:outputPanel>
</p:dialog>
esse eo meu dialogo, ele exibe certinho os dados vindo da tabela
meu metodos no dao esta rodando certinho q ja testei, so quando chamo o objeto selecionado
dentro do bean ele acusa nulo, segue a classe Bean
import java.util.ArrayList;
import java.util.List;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;
import modelo.Mes;
import modelo.Obrigacoes;
import dao.MesDAO;
import dao.ObrigacoesDAO;
@ManagedBean(name="controleDCTFBean")
@RequestScoped
public class ControleDCTFBean {
//Objs
MesDAO mesdao = new MesDAO();
ObrigacoesDAO obrigacoes = new ObrigacoesDAO();
Obrigacoes obri = new Obrigacoes();
//variavel para o obj selecionado na lista Pendente
Obrigacoes selecionadaObrigacoes;
//Listas para DCTF
private List<Obrigacoes> pendentes = new ArrayList<Obrigacoes>();
private List<Obrigacoes> justificadas = new ArrayList<Obrigacoes>();
private List<Obrigacoes> enviadas = new ArrayList<Obrigacoes>();
private List<Integer> anos = new ArrayList<Integer>();
private List<Mes> mes = new ArrayList<Mes>();
//Variavel para o Dialogo Enviar
private String protocolo;
//variavel para o Dialogo Justificar
private String justificativa;
//Metodo para o Botão Enviar do Dialago Enviar
public String enviarDCTF(){
obrigacoes.alterarStatusEnviada(this.selecionadaObrigacoes);
return "dctf";
}
//Metodo para o Botão Justificar do Dialogo Justificar
public void justificarDCTF(){
}
//Método para listar as DCTFs Pendentes
@SuppressWarnings("unchecked")
public List<Obrigacoes> listarPendentes() {
this.pendentes = obrigacoes.listarPendentes();
return pendentes;
}
//Método para listar as DCTFs Enviadas
@SuppressWarnings("unchecked")
public List<Obrigacoes> listarEnviadas() {
this.enviadas = obrigacoes.listarEnviadas();
return this.enviadas;
}
//Métdo para listar as DCTFs Justificadas
@SuppressWarnings("unchecked")
public List<Obrigacoes> listarJustificadas() {
this.justificadas = obrigacoes.listarJustificadas();
return this.justificadas;
}
//Método para listar todos os anos
@SuppressWarnings("unchecked")
public List<Integer> listarAnos(){
this.anos = obrigacoes.listarAnos();
return this.anos;
}
//Método para listar todos os meses
@SuppressWarnings("unchecked")
public List<Mes> listarMes(){
this.mes = mesdao.listarMes();
return this.mes;
}
//get e set para varivel justificativa
public String getJustificativa() {
return justificativa;
}
public void setJustificativa(String justificativa) {
this.justificativa = justificativa;
}
//get e set para lista justificadas
public List<Obrigacoes> getJustificadas() {
return justificadas;
}
public void setJustificadas(List<Obrigacoes> justificadas) {
this.justificadas = justificadas;
}
//get e set para variavel protocolo
public String getProtocolo() {
return protocolo;
}
public void setProtocolo(String protocolo) {
this.protocolo = protocolo;
}
//get e set para o obj obrigacoes da classe ObrigacoesDAO
public ObrigacoesDAO getObrigacoes() {
return obrigacoes;
}
public void setObrigacoes(ObrigacoesDAO obrigacoes) {
this.obrigacoes = obrigacoes;
}
//get e set para o obj obri
public Obrigacoes getObri() {
return obri;
}
public void setObri(Obrigacoes obri) {
this.obri = obri;
}
//get e set para a lista pendentes
public List<Obrigacoes> getPendentes() {
return pendentes;
}
public void setPendentes(List<Obrigacoes> pendentes) {
this.pendentes = pendentes;
}
//get e set para a lista enviadas
public List<Obrigacoes> getEnviadas() {
return enviadas;
}
public void setEnviadas(List<Obrigacoes> enviadas) {
this.enviadas = enviadas;
}
//get e set para variavel anos
public List<Integer> getAnos() {
return anos;
}
public void setAnos(List<Integer> anos) {
this.anos = anos;
}
//get e set para variavel selecionadaObrigacoes
public Obrigacoes getSelecionadaObrigacoes() {
return selecionadaObrigacoes;
}
public void setSelecionadaObrigacoes(Obrigacoes selecionadaObrigacoes) {
this.selecionadaObrigacoes = selecionadaObrigacoes;
}
}
se ele exibe no dialogo o item selecionado, apenas incluo o protocolo q vem de um inputText do dialogo acessando a msm variavel(selecionadaObrigacoes.protocolo) utilizando action para retornar a propria pagina e fazer um refresh nela pra atualizar as tabelas
acusa este erro
Jul 11, 2012 9:49:41 AM com.sun.faces.lifecycle.ProcessValidationsPhase execute
Advertência: /visual/obrigacoes/dctf.xhtml @206,61 value="#{controleDCTFBean.selecionadaObrigacoes.protocolo}": Target Unreachable, ‘selecionadaObrigacoes’ returned null
javax.el.PropertyNotFoundException: /visual/obrigacoes/dctf.xhtml @206,61 value="#{controleDCTFBean.selecionadaObrigacoes.protocolo}": Target Unreachable, ‘selecionadaObrigacoes’ returned null
Agradeço desde ja