Setar valores no Bean

Preciso de uma ajuda, meu Bean tá ficando doido.

Estou usando o NetBean 4.1 com o container da Sun.

Tenho uma tela JSP e nela utilizo a tag useBean

<jsp:useBean id="MeuBean" class="br.empresa.MeuBean" scope="session"/>

onde também utilizo o setproperty do bean

<jsp:setProperty name="MeuBean" property="*" />

Todos os campos do meu formulário na tela está com o mesmo nome que está nos atributos do meu Bean (igualzinho).

Mas tem dois campos do formulário que não está pegando.

Estou lendo os valores do meu Bean na servlet, através da seguinte linha de código:

MeuBean     bean = new MeuBean();
bean = (MeuBean)session.getAttribute("MeuBean");

Todos os campos da tela ele está lendo, apenas dois que não estão.
Mando exibir o código fonte do browser e os valores estão lá.

O que será que pode estar acontecendo?

Utilizo o JDeveloper e lá funciona normalmente.

:roll:

da pra postar teu código? completo e apontando onde estão as coisas? se nao me engano tu ja postou isso aqui uma vez e nao conseguiu solução…

Meu Bean:

[code]
package br.empresa;

public class MeuBean {
private String datEmissao;
private String chrEfetivacao;
private int numPortaria;
private int uDesp_NumUnidadeDesp;
private int fonte_NumFonte;
private int usu_Numusuario;
private int numIdentificador;
private int udesp_NumUnidadeDesp_Org;

public MeuBean() {
    
}
  
public String getChrEfetivacao() {
    return chrEfetivacao;
}    


public String getDatEmissao() {
    return datEmissao;
}

public int getFonte_NumFonte() {
    return fonte_NumFonte;
}


public int getNumPortaria() {
    return numPortaria;
}    

public int getUDesp_NumUnidadeDesp() {
    return uDesp_NumUnidadeDesp;
}    

public int getUsu_Numusuario() {
    return usu_Numusuario;
}

public void setChrEfetivacao(String chrEfetivacao) {
    this.chrEfetivacao = chrEfetivacao;
}

 
public void setDatEmissao(String datEmissao) {
    this.datEmissao = datEmissao;
}

public void setFonte_NumFonte(int fonte_NumFonte) {
    this.fonte_NumFonte = fonte_NumFonte;
}


public void setNumPortaria(int numPortaria) {
    this.numPortaria = numPortaria;
}

public void setUDesp_NumUnidadeDesp(int uDesp_NumUnidadeDesp) {
    this.uDesp_NumUnidadeDesp = uDesp_NumUnidadeDesp;
}    

public void setUsu_Numusuario(int usu_Numusuario) {
    this.usu_Numusuario = usu_Numusuario;
}

public int getNumIdentificador()  {
    return numIdentificador;
}

public void setNumIdentificador(int numIdentificador)  {
    this.numIdentificador = numIdentificador;
}

public int getUdesp_NumUnidadeDesp_Org()  {
    return udesp_NumUnidadeDesp_Org;
}

public void setUdesp_NumUnidadeDesp_Org(int udesp_NumUnidadeDesp_Org)  {
    this.udesp_NumUnidadeDesp_Org = udesp_NumUnidadeDesp_Org;
}        

}[/code]

Meu JSP:


<jsp:useBean id="MeuBean" class="br.empresa.MeuBean" scope="session"/> 
<jsp:setProperty name="MeuBean" property="*" />
 
.
.

<input type="hidden" name="uDesp_NumUnidadeDesp" value=<%=Util.trataParseString(request.getParameter("uDesp_NumUnidadeDesp"))%>  >  

<td class="labelOp" align="right" width="10%" > Status </td>  
      <td width="20%" class="labelOb">          
  <select name="chrEfetivacao" >
                  <option value="" ></option>
                  <option value="S"   >Sim</option>
                  <option value="N"   >Não</option>
                </select>  
.
.

No servlet:

public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

.
.
MeuBean     bean = new MeuBean(); 
bean = (MeuBean)session.getAttribute("MeuBean"); 
.
.
}

O atributo uDesp_NumUnidadeDesp não está recebendo valor, os demais estão.

Thank’s.

seguinte, o erro ta com relação no nome do atributo no teu html, e o nome do método… veja, bem, no html vc tem uDesp_NumUnidadeDesp, e o nome do método é setUdesp_NumUnidadeDesp_Org, quando este deveria ser setUDesp_NumUnidadeDesp_Org, eu acredito q seja isso, teste e vamos ver se a gente acerta :joia:

Uéééé!?

Isso não deveria ser apontado no deploy do Bean?

Todo deploy q vc faz deve estar em confirmidade com a especificação da EJBX.X que o container está utilizando. Ou não? :roll:

[quote=“Taz”]Uéééé!?

Isso não deveria ser apontado no deploy do Bean?

Todo deploy q vc faz deve estar em confirmidade com a especificação da EJBX.X que o container está utilizando. Ou não? :roll:[/quote]

Taz, não estamos falando de EJB.

Existem dois métodos no Bean com nomes parecidos (setUDesp_NumUnidadeDesp e setUdesp_NumUnidadeDesp_Org).

O que estou me referindo é o setUDesp_NumUnidadeDesp que já existe no Bean.

Dê uma olhada novamente no código.

bem, então não sei… mas algo me diz q o problema é quanto nomeclatura…

dica: use as convenções java de nomeclatura… não q resolva o seu problema, mas pra quem ta acostumado fica melhor pra ler :joia:

[quote=“matheus”]bem, então não sei… mas algo me diz q o problema é quanto nomeclatura…

dica: use as convenções java de nomeclatura… não q resolva o seu problema, mas pra quem ta acostumado fica melhor pra ler :joia:[/quote]

Já estou usando o padrão de nomenclatura.

Olha só, o nome do campo do meu formulário é:

uDesp_NumUnidadeDesp

No meu Bean:

private int uDesp_NumUnidadeDesp;

public int getUDesp_NumUnidadeDesp() { 
        return uDesp_NumUnidadeDesp; 
    } 

public void setUDesp_NumUnidadeDesp(int uDesp_NumUnidadeDesp) { 
        this.uDesp_NumUnidadeDesp = uDesp_NumUnidadeDesp; 
    }  

O nome dos campos do meu formulário estão iguais ao que está no Bean.
Mas apenas um campo o meu Bean não lê.

O que será que pode estar acontecendo de estranho???

:?:

Olá,

Ainda não consegui resolver meu problema, será que alguém pode me ajudar.

:roll:

bah eu levanto a bandeira branca cara… só vendo ai… :cry:

ps: por nomeclatura de Java eu me refiro a tu tirar esses “_” dos nomes e usar menos abreviaturas :slight_smile:

Cara,

Já tentei de tudo.
Diminui o nome dos atributos para ver se era isto, mas não deu certo.

Os nomes do jeito que estão tem um significado para a empresa, é assim mesmo.

Tenho uma outra tela que um dos campos tem “_” e não estou tendo problema nenhum.

O que será que pode estar acontecendo??
Tô pirando já!!!

:yoq:

Acho que vou continuar usando o JDeveloper, póis com ele não dá erro nenhum.

ta… calma ai, JDeveloper é uma coisa… uma IDE, container é outra… :roll:

cara foi mal…

Vou continuar usando o container OC4J junto com a IDE JDeveloper, pois sei que lá não está dando problema nenhum.

Tem como usar o container OC4J com o NetBeans???

[quote=“vansol”]
Tem como usar o container OC4J com o NetBeans???[/quote]

não sei, mas como todo fornecedor faz de tudo pra amarrar o desenvolvedor ao seu produto, deve ser bem difícil de usar o OC4J em outra coisa q nao seja da Oracle… :roll:

Sei que dá para usar o OC4J com o Eclipse. Achei neste link aqui:

http://www.oracle.com/technology/tech/java/oc4j/1013/howtos/how-to-configure-lomboz/doc/lomboz-howto-part-1.html

mas com o NetBeans não achei nada.

Bem,

porque você não usa o lomboz no eclipse? Bem dei uma olha no site do NetBeans e não achei suporte a este container não. Cao tenha dúvidas quanto a instalação do Lomboz pode recorrer aos artigos do PJ que tem materiais de suporte para isto.

:okok: