Olá amigos java, estou começando no fantástico mundo dos códigos e estou criando uma aplicação web que gera QRCode porém estava acompanhando um tutorial https://www.youtube.com/watch?v=TV4RcnBY_SU e fiz tudo igual ao professor e não deu certo, não sei lidar com erros java ainda mas alguém pode me dar uma força nesse erro em específico? att
package com.myapp.struts;
import java.io.ByteArrayOutputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JOptionPane;
import net.glxn.qrgen.QRCode;
import net.glxn.qrgen.image.ImageType;
/**
*
-
@author Ana
*/
public class QRCodeSwing extends javax.swing.JFrame {/**
- Creates new form QRCode
*/
public QRCodeSwing() {
initComponents();
}
/**
-
This method is called from within the constructor to initialize the form.
-
WARNING: Do NOT modify this code. The content of this method is always
-
regenerated by the Form Editor. */ @SuppressWarnings(“unchecked”) // private void initComponents() {
jPanel1 = new javax.swing.JPanel(); jScrollPane1 = new javax.swing.JScrollPane(); textoParaQRCode = new javax.swing.JTextArea(); btnGerar = new javax.swing.JButton(); btnLimpar = new javax.swing.JButton(); jLabel1 = new javax.swing.JLabel();
setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
getContentPane().setLayout(null);jPanel1.setBackground(new java.awt.Color(255, 255, 255));
jPanel1.setBorder(javax.swing.BorderFactory.createEtchedBorder());textoParaQRCode.setColumns(20); textoParaQRCode.setRows(5); jScrollPane1.setViewportView(textoParaQRCode);
btnGerar.setText(“Gerar QR Code”); btnGerar.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { btnGerarActionPerformed(evt); } });
btnLimpar.setText(“Limpar Texto”); btnLimpar.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { btnLimparActionPerformed(evt); } });
javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1); jPanel1.setLayout(jPanel1Layout); jPanel1Layout.setHorizontalGroup( jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel1Layout.createSequentialGroup() .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel1Layout.createSequentialGroup() .addGap(179, 179, 179) .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 386, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGroup(jPanel1Layout.createSequentialGroup() .addGap(244, 244, 244) .addComponent(btnGerar) .addGap(85, 85, 85) .addComponent(btnLimpar))) .addContainerGap(271, Short.MAX_VALUE)) ); jPanel1Layout.setVerticalGroup( jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel1Layout.createSequentialGroup() .addGap(39, 39, 39) .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(41, 41, 41) .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(btnGerar) .addComponent(btnLimpar)) .addContainerGap(167, Short.MAX_VALUE)) );
getContentPane().add(jPanel1);
jPanel1.setBounds(120, 40, 840, 370);jLabel1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/imagem/azul abstrato.jpg"))); // NOI18N getContentPane().add(jLabel1); jLabel1.setBounds(0, 0, 1920, 1357);
setSize(new java.awt.Dimension(1100, 572)); setLocationRelativeTo(null); }//
private void btnLimparActionPerformed(java.awt.event.ActionEvent evt) { textoParaQRCode.setText(null); }
private void btnGerarActionPerformed(java.awt.event.ActionEvent evt) { //geraçao do QRCode int size = 125; //tamanho String nomeArquivo = “Mattheus.png”;//nome do arquivo de saida try ( FileOutputStream f = new FileOutputStream(nomeArquivo);//fileout arquivo de saida ByteArrayOutputStream out = QRCode.from(textoParaQRCode.getText()) .to(ImageType.PNG) .withSize(size,size) .stream();
){ f.write(out.toByteArray());//gravando o arquivo f.close(); JOptionPane.showMessageDialog(rootPane, "ok", "Arquivo ",+nomeArquivo+" gerado com sucesso!",JOptionPane.INFORMATION_MESSAGE); } catch (IOException ex) { Logger.getLogger(QRCode.class.getName()).log(Level.SEVERE, null, ex); }
}
/**
-
@param args the command line arguments
/
public static void main(String args[]) {
/ Set the Nimbus look and feel /
//
/ If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.- For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
*/
try {
for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
if (“Nimbus”.equals(info.getName())) {
javax.swing.UIManager.setLookAndFeel(info.getClassName());
break;
}
}
} catch (ClassNotFoundException ex) {
java.util.logging.Logger.getLogger(QRCode.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(QRCode.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(QRCode.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(QRCode.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
}
//
/* Create and display the form */ java.awt.EventQueue.invokeLater(new Runnable() { public void run() { new QRCode().setVisible(true);
}});
} - For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
// Variables declaration - do not modify private javax.swing.JButton btnGerar; private javax.swing.JButton btnLimpar; private javax.swing.JLabel jLabel1; private javax.swing.JPanel jPanel1; private javax.swing.JScrollPane jScrollPane1; private javax.swing.JTextArea textoParaQRCode; // End of variables declaration }
- Creates new form QRCode