[ 
https://issues.apache.org/jira/browse/JSPWIKI-155?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Juan Pablo Santos Rodríguez updated JSPWIKI-155:
------------------------------------------------

    Fix Version/s:     (was: 3.1)
                   2.10
    
> Allow customisation of core classes via ClassUtil.getMappedObject
> -----------------------------------------------------------------
>
>                 Key: JSPWIKI-155
>                 URL: https://issues.apache.org/jira/browse/JSPWIKI-155
>             Project: JSPWiki
>          Issue Type: Improvement
>          Components: Core & storage
>    Affects Versions: 2.6.0
>            Reporter: Simon Kitching
>            Priority: Minor
>             Fix For: 2.10
>
>
> The WikiEngine class uses the ClassUtils.getMappedObject method to locate its 
> critical helper objects, rather than just call "new".
> The intentention of this existing code is for people to be able to override 
> the core implementations with custom ones - with the warning that these core 
> objects do not have stable public apis, and may change in any release. 
> Unfortunately because (a) the returned object is cast to a concrete type, and 
> (b) many of these concrete types are declared "final" this facility is 
> actually almost useless.
> It would be nice for the "final" to be removed from these classes, and from 
> their member methods so that getMappedObject becomes useful. Alternately, 
> interfaces could be created for the concrete classes that WikiEngine 
> currently uses, and all code modified to use the interface instead; the 
> existing implementations could then remain final. That approach is much more 
> intrusive though.
> Note that in discussions on the email lists it has been suggested that the 
> "final" qualifier on these classes helps make jspwiki more secure. Personally 
> I'm not at all convinced that is true though.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to