[opencms-dev] Access a file by uuid

Yves Glodt yg at mind.lu
Mon Dec 22 11:38:06 CET 2008


On Thursday 11 December 2008, Sebastian Himberger wrote:
> Hi,
>
> this works for me:
>
> <%@ page
> import="org.opencms.file.*,org.opencms.jsp.*,org.opencms.util.*,org.opencms
>.main.*" %>
> <%
>
> String uuid = "ceece147-3144-11dc-a69a-5f50d3bd539c";
>
> CmsObject cmso = OpenCms.initCmsObject("Guest");
> cmso.loginUser("Admin", "thePassWord");
>
> CmsResource res = cmso.readResource(new CmsUUID(uuid));
>
> out.println(res.getName());
>
> %>
>
> Are you sure the user who logs in has read access to the resource?

Well, I guess to...

I am getting this exception:
org.opencms.file.CmsVfsResourceNotFoundException: Error reading resource with 
the ID aec33c59-c50d-11dd-a9f2-0015174f605e.

Note that this works:
CmsResource res = cmso.readResource("/sites/my.site.com/data/123/logo.jpg");
//System.out.println(res.getResourceId().toString());


And this not:

CmsResource res = cmso.readResource(new CmsUUID("aec33c59-c50d-11dd-
a9f2-0015174f605e"));

So I guess my user is ok. The uuid I use is the one I saw in the print output 
of the previous example...

Another question came up.... how can I output this CmsResource which is 
image/jpg from the jsp? Is it possible to cast it to a FileInputStream ?

Best regards,
Yves

> best regards,
> Sebastian
>
> Yves Glodt schrieb:
> > Hello,
> >
> >
> > is it possible to find and access a file in the VFS by it's uuid?
> >
> >
> > Background: I have certains PDF documents in my vfs which are not
> > accessible
> > for any user, logged in or not, and I want to serve them with
> > obfuscated urls
> > à la /getFile.jsp?id=xxxxxx and it would be nice if I could just use
> > the uuid
> > to identify them.
> > I use OpenCms 7.0.4. Maybe there is another way to achieve this...? :-)
> >
> >
> > Best regards,
> > Yves



More information about the opencms-dev mailing list