tomcat:将swf加载到页面中

时间:2010-02-07 17:37:21

标签: java flash tomcat6

在我的页面中加载SWF文件的推荐方法是什么?

只是使用HttpServletResponse.getWriter并使用它打印SWF对象,还是有更有效的方法?

1 个答案:

答案 0 :(得分:2)

如果它是静态SWF文件,只需将其放在可公开浏览的路径中,并允许Tomcat将其作为静态文件提供。如果要动态生成SWF文件,只要记得将Content-type HTTP标头设置为application/x-shockwave-flashServletResponse.getWriter()就完全可以了。您可以在使用ServletResponse.setContentType()写入输出流之前执行此操作:

resp.setContentType("application/x-shockwave-flash");

如果您希望浏览器能够缓存SWF文件,您可能还需要考虑设置一些与HTTP缓存相关的标头,例如Cache-ControlExpires。您可以使用HttpServletResponse.setHeader()HttpServletResponse.addHeader()执行此操作。对于静态SWF文件,您必须在使用<url-pattern>映射的Filter中设置缓存标头。

值得一提的另一点是,以跨浏览器友好的方式引用SWF内容绕过恼人的extra-click behavior in some versions of MSIE已成为某种黑魔法。我建议使用SWFObject库(托管在Google代码上)来抽象丑陋。