IrDA com J2ME (infravermelho)

Pessoal, estou tentando desenvolver uma aplicação, em J2ME, para controle de ponto dos funcionários rurícolas da empresa a qual trabalho.
Estou utilizando um palm zire 22 e a maquina virtual da IBM (WebShere Everyplace Micro Environment v5.7).
O problema é que este palm está conectado via infravermelho a um leitor de código de barras e não estou sabendo como fazer para obter os dados enviados pelo leitor.

Tentei até utilizar a CommConnection, como no fonte abaixo

CommConnection comm = (CommConnection)Connector.open(?comm:COM2;baudrate=9600″);

e não estou tendo sucesso, alguém tem alguma opinião??

[quote=bmcneto]Pessoal, estou tentando desenvolver uma aplicação, em J2ME, para controle de ponto dos funcionários rurícolas da empresa a qual trabalho.
Estou utilizando um palm zire 22 e a maquina virtual da IBM (WebShere Everyplace Micro Environment v5.7).
O problema é que este palm está conectado via infravermelho a um leitor de código de barras e não estou sabendo como fazer para obter os dados enviados pelo leitor.

Tentei até utilizar a CommConnection, como no fonte abaixo

CommConnection comm = (CommConnection)Connector.open(?comm:COM2;baudrate=9600″);

e não estou tendo sucesso, alguém tem alguma opinião??[/quote]

Tem certeza que este velho dinossauro suporta esta classe ? Nenhuma exception é lançada ? Tem certeza ?

rapaz, parece que funciona, não levanta nenhuma excecão.
Estou utilizando o código abaixo:

CommConnection comm = (CommConnection)Connector.open("comm:IrDA;baudrate=" + boudeRates + ";bitsperchar=" + dataBit + ";stopbits=" + stopBit + ";parity=" + parity);
StringBuffer b = new StringBuffer();
InputStream in = comm.openInputStream();
int ch;
while((ch = in.read()) != -1) {
	b.append((char) ch);
}

in.close();
comm.close();

O problema é que ele não retorna o valor esperado, na verdade não retorna nada.

Só p/ deixar mais claro, a especificação do aparelho que estou utilizando é:

Computador de mão Palm® Z22
Sistema Operacional
Palm OS® Garnet 5.4
Memória
32MB (20MB de espaço real disponível)
Processador
200 MHz

[quote=bmcneto]rapaz, parece que funciona, não levanta nenhuma excecão.
Estou utilizando o código abaixo:

CommConnection comm = (CommConnection)Connector.open("comm:IrDA;baudrate=" + boudeRates + ";bitsperchar=" + dataBit + ";stopbits=" + stopBit + ";parity=" + parity);
StringBuffer b = new StringBuffer();
InputStream in = comm.openInputStream();
int ch;
while((ch = in.read()) != -1) {
	b.append((char) ch);
}

in.close();
comm.close();

O problema é que ele não retorna o valor esperado, na verdade não retorna nada.[/quote]

Não levanta exceção ? cadê o try…catch que deveria ter no seu código ? Tô achando que vc não está capturando a exceção… :roll: