Olá pessoal!
Estou desenvolvendo uma aplicação que envolve comunicação com dispositivos via serial RS-232 e procuro por uma biblioteca java que possa me auxiliar nessa comunicação sobre a plataforma Windows.
Meu intuito é fazer a comunicação com impressoras fiscais (especificamente Bematech e Sweda).
De acordo com minhas pesquisas as principais APIs para comunicação serial são:
[list]RXTX[/list][list]JavaCOMM[/list]Vi que muita gente obteve sucesso utilizando ambas as APIs, mas elas dependem de DLLs pra funcionarem e eu queria algo que não dependesse disso. E os casos que tiveram sucesso são muito antigos, coisa de cinco anos atrás ou mais velhos :S Parece que Java é meio ruim pra comunicação com portas seriais. Acho que isso se dá pela plataforma ser uma coisa mais moderna e portas seriais meio antiga
hoje tudo é usb ou até mesmo wifi.
Enfim… Alguém desenvolve ou desenvolveu algo semelhante recentemente pra me auxiliar?
Agradeço antecipadamente pela ajuda!
Abraços!
Comunicação Serial
4 Respostas
Olá pessoal!
Estou desenvolvendo uma aplicação que envolve comunicação com dispositivos via serial RS-232 e procuro por uma biblioteca java que possa me auxiliar nessa comunicação sobre a plataforma Windows.
Meu intuito é fazer a comunicação com impressoras fiscais (especificamente Bematech e Sweda).
De acordo com minhas pesquisas as principais APIs para comunicação serial são:
[list]RXTX[/list][list]JavaCOMM[/list]Vi que muita gente obteve sucesso utilizando ambas as APIs, mas elas dependem de DLLs pra funcionarem e eu queria algo que não dependesse disso. E os casos que tiveram sucesso são muito antigos, coisa de cinco anos atrás ou mais velhos :S Parece que Java é meio ruim pra comunicação com portas seriais. Acho que isso se dá pela plataforma ser uma coisa mais moderna e portas seriais meio antigahoje tudo é usb ou até mesmo wifi.
Enfim… Alguém desenvolve ou desenvolveu algo semelhante recentemente pra me auxiliar?
Agradeço antecipadamente pela ajuda!
Abraços!
O uso de de bibliotecas é obrigatório. A JVM, pelo que eu sei, não tem acesso nativo a todas funções API dos sistemas operacionais e cada sistema operacional implementa sua forma de comunicação com a serial e disponibiliza uma API para utilização da mesma, sei disso pois já criei um classe para comunicação serial utilizando a API do Windows em Delphi. A forma de contornar isso é usando JNI, ou seja você faz a comunicação com o sistema operacional em outra linguagem (Delphi, C, C++, etc) em uma biblioteca e utilizando JNI faz esse código se comunicar com sua aplicação java.
Devido a isso que necessário a utilização dessas bibliotecas!
O uso de de bibliotecas é obrigatório. A JVM, pelo que eu sei, não tem acesso nativo a todas funções API dos sistemas operacionais e cada sistema operacional implementa sua forma de comunicação com a serial e disponibiliza uma API para utilização da mesma, sei disso pois já criei um classe para comunicação serial utilizando a API do Windows em Delphi. A forma de contornar isso é usando JNI, ou seja você faz a comunicação com o sistema operacional em outra linguagem (Delphi, C, C++, etc) em uma biblioteca e utilizando JNI faz esse código se comunicar com sua aplicação java.
Devido a isso que necessário a utilização dessas bibliotecas!
Entendi, vou pesquisar sobre o assunto. Valeu pela informação x@ndy!
Abraço.
RXTX pra mim funciona bem. Mas tem que instalar as DLL’s, não tem outro jeito.
[]s.
RXTX pra mim funciona bem. Mas tem que instalar as DLL’s, não tem outro jeito.[]s.
É, não tem jeito mesmo.
Mas enfim… Encontrei um ERP OpenSource chamado Freedom ERP que possue um módulo de PDV que faz comunição com ECFs.
As classes estão bem implementadas e eles utilizaram a JavaCOMM API mesmo…
Mais informações sobre o Freedom ERP: [list]FreedomERP Site[/list][list]FreedomERP at GoogleCode[/list]