Pessoal,
Estou com dificultade de criar um metodo que reconecte o meu socket cliente.
já tentei de farias formas.A mais proxima que cheguei foi de colocar o metodo que cria um novo socket no bloco finaly, mas depois de reconectar eu preciso mandar logar novamente e é aí que tô travando:
vou postar meu codigo, se alguem puder me dar uma luz agradeço muito.
classe que faz a leitura
package br.com.gennex.socket;
//import br.com.log.LogWriter;
import br.com.gennex.front.FrontEnd;
import br.com.gennex.properties.CarregaProperties;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.Socket;
import java.util.Observable;
import javax.swing.JOptionPane;
import org.apache.log4j.*;
/**
*
* @author leonardo
*/
public class SocketLeitura extends Observable implements Runnable{
private String telRecebido = null;
private String dadosAdicionais = null;
private String popUp = null;
CarregaProperties cp = new CarregaProperties();
SocketCon scon;
String reconectou = "false";
public SocketLeitura(){
}
//Acessobdmssql acbd = new Acessobdmssql();
//LogWriter lw = new LogWriter();
public String reconectou(){
return reconectou;
}
/**
* @return the telRecebido
*/
public String getTelRecebido() {
return telRecebido;
}
/**
* @param telRecebido the telRecebido to set
*/
public void setTelRecebido(String telRecebido) {
this.telRecebido = telRecebido;
}
/**
* @return the dadosAdicionais
*/
public String getDadosAdicionais() {
return dadosAdicionais;
}
/**
* @param dadosAdicionais the dadosAdicionais to set
*/
public void setDadosAdicionais(String dadosAdicionais) {
this.dadosAdicionais = dadosAdicionais;
}
/**
* @return the popUp
*/
public String getPopUp() {
return popUp;
}
/**
* @param popUp the popUp to set
*/
public void setPopUp(String popUp) {
this.popUp = popUp;
}
public class EventoConexao{
}
public class EventoDesconexao{
}
//declara variavel socket
Socket conecta;
boolean conectado = true;
private void comunicaEvento(Object event) {
try {
setChanged();
notifyObservers(event);
} catch (Exception e) {
e.printStackTrace();
Logger.getRootLogger().debug(e);
}
}
private void notificaConexao() {
comunicaEvento(new EventoConexao());
Logger.getRootLogger().info("Notificação - conectou");
}
private void notificaDisconexao() {
comunicaEvento(new EventoDesconexao());
Logger.getRootLogger().info("Notificação - desconectou");
}
public boolean estaConectado(){
return conectado;
}
public SocketLeitura(Socket s){
//metodo que recebe socket como parametro
conecta = s;
}
@Override
//sobrescreve metodo run
public void run(){
notificaConexao();
try {
//captura os streams de entrada no socket
BufferedReader entrada = new BufferedReader(new InputStreamReader(this.conecta.getInputStream()));
ProcessaMensagem pm = new ProcessaMensagem();
do{
String mensagem = entrada.readLine();
if( mensagem.substring(0, 13).equalsIgnoreCase("MsgDoDiscador")){
}else{
Logger.getRootLogger().info("Recebido: "+mensagem);
}
if(mensagem.substring(0, 10).equalsIgnoreCase("fimchamada")){
try{
JOptionPane.showMessageDialog(null, "Fim da ligação!");
Logger.getRootLogger().info(mensagem);
}catch(Exception e){
Logger.getRootLogger().debug(e);
e.printStackTrace();
}
}
if(mensagem.substring(0, 11).equals("ResultLogar") || mensagem.subSequence(0, 14).equals("ResultDeslogar")){
pm.processaLogon(mensagem);
}
pm.processaDadosChamada(mensagem);
if(mensagem==null){
break;
}else{
//enquanto o buffer tiver entrada
System.out.println("do Servidor: "+ mensagem);
}
//imprime as linhas de entrada
}while(Thread.currentThread().isAlive());
} catch (IOException ex) {
Logger.getRootLogger().warn(ex.getMessage());
Logger.getRootLogger().debug(ex);
JOptionPane.showMessageDialog(null,"Conexao Interrompida - Logue novamente",ex.getMessage(),JOptionPane.WARNING_MESSAGE);
}catch(Exception e){
Logger.getRootLogger().debug(e);
}
finally{
notificaDisconexao();
try {
Thread.sleep(5000);
new SocketCon().conectaSocket(cp.getServidorGennex(), 22000);
reconectou="true";
} catch (InterruptedException ex) {
java.util.logging.Logger.getLogger(SocketLeitura.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
}
}
}
}
classe que conecta o socket
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package br.com.gennex.socket;
//import br.com.log.LogWriter;
import br.com.gennex.properties.CarregaProperties;
import java.io.DataOutputStream;
import java.io.IOException;
import java.io.PrintWriter;
import java.net.Socket;
import java.net.UnknownHostException;
import org.apache.log4j.*;
/**
*
* @author leonardo
*/
public class SocketCon extends CarregaProperties {
static DataOutputStream dout;
public static PrintWriter pw;
Socket s;
SocketLeitura lt;
Thread t ;
public Socket conectaSocket(String servidor,int port){
try {
s = new Socket(servidor, port);
lt = new SocketLeitura(s);
t = new Thread(lt);
t.start();
if(s.isConnected()){
System.out.println("Conectado");
Logger.getRootLogger().info("Conectado em:"+servidor+" - Porta:"+port+"\n");
try{
dout = new DataOutputStream(s.getOutputStream());
pw = new PrintWriter(dout,true);
pw.flush();
}catch(IOException e){
Logger.getRootLogger().warn("Não foi possível enviar comando ao GenNex", e);
}
}else{
Logger.getRootLogger().warn(this + "Socket nao conectado!");
}
} catch (UnknownHostException ex) {
Logger.getRootLogger().debug(ex);
Logger.getRootLogger().info("server nao encontrado!");
} catch (IOException ex) {
try {
throw new IOException();
} catch (IOException ex1) {
Logger.getRootLogger().debug("ponto 1 "+ex1);
}
}
return s;
}
public boolean isConnected(){
this.s.isConnected();
return true;
}
public void desconecta() {
try {
s.close();
} catch (IOException ex) {
Logger.getLogger(SocketCon.class.getName()).log(Level.ALL, null, ex);
Logger.getRootLogger().debug("ponto 2 "+ex);
}finally{
try {
s.close();
} catch (IOException ex) {
Logger.getRootLogger().warn("Desconectado", ex);
}
}
}
}
E a minha classe de Jframe que tem o metodo de logar e outros
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
/*
* FrontEnd.java
*
* Created on 23/12/2010, 12:46:08
*/
package br.com.gennex.front;
import br.com.gennex.properties.CarregaProperties;
import br.com.gennex.socket.ProcessaMensagem;
import br.com.gennex.socket.SocketCon;
import br.com.gennex.socket.SocketLeitura;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.io.IOException;
import javax.swing.JOptionPane;
import org.apache.log4j.*;
/**
*
* @author Leonardo
*/
public class FrontEnd extends javax.swing.JFrame {
/** Creates new form FrontEnd */
public FrontEnd() {
initComponents();
itensJComboGruposDac();
}
private static String version = "2.0.3";
//version = 2.0.3 - limpa as variaveis de telRecebido = null;dadosAdicionais = null;popUp = null;contrato = null;
//version = 2.0.2 - implementa avisos USUARIO NAO CADASTRADO,SENHA INCORRETA,LOGON NAO ENCONTRADO
//version = 2.0.1 - implementa avisos do ResultLogar
private static SocketCon socket = new SocketCon();
CarregaProperties cp = new CarregaProperties();
ProcessaMensagem pm;
SocketLeitura lt;
public void itensJComboGruposDac(){
String grupos = cp.getGruposDac();
String[] dacs = grupos.split(",");
jGruposDac.removeAllItems();
for(int i=0;i<dacs.length;i++){
jGruposDac.addItem(dacs[i]);
}
}
public void reconecta(){
if(lt.estaConectado()){
return;
}else{
socket.conectaSocket(cp.getServidorGennex(), cp.getPortTelecom());
logar();
}
}
private static void iniciaLogger() {
try {
Logger.getRootLogger().setLevel(Level.INFO);
DailyRollingFileAppender fileAppender = new DailyRollingFileAppender(
new TTCCLayout("dd/MM/yyyy HH:mm:ss"),
"Log_FrontReceptivo.log", "'.'yyyy-MM-dd");
Logger.getRootLogger().addAppender(fileAppender);
Logger.getRootLogger().addAppender(
new ConsoleAppender(new TTCCLayout("dd/MM/yyyy HH:mm:ss")));
} catch (IOException e) {
Logger.getRootLogger().error(e.getMessage(), e);
}
}
public void desabilitaCampos(){
tfusuario.setEnabled(false);
tfsenha.setEnabled(false);
tfpa.setEnabled(false);
}
public void habilitaCampos(){
tfusuario.setEnabled(true);
tfsenha.setEnabled(true);
tfpa.setEnabled(true);
}
//><---------------------------------------------------------------------------->
@SuppressWarnings("static-access")
public void deslogar() {
String deslogar = ("Deslogar("+tfusuario.getText().trim()+";"
+jGruposDac.getSelectedItem()+")\r\n");
socket.pw.write(deslogar);
socket.pw.flush();
System.out.println("Enviado:"+deslogar);
Logger.getRootLogger().info("Enviado:"+deslogar);
}
@SuppressWarnings("static-access")
public void fazerChamada(String p2,String p3){
int random = 3+(int)(Math.random()*900);
String p1 = ""+random;
String fazerChamada = "fazerchamada("+p1+";"+p2+";"+p3+")\r\n";
socket.pw.write(fazerChamada);
socket.pw.flush();
System.out.println(fazerChamada);
Logger.getRootLogger().info("Enviado:"+fazerChamada);
}
@SuppressWarnings("static-access")
public void pausarDespausar(){
if(socket.isConnected()){
try{
if(btpausar.getText().equalsIgnoreCase("Pausar")){
String pausar = "pausar("+tfusuario.getText().trim()+")\r\n";
btpausar.setText("Despausar");
socket.pw.write(pausar);
socket.pw.flush();
System.out.println("Enviado:"+pausar);
Logger.getRootLogger().info("Enviado:"+pausar);
}
else
{
String despausar = "despausar("+tfusuario.getText().trim()+")\r\n";
btpausar.setText("Pausar");
socket.pw.write(despausar);
socket.pw.flush();
System.out.println("Enviado:"+despausar);
Logger.getRootLogger().info("Enviado:"+despausar);
}
}catch(Exception e){
JOptionPane.showMessageDialog(null, "Socket não conectado!");
}
}
}
@SuppressWarnings("static-access")
public void deslogarTudo(){
String deslogarTudo = ("Deslogar("+tfusuario.getText().trim()+";)\r\n");
socket.pw.write(deslogarTudo);
socket.pw.flush();
System.out.println("Enviado:"+deslogarTudo);
Logger.getRootLogger().info("Enviado:"+deslogarTudo);
}
@SuppressWarnings("static-access")
public void logar() {
//deslogar();
String ondeLogar = ("ondelogar("+tfusuario.getText().trim()+";"+tfpa.getText().trim()+")\r\n");
socket.pw.write(ondeLogar);
socket.pw.flush();
//desabilitaCampos();
System.out.println("enviado:"+ondeLogar);
Logger.getRootLogger().info("enviado:"+ondeLogar);
//<!---------------------------------------------------------------!>
String logar = ("logar("+tfusuario.getText().trim()+";"+tfsenha.getText().trim()+";"+jGruposDac.getSelectedItem()+")\r\n");
socket.pw.write(logar);
socket.pw.flush();
System.out.println("enviado:"+logar);
Logger.getRootLogger().info("enviado:"+logar);
}
/** 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")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
jLabel1 = new javax.swing.JLabel();
jPanel1 = new javax.swing.JPanel();
tfusuario = new javax.swing.JTextField();
jLabel2 = new javax.swing.JLabel();
jLabel3 = new javax.swing.JLabel();
jLabel4 = new javax.swing.JLabel();
jGruposDac = new javax.swing.JComboBox();
jLabel5 = new javax.swing.JLabel();
tfpa = new javax.swing.JTextField();
btlogar = new javax.swing.JButton();
btpausar = new javax.swing.JButton();
btdeslogar = new javax.swing.JButton();
tfsenha = new javax.swing.JPasswordField();
jPanel2 = new javax.swing.JPanel();
tftelefone = new javax.swing.JTextField();
jLabel6 = new javax.swing.JLabel();
btdiscar = new javax.swing.JButton();
jLabel7 = new javax.swing.JLabel();
tfddd = new javax.swing.JFormattedTextField();
setDefaultCloseOperation(javax.swing.WindowConstants.DO_NOTHING_ON_CLOSE);
setTitle("GenNex Front - 2.0.4");
setName("Tela Principal"); // NOI18N
jLabel1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/br/com/gennex/front/logo.gif"))); // NOI18N
jPanel1.setBorder(javax.swing.BorderFactory.createEtchedBorder());
jLabel2.setText("Usuario");
jLabel3.setText("Senha");
jLabel4.setText("Grupo");
jGruposDac.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Item 1", "Item 2", "Item 3", "Item 4" }));
jLabel5.setText("PA");
btlogar.setText("Logar");
btlogar.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btlogarActionPerformed(evt);
}
});
btpausar.setText("Pausar");
btpausar.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btpausarActionPerformed(evt);
}
});
btdeslogar.setText("Deslogar");
btdeslogar.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btdeslogarActionPerformed(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()
.addContainerGap()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
.addComponent(btdeslogar, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(btlogar, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jGruposDac, javax.swing.GroupLayout.Alignment.LEADING, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jLabel2, javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(tfusuario, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 107, Short.MAX_VALUE)
.addComponent(jLabel4, javax.swing.GroupLayout.Alignment.LEADING))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
.addComponent(jLabel5)
.addComponent(jLabel3)
.addComponent(tfsenha)
.addComponent(tfpa)
.addComponent(btpausar, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);
jPanel1Layout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {tfsenha, tfusuario});
jPanel1Layout.setVerticalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel2)
.addComponent(jLabel3))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(tfusuario, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(tfsenha, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel4)
.addComponent(jLabel5))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jGruposDac, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(tfpa, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(18, 18, 18)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(btlogar)
.addComponent(btpausar))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(btdeslogar)
.addContainerGap(20, Short.MAX_VALUE))
);
jPanel1Layout.linkSize(javax.swing.SwingConstants.VERTICAL, new java.awt.Component[] {tfsenha, tfusuario});
jPanel2.setBorder(javax.swing.BorderFactory.createEtchedBorder());
jLabel6.setText("Telefone");
btdiscar.setText("Discar");
btdiscar.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btdiscarActionPerformed(evt);
}
});
jLabel7.setText("DDD");
tfddd.setFocusLostBehavior(javax.swing.JFormattedTextField.COMMIT);
tfddd.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
tfdddActionPerformed(evt);
}
});
javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2);
jPanel2.setLayout(jPanel2Layout);
jPanel2Layout.setHorizontalGroup(
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel2Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(jLabel7)
.addComponent(tfddd, javax.swing.GroupLayout.DEFAULT_SIZE, 21, Short.MAX_VALUE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel2Layout.createSequentialGroup()
.addComponent(tftelefone, javax.swing.GroupLayout.PREFERRED_SIZE, 82, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(btdiscar, javax.swing.GroupLayout.PREFERRED_SIZE, 82, javax.swing.GroupLayout.PREFERRED_SIZE))
.addComponent(jLabel6))
.addContainerGap(33, Short.MAX_VALUE))
);
jPanel2Layout.setVerticalGroup(
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel2Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(tftelefone, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(btdiscar)
.addComponent(tfddd, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(jPanel2Layout.createSequentialGroup()
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel7)
.addComponent(jLabel6, javax.swing.GroupLayout.PREFERRED_SIZE, 14, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(26, 26, 26)))
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(jPanel2, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGroup(javax.swing.GroupLayout.Alignment.LEADING, layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
.addComponent(jLabel1)
.addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))
.addContainerGap())
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addComponent(jLabel1)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(18, 18, 18)
.addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);
pack();
}// </editor-fold>
private void btlogarActionPerformed(java.awt.event.ActionEvent evt) {
logar(); // TODO add your handling code here:
}
private void btdeslogarActionPerformed(java.awt.event.ActionEvent evt) {
deslogar(); // TODO add your handling code here:
}
private void btdiscarActionPerformed(java.awt.event.ActionEvent evt) {
fazerChamada(tfddd.getText().trim(), tftelefone.getText().trim());
}
private void btpausarActionPerformed(java.awt.event.ActionEvent evt) {
pausarDespausar();
}
private void tfdddActionPerformed(java.awt.event.ActionEvent evt) {
}
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
//SocketCon socket1 = new SocketCon();
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
CarregaProperties cp = new CarregaProperties();
socket.conectaSocket(cp.getServidorGennex(),22000);
iniciaLogger();
Logger.getRootLogger().info("Start Front - Versão "+version);
final FrontEnd fe = new FrontEnd();
fe.setVisible(true);
fe.addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e){
fe.deslogarTudo();
Logger.getRootLogger().info("Aplicação encerrada");
System.exit(0);
}
});
}
});
}
// Variables declaration - do not modify
private javax.swing.JButton btdeslogar;
private javax.swing.JButton btdiscar;
private javax.swing.JButton btlogar;
private javax.swing.JButton btpausar;
private javax.swing.JComboBox jGruposDac;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
private javax.swing.JLabel jLabel4;
private javax.swing.JLabel jLabel5;
private javax.swing.JLabel jLabel6;
private javax.swing.JLabel jLabel7;
private javax.swing.JPanel jPanel1;
private javax.swing.JPanel jPanel2;
private javax.swing.JFormattedTextField tfddd;
private javax.swing.JTextField tfpa;
private javax.swing.JPasswordField tfsenha;
private javax.swing.JTextField tftelefone;
private javax.swing.JTextField tfusuario;
// End of variables declaration
}
quando coloquei pra reconectar o socket no finaly da classe de leitura, funcionou , depois coloquei o metodo de logar que está na classe do FronEnd e ele mandou os parametros vazios.
À quem puder me socorrer eu agradeço…
Abs!