Questão simples em JSF

Tenho uma página de atualização, eu preciso que assim que ela for acessada, ela me traga o nome atual do bean no componente “input”. E no momento em que eu pressionar o botão atualizar ela lógicamente atualiza com o novo dado que eu escrever no input.

Segue o código para ficar mais claro:

A pagina:

<%@ page contentType="text/html;charset=windows-1252"%> <%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%> <%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%> <%@ taglib uri="http://myfaces.apache.org/tomahawk" prefix="t"%> <f:view> <html> <body><h:form id="form"> <h:inputText value="#{ ? }" binding="{ ? }"/> <h:commandButton value="Atualizar"> </body>></h:form> </html> </f:view

O Bean:

public class BkbAtualizar {

    private String nome;

    public BkbAtualizar() {
    }

    public void setNome(String nome) {
        this.nome = nome;
    }

    public String getNome() {
        return nome;
    }
}

O faces-config esta em branco pois não sei se devo ou não colocar a classe acima como um managed-bean e o scope dela.

Esta faltando algo? Quem puder ajudar eu agradeço, é simples a dúvida pois sou iniciante em JSF.[/code]

Eu não entendi bem o que voccê quer dizer com

mas se o nome atual do bean for o atributo nome que tem dentro do seu bean, vc faz:

<f:view>
   <h:form id="form">
      <h:inputText value="#{testeMB.nome}"/>
         <h:commandButton value="Atualizar" action="#{testeMB.atualizar}>
      </h:form>
</f:view>

Isso quer dizer que vc tera um input que sera ligado ao atributo nome do managed bean com nome testeMB (para isso o atributo nome deve seguir os padrões java bean, ou seja, ter get e set).

Ai sim, vc vai precisar colocar seu bean no faces-config

<faces-config>
   <managed-bean>
      <managed-bean-name>testeMB</managed-bean-name>
      <managed-bean-class>seu.package.BkbAtualizar</managed-bean-class>
      <managed-bean-scope>session</managed-bean-scope>
   </managed-bean>
</faces-config>

Quando vc clicar em atualizar, o JSF ja vai setar o nome digitado no input no atributo nome do seu bean, e executar o método atualizar, onde então devera ter seu código de atualização (a um banco de dados, arquivo, ou seja la o que você queira atualizar)

public class BkbAtualizar {
   private String nome;
   public BkbAtualizar() {
   }

   public void setNome(String nome) {
      this.nome = nome;
   }

   public String getNome() {
      return nome;
   }

   public String atualizar() {
      //atualiza o que você quizer, o atributo nome ja vai estar setado com o que você digitou no input la na pagina.
      return null; //aqui vc retorna para onde o usuario deve ir (navigation-rule), no caso null vai ficar na mesma pagina onde o atualiza foi invocado.
   }
} 

Era isso que você queria?!

[quote]Eu não entendi bem o que voccê quer dizer com

[quote:e44a40b6e4]Citação:

ela me traga o nome atual do bean no componente “input”[/quote]

[/quote][/quote]

Queria dizer que, no momento que a página fosse carregada, eu queria que já viesse com algum dado no input(algum dado que foi atualizado na última vez)
Por exemplo: Gostaria que o input viesse preenchido com “erick” e eu fosse então atualizar para “erick flores”.

Mas era isso a minha dúvida.
Valeu.

Estes códigos passados no post anterior faz o que você precisa.

:okok: