使用Servlet,我可以执行以下操作来处理二进制流:
public void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
InputStream inputStream = req.getInputStream();
byte[] data = IOUtils.toByteArray(inputStream);
// ...
Result result = process(data);
// ...
ServletOutputStream op = resp.getOutputStream();
result.writeTo(resp.getOutputStream());
}
我如何在 Wicket 中执行此操作? (创建页面扩展 WebPage 类后我不知道)
最佳答案
你可以这样做:
公共(public)类 OutputStreamPage 扩展 WebPage
{
公共(public) OutputStreamPage( 页面参数 p )
{
}
<前>@Override
protected 最终无效 onRender( MarkupStream markupStream )
{
OutputStream os = getResponse().getOutputStream();
BufferedWriter 输出 = null;
尝试
{
出=……
输出.write(.....);
}
捕获(IOException e)
{
//该怎么办?
}
最后
{
if ( 输出 != null )
{
尝试
{
关闭();
}
捕获(IOException e)
{
}
}
}
}
}
关于wicket - 如何像Servlet一样处理Wicket中的二进制流?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8032469/