Janne,

OK, I've pretty much confirmed that this (pretty serious) problem is caused by a bug in or around JSPWikiMarkupParser - apparently in the 'paragraphify' method. (Maybe not checking for nulls?) This is where the stacktrace indicates the problem is coming from (partial copy attached). Looking at Changelog, I note that there was a change made in 2.5.14 dealing with this. I changed to 2.5.11 and was able to generate a new refmgr.ser quite easily (and fast - it looks like it only took a few seconds). I then went back to 2.5.19 and used that new refmgr.ser to run, and it was just fine.

Terry

Janne Jalkanen wrote:
In my application, I'm setting some WikiPage attributes, and I want my application to control which attributes get persisted (via a database) and which don't. So, as I mentioned above, I deleted refmgr.ser, assuming that JSPWiki would generate a new one. But, as I mentioned, it didn't and refused to start until I put the old one back.
Yes, it should absolutely start (otherwise you wouldn't be able to install it). However, if refmgr.ser is deleted, it may take a *very long time* to boot, since jspwiki will essentially go through every single page and parse it.

Also, if you're *relying* on some particular information being found on wikipages, and your code happens to access it before all of the pages have been parsed, you may experience some unwanted side effects.

Relevant parts of the stack trace:
java.lang.NullPointerException
   at com.ecyrd.jspwiki.parser.PluginContent.getText(PluginContent.java:72)
   at org.jdom.Element.getText(Element.java:472)
   at org.jdom.Element.getTextTrim(Element.java:494)
at com.ecyrd.jspwiki.parser.JSPWikiMarkupParser.paragraphify(JSPWikiMarkupParser.java:2733) at com.ecyrd.jspwiki.parser.JSPWikiMarkupParser.parse(JSPWikiMarkupParser.java:2669)
   at com.ecyrd.jspwiki.WikiEngine.textToHTML(WikiEngine.java:1504)
   at com.ecyrd.jspwiki.WikiEngine.scanWikiLinks(WikiEngine.java:1434)
at com.ecyrd.jspwiki.ReferenceManager.updatePageReferences(ReferenceManager.java:179) at com.ecyrd.jspwiki.ReferenceManager.initialize(ReferenceManager.java:284) at com.ecyrd.jspwiki.WikiEngine.initReferenceManager(WikiEngine.java:675)
   at com.ecyrd.jspwiki.WikiEngine.initialize(WikiEngine.java:582)
   at com.ecyrd.jspwiki.WikiEngine.<init>(WikiEngine.java:439)
   at com.ecyrd.jspwiki.WikiEngine.getInstance(WikiEngine.java:338)
at com.ecyrd.jspwiki.ui.WikiServletFilter.init(WikiServletFilter.java:55) at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:223) at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:304) at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:77) at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3600) at org.apache.catalina.core.StandardContext.start(StandardContext.java:4193) at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:759) at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:739)
   at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:524)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:904) at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:867) at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:474)
   at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1122)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:310) at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
   at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1021)
   at org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
   at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1013)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442) at org.apache.catalina.core.StandardService.start(StandardService.java:450) at org.apache.catalina.core.StandardServer.start(StandardServer.java:709)
   at org.apache.catalina.startup.Catalina.start(Catalina.java:551)
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:585)
   at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:294)
   at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:432)

_______________________________________________
Jspwiki-users mailing list
[email protected]
http://ecyrd.com/cgi-bin/mailman/listinfo/jspwiki-users

Reply via email to