나는 소리를 녹음 한 애플릿을 서버에 업로드했다. 사운드 녹음 부분이 끝났지 만 업로드 부분에 붙어 있습니다. 내 애플릿은 vaadin 응용 프로그램과 통합되어 있습니다. 나는 애플릿과 vaadin 서버 측에서 요청 응답주기를 성공적으로 만들었습니다. 그러나 출력 스트림을 통해 데이터를 보낼 수 없습니다. 내 코드입니다 : 서버 측 코드에바깥 쪽 요청 처리하기
connection = (HttpURLConnection) new URL("http://localhost:8080/CheckResponse/").openConnection();
connection.setRequestMethod("POST");
connection.setDoOutput(true);
connection.setDoInput(true);
connection.addRequestProperty("applet", "sound recording applet");
//CREATE A WRITER FOR OUTPUT
//outWriter = new PrintWriter(connection.getOutputStream());
OutputStreamWriter outWriterS = new OutputStreamWriter(connection.getOutputStream());
buff.append("param1=");
buff.append(URLEncoder.encode("Param 1 Value", "UTF-8"));
buff.append("&");
buff.append("param2=");
buff.append(URLEncoder.encode("Param 2 Value", "UTF-8"));
outWriterS.write(buff.toString());
outWriterS.flush();
outWriterS.close();
//RESPONSE STREAM
serverResponse = new BufferedReader(new InputStreamReader(connection.getInputStream()));
//READ THE RESPOSNE
String line2;
while ((line2 = serverResponse.readLine()) != null)
{
System.out.println(line2);
}
:
public void onRequestStart(HttpServletRequest request,
HttpServletResponse response) {
// TODO Auto-generated method stub
try {
if(request.getHeader("applet")!=null){
System.out.println("Request started by applet");
if(request.getHeader("applet").equalsIgnoreCase("sound recording applet")){
System.out.println("Reading the streams");
InputStreamReader reader = new InputStreamReader(request.getInputStream());
BufferedReader buff = new BufferedReader(reader);
System.out.println("Buffer"+buff);
System.out.println("Buffer has :"+buff.readLine());
}
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
//System.out.println("Request started");
}
bufferReader.readLine()는 null을 반환합니다. 그 이유는 무엇일까요? 감사합니다.
답장을 보내 주셔서 감사합니다. 나는 그것을 시도했지만 여전히 null을 얻는다. –