Matthew Stone wrote:

> I've hit a snag using Slide Structure/Content store.  Actually it's more
> like 2 snags but I think they're related.
>
> Here's scenario 1:
> 1 - Open a web folder
> 2 - Create a folder/directory and add some files.
> 3 - Now using a Web App and calling retrieve in the structureHelper request
> the contents of step 2.
> 4 - The result is...the newly created directories and files are not
> retrieved.  You only get the directories/files that existed prior to step 2.
>
> Here's scenario 2:
> 1 - Use a Web App to create directories/files via the contentHelper &
> structureHelper.
> 2 - Open up a web folder
> 3 - Navigate to the directory containing the directories/files created by
> step 1.
> 4 - The web folder does not display the new directories/files.
>
> Originally I thought the problem was the cache wasn't being updated properly
> but after doing some research I discovered you guy's are updating the cache
> perfectly.  The problem lies in the fact that the Slide Webdav servlet and
> my web app are using 2 different parts of memory to do the caching.
> Therefore if I update the "Store" from the Webdav servlet side the cache is
> updated but the cache in the Web App still reflects the old store contents.
> This means the inverse is true as well, if I update the "Store" from my web
> app the Webdav servlet cache is outta synch.
>
> I've temporarily worked around this issue by modifying the
> JDBCDescriptorsStore and FileContentStore to overload Service.cacheResults()
> and I return false.

I'll accept a patch that makes cacheResults configurable.
(For example if you want to use 2 webservers, you have to disable the cache)

> Of course this is not the preferred solution.  So can
> you please tell me how I can bind to the StandardStore that the WebDav
> servlet is using so my web app can share its cache.  Or otherwise tell me
> how you would resolve this issue.

You want to move the slide jars to a lib directory that is shared for all
webapps.
What directory excatly depends on your servlet container,for tomcat 4 that
directory is common/lib.
Did not try this myself but it should work...

If it doesn't work, please create a small test case.

> Note that from the web app side I know when I need to update the webdav
> servlet and I also know when I need to skip looking into the cache but I
> can't find a way in the API to selectively pull from or put to the cache.
>
> Thanks in advance,
> Matt

Dirk

Reply via email to