Add new attachment

Only authorized users are allowed to upload new attachments.

List of attachments

Kind Attachment Name Size Version Date Modified Author Change note
txt
README.txt 66.9 kB 4 04-Feb-2006 07:18 148.221.80.109
java
VersioningFileProvider.java 15.2 kB 1 21-Feb-2005 21:48 MikeOliverAZ

This page (revision-88) was last changed on 10-Oct-2011 16:01 by Janne Jalkanen  

This page was created on 12-Apr-2002 18:10 by JanneJalkanen

Only authorized users are allowed to rename pages.

Only authorized users are allowed to delete pages.

Difference between version and

At line 1 changed one line
VersioningFileProvider is a new [page provider], meant to replace the [RCSFileProvider], which has problems especially with Windows.
VersioningFileProvider is a new [PageProvider], meant to replace the [RCSFileProvider], which has problems especially with Windows.
At line 3 changed one line
It is available from JSPWiki 1.7.0 onwards.
It is available from JSPWiki 1.7.0 onwards. To use it, edit the jspwiki.properties file as follows:
At line 5 changed one line
[RefactorMe], please.
#Change the {{jspwiki.pageProvider}} to {{VersioningFileProvider}} ''with no leading or trailing spaces!!''
#Confirm the line {{jspwiki.fileSystemProvider.pageDir = ''some path''}} is correct for your system
#Add a line {{jspwiki.versioningFileProvider.pageDir = ''some other path''}} to the file, although it doesn't seem to be used for anything...
At line 7 changed 2 lines
----
Is JSPWiki flexible enough to allow someone to write their own provider? For example we use perforce or p4 for short (http://www.perforce.com).
see also [FileProviderComparing], [FileProviderMoving]
At line 10 removed 2 lines
Thanks
--[MarkGriffith]
At line 13 removed 4 lines
Yes, it most certainly should be. See [WritingPageProviders].
--JanneJalkanen
At line 33 changed one line
Moving from [RCSFileProvider] is a bit more complicated, since it involves you checking out the pages manually and storing them in the OLD directory. Could someone perhaps contribute a short script for this?
--[JanneJalkanen]
At line 35 changed one line
BTW, if you can live without your previous version history, just delete the RCS-subdirectory in the JSPWiki page repository, and then change the page provider. All new versions will then go to the VersioningFileProvider directory.
----
At line 37 changed one line
Though in all honesty, I haven't tested it all under Windows. There should be nothing Linux-specific in it, though... :-)
I seem to remember a Java port of the CVS client, I wonder if that had a diff client that could be re-used...
At line 34 added 4 lines
--[MattMower]
Since 1.8.0, we are using an internal Java diff routine, so we now require no other software =).
At line 41 changed one line
Well the neat thing (I suppose) is that I haven't managed to get the [RCSFileProvider] to work yet so nothings actually been checked in to the RCS directory yet. Given that though, will the VersioningFileProvider actually work either?
----
At line 43 changed one line
--[MattMower]
!Setting a maximum number of versions to store?
At line 45 changed one line
It should - it does not require anything extra. Just set the provider and you're set to go. (Before 1.8.0 you needed to have the RCS diff as well, though.)
Something that might be useful would be a property that can be set expressing the maximum number of revisions stored. If this value were set to 10, then when the 11th version were added it could automatically delete the first. I suppose the rest of the files could be then renamed (2 to 1, 3, to 2, etc) but I'm not sure I see much need for that. That might reduce some of the administration necessary. I don't see a whole lot of interest with maintaining the ability to go back to the absolute first version of something. I find that being able to back a few to maybe a dozen is sufficient, but YMMV, I suppose.
At line 47 changed one line
The problem with [RCSFileProvider] is that it requires you to set up [RCS], which was always designed as an UNIX tool, and none of the Windows ports have ever tried to integrate to Windows in any clean way. VersioningFileProvider does not have this problem.
-- RobSeegel
At line 49 changed one line
--[JanneJalkanen]
Nice idea. It would make sense to enable something like that for intranet wikis and so on; on public wikis you really want rollback to any version (to make sure you can get over from WikiGraffiti).
At line 51 changed one line
I seem to remember a Java port of the CVS client, I wonder if that had a diff client that could be re-used...
-- JanneJalkanen
At line 53 changed one line
--[MattMower]
Is this available (vJSPWiki v2.2.13) ?
At line 55 changed one line
Since 1.8.0, we are using an internal Java diff routine, so we now require no other software =).
Right now I have pages with more than 150 revisions !
At line 57 changed one line
--[JanneJalkanen]
-- RealGagnon
At line 58 added 2 lines
At line 61 changed one line
What do you put as your "# The command for RCS checkin" etc when you are using VersioningFileProvider ?
When I try to use VersioningFileProvider on my wiki, the system gave me
At line 63 changed one line
Commenting them out seems to work.
!an error that An unknown exception java.lang.~NullPointerException was caught by Error.jsp
At line 65 changed one line
--[NigelThorne|WikiWikiWeb:NigelThorne]
Who has idea why it is?
At line 67 changed one line
You don't need the RCS checkin commands at all when you're using VersioningFileProvider. [RCS] is not used at all in that case.
-- Dongsehng
----
Hi ... even i am having the same problems with it
At line 69 changed one line
--[JanneJalkanen]
An unknown exception java.lang.~NullPointerException was caught by Error.jsp
At line 74 added 4 lines
does anybody know whats happening??
Thanks
At line 79 added 2 lines
Check and make sure that it's not a permissions problem. Can the web server (tomcat?) create files in the directory specified as the pageDir.
----
At line 73 changed one line
Is VersioningFileProvider better than RCSFileProvider? Which should I use? I am on a Linux system and RCS is working fine for me, but I just started today with JSPWiki, so it really does not matter about a change...
Arite ... the null pointer exception is now solved... u need to do the following:
At line 75 changed one line
Will they both be supported in the future?
1. jspwiki.pageProvider = VersioningFileProvider
At line 77 changed one line
-- [JeremyC]
2. jspwiki.fileSystemProvider.pageDir = path where all the wiki pages are... it creates a subdirectory here for storing the older versions...
At line 79 changed one line
Yes. Both will be supported in the future. My personal preference is for the RCSFileProvider, but we wrote VersioningFileProvider so that people would not need to rely on external programs. Especially for people running on Windows VersioningFileProvider is often the less problematic one.
3. jspwiki.versioningFileProvider.pageDir = some path
At line 81 changed one line
The real difference between these two is in disk space consumption: RCSFileProvider uses far less disk space. This may be an issue when doing backups and such. --[JanneJalkanen]
and it works fine for me ...
At line 83 changed one line
In addition, VersioningFileProvider is far faster than RCSFileProvider, which relies on external programs to function. This can be an issue, especially if you use a lot of WebLogs.
But can someone tell me if you have managed to get the [AntCvsFileProvider] running fine with the latest version of JSPwiki??
thanks
At line 85 changed one line
--[Janne Jalkanen]
AJ
At line 87 changed 2 lines
One Problem I have noticed with the VersioningFileProvider (using JSPWiki v2.1.22-cvs) is that the "last changed date" displayed at the bottom of pages is never updated as it was using the RCSFileProvider. Could this be because I did ''not'' follow the recommended
procedure for switching from RCSFileProvider to VersioningFileProvider?
This is also needed (at least in 2.3.92):
At line 90 changed one line
I have in my archives somewhere an RCSFileProvider ready tarball of the initial set of Wiki pages (at least as of some version of JSPWiki from quite long ago). If anybody wants them, just drop me a line. I am happy to contribute them if anyone thinks they would be useful to help people get going quickly with the RCSFileProvider.
4. jspwiki.usePageCache = true
At line 92 changed one line
--[MikeMorris]
TN
----
I found that if there is a space at the end of "jspwiki.pageProvider = VersioningFileProvider
" then you get the exception "An unknown exception java.lang.~NullPointerException was caught by Error.jsp". Make sure there are no spaces at the end.\\
At line 106 added one line
DH
At line 96 changed one line
!How much space does VersioningFileProvider need with respect to RCSFileProvider?
I am running v2052 (stable) using VersioningFileProvider. Is there any way to get rid of older versions of a page? Since I found the Preview would often lock up my process with the "Oops you are in conflict" msg, I took to Saving each time, and now have 200 versions :-) I probably still won't use Preview and will end up with another 200, so I would like a way to delete them.
At line 98 changed one line
Q: What is a decent way to think about the ratio? -- MatthewSimpson
thanks
At line 100 changed one line
A: These pages tend to be relatively small, so disk usage isn't a huge issue -- in my opinion -- especially given the size of modern drives. It also depends upon how many times a page is revisioned. For example, the main page on [JSPWiki|http://www.jspwiki.org/], as of the time I am writing this, has been versioned 175 times. Let's say it fits into a 3KB file (it's not that big), which gives us 175 * 3KB = 525KB for a highly active front page (not counting disk block sizes, etc). This still isn't too bad, especially given the fact that the VersioningFileProvider is much faster than the RCSFileProvider. As for attachments, RCS is not efficient at versioning binary files -- it makes a complete copy of it just like VersioningFileProvider. I've also gone in and manually edited some of the pages on the intranet server I have running where people made some simple beginner mistakes and I didn't want to create a new version of the page and it is much easier to do that if you have separate copies of every page (this shouldn't be encouraged, by the way). If you find yourself running low on space, you could always delete some pr0n. [Pic/smile.png]
VS
----
At line 102 changed one line
--MichaelGentry
I am looking for an easy way to mark certain versions of a wiki page.
JSPWiki always shows the latest version of a page, even if that information is 'under construction'.
See [VersionLabel] for more discussion.
-- [DF|DirkFrederickx]
At line 104 changed one line
The RCS store of Main is 45802 bytes at the writing of this. So we would guess that the VersioningFileProvider takes about eleven times as much space as the RCSFileProvider. Take into account blocks (assume 32k blocks for FAT, for example, and you suddenly gain more:
----
At line 106 changed 2 lines
* VersioningFileProvider: 32 k * 175 = 5600 kb
* RCSFileProvider: 45802/32767 = 2 blocks = 64 kb.
Hi guys, I've been trying to get versioning working without success.
At line 109 changed one line
Thus the ratio is about 87.5/1 with large block sizes...
jspwiki.pageProvider=VersioningFileProvider
At line 111 changed one line
FYI: The entire JSPWiki page repository takes at the moment 12 MBytes using RCSFileProvider, and that's with all the attachments included. But we use RCSFileProvider.
Then I get the error
At line 129 added 9 lines
ERROR com.ecyrd.jspwiki.providers.CachingProvider - Unable to locate provider class VersioningFileProvider\\
java.lang.ClassNoFoundException: Class not found in search path!\\
Ideas anybody ?
JJH
Check that you don't have extra spaces around the "VersioningFileProvider".
At line 140 added 9 lines
Hey, thanks mate that's sorted it. I thought that I'd previously checked that I've read it above, maybe I've been at this keyboard for too long.\\
So that now appear to work OK, for the record.\\
Fedora Core 2\\
Tomcat 5.5.4\\
Java 1.5.0\\
JSP wiki 2.1.115.alpha\\
JJH
At line 116 removed one line
!Setting a maximum number of versions to store?
At line 118 changed one line
Something that might be useful would be a property that can be set expressing the maximum number of revisions stored. If this value were set to 10, then when the 11th version were added it could automatically delete the first. I suppose the rest of the files could be then renamed (2 to 1, 3, to 2, etc) but I'm not sure I see much need for that. That might reduce some of the administration necessary. I don't see a whole lot of interest with maintaining the ability to go back to the absolute first version of something. I find that being able to back a few to maybe a dozen is sufficient, but YMMV, I suppose.
I had an idea about using a versioning provider for storing document drafts, which has now been submitted as an idea, as it is not specififc to the Versioning File provider - [IdeaPrivateVersionedDocumentDrafts].
At line 120 changed one line
-- RobSeegel
--DavidC, 09-Sep-2006
At line 122 removed one line
Nice idea. It would make sense to enable something like that for intranet wikis and so on; on public wikis you really want rollback to any version (to make sure you can get over from WikiGraffiti).
At line 156 added 7 lines
I use Versioning File Provider to get email notifications... the sad thing is, it does not send email (discover new versions), if I change only the attachments of the page and leave the page itself untouched, any idea?
Maybe I need to use the External Provider based on diff command, but I doubt, it looks like an attachment is not considered as a part of the page and stored in own subfolder.... Of course, I can add my own Provider, but I think somebody has already done this...
--[serge]
Use the RSS feed; it also gives you notifications on the attachment changes!
At line 126 changed 2 lines
----
!Has anyone written a CVS page provider?
Thanks much, Janne... The thing is I need to configure the jspwiki.pageProvider property, in order to use the automatic email Notificator...
At line 129 changed one line
Funny how you need CVS to get the latest developer JSPWiki yet it supports RCS natively.\\
I do not see any provider which implements the VersioningProvider interface in the RSS package....
At line 131 changed one line
We're already using CVS for everything else, it would be great if we could (relatively) easily tie JSPWiki to it, unless this is a dumb question and CVS and RCS are close enough that this will work by default. In that case, why doesn't anyone mention it anywhere?
--[serge]
At line 133 changed one line
-- JacobShare
They have nothing to do with each other. As long as you have any provider which does versioning (like VersioningFileProvider, JDBCProvider or RCSFileProvider), RSS works automatically.
At line 135 changed one line
See [CVSFileProvider Issues] for more information. It is conceivable that you could use [RCSFileProvider] with a bunch of custom settings, as most of CVS is based on RCS.
-- JanneJalkanen
At line 175 added 19 lines
Well, I see it. My goal is to send email automatically to a subscriber when the attachment gets changed... I do not see how RSS can do it, please give me some hints/links if it can.... (I am not very familiar with RSS)
--[serge]
----
Question on Oct 10th, 2011:\\
Can one switch back and forth between {{jspwiki.pageProvider = FileSystemProvider}} and {{jspwiki.pageProvider = VersioningFileProvider}}? \\
I have a JSPWiki using {{FileSystemProvider}} now. I want to switch to {{VersioningFileProvider}} for a test, but I might be forced to switch back, if the user's don't like it.
\\
Additionally: Can I manually delete old versions when using {{VersioningFileProvider}}? I fear that disk usage might increase to heavily.
\\
Thanks. -- JCKi.
Yes, you can move back and forth between them. Disk usage in general isn't a problem, but you can remove old versions, but don't leave version gaps - i.e. you can delete versions 1..20, but not 1.10 and 18 and 19.
Version Date Modified Size Author Changes ... Change note
88 10-Oct-2011 16:01 7.813 kB Janne Jalkanen to previous
87 10-Oct-2011 15:11 7.585 kB 193.30.140.141 to previous | to last added Q: Can I switch back and forth with FileProviders?
86 10-Oct-2010 16:39 7.043 kB Dirk Frederickx to previous | to last remove spam
85 09-Oct-2010 00:23 7.171 kB Razan Abbass to previous | to last
84 26-Sep-2007 23:44 7.043 kB JanneJalkanen to previous | to last
83 26-Sep-2007 02:51 7.057 kB 161.200.255.162 to previous | to last
82 16-Jan-2007 04:25 7.043 kB 24.110.6.81 to previous | to last
81 09-Nov-2006 15:23 6.89 kB SergeBakhteiarov to previous | to last
« This page (revision-88) was last changed on 10-Oct-2011 16:01 by Janne Jalkanen  
G’day (anonymous guest) My Prefs
JSPWiki v2.8.4-svn-9