Uploaded image for project: 'Struts 2'
  1. Struts 2
  2. WW-3843

overriding default typeconverters in struts.xml does not work

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 2.3.4
    • 2.3.7
    • XML Configuration
    • None

    Description

      according to the docs one can override default
      typeconverters (cf:
      http://struts.apache.org/2.3.4/xwork-core/apidocs/com/opensymphony/xwork2/conversion/impl/XWorkBasicConverter.html
      )

      == Quote from the docs
      As from version 2.3.2 you can override default converters by
      implementting TypeConverter interface and specifying beans in
      struts.xml as follow: <bean
      type="com.opensymphony.xwork2.conversion.TypeConverter"
      name="collection" class="com.application.MyCollectionConverter"
      scope="singleton"/>

      I tried with that approach by creating a new TypeConverter (roughly
      copied from com.opensymphony.xwork2.conversion.impl.NumberConverter)
      adding the following line in struts.xml right after the <struts> tag
      <bean type="com.opensymphony.xwork2.conversion.TypeConverter"
      name="number" class="com.company.app.NumberConverter"
      scope="singleton"/>

      but the webapp failed to start with the following error.

      Caused by: Bean type interface
      com.opensymphony.xwork2.conversion.TypeConverter with the name number
      has already been loaded by [unknown location] - bean -
      file:/D:/dev/tomcat/webapps/blank/WEB-INF/classes/struts.xml:10:132
      at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.register(XmlConfigurationProvider.java:227)

      Attachments

        Activity

          People

            lukaszlenart Lukasz Lenart
            ptemplier Pierre Templier
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: