Bem gente to com o seguinte problema
Relatorio v = (Relatorio) jRelcodemp.getText();
required: Relatorio
found: String
Ele usara um campo de texto para pegar o codigo!
E está dando esse erro!
Bem gente to com o seguinte problema
Relatorio v = (Relatorio) jRelcodemp.getText();
required: Relatorio
found: String
Ele usara um campo de texto para pegar o codigo!
E está dando esse erro!
O problema é q vc está tentando fazer um cast de uma String para uma classe Relatorio, isso não será possível. Vc não tem nenhum código na classe Relatorio que sete o código do relatório?
Na minha classe relatório só tem os métodos getter and setter
public class Relatorio{
private Integer id_cadastro;
private String razao;
public Relatorio(Integer id_cadastro, String razao) {
this.id_cadastro = id_cadastro;
this.razao = razao;
}
public Integer getId_cadastro() {
return id_cadastro;
}
public void setId_cadastro(Integer id_cadastro) {
this.id_cadastro = id_cadastro;
}
public String getRazao() {
return razao;
}
public void setRazao(String razao) {
this.razao = razao;
}
}
Vc não entendeu, o q eu disse é q vc está tentando converter uma String com o método “jRelcodemp.getText()” para uma classe Relatorio
Relatorio v = (Relatorio) jRelcodemp.getText(); // Vc está fazendo o cast de String para Relatorio, não vai funcionar
Se o que vc quer fazer é atribuir o valor do campo jRelcodemp ao campo id_cadastro da classe relatório faça o seguinte:
Relatorio v = new Relatorio(); // cria uma instância da classe Relatorio
v.setId_cadastro(Integer.parseInt(jRelcodemp.getText())); // faz o cast para Integer e atribui a variável id_cadastro da classe Relatorio
Uma dica, por definição variáveis em Java são nomeadas com camelcase, no caso da sua variável id_cadastro, ficaria melhor se vc nomeasse como idCadastro. Não é obrigatório mas é aconselhável.
Tem um artigo interessante que fala sobre isso no link abaixo, se te interessar:
http://java.about.com/od/javasyntax/a/nameconventions.htm
O que eu quero fazer e pegar o valor do campo jRelcodemp para poder ser o parametro para o relatorio!
Quase igual as consultas que eu utilizei nesse projeto. Porém esta dando esse erro!
O que eu quero fazer e pegar o valor do campojRelcodemppara poder ser o parametro para o relatorio!
Quase igual as consultas que eu utilizei nesse projeto. Porém esta dando esse erro!
Como eu já disse nos posts anteriores, vc não vai conseguir converter uma String em um objeto Relatorio, onde vc quer inserir o valor da variável jRelcodemp? Se for na variável id_cadastro é exatamente como expliquei.
Agora o erro que esta dando e esse!
run:
Jul 03, 2013 12:31:43 PM honorarios.HonorariosView jRelsalvarActionPerformed
SEVERE: null
java.lang.UnsupportedOperationException: Not yet implemented
at Modelo.Relatorio.<init>(Relatorio.java:24)
at honorarios.HonorariosView.jRelsalvarActionPerformed(HonorariosView.java:2297)
at honorarios.HonorariosView.access$3700(HonorariosView.java:45)
at honorarios.HonorariosView$32.actionPerformed(HonorariosView.java:1830)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
at java.awt.Component.processMouseEvent(Component.java:6505)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3321)
at java.awt.Component.processEvent(Component.java:6270)
at java.awt.Container.processEvent(Container.java:2229)
at java.awt.Component.dispatchEventImpl(Component.java:4861)
at java.awt.Container.dispatchEventImpl(Container.java:2287)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
at java.awt.Container.dispatchEventImpl(Container.java:2273)
at java.awt.Window.dispatchEventImpl(Window.java:2719)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:723)
at java.awt.EventQueue.access$200(EventQueue.java:103)
at java.awt.EventQueue$3.run(EventQueue.java:682)
at java.awt.EventQueue$3.run(EventQueue.java:680)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.awt.EventQueue$4.run(EventQueue.java:696)
at java.awt.EventQueue$4.run(EventQueue.java:694)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:693)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:244)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:163)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:147)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:139)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:97)
CONSTRUÍDO COM SUCESSO (tempo total: 4 minutos 19 segundos)
Posta o código do botão q vc está acionando qdo aparece o erro.
private void jRelsalvarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jRelsalvarActionPerformed
try {
Relatorio v = new Relatorio();
// cria uma instância da classe Relatorio
v.setId_cadastro(Integer.parseInt(jRelcodemp.getText()));
// faz o cast para Integer e atribui a variável id_cadastro da classe Relatorio
chamaRelatorio visualizarRel = new chamaRelatorio();
visualizarRel.visualizar(v.getId_cadastro());
} catch (Exception ex) {
Logger.getLogger(HonorariosView.class.getName()).log(Level.SEVERE, null, ex);
}
Esse e o codigo do ActionPerformed do botao para gerar o relatorio!
Posta o código da classe chamaRelatorio, se não estou enganado o erro está na implementação do método “visualizar()”.
public class chamaRelatorio {
private Connection conn;
public chamaRelatorio( ) throws Exception{
try {
this.conn = (Connection) ConectaBanco.getConnection( );
} catch( Exception e ) {
throw new Exception( "Erro: \n" + e.getMessage( ) );
}
}
public void visualizar(Integer id_cadastro){
try{
HashMap parameterMap = new HashMap<String, Integer>();
//o Nome do par�¢metro e o valor �© passado ao HashMap
parameterMap.put("COD_EMPRESA", id_cadastro);
//caminho relativo do relat�³rio dentro do pacote
String a = "Relatorios/clientesdiv.jasper";
//l�ª o arquivo dentro do pacote
//mecess�¡rio caso gere um JAR para distribuir
InputStream in = this.getClass().getResourceAsStream(a);
//chama fillReport
JasperPrint jp = JasperFillManager.fillReport(in, parameterMap, conn);
//exibe o relat�³rio com viewReport
JasperViewer.viewReport(jp, false);
}catch (JRException e) {
e.printStackTrace();
} finally {
try {
if (!conn.isClosed()) {
conn.close();
}
} catch (SQLException ex) {}
}
}
}
O erro está em alguma parte do construtor da classe “chamaRelatorio” ou em “ConectaBanco.getConnection( )”, eu não consegui ver pelo erro q foi postado. Dá uma conferida no método getConnection e debuga a classe chamaRelatorio e ConectaBanco p/ descobrir onde exatamente a exceção está sendo lançada, desse jeito vai ficar mais fácil de encontrar o erro.
Uma dica, evite lançar exceções no construtor da classe, não é uma boa prática.
run:
Jul 11, 2013 8:32:45 PM honorarios.HonorariosView jRelsalvarActionPerformed
SEVERE: null
java.lang.NullPointerException
at java.io.ObjectInputStream$PeekInputStream.read(ObjectInputStream.java:2283)
at java.io.ObjectInputStream$PeekInputStream.readFully(ObjectInputStream.java:2296)
at java.io.ObjectInputStream$BlockDataInputStream.readShort(ObjectInputStream.java:2767)
at java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:798)
at java.io.ObjectInputStream.<init>(ObjectInputStream.java:298)
at net.sf.jasperreports.engine.util.ContextClassLoaderObjectInputStream.<init>(ContextClassLoaderObjectInputStream.java:58)
at net.sf.jasperreports.engine.util.JRLoader.loadObject(JRLoader.java:244)
at net.sf.jasperreports.engine.util.JRLoader.loadObject(JRLoader.java:229)
at net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:405)
at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:824)
at util.chamaRelatorio.visualizar(chamaRelatorio.java:54)
at honorarios.HonorariosView.jRelsalvarActionPerformed(HonorariosView.java:2301)
at honorarios.HonorariosView.access$3700(HonorariosView.java:45)
at honorarios.HonorariosView$32.actionPerformed(HonorariosView.java:1830)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
at java.awt.Component.processMouseEvent(Component.java:6505)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3321)
at java.awt.Component.processEvent(Component.java:6270)
at java.awt.Container.processEvent(Container.java:2229)
at java.awt.Component.dispatchEventImpl(Component.java:4861)
at java.awt.Container.dispatchEventImpl(Container.java:2287)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
at java.awt.Container.dispatchEventImpl(Container.java:2273)
at java.awt.Window.dispatchEventImpl(Window.java:2719)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:723)
at java.awt.EventQueue.access$200(EventQueue.java:103)
at java.awt.EventQueue$3.run(EventQueue.java:682)
at java.awt.EventQueue$3.run(EventQueue.java:680)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.awt.EventQueue$4.run(EventQueue.java:696)
at java.awt.EventQueue$4.run(EventQueue.java:694)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:693)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:244)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:163)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:147)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:139)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:97)
CONSTRUÍDO COM SUCESSO (tempo total: 26 segundos)