Erro desconhecido integração com catracas

2 respostas
R

Galera,
Estou com um grande problema, será que alguém pode me ajutar.

Estou tentando fazer um programa para integrar as catracas topdata a um servidor web, mas estou com o seguinte problema quando executo meu código java.

Exception in thread Thread-2 java.lang.UnsatisfiedLinkError: com.integratopdata.EasyInner.FecharPortaComunicacao()V

at com.integratopdata.EasyInner.FecharPortaComunicacao(Native Method)

at com.integratopdata.controller.EasyInnerBioController.isConectado(EasyInnerBioController.java:52)

at com.integratopdata.controller.EasyInnerBioController.solicitarDigitalLeitorInner(EasyInnerBioController.java:86)

at com.integratopdata.ui.JFIntegraTopData$6.run(JFIntegraTopData.java:283)

at java.lang.Thread.run(Unknown Source)

Pior de tudo é que nem cai no catch para eu ver o log. Alguém já passou por esse erro e poderia me dar alguma dica?

Essa é a função onde o erro ocorre:
public boolean isConectado() {

boolean isConectado = false;

    try {
        //uiTopData.LblStatus.setText("Conectando ao Inner...");
        uiTopData.jTxaManutencao.setText("Conectando ao Inner...");
        easyInner.FecharPortaComunicacao();
        easyInner.DefinirTipoConexao(uiTopData.jCboTipoConexao.getSelectedIndex());
        isConectado = bioService.isConectado(Integer.parseInt(uiTopData.jTxtNumInner.getText()),
                Integer.parseInt(uiTopData.jTxtPorta.getText()),
                uiTopData.jCboTipoConexao.getSelectedIndex());

        //Caso o retorno seja OK. volta a função chamadora..
        if (isConectado) {
            //uiTopData.LblStatus.setText("Conectou ao Inner!");
            uiTopData.jTxaManutencao.setText("Conectou ao Inner!");
        } else {
            //Exibe mensagem de erro para o Usuário..
            //uiTopData.LblStatus.setText("Não conectou ao Inner!");
            uiTopData.jTxaManutencao.setText("Não conectou ao Inner!");
        }

    } catch (NumberFormatException | InterruptedException | HeadlessException ex) {
        uiTopData.jTxaManutencao.setText("Falha!...");
        System.out.println(ex.getMessage());
    }
    return isConectado;
}

Obrigado.

2 Respostas

igor_ks

Esse erro acontece provavelmente pq ta procurando algum metodo declarado como native e nao tá achando, não está encontrando alguma lib, ou algo do tipo.

Não está caindo no catch, pq não satisfaz nenhuma daquelas exceptions que voce está tratando. Nao adianta também adicionar “Exception”, pois ele não herda de exception, é um erro de JVM, ou seja, herda de “Error”. Tente adicionar Error no catch, pra ver qq aparece na stackstrace

} catch (NumberFormatException | InterruptedException | HeadlessException | Error ex) {
        uiTopData.jTxaManutencao.setText("Falha!...");
        System.out.println(ex.getMessage());
    }
R

Obrigado pela explicação Igor, já ajudou bastante.

Criado 2 de março de 2016
Ultima resposta 2 de mar. de 2016
Respostas 2
Participantes 2