Paul Illingworth created JSPWIKI-919:
----------------------------------------
Summary: FileSystemProvider created pages not displayed by
VersioningFileProvider if page caching turned off
Key: JSPWIKI-919
URL: https://issues.apache.org/jira/browse/JSPWIKI-919
Project: JSPWiki
Issue Type: Bug
Components: Core & storage
Affects Versions: 2.10.1
Environment: Windows 7 Professional SP1
Reporter: Paul Illingworth
I have an install of JSPWiki (2.10.1) that has been preloaded with a set
of (my own) wiki pages. These pages are dropped into the
${jspwiki.fileSystemProvider.pageDir} directory as just .txt files. There
are no property files and I have no OLD directory. The page provider is
set to the VersioningFileProvider.
With page caching on all works as expected.
When I turn page caching off [*] none of my pages get displayed and
instead I get "This page does not exist. Why don’t you go and create it?".
If I say yes the page is loaded for me to edit. If I change the page and
save it it then becomes visible.
It seems that the issue is with
org.apache.wiki.providers.VersioningFileProvider.pageExists(String, int)
and org.apache.wiki.providers.CachingProvider.pageExists(String, int)
returning different values if page caching is on or off.
With caching on
org.apache.wiki.providers.CachingProvider.pageExists(String, int) returns
true
With caching off
org.apache.wiki.providers.VersioningFileProvider.pageExists(String, int)
returns false
It seems that this is because the OLD/pageName directory does not exist
(e.g. for the MAIN page jspwiki/pages/OLD/Main does not exist) and
org.apache.wiki.providers.VersioningFileProvider.pageExists(String, int)
does not handle this situation.
Can be "fixed" by replacing pageExists(...) in VersioningPageProvider with
public boolean pageExists(String pageName, int version)
{
try
{
WikiPage p = getPageInfo(pageName, version);
return p != null;
}
catch (ProviderException e)
{
return false;
}
}
although I am not sure of the implications of this.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)