Hardy & Dan,
Ok, after a bit more playing around, here's a slightly updated version
of the patch that shows it seems to be working (see attached).
This updated version adds an additional option:
http://localhost:8080/xmlui/statusinfo
-> will now show the Cocoon Status XML doc (as a "base" version, to
compare /clearcache to)
http://localhost:8080/xmlui/clearcache
-> Clears the Cocoon Cache & returns the updated Cocoon Status XML doc
So, if you install this patch, you can see it in action. Browse around
the XMLUI and visit the /statusinfo path. As you browse around, more and
more items will be added to the "EHDefaultStore" cache (which you can
view in the XML returned by /statusinfo). Then, if you visit /clearcache
path, that cache will be cleared out.
However, I will admit, there's another cache that appears in that Cocoon
Status XML, the "DefaultTransientStore" which is seemingly unaffected by
calls to '/clearcache' (it looks to be mostly caching the messages.xml
contents). So, I'm not sure this works on *everything*, but most Cocoon
cached content should be cleared.
Again, all the usual warnings -- DO NOT try this in Production yet.
This is just me playing around with the Cocoon Cache to see what may be
possible. It still isn't very well tested or guaranteed to be
functioning properly. :)
- Tim
On 6/16/2011 4:52 PM, Tim Donohue wrote:
Neglected to mention in my previous email:
Once you apply the previously sent patch, you should be able to clear
the Cocoon cache by visiting:
http://localhost:8080/xmlui/clearcache
Again, it will return a bunch of XML (which is Cocoon Status Info). But,
in that XML will be an section like:
<group name="VM">
<group name="...EHDefaultStore">
<value name="cached">
<line>[empty]</line>
</value>
<value name="size">
<line>0 items in cache (0 are empty)</line>
</value>
</group>
</group>
- Tim
On 6/16/2011 4:47 PM, Tim Donohue wrote:
Hi Dan & Hardy,
There is supposedly a way to trigger Cocoon to 'clear' its cache via the
ClearCacheAction built into Cocoon. See:
http://comments.gmane.org/gmane.text.xml.cocoon.user/61537
I just tried this out locally in my XMLUI, and it *seems* to work (at
least with a few extremely simple tests I've run). But, I'll admit, this
is not well tested at all (SO, DON'T TRY THIS IN PRODUCTION, unless you
are feeling very gutsy or have verified that it is 100% working for you).
In any case, I thought I'd share this patch in case it is helpful (see
attached). Currently, it returns an ugly XML response (which is just
Cocoon's status information), but we could just as easily work this into
the XMLUI Admin Control Panel with a 'prettier' response.
This patch applies to
[dspace-src]/dspace-xmlui/dspace-xmlui-webapp/src/main/webapp/sitemap.xmap
(right now its line numbers are based on Trunk, but should work for
1.7.2 or similar)
Please let me know if this seems to work for you in your development
environments, etc. If it does seem to work well, this seems like
something we could easily add to DSpace 1.8's XMLUI Admin Control Panel.
- Tim
# This patch file was generated by NetBeans IDE
# Following Index: paths are relative to:
D:\programming\dspace-trunk\dspace-xmlui\dspace-xmlui-webapp\src\main\webapp
# This patch can be applied using context Tools: Patch action on respective
folder.
# It uses platform neutral UTF-8 encoding and \n newlines.
# Above lines and this line are ignored by the patching process.
Index: sitemap.xmap
--- sitemap.xmap Base (BASE)
+++ sitemap.xmap Locally Modified (Based On LOCAL)
@@ -192,6 +192,7 @@
<map:action name="StartAuthentication"
src="org.dspace.app.xmlui.aspect.eperson.StartAuthenticationAction"/>
<map:action name="DSpacePropertyFileReader"
src="org.dspace.app.xmlui.cocoon.DSpacePropertyFileReader" />
<map:action name="PropertyFileReader"
src="org.dspace.app.xmlui.cocoon.PropertyFileReader" />
+ <map:action name="ClearCacheAction"
logger="sitemap.action.clear-cache"
src="org.apache.cocoon.acting.ClearCacheAction"/>
</map:actions>
<map:pipes default="caching">
<map:pipe name="noncaching"
src="org.apache.cocoon.components.pipeline.impl.NonCachingProcessingPipeline">
@@ -225,6 +226,20 @@
<map:parameter name="expires" value="now"/>
+ <!-- Clears current Cocoon Cache -->
+ <map:match pattern="clearcache">
+ <map:act type="ClearCacheAction">
+ <map:generate src="status" type="status"/>
+ <map:serialize type="xml"/>
+ </map:act>
+ </map:match>
+
+ <map:match pattern="statusinfo">
+ <map:generate src="status" type="status"/>
+ <map:serialize type="xml"/>
+ </map:match>
+
+
<!--
Bitstreams for items that have a handle
assigned. If the
sequence parameter is given then that will be
used to resolve the
------------------------------------------------------------------------------
EditLive Enterprise is the world's most technically advanced content
authoring tool. Experience the power of Track Changes, Inline Image
Editing and ensure content is compliant with Accessibility Checking.
http://p.sf.net/sfu/ephox-dev2dev
_______________________________________________
DSpace-tech mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/dspace-tech