Uploaded image for project: 'Confluence Data Center'
  1. Confluence Data Center
  2. CONFSERVER-4082

ConversionException on dynamic tasklist after JDK version change

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: High High
    • 2.5
    • None
    • None

      I get this error when trying to add a task to a task list.

      Cause:
      com.thoughtworks.xstream.converters.ConversionException: Cannot construct java.util.Collections$SynchronizedRandomAccessList: java.util.Collections$SynchronizedRandomAccessList ---- Debugging information ---- required-type : java.util.Collections$SynchronizedRandomAccessList cause-message : Cannot construct java.util.Collections$SynchronizedRandomAccessList: java.util.Collections$SynchronizedRandomAccessList class : com.atlassian.confluence.extra.dynamictasklist.model.TaskList message : Cannot construct java.util.Collections$SynchronizedRandomAccessList: java.util.Collections$SynchronizedRandomAccessList line number : 3 path : /com.atlassian.confluence.extra.dynamictasklist.model.TaskList/tasks cause-exception : com.thoughtworks.xstream.converters.reflection.ObjectAccessException -------------------------------

      com.thoughtworks.xstream.converters.ConversionException: Cannot construct java.util.Collections$SynchronizedRandomAccessList: java.util.Collections$SynchronizedRandomAccessList
      ---- Debugging information ----
      required-type : java.util.Collections$SynchronizedRandomAccessList
      cause-message : Cannot construct java.util.Collections$SynchronizedRandomAccessList: java.util.Collections$SynchronizedRandomAccessList
      class : com.atlassian.confluence.extra.dynamictasklist.model.TaskList
      message : Cannot construct java.util.Collections$SynchronizedRandomAccessList: java.util.Collections$SynchronizedRandomAccessList
      line number : 3
      path : /com.atlassian.confluence.extra.dynamictasklist.model.TaskList/tasks
      cause-exception : com.thoughtworks.xstream.converters.reflection.ObjectAccessException

        1. tasklist_jdk_1.4
          0.9 kB
          jens
        2. tasklist_jdk_1.5
          2 kB
          jens

            [CONFSERVER-4082] ConversionException on dynamic tasklist after JDK version change

            I've changed the dynamic task list model to not persist the internal java.util.Collections implementation of a synchronized list. This list is marked as transient and is constructed as necessary on creation and deserialization.

            When conversion exceptions are thrown we now attempt to convert the task to the new model via a quick SAX converter. When this process is finished a new task list is returned. When lists are saved, they will be persisted in the new, much simpler task list model which will deserialize cleanly without any conversion necessary.

            Christopher Owen [Atlassian] added a comment - I've changed the dynamic task list model to not persist the internal java.util.Collections implementation of a synchronized list. This list is marked as transient and is constructed as necessary on creation and deserialization. When conversion exceptions are thrown we now attempt to convert the task to the new model via a quick SAX converter. When this process is finished a new task list is returned. When lists are saved, they will be persisted in the new, much simpler task list model which will deserialize cleanly without any conversion necessary.

            Updating the title of this issue to reflect the fact that this will happen when JDK versions are changed and not just an upgrade to 1.5

            Christopher Owen [Atlassian] added a comment - Updating the title of this issue to reflect the fact that this will happen when JDK versions are changed and not just an upgrade to 1.5

            Jag Gill added a comment -

            Ted / Peter

            I thought I had the same problem with a broader context, as I was running a brand new install of Confluence 2.3.3. However, it turned out I was using JDK (1.)6, which is distinctly unsupported by the Atlassian product range (look slike that's the problem with yours Ted). It works fine for us using JDK (1.)5.

            Hope this helps for now, although Atlassian should really start addressing the JDK 6 compatibility issues, now that it's out and many are moving towards it for developing new plugins.

            Kind Regards
            Jag

            Jag Gill added a comment - Ted / Peter I thought I had the same problem with a broader context, as I was running a brand new install of Confluence 2.3.3. However, it turned out I was using JDK (1.)6, which is distinctly unsupported by the Atlassian product range (look slike that's the problem with yours Ted). It works fine for us using JDK (1.)5. Hope this helps for now, although Atlassian should really start addressing the JDK 6 compatibility issues, now that it's out and many are moving towards it for developing new plugins. Kind Regards Jag

            An additional note on this. The context is much broader than the upgrade scenario. Our Confluence install was completely new and we experienced this issue.

            Ted Pietrzak added a comment - An additional note on this. The context is much broader than the upgrade scenario. Our Confluence install was completely new and we experienced this issue.

            Any update or workaround for this? I'm having the same problem.

            Ted Pietrzak added a comment - Any update or workaround for this? I'm having the same problem.

            Any update on this issue? We're in the same boat as everyone else...

            Peter Raymond added a comment - Any update on this issue? We're in the same boat as everyone else...

            I also get this error after a JDK upgrade for completely new task lists, such as {dynamictasklist:neverusedthisnamebefore}

            Build Information:
            confluence.home: /var/lib/jboss/data/confluence
            system.uptime: 14 hours, 3 minutes, 16 seconds
            system.version: 2.3
            build.number: 641

            Server Information:
            Application Server: Apache Tomcat/5.5.20
            Servlet Version: 2.4
            Database Dialect: net.sf.hibernate.dialect.PostgreSQLDialect
            Database Driver Name: N/A
            Database Driver Version: N/A

            Memory Information:
            total.memory: 285 MB
            free.memory: 98 MB
            used.memory: 187 MB

            System Information:
            system.date: Thursday, 11 Jan 2007
            system.time: 10:54:55
            system.favourite.colour: Claret
            java.version: 1.6.0
            java.vendor: Sun Microsystems Inc.
            jvm.version: 1.0
            jvm.vendor: Sun Microsystems Inc.
            jvm.implementation.version: 1.6.0-b105
            java.runtime: Java(TM) SE Runtime Environment
            java.vm: Java HotSpot(TM) Server VM
            user.name.word: jboss
            user.timezone: Europe/Paris
            operating.system: Linux 2.6.17.8-server.piv
            os.architecture: i386
            fs.encoding: ISO-8859-1

            Peter Hilton added a comment - I also get this error after a JDK upgrade for completely new task lists, such as {dynamictasklist:neverusedthisnamebefore} Build Information: confluence.home: /var/lib/jboss/data/confluence system.uptime: 14 hours, 3 minutes, 16 seconds system.version: 2.3 build.number: 641 Server Information: Application Server: Apache Tomcat/5.5.20 Servlet Version: 2.4 Database Dialect: net.sf.hibernate.dialect.PostgreSQLDialect Database Driver Name: N/A Database Driver Version: N/A Memory Information: total.memory: 285 MB free.memory: 98 MB used.memory: 187 MB System Information: system.date: Thursday, 11 Jan 2007 system.time: 10:54:55 system.favourite.colour: Claret java.version: 1.6.0 java.vendor: Sun Microsystems Inc. jvm.version: 1.0 jvm.vendor: Sun Microsystems Inc. jvm.implementation.version: 1.6.0-b105 java.runtime: Java(TM) SE Runtime Environment java.vm: Java HotSpot(TM) Server VM user.name.word: jboss user.timezone: Europe/Paris operating.system: Linux 2.6.17.8-server.piv os.architecture: i386 fs.encoding: ISO-8859-1

            We use Confluence Enterprise 2.1.5a (unlimited user edition).This issue is preventing our upgrade to (version 2.2.9).
            It is impossible to manually find out and migrate hundreds of tasklists on different pages.

            Please increase the priority.

            Vijayachandran added a comment - We use Confluence Enterprise 2.1.5a (unlimited user edition).This issue is preventing our upgrade to (version 2.2.9). It is impossible to manually find out and migrate hundreds of tasklists on different pages. Please increase the priority.

            kalyan d added a comment -

            The above workaround we guess is not feasible to our setup since we have a large amounts of pages which have dynamic task list been used .

            We are not able to use the older version of the JDK (1.4) as its' killing the confluence instance due to conflict with other plug-in/macro dependencies.

            we are looking another workaround where in we can migrate the older XML to newer versions. This is a roadblock to our production upgrade.

            kalyan d added a comment - The above workaround we guess is not feasible to our setup since we have a large amounts of pages which have dynamic task list been used . We are not able to use the older version of the JDK (1.4) as its' killing the confluence instance due to conflict with other plug-in/macro dependencies. we are looking another workaround where in we can migrate the older XML to newer versions. This is a roadblock to our production upgrade.

            While this JDK problem awaits developer resources, the workaround is to manually transfer dynamictasklist content as described at

            http://confluence.atlassian.com/display/DOC/Dynamic+tasklist+macro+edits+fail+with+ConversionException+after+JDK+upgrade

            Cheers,
            David S

            David Soul [Atlassian] added a comment - While this JDK problem awaits developer resources, the workaround is to manually transfer dynamictasklist content as described at http://confluence.atlassian.com/display/DOC/Dynamic+tasklist+macro+edits+fail+with+ConversionException+after+JDK+upgrade Cheers, David S

              christopher.owen@atlassian.com Christopher Owen [Atlassian]
              jens@atlassian.com jens
              Affected customers:
              14 This affects my team
              Watchers:
              13 Start watching this issue

                Created:
                Updated:
                Resolved: