Uploaded image for project: 'camunda BPM'
  1. camunda BPM
  2. CAM-3624

Process-application-specific data format configuration

    • Icon: Feature Request Feature Request
    • Resolution: Won't Fix
    • Icon: L3 - Default L3 - Default
    • None
    • None
    • engine, spin

      At the moment, data formats are managed globally. That means each process application has access to the same data format instances. This can be problematic when data formats need to be configured in a process-application-specific way.

      For example, a Jackson serializer for a specific class should be registered with the ObjectMapper the Spin json dataformat uses. As of now, this forces users to declare configurators on the classpath of the Spin process engine plugin and therefore requires these custom classes to be present there as well. It is not possible to customize serialization of instances of classes that are contained in a process application.

      Apart from the effort of implementation, the current implementation makes configuration in certain scenarios impossible. For example, on WebLogic the joda-time library is always present in the system's classpath. It is not possible that an application brings a custom version of joda-time (for the reason mentioned in the paragraph above) and it is also not possible to deploy the custom joda-time version in a location that is accessible to both, the spin plugin as well as the process application.

      Implementation idea:

      • cache and resolve data format instances like EL resolvers in the process application instance

        This is the controller panel for Smart Panels app

            [CAM-3624] Process-application-specific data format configuration

            Thorben Lindhauer created issue -
            Thorben Lindhauer made changes -
            Labels New: SUPPORT
            Thorben Lindhauer made changes -
            Description Original: At the moment, data formats are managed globally. That means each process application has access to the same data format instances. This can be problematic when data formats need to be configured in a process-application-specific way.

            For example, a Jackson serializer for a specific class should be registered with the ObjectMapper the Spin json dataformat uses. As of now, this forces users to declare configurators on the classpath of the Spin process engine plugin and therefore requires these custom classes to be present there as well. It is not possible to customize serialization of instances of classes that are contained in a process application.

            Apart from the effort of implementation, the current implementation makes configuration in certain scenarios impossible. For example, on WebLogic the joda-time library is always present in the system's classpath. It is not possible that an application brings a custom version of joda-time (for the reason mentioned in the paragraph above) and it is also not possible to deploy the custom joda-time version in a location that is accessible to both, the spin plugin as well as the process application.
            New: At the moment, data formats are managed globally. That means each process application has access to the same data format instances. This can be problematic when data formats need to be configured in a process-application-specific way.

            For example, a Jackson serializer for a specific class should be registered with the ObjectMapper the Spin json dataformat uses. As of now, this forces users to declare configurators on the classpath of the Spin process engine plugin and therefore requires these custom classes to be present there as well. It is not possible to customize serialization of instances of classes that are contained in a process application.

            Apart from the effort of implementation, the current implementation makes configuration in certain scenarios impossible. For example, on WebLogic the joda-time library is always present in the system's classpath. It is not possible that an application brings a custom version of joda-time (for the reason mentioned in the paragraph above) and it is also not possible to deploy the custom joda-time version in a location that is accessible to both, the spin plugin as well as the process application.

            Implementation idea:
            - cache and resolve data format instances like EL resolvers in the process application instance
            Thorben Lindhauer made changes -
            Link New: This issue is related to SUPPORT-1499 [ SUPPORT-1499 ]
            Robert Gimbel made changes -
            Fix Version/s Original: 7.3.0 [ 13391 ]
            Thorben Lindhauer made changes -
            Link New: This issue is related to SUPPORT-1820 [ SUPPORT-1820 ]
            Matthijs made changes -
            Assignee New: Thorben Lindhauer [ thorben.lindhauer ]
            Matthijs made changes -
            Assignee Original: Thorben Lindhauer [ thorben.lindhauer ] New: Matthijs [ matthijs.burke ]
            Matthijs made changes -
            Assignee Original: Matthijs [ matthijs.burke ] New: Robert Gimbel [ gimbel ]
            Robert Gimbel made changes -
            Fix Version/s New: 7.5.0 [ 14091 ]
            Robert Gimbel made changes -
            Rank New: Ranked higher

              thorben.lindhauer Thorben Lindhauer
              thorben.lindhauer Thorben Lindhauer
              Votes:
              2 Vote for this issue
              Watchers:
              7 Start watching this issue

                Created:
                Updated:
                Resolved: