我有一个非常标准的Spring 3.0.7 Web应用程序春返回受保护的资源
的结构是这样的
WebContent/
resources/
myStaticConent/
WEB-INF/
views/
myProtectedContent/
我现在用的是<mvc:resources>
配置静态内容和我的控制器得到的意见使用InternalViewResolver从WEB-INF /意见
现在我有一个要求,从受保护的目录中返回非JSP内容(JPG不同,PNG,HTML等),WEB-INF
所以用户可能会输入一个像http:myWebApp/myProtectedContent这样的URL并打到我受保护的内容控制器。
@Controller
public class HelloWorldController {
@RequestMapping(value="/myProtectedContent")
public String index() {
return "myjpg.jpg";
}
}
基本上我希望有条件成为一个文件,就像我会一个视图。任何人都知道如何做到这一点?
我看了一些其他的方法,使用Inputstream Streaming对于基本上是静态的文件似乎有些过分。我可以注册另一种“视图”类型吗?我需要这样做(从Web浏览器端),就像标准的http请求响应一样(比如当前的视图实现)。
我真的想避免发明了我自己的文件处理方法,除非有一些理由使用该文件访问方法是更好然后泉城“其他”视图解析器像ResourceBundleResolver
所以要求 有条件回应一个来自WEB-INF内部的具有可变文件类型(jpg,png,html)的http请求,不包含在jsp中或者由JSTL视图解释该文件。文件的名称是已知的并且是静态的。控制器将根据自己的业务逻辑确定文件名。
您希望以何种方式有条件地提供内容?不同的用户获得不同的资源吗?所有资源都是安全的,并且任何登录人员都可以获取所有资源,但是您希望单个URL根据用户返回不同的内容吗?如果你能更清楚地了解这些要求,那可能会有所帮助。谢谢。 – Kieran 2012-07-24 15:50:10
@Kerian我认为用例是一个不同的问题,而不是我的信息来分享。我会澄清我在找什么。 – stimpy 2012-07-24 16:15:04