1. java
  2. android
  3. c#
  4. .net
  5. javascript
  6. php
  7. jquery
  8. html
  9. sql

Não encontra o arquivo .properties

Galera, eu adicionei o arquivo .properties, porem não encontra o arquivo...

da o erro:

Exception in thread "main" java.lang.NullPointerException
    at javax.swing.ImageIcon.<init>(Unknown Source)
    at Ares.View.BaseView.<init>(BaseView.java:92)
    at Ares.Control.Controle.main(Controle.java:8)
package Ares.View;

import java.util.Locale;
import java.util.ResourceBundle;

public class Internacionalizacao
{
    public String acesso="";
    public String menu="";
    public String propriedades="";
    public String suporte="";
    public String usuario="";
    public String consultarVeiculo="";
    public String locarVeiculo="";
    public String manterVeiculo="";
    public String baseCliente="";
    public String devolverVeiculo="";
    public String pagamento="";
    public String alterarIdioma="";
    public String sobre="";

    private ResourceBundle bn = null;

    public Internacionalizacao()
    {
        int op = 3;//ESSA VARIAVEL É A OPÇÃO DA LINGUAGEM

        switch(op)
        {

        case 1: bn = ResourceBundle.getBundle("Linguagem", new Locale("pt", "BR"));
        break;

        case 2: bn = ResourceBundle.getBundle("Linguagem", new Locale("es", "ES"));
        break;

        case 3: bn = ResourceBundle.getBundle("Linguagem", Locale.US);
        break;

        default: bn = ResourceBundle.getBundle("Linguagem");
        break;

        }

        acesso=bn.getString("telaPrincipal.botao.Acesso");
        menu=bn.getString("telaPrincipal.botao.Menu");
        propriedades=bn.getString("telaPrincipal.botao.Propriedades");
        suporte=bn.getString("telaPrincipal.botao.Suporte");
        usuario=bn.getString("telaPrincipal.botao.Usuario");
        consultarVeiculo=bn.getString("telaPrincipal.botao.ConsultarVeiculo");
        locarVeiculo=bn.getString("telaPrincipal.botao.LocarVeiculo");
        manterVeiculo=bn.getString("telaPrincipal.botao.ManterVeiculo");
        baseCliente=bn.getString("telaPrincipal.botao.BaseCliente");
        devolverVeiculo=bn.getString("telaPrincipal.botao.DevolverVeiculo");
        pagamento=bn.getString("telaPrincipal.botao.Pagamento");
        alterarIdioma=bn.getString("telaPrincipal.botao.AlterarIdioma");
        sobre=bn.getString("telaPrincipal.botao.Sobre");
    }
}

https://www.filepicker.io/api/file/TB5zX0q0T76w8MIxeaRv

Main: Ares.Control

public class Controle {

    public static void main(String[] args) {
        BaseView bv = new BaseView();
        bv.setVisible(true);
    }

}

Arquivo Linguagem_en_us:

telaPrincipal.botao.Acesso=Access
telaPrincipal.botao.Menu=Menu
telaPrincipal.botao.Propriedades=Properties
telaPrincipal.botao.Suporte=Bracket
telaPrincipal.botao.Usuario=User
telaPrincipal.botao.ConsultarVeiculo=Consult vehicle
telaPrincipal.botao.LocarVeiculo=Lease vehicle
telaPrincipal.botao.ManterVeiculo=keep vehicle
telaPrincipal.botao.BaseCliente=Customer base
telaPrincipal.botao.DevolverVeiculo=Return vehicle
telaPrincipal.botao.Pagamento=Payment
telaPrincipal.botao.AlterarIdioma=Change Language
telaPrincipal.botao.Sobre=About

BaseView:

package Ares.View;

import java.awt.*;

@SuppressWarnings("serial")
public class BaseView extends JFrame implements ActionListener{
    private JMenuItem menuItemConsultar,menuItemIdioma,menuItemLocar,menuItemLogin,menuItemManter,menuItemSobre,menuItemCliente,
                        menuItemDevolver,menuItemPagamento;
    private JMenu mnSuporte,mnMenu,mnPropriedades,mnAcesso;
    private JMenuBar menuBar;
    private Panel panelInfo;
    private JLabel lblUsurioLogado,lblBackGround;
    private JInternalFrame j;

    Internacionalizacao inter = new Internacionalizacao();

    private void initializeVariables()
    {
        menuItemConsultar = new JMenuItem(inter.consultarVeiculo);
        menuItemLocar= new JMenuItem(inter.locarVeiculo);
        menuItemManter = new JMenuItem(inter.manterVeiculo);
        menuBar = new JMenuBar();
        mnMenu = new JMenu(inter.menu);
        lblUsurioLogado = new JLabel("Usuário Logado:");
        panelInfo = new Panel();
        lblBackGround = new JLabel("");
        menuItemCliente = new JMenuItem(inter.baseCliente);
        mnAcesso = new JMenu(inter.acesso);
        menuItemDevolver = new JMenuItem(inter.devolverVeiculo);
        menuItemSobre = new JMenuItem(inter.sobre);
        menuItemPagamento = new JMenuItem(inter.pagamento);
        mnPropriedades = new JMenu(inter.propriedades);
        menuItemIdioma = new JMenuItem(inter.alterarIdioma);
        mnSuporte = new JMenu(inter.suporte);
        menuItemLogin = new JMenuItem(inter.usuario);
    }

    private void addOnPane()
    {
        getContentPane().add(panelInfo);
    }

    private void addEvent()
    {
        mnSuporte.addActionListener(this);
        menuItemConsultar.addActionListener(this);
        menuItemIdioma.addActionListener(this);
        menuItemLocar.addActionListener(this);
        menuItemLogin.addActionListener(this);
        menuItemManter.addActionListener(this);
        menuItemSobre.addActionListener(this);
        menuItemCliente.addActionListener(this);
        menuItemDevolver.addActionListener(this);
        menuItemPagamento.addActionListener(this);
    }

    private void setBounds()
    {
        setBounds(100, 100, 899, 550);
        panelInfo.setBounds(0, 485, 893, 16);
        lblUsurioLogado.setBounds(10, 0, 564, 14);
    }

    public BaseView() {
        setTitle("Ares - Locacão de veículos");
        setResizable(false);
        try {
            UIManager.setLookAndFeel("javax.swing.plaf.nimbus.NimbusLookAndFeel");
            //UIManager.setLookAndFeel("com.jtattoo.plaf.hifi.HiFiLookAndFeel");
            //UIManager.setLookAndFeel("com.jtattoo.plaf.mcwin.McWinLookAndFeel");
            //UIManager.setLookAndFeel("com.jtattoo.plaf.acryl.AcrylLookAndFeel");
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        } catch (InstantiationException e) {
            e.printStackTrace();
        } catch (IllegalAccessException e) {
            e.printStackTrace();
        } catch (UnsupportedLookAndFeelException e) {
            e.printStackTrace();
        }

        initializeVariables();
        setBounds(); //Ajusta os elementos na tela
        addEvent(); //Cria os eventos

        //Tutoriais: www.javafree.com.br
        setIconImage(Toolkit.getDefaultToolkit().getImage(BaseView.class.getResource("/Images/bmw-mini-icon.png")));
        lblBackGround.setIcon(new ImageIcon(BaseView.class.getResource("/Images/Nissan_car_hd_wallpaper_12-1920x1080.jpg")));
        setContentPane(lblBackGround);
        getContentPane().setBackground(Color.WHITE);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        getContentPane().setLayout(null);

        addOnPane(); //Adiciona todos os componente no container

        menuBar.setBackground(SystemColor.menu);
        setJMenuBar(menuBar);

        mnMenu.setMnemonic('m');
        mnAcesso.setMnemonic('a');
        mnPropriedades.setMnemonic('p');
        mnSuporte.setMnemonic('s');

        menuBar.add(mnAcesso);
        mnAcesso.add(menuItemLogin);
        menuBar.add(mnMenu);
        mnMenu.add(menuItemConsultar);
        mnMenu.add(menuItemLocar);
        mnMenu.add(menuItemManter);
        mnMenu.add(menuItemCliente);
        mnMenu.add(menuItemDevolver);
        mnMenu.add(menuItemPagamento);
        menuBar.add(mnPropriedades);
        mnPropriedades.add(menuItemIdioma);
        menuBar.add(mnSuporte);
        mnSuporte.add(menuItemSobre);

        panelInfo.setLayout(null);
        panelInfo.add(lblUsurioLogado);
    }

    @Override
    public void actionPerformed(ActionEvent e) 
    {
        if(e.getSource() == menuItemConsultar)
        {
            if(verificarTela()) return;
            j = new Consultar();
            abrirTela();
        }
        else if(e.getSource() == menuItemSobre)
        {
            sistemaSobre();
        }
        else if(e.getSource() == menuItemIdioma)
        {
            if(verificarTela()) return;
            j = new Idioma();
            abrirTela();
        }
        else if(e.getSource() == menuItemLocar)
        {
            if(verificarTela()) return;
            j = new Locar();
            abrirTela();
        }
        else if(e.getSource() == menuItemLogin)
        {
            if(verificarTela()) return;
            j = new Login();
            abrirTela();
        }
        else if(e.getSource() == menuItemManter)
        {
            if(verificarTela()) return;
            j = new Manter();
            abrirTela();
        }
        else if(e.getSource() == menuItemCliente)
        {
            if(verificarTela()) return;
            j = new Cliente();
            abrirTela();
        }
        else if(e.getSource() == menuItemDevolver)
        {
            if(verificarTela()) return;
            j = new Devolver();
            abrirTela();
        }
        else if(e.getSource() == menuItemPagamento)
        {
            if(verificarTela()) return;
            j = new Pagamento();
            abrirTela();
        }
    }

    private void abrirTela()
    {
        getContentPane().add(j);
        j.setVisible(true);
        try {
            j.setMaximum(true);
        } catch (PropertyVetoException e1) {
            JOptionPane.showMessageDialog(null, "Erro ao abrir menu!");
        }
    }

    private boolean verificarTela()
    {
        boolean x = false;
        if (j != null)
        {
            if(!j.isClosed())  
            {
                x = true;
                JOptionPane.showMessageDialog(null,"A tela " + j.getTitle() + " está aberta!");
            }
        }
        return x;
    }

    private void sistemaSobre()
    {
        JOptionPane.showMessageDialog(null,"Ares é um sistema voltado para o comércio de locação de veículos.\n"
                                        +"Para obter mais informações entre em contato conosco:\n"
                                        +"\nTelefone: 11 2557-5894 \nEmail: ares@suporte.com\n\n"
                                        +"PI Soluções de ponta a ponta!");
    }
}
  • Todos os arquivos possuem as Strings que você está tentando acessar?

    Guilherme Passero   15 de set de 2013
  • Sim, todos possuem as Strings.

    John Leno Brito   15 de set de 2013
  • Faça um teste para verificar se realmente não está carregando o arquivo .properties. Fiz um teste aqui e deu certo. Poste o código de Ares.Control.Controle.main e o seu Linguagem_en_US.properties.

    Guilherme Passero   15 de set de 2013
  • Postei o main e linguaguem_en_US. Vlw

    John Leno Brito   15 de set de 2013
  • Opa.. precisamos também do Ares.View.BaseView. Ele está chamando a classe ImageIcon e esta, por sua vez, está disparando a exceção.

    Guilherme Passero   15 de set de 2013
Mostrar todos os 7 comentários>
  1. Você vai ver essas setas em qualquer página de pergunta. Com elas, você pode dizer se uma pergunta ou uma resposta foram relevantes ou não.
  2. Edite sua pergunta ou resposta caso queira alterar ou adicionar detalhes.
  3. Caso haja alguma dúvida sobre a pergunta, adicione um comentário. O espaço de respostas deve ser utilizado apenas para responder a pergunta.
  4. Se o autor da pergunta marcar uma resposta como solucionada, esta marca aparecerá.
  5. Clique aqui para mais detalhes sobre o funcionamento do GUJ!

1 resposta

Não é a resposta que estava procurando? Procure outras perguntas com as tags java properties ou faça a sua própria pergunta.