Custom ObjectTypeDeterminer defined in struts.properties is not correctly set 
in XWorkConverter
-----------------------------------------------------------------------------------------------

                 Key: WW-1810
                 URL: https://issues.apache.org/struts/browse/WW-1810
             Project: Struts 2
          Issue Type: Bug
          Components: Configuration
    Affects Versions: 2.0.6
         Environment: Tomcat 5.5.17
            Reporter: Daniel Uribe


When a custom ObjectTypeDeterminer is defined in the struts.properties file as 
follows, the instance of XWorkConverter (by default being 
AnnotationXWorkConverter) does not get its objectTypeDeterminer property set to 
an instance of the custom ObjectTypeDeterminer.

struts.objectTypeDeterminer=CustomObjectTypeDeterminer


What seems to be happening is that the injection and instantiation of 
AnnotationXWorkConverter is happening before the injection of the 
ObjectTypeDeterminer into the ObjectTypeDeterminerFactory. New instances of 
AnnotationXWorkConverter retrieve their instance of ObjectTypeDeterminer at 
initialization time by calling the ObjectTypeDeterminerFactory.getInstance() -- 
line 165 --, which at that moment doesn't have an instance of the custom 
ObjectTypeDeterminer. This effectively prevents the use of the custom 
ObjectTypeDeterminer with any operation done through OGNL, since it uses the 
instance that the AnnotationXWorkConverter has.

-- 
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