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

Dain Sundstrom closed XBEAN-95.
-------------------------------

    Resolution: Fixed

I applied all of your suggested changes.

> register PropertyEditors locally, not globally
> ----------------------------------------------
>
>                 Key: XBEAN-95
>                 URL: https://issues.apache.org/jira/browse/XBEAN-95
>             Project: XBean
>          Issue Type: Bug
>          Components: spring
>            Reporter: Christopher Sahnwaldt
>            Assignee: Dain Sundstrom
>
> org.apache.xbean.spring.context.impl.PropertyEditorHelper registers 
> PropertyEditors for java.io.File, java.net.URI, java.util.Date and 
> javax.management.ObjectName using 
> java.beans.PropertyEditorManager.registerEditor(). This may cause problems:
> - the usual problem with global variables: another application running in the 
> same JVM may register a different PropertyEditor, e.g. for java.util.Date. 
> One of the applications will then use the PropertyEditor that was registered 
> by the other application. Which application 'wins' depends on the order of 
> the calls to PropertyEditorManager.registerEditor().
> - java.beans.PropertyEditorManager keeps a strong reference to the registered 
> classes. The xbean PropertyEditor classes are loaded by the context class 
> loader, (which is the webapp class loader if running in Tomcat etc.). The 
> class java.beans.PropertyEditorManager is loaded by the bootstrap class 
> loader. This means that there is a strong reference from the bootstrap class 
> loader to the webapp class loader, which means that the webapp class loader 
> cannot be unloaded, which means that the webapp is not garbage collected when 
> it is undeployed.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to