ManagedBean

3 respostas
CristianPalmaSola10
<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://java.sun.com/jsf/html">
    <h:head>
        <title>Facelet Title</title>
        <link rel="stylesheet" href="bootstrap\css\bootstrap.css"/>
        <script type="text/javascript" src="bootstrap\js\bootstrap.js"></script>
        <script type="text/javascript" src="bootstrap\js\funcoes.js"></script>
        <script type="text/javascript" src="bootstrap\js\jquery.js"></script>
    </h:head>
    <h:body>
        
                <div class="navbar navbar-fixed-top">
            <div class="navbar-inner">
                <div class="container">
                    <a   >
                        &lt;span class="icon-bar"&gt;&lt;/span&gt;
                        &lt;span class="icon-bar"&gt;&lt;/span&gt;
                        &lt;span class="icon-bar"&gt;&lt;/span&gt;
                    </a>
                    <a  >Sistema Financeiro Web</a>
                    &lt;div class="nav-collapse"&gt;
                        <ul >
                            <li><a >Home</a></li>
                            <li><a >Sobre</a></li>
                            <li><a >Contato</a></li>
                        </ul>
                    &lt;/div&gt;
                &lt;/div&gt;
            &lt;/div&gt;
        &lt;/div&gt;

        <br/>
        <br/>
        <br/>

        &lt;div class="container"&gt;
            &lt;div class="row"&gt;
                &lt;div class="span3"&gt;
                    &lt;div class="well sidebar-nav" style="height: 342px;"&gt;
                        <ul >
                            <li >Cadastros</li>
                            <li ></li>
                            <li><a >Cadastro Produto</a></li>
                            <li><a >Cadastro Cliente/Fornecedor</a></li>
                            <li><a >Cadastro de Funcionário</a></li>
                            <li ><a >Cadastro Veiculo</a></li>
                            <li ></li>
                        </ul>
                    &lt;/div&gt;
                &lt;/div&gt;

                &lt;div class="span9"&gt;
                    &lt;div class="hero-unit" style="padding-top: 25px; padding-left: 25px; padding-right: 20px; padding-bottom: 25px;"&gt;
                        &lt;h:form class="form-horizontal"&gt;
                            &lt;fieldset&gt;
                                &lt;legend&gt;Cadastro de Veiculo&lt;/legend&gt;
                                
                                &lt;div class="control-group"&gt;
                                    &lt;label class="control-label"&gt;Modelo&lt;/label&gt;
                                    &lt;div class="controls"&gt;
                                        &lt;input type="text" id="cp_modelo" class="input-xlarge" value="#{veiculoControler.veiculo.modelo}"/&gt;
                                    &lt;/div&gt;
                                &lt;/div&gt;
                                
                                &lt;div class="control-group"&gt;
                                    &lt;label class="control-label"&gt;Marca&lt;/label&gt;
                                    &lt;div class="controls"&gt;
                                        &lt;input type="text" id="cp_marca" class="input-xlarge" value="#{veiculoControler.veiculo.marca}"/&gt;
                                    &lt;/div&gt;
                                &lt;/div&gt;
                                
                                &lt;div class="control-group"&gt;
                                    &lt;label class="control-label"&gt;Placa&lt;/label&gt;
                                    &lt;div class="controls"&gt;
                                        &lt;input type="text" id="cp_placa" class="input-xlarge" 
                                               onkeypress="{return formatarPlacaVeiculo(event, cp_placa)}"
                                               value="#{veiculoControler.veiculo.placa}"/&gt;
                                    &lt;/div&gt;
                                &lt;/div&gt;
                                
                                &lt;div class="control-group"&gt;
                                    &lt;label class="control-label"&gt;Combustivel&lt;/label&gt;
                                    &lt;div class="controls"&gt;
                                        &lt;select id="cp_combustivel"&gt;
                                            &lt;option value="0"&gt;Gasolina&lt;/option&gt;
                                            &lt;option value="1"&gt;Diesel&lt;/option&gt;
                                            &lt;option value="2"&gt;Alcool&lt;/option&gt;
                                            &lt;option value="3"&gt;Gás&lt;/option&gt;
                                            &lt;option value="4"&gt;Bio-Diesel&lt;/option&gt;
                                        &lt;/select&gt;
                                    &lt;/div&gt;
                                &lt;/div&gt;
                                
                                &lt;div class="form-actions"&gt;
                                    &lt;h:commandButton class="btn btn-primary btn-large" action="#{veiculoControler.exibeVeiculo()}" value="Cadastrar"/&gt;
                                    &lt;h:commandButton type="reset" class="btn btn-large" value="Limpar" style="margin-left: 10px;"/&gt;
                                &lt;/div&gt;
                            &lt;/fieldset&gt;
                        &lt;/h:form&gt;

                    &lt;/div&gt;
                &lt;/div&gt;
            &lt;/div&gt;

            <br/>
            <br/>
            <br/>
            <br/>
            <br/>
            <br/>
            <br/>

            &lt;hr/&gt;

            &lt;footer&gt;
                <p>© Cristian Elder Urbainski - 2012</p>
            &lt;/footer&gt;

        &lt;/div&gt;
    &lt;/h:body&gt;
&lt;/html&gt;
package entidade;

/**
 * @author Cristian
 */
public class Veiculo {
    
    private String placa;
    private String modelo;
    private String marca;
    private Integer combustivel;
    
    public Veiculo()
    {
        this.placa = "";
        this.modelo = "";
        this.marca = "";
        this.combustivel = 0;
    }

    public Integer getCombustivel() {
        return combustivel;
    }

    public void setCombustivel(Integer combustivel) {
        this.combustivel = combustivel;
    }

    public String getMarca() {
        return marca;
    }

    public void setMarca(String marca) {
        this.marca = marca;
    }

    public String getModelo() {
        return modelo;
    }

    public void setModelo(String modelo) {
        this.modelo = modelo;
    }

    public String getPlaca() {
        return placa;
    }

    public void setPlaca(String placa) {
        this.placa = placa;
    }
    
}
package controler;

import entidade.Veiculo;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.swing.JOptionPane;

/**
 * @author Cristian
 */
@ManagedBean
@SessionScoped
public class VeiculoControler {
    private Veiculo veiculo = new Veiculo();
    
    public VeiculoControler()
    {
        veiculo = new Veiculo();
    }
    
    public Veiculo getVeiculo()
    {
        if(veiculo == null)
        {
            veiculo = new Veiculo();
        }
        
        return veiculo;
    }
    
    public void exibeVeiculo()
    {
        if(veiculo == null)
        {
            return;
        }
        
        JOptionPane.showMessageDialog(null, veiculo.getPlaca() + "  " + veiculo.getMarca() + "  " + veiculo.getModelo());
    }
}

Quando o clico no botao cadastrar ja com o form preenchido, exibo um joptionpane com as propriedades do veiculo, porem exibe vazio, porque o valor que digitei nos campos do form naum foi par o bean pq?

3 Respostas

Hebert_Coelho

JOptionPane é coisa de programação desktop. JSF é para WEB.

Ou você coloca a mensagem para ser exibida na página ou para ser exibida no console.

CristianPalmaSola10

Com system out println naum exibe no console, sabe pq?

CristianPalmaSola10

Exibiu no console, mas o que digito nos campos naum vai pra o bean veiculo que esta dentro do meu managedBean

Criado 26 de março de 2012
Ultima resposta 26 de mar. de 2012
Respostas 3
Participantes 2