Chamar a Editora cadastrada em outra classe

1ª Dúvida-
Boa noite a todos quero dizer q sempre uso o busca dos fóruns que participo e o daki é espetacular já me ajudou em muito, mas minha dúvida é a seguinte: Fiz uma janela de nome janelaEditora onde cadastro as mesmas, daí preciso delas numa otra janela chamada janelaPublicações para justamente usar na classe publicaçao, mas não estou conseguindo fazer isso, sempre me retorna null, o q há de errado…

2ª Dúvida-
Otra
Para jogar as editoras dentro dum JList como procedo?

Desde já agradeço…

poxa cara…
não deu para entender nada.

Tente ser mais claro, detalhado e escrever com um português mais coloquial, falar bonito não ta com nada.
E posta parte funcional do seu codigo ai.

Luxu, poste um pouco do teu código. Não dá pra adivinhar o que está acontecendo.

Classe EDITORA

public class Editora implements Serializable
{
    private String local;
    private String nome;
  
    public Editora(String nome, String local) 
    {
      this.local = local;
      this.nome = nome;
    }

    public void setLocal(String local) 
    {
        this.local = local;
    }

    public String getLocal() 
    {
        return local;
    }

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

    public String getNome() 
    {
        return nome;
    }
}

Classe janelaPublicacao


      Livro r = new Livro(new Editora(editora.getNome(),editora.getLocal()),CaixaTitulo.getText(),CaixaAutor.getText(),
      Integer.valueOf(CaixaExemplares.getText()),Integer.valueOf(CaixaPaginas.getText()),CaixaISBN.getText());

PROBLEMA: após cadastrar na classe editora chegando nesta parte acima dá erro NULLPOINTEREXCEPTION…me parece q ele vai na classe EDITORA e num acha nada lá, se for outra coisa me explique detalhadamente…

Se você estiver usando alguma IDE, marca um break point nessa linha que voce cria um novo livro e verifica se todos os objetos foram inicializados.
Caso não, antes dessa linha, adicione um “System.out.println” para cada um dos itens.

Da uma lida tambem no stack trace que a exceção lança. Ele deve estar dizendo qual objeto não foi encontrado.

E você não precisa ficar economizando linhas no seu codigo. Deixe ele bem detalhado e claro. A sua economia de linhas não faz a menor diferença para o compilador.

Mikhas, o problema é a passagem de uma classe para outra pq já fiz isso ó:

    System.out.println(editora.getNome());

e não adiantou nada…

onde vc seta os valores?
onde vc atribui valor para editora?

[quote=marcosharbs]onde vc seta os valores?
onde vc atribui valor para editora?[/quote]

na janelaEditora

[code] private BorderLayout borderLayout1;
private JPanel jPanel1;
private JPanel jPanel2;
private JButton bConfirmar;
private JButton bCancelar;
private JTextField textEditora;
private JTextField textLocalidade;
private Editora ed;

/* public void setEditora(Editora ac)
{
ed=ac;
}
*/
public janelaEditora()
{
this(null, “”, false);
}

public janelaEditora(Frame parent, String title, boolean modal)
{
super(parent, title, modal);
try
{
jbInit();
}
catch (Exception e)
{
e.printStackTrace();
}
}

private void jbInit()
throws Exception
{
borderLayout1 =
(BorderLayout) Beans.instantiate(getClass().getClassLoader(),
BorderLayout.class.getName());
jPanel1 =
(JPanel) Beans.instantiate(getClass().getClassLoader(),
JPanel.class.getName());
jPanel2 =
(JPanel) Beans.instantiate(getClass().getClassLoader(),
JPanel.class.getName());
bConfirmar =
(JButton) Beans.instantiate(getClass().getClassLoader(),
JButton.class.getName());
bCancelar =
(JButton) Beans.instantiate(getClass().getClassLoader(),
JButton.class.getName());
textEditora =
(JTextField) Beans.instantiate(getClass().getClassLoader(),
JTextField.class.getName());
textLocalidade =
(JTextField) Beans.instantiate(getClass().getClassLoader(),
JTextField.class.getName());
this.setSize(new Dimension(400, 200));
this.getContentPane().setLayout(borderLayout1);
this.setTitle(“Nova Editora”);
jPanel1.setLayout(null);
jPanel2.setPreferredSize(new Dimension(10, 50));
jPanel2.setLayout(null);
bConfirmar.setText(“Confirmar”);
bConfirmar.setBounds(new Rectangle(80, 5, 105, 35));
bConfirmar.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
bConfirmar_actionPerformed(e);
}
});
bCancelar.setText(“Cancelar”);
bCancelar.setBounds(new Rectangle(245, 5, 100, 35));
bCancelar.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
bCancelar_actionPerformed(e);
}
});
textEditora.setBounds(new Rectangle(25, 20, 165, 50));
textEditora.setBorder(BorderFactory.createTitledBorder(“Editora:”));
textLocalidade.setBounds(new Rectangle(215, 20, 170, 50));
textLocalidade.setBorder(BorderFactory.createTitledBorder(“Localidade:”));
jPanel1.add(textLocalidade, null);
jPanel1.add(textEditora, null);
this.getContentPane().add(jPanel1, BorderLayout.CENTER);
jPanel2.add(bCancelar, null);
jPanel2.add(bConfirmar, null);
this.getContentPane().add(jPanel2, BorderLayout.SOUTH);
}
private void bConfirmar_actionPerformed(ActionEvent e)
{
UIManager.put(“OptionPane.yesButtonText”, “Sim”);
UIManager.put(“OptionPane.noButtonText”, “Não”);
if (JOptionPane.showConfirmDialog(null,“Armazenar nome da Editora?”,“NOVO NOME”,
JOptionPane.YES_NO_OPTION) == JOptionPane.YES_OPTION)
ed = new Editora(textEditora.getText(),textLocalidade.getText());
textEditora.setText("");
textLocalidade.setText("");
//System.out.println(ed.getNome());
// System.out.println(ed.getLocal());
}
private void bCancelar_actionPerformed(ActionEvent e)
{

dispose();

}
[/code]

Simples vc não esta usando os metodo corretos

para entender melho :

vc esta criando um formulario
que componentes esse formulario tem
tipo um label um caixa de texto.
vc não pode utilizar getText mais sim o setText(editora.getnome)

[quote=jolivier]Simples vc não esta usando os metodo corretos

para entender melho :

vc esta criando um formulario
que componentes esse formulario tem
tipo um label um caixa de texto.
vc não pode utilizar getText mais sim o setText(editora.getnome)

[/quote]

Onde usar o setText?

desculpe não saber estou aprendendo ainda…

up

descupa pela demora estou no trabalho

Explica como e seu formulario, seu frame.
Um Exemplo

vc que que um determinado Label receba o nome da edtora e so fazer assim:

label.setText(editora.getnome)

mas em que parti do codigo vc vai fazer isso?
vc vai ter que escolhe um evento para isso.