0
클라이언트 - 서버 시나리오를 사용하고 있습니다. 클라이언트는 url 연결을 사용하여 서버 (서블릿)와 통신합니다. 여기에 내가 사용하고있는 코드가있다. 내가 잘못 가고URL 객체의 스트림 사용
java.net.ProtocolException:Cannot write output after reading input.
:
URL url = new URL("http://localhost:8080/hello");
URLConnection connection = url.openConnection();
connection.setDoOutput(true);
ObjectOutputStream out=new ObjectOutputStream(connection.getOutputStream());//1st out put stream
out.writeObject(pk);
out.flush();
out.close();
ObjectInputStream in = new ObjectInputStream(connection.getInputStream());//1st instream
PublicKey spk=(PublicKey)in.readObject();
in.close();
ObjectOutputStream out1=new ObjectOutputStream(connection.getOutputStream());//2nd out put stream
out1.writeObject(str1);
out1.flush();
out1.close();
ObjectInputStream in1 = new ObjectInputStream(connection.getInputStream());
String rstr3=(String)in1.readObject();
//processing
in1.close();
하지만 난라고 예외는 무엇입니까?
더 깨끗하고 실용적인 대안은 무엇입니까? 매번이 작업을 수행하는 것보다 더 짧은 간단한 작업이 있습니까? – Trup
@Trup : 시도하지는 않았지만 conection.disconnect()를 호출 한 후 연결 객체를 다시 사용할 수 있다고 생각합니다. 가능한 경우 시도해주세요. – Ashwin