[ 
https://issues.apache.org/jira/browse/JSPWIKI-822?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13975288#comment-13975288
 ] 

Juan Pablo Santos Rodríguez commented on JSPWIKI-822:
-----------------------------------------------------

Hi Ichiro,

WikiDocument stores references to WikiContext inside a {{WeakReference< 
WikiContext >}}, so it'll return null on getContext() if the associated 
WikiContext has been garbage collected; it doesn't seem to be an issue on 
WikiForms, but a bug on PluginContent, not handling a possible null there. What 
were you doing with the WikiForm to trigger this error, could a unit test 
reproduce it?

As for the NPE itself, a couple of lines before {{WikiContext context = 
doc.getContext();}}, when the WikiDocument happens to be null, we simply return 
getPluginName(), so I'm more inclined to do the same when the context is null 
rather than printing out an error message..

thoughts?

> NPE thrown by PluginContext#getText()
> -------------------------------------
>
>                 Key: JSPWIKI-822
>                 URL: https://issues.apache.org/jira/browse/JSPWIKI-822
>             Project: JSPWiki
>          Issue Type: Bug
>          Components: Plugins
>    Affects Versions: 2.10
>         Environment: Ubuntu Linux 12.10, JDK 7 (but bug is independent of 
> environment)
>            Reporter: Ichiro Furusato
>            Priority: Minor
>             Fix For: 2.10.1
>
>   Original Estimate: 0.25h
>  Remaining Estimate: 0.25h
>
> In previous versions of JSPWiki there was a null check in 
> PluginContent#getText() to make sure that 
>   WikiContext context = doc.getContext(); 
> actually returns a WikiContext. In certain cases (e.g., WikiForms) the 
> context can get lost, so that the subsequent call on line 150
>   Boolean wysiwygVariable = (Boolean) 
> context.getVariable(RenderingManager.WYSIWYG_EDITOR_MODE);
> throws an NPE. I would recommend reinstating the earlier check from JSPWiki 
> 2.9.x:
>    if( context == null )
>             return "No WikiContext available: INTERNAL ERROR";
> or perhaps an improvement. As is, the NPE results (from the user's 
> perspective) in empty wiki page.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to