如何从JSF验证器获取资源?

时间:2015-05-21 09:09:14

标签: jsf resources

我有一个小型的Java网络应用,希望在验证过程中能够访问某些资源 我知道如何在servlet中执行它,因为我可以使用ServletContext,但我不知道如何从验证器代码访问它。 资源可以存储在WEB_INF文件夹或内部包中,但是当我尝试Class.class.getResourcesAsStream()时,它总是返回null
我觉得自己做错了什么,却无法得到什么。

1 个答案:

答案 0 :(得分:0)

或者你可以获得一个文件,然后在其上放置一个InputStream

String path = "resources/images/image.png"
ServletContext ctx = (ServletContext) FacesContext.getCurrentInstance()
                .getExternalContext().getContext();
    String  realPath = ctx.getRealPath("/");
File file = new File(realPath + path);

如果文件在包中,则路径看起来像

String path= "WEB-INF/classes/package/file"