import javax.comm.*;
import java.io.*;
public class Terminal implements Runnable,
SerialPortEventListener {
InputStream inputStream;
OutputStream outputStream;
SerialPort serialPort;
Thread readThread;
String[] messageString = {"AT\n","ATI1\n","ATI3\n"};
public Terminal() {
try {
serialPort = (SerialPort) portId.open("TerminalApp", 2000);
} catch (PortInUseException e) {}
try {
outputStream = serialPort.getOutputStream();
inputStream = serialPort.getInputStream();
} catch (IOException e) {}
try {
serialPort.addEventListener(this);
} catch (TooManyListenersException e) {}
serialPort.notifyOnDataAvailable(true);
try {
// устанавливаем параметры порта
serialPort.setSerialPortParams(9600,
SerialPort.DATABITS_8,
SerialPort.STOPBITS_1,
SerialPort.PARITY_NONE);
} catch (UnsupportedCommOperationException e) {}
readThread = new Thread(this);
readThread.start();
}
public void run() {
for(int i=0;i<3;i++){
try {
outputStream.write(messageString.getBytes());
}catch (IOException e) {}
try{
Thread.sleep(5000);
} catch (InteruptedException e) {}
}
System.exit(1); // выход из программы
}
public void serialEvent(SerialPortEvent event) {
switch(event.getEventType()) {
case SerialPortEvent.BI:
case SerialPortEvent.OE:
case SerialPortEvent.FE:
case SerialPortEvent.PE:
case SerialPortEvent.CD:
case SerialPortEvent.CTS:
case SerialPortEvent.DSR:
case SerialPortEvent.RI:
case SerialPortEvent.OUTPUT_BUFFER_EMPTY:
break;
case SerialPortEvent.DATA_AVAILABLE:
byte[] readBuffer = new byte[20];
try {
while (inputStream.available() > 0) {
int numBytes = inputStream.read(readBuffer);
}
System.out.print(new String(readBuffer));
} catch (IOException e) {}
break;
}
}
}
Помогите разобратся.
Короче беру я оттуда код...
Код:
кидаю в Oracle...а он мне.. Типа ненайден класс или неправильный интерфейс какогото метода..
в чем дело может я чтото делаю нетак..?
Или этот класс надо отдельно откудото взять?
Заранее спосибо...
P.S. Воззможно javax.comm не установлен