Я пишу программу, в которой сервер отображает aws фигуру в своем приложении, а клиент может видеть эту фигуру в своем собственном приложении. Я думал о преобразовании объекта в массив байтов, но ничего не сделал.
Код сервера
private void sendShape(Graphics drawedShape) {
ByteArrayOutputStream bos = new ByteArrayOutputStream();
try {
ObjectOutputStream oos = new ObjectOutputStream(bos);
oos.writeObject(drawedShape);
oos.flush();
byte[] yourBytes = bos.toByteArray();
/*oos.writeObject(drawedShape);
oos.flush();
dispMessage("\n Teacher:" + "Shape sent!");*/
} catch (IOException e) {
jta.append("\nError");
}
}
Код клиента
private void processConn() throws IOException {
send("Successful");
setButtonEnabled(true);
String msg = "";
Graphics object;
ByteArrayInputStream bis = null;
do {
try
{
Object incomingObject = ois.readObject();
if(incomingObject.getClass().toString().contains("Graphics"))
{
try {
ois = new ObjectInputStream(bis);
Object o = ois.readObject();
/*object = (Graphics) ois.readObject();
dispMessage("\n" + object);*/
}finally {
try {
if (ois != null) {
ois.close();
}
} catch (IOException ex) {
}
}
}