Ajuda com a API Java Comm

1 resposta
B

ae pessoal
to tentando usar a api de comunicacao java com a porta serial e estou encarando varios problemas
depois de mto tentar eu acho q finalmente consigui arrumar a biblioteca aki pra usar com o jbuilder2005 mas qdo tento rodar meu programa vem o seguinte erro:

Caught java.lang.ClassNotFoundException: com.sun.comm.Win32Driver while loading driver com.sun.comm.Win32Driver

java.lang.NullPointerException

at osccontrol.OscControl.OpenPort(OscControl.java:69)

at osccontrol.teste.<init>(teste.java:31)

at osccontrol.teste.main(teste.java:38)

Error-In writing process

Exception in thread main

isso eu acho q eh problema na hora de abrir a porta pois qdo eu tava debugando eu vi um problema, no codigo:

try {
        portId = CommPortIdentifier.getPortIdentifier(NamPort);
    }
    catch(Exception e){
        System.out.println("Error-In writing process");
    }

o portId, que eh um CommPortIdentifier fica null e depois pra da o open da nullpointer

alguem pode me ajuda ai?

1 Resposta

B

bom, to testando com um codigo mais simples

public class SimpleWrite {

static Enumeration portList;

static CommPortIdentifier portId;

static String messageString = :AUT;

static SerialPort serialPort;

static OutputStream outputStream;
public static void main(String[] args) {
    portList = CommPortIdentifier.getPortIdentifiers();

    while (portList.hasMoreElements()) {
        portId = (CommPortIdentifier) portList.nextElement();
        if (portId.getPortType() == CommPortIdentifier.PORT_SERIAL) {
            if (portId.getName().equals("COM1")) {
            //if (portId.getName().equals("/dev/term/a")) {
                try {
                    serialPort = (SerialPort)
                        portId.open("SimpleWriteApp", 2000);
                } catch (PortInUseException e) {
                  System.out.print("1\n");
                }
                try {
                    outputStream = serialPort.getOutputStream();
                } catch (IOException e) {
                  System.out.print("2\n");
                }
                try {
                    serialPort.setSerialPortParams(300,
                        SerialPort.DATABITS_8,
                        SerialPort.STOPBITS_1,
                        SerialPort.PARITY_NONE);
                } catch (UnsupportedCommOperationException e) {
                  System.out.print("3\n");
                }
                try {
                    outputStream.write(messageString.getBytes());
                } catch (IOException e) {
                  System.out.print("4\n");
                }
            }
        }
    }
}

}

agora nao ta dando erro nenhum mas tbm nao ta funcionando, nao envia nada

eh algum problema com a biblioteca? ou com a configuracao do jbuilder?

PS: estou usando WINXP

Criado 21 de julho de 2006
Ultima resposta 21 de jul. de 2006
Respostas 1
Participantes 1