Опитвам се да внедря уеб приложение, използвайки play framework като заместител на старата реализация на http сървър, която взаимодейства със стария наследен http клиент без браузър.
Този клиент е написан на Delphi и публикува данни директно в тялото на заявка с някаква заглавна информация за него.
Мислех, че ще вкарам нещо
request.body /* In the play controller */
но нищо няма.
Вижте кода по-долу:
public static void uploadPicture() {
InputStream data = request.body;
String fx = Play.getFile("").getAbsolutePath()+File.separator+"uploads"+File.separator+"test.jpg";
File f = new File(fx);
FileOutputStream moveTo = new FileOutputStream(fx);
try {
byte[] b = new byte[4096];
for (int x = 0; (data.read(b)) != -1;){
moveTo.write(b, 0, x);
}
} finally{
moveTo.close();
}
}
РЕДАКТИРАНЕ: За да изясня мнението си: отидох и създадох прост динамичен уеб проект в eclipse HttpServlet
и в doPost()
метода, когато получа request.getInputStream()
, той съдържа файла, който е изпратен от наследения клиент.
Play прави нещо с тялото на заявката!?
Какви са моите възможности?
Благодаря.
Ирфан
request.body
и работи както се предполага. - person Samuel   schedule 02.11.2012