“对我的作品。”(虽然你应该炭编码设置为null
而非""
)
我写了一些示例代码(见下文),并运行它针对7.4.5 我得到正确的内容类型正在通过。
我不知道你有什么问题 - 也许你可以发布一些代码。
我最好的猜测是你试图在已经发送内容之后设置内容类型。由于内容类型是标题,因此您需要在任何正文提交之前进行设置。
public class JettyServer
{
public static class OggServlet extends HttpServlet
{
protected void service(HttpServletRequest request, HttpServletResponse response) throws IOException
{
File file = new File("src/main/ogg/file.ogg");
response.setContentType("audio/ogg");
response.setCharacterEncoding(null);
response.setContentLength((int) file.length());
FileInputStream in = new FileInputStream(file);
int by;
while ((by = in.read()) != -1)
{
response.getOutputStream().write(by);
}
}
}
public static void main(String[] args) throws Exception
{
Server server = new Server(8080);
ServletContextHandler handler = new ServletContextHandler();
handler.addServlet(OggServlet.class, "/audio");
server.setHandler(handler);
server.start();
}
}
来源
2012-04-06 10:40:56
Tim
** Jetty的版本是什么?** _请在您的SO问题中提供所有相关的详细信息。有3个主要和多个小版本的Jetty广泛使用 - 除非我们知道你在说什么版本,否则我们几乎不可能验证你的结果._ – Tim 2012-04-04 04:26:42
@Tim:你是完全正确的。我们正在使用Jetty 7.4.5和SpringSource 2.9.1.RELEASE。谢谢! – Chris 2012-04-04 09:32:11