Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 2.1.12
    • Component/s: Blocks: FOP
    • Labels:
      None
    • Affects version (Component):
      Blocks: FOP
    • Fix version (Component):
      Blocks: FOP

      Description

      Cocoon 2.1 still don't have official support for FOP 0.9x, while Cocoon 2.2 does

      This compatibility is only a matter of FOPSerializer (called FOPNGSerializer in the Cocoon 2.2 fop-ng block)

      I won't put a patch here because it would only be a copy of the FOPNGSerializer.java from Cocoon-2.2, but it would be great if someone could backport the fop-ng block

        Issue Links

          Activity

          Cédric Damioli created issue -
          Hide
          Jasha Joachimsthal added a comment -
          It goes a bit further than just copying the FOPNGSerializer.java. Especially the conflicting fop dependency. In 2.2 this is easier because of the modular maven setup. The bluid process of 2.1 is more complex.
          Show
          Jasha Joachimsthal added a comment - It goes a bit further than just copying the FOPNGSerializer.java. Especially the conflicting fop dependency. In 2.2 this is easier because of the modular maven setup. The bluid process of 2.1 is more complex.
          Hide
          Cédric Damioli added a comment -
          I know that :-(
          But fop 0.20.5 is 7 years old !
          And fop 0.95 was released almost 2 years ago.

          IMHO, no new Cocoon 2.1 project would be happy with FOP 0.20
          However, I agree this may an issue for old existing projects.

          What about including both versions, stating in the docs (and in blocks.properties) that at most one of the two versions must be included ?
          Show
          Cédric Damioli added a comment - I know that :-( But fop 0.20.5 is 7 years old ! And fop 0.95 was released almost 2 years ago. IMHO, no new Cocoon 2.1 project would be happy with FOP 0.20 However, I agree this may an issue for old existing projects. What about including both versions, stating in the docs (and in blocks.properties) that at most one of the two versions must be included ?
          Hide
          Jasha Joachimsthal added a comment -
          I tried adding them both but that resulted in compilation errors.
          Show
          Jasha Joachimsthal added a comment - I tried adding them both but that resulted in compilation errors.
          Hide
          Cédric Damioli added a comment -
          Yes, I just tried also, and it seems you can't put both jar together.

          I propose to deprecate the current fop block for 2.1.12, moving the fop-0.20.5.jar from lib/optional to lib/optional/deprecated
          And to add the fop-ng block, adding the fop-0.95 to lib/optional

          We should also put a note somewhere (wiki ? block.properties ?) to explain that.

          WDYT ?
          Show
          Cédric Damioli added a comment - Yes, I just tried also, and it seems you can't put both jar together. I propose to deprecate the current fop block for 2.1.12, moving the fop-0.20.5.jar from lib/optional to lib/optional/deprecated And to add the fop-ng block, adding the fop-0.95 to lib/optional We should also put a note somewhere (wiki ? block.properties ?) to explain that. WDYT ?
          Hide
          Jasha Joachimsthal added a comment -
          The 2.1 branch is more or less in maintenance mode. If you start a new project, use Cocoon 2.2 which does contain the new FOP block.
          Show
          Jasha Joachimsthal added a comment - The 2.1 branch is more or less in maintenance mode. If you start a new project, use Cocoon 2.2 which does contain the new FOP block.
          Hide
          Sylvain Wallez added a comment -
          There are still a huge number of projects using Cocoon 2.1, and products (this is Cédric's case) based on 2.1 where migrating to 2.2 would be a significant effort without much benefits.

          So a backport seems ok to me if some people need it, and even more if they actually have code ready and already running in production systems.
          Show
          Sylvain Wallez added a comment - There are still a huge number of projects using Cocoon 2.1, and products (this is Cédric's case) based on 2.1 where migrating to 2.2 would be a significant effort without much benefits. So a backport seems ok to me if some people need it, and even more if they actually have code ready and already running in production systems.
          Hide
          Jasha Joachimsthal added a comment -
          I know there are still a lot of 2.1 projects, I've been working on one the whole day. :-)
          "IMHO, no new Cocoon 2.1 project would be happy with FOP 0.20 " made me think he was starting a new Cocoon project.
          Show
          Jasha Joachimsthal added a comment - I know there are still a lot of 2.1 projects, I've been working on one the whole day. :-) "IMHO, no new Cocoon 2.1 project would be happy with FOP 0.20 " made me think he was starting a new Cocoon project.
          Hide
          Cédric Damioli added a comment -
          Our product (Ametys CMS) is actually based on Cocoon-2.1, so we really can't migrate, event if we always try to use latest versions of all 3rd-party libraries (such as FOP).

          In our own SVN repo, we have many Cocoon 2.1 patches/updates that I'm currently trying to give back to the community, that 's why I'm filling the JIRA since a few days :-)

          Do you prefer that I formally ask for this backport on the dev ML ?
          Show
          Cédric Damioli added a comment - Our product (Ametys CMS) is actually based on Cocoon-2.1, so we really can't migrate, event if we always try to use latest versions of all 3rd-party libraries (such as FOP). In our own SVN repo, we have many Cocoon 2.1 patches/updates that I'm currently trying to give back to the community, that 's why I'm filling the JIRA since a few days :-) Do you prefer that I formally ask for this backport on the dev ML ?
          Hide
          Jasha Joachimsthal added a comment -
          Please do, I'm not the only one with an opinion.
          Show
          Jasha Joachimsthal added a comment - Please do, I'm not the only one with an opinion.
          Hide
          Jasha Joachimsthal added a comment -
          BTW, I'm happy to see you put effort in improving Cocoon
          Show
          Jasha Joachimsthal added a comment - BTW, I'm happy to see you put effort in improving Cocoon
          Hide
          David Crossley added a comment -
          At Apache Forrest we would be pleased to see this happen.

          We have our own modified Cocoon 2.1 block for enabling this. Here are some clues that might help ...

          Two snippets from our PDF Plugin's changes file ...
          -----
          Updating the fop-library to fop 0.94 and
          upgrading the stylesheets to work properly with the new and more
          precise fo-interpeter.

          Replaced Cocoon FOP Block with special Forrest edition
          "cocoon-fop-ng-impl-special" compiled by jeremias.
          The sources are in the jar. See r603892 and the thread
            http://mail-archives.apache.org/mod_mbox/forrest-dev/200712.mbox/%3C476AA40C.8050108@apache.org%3E
            Re: Plans for integrating FOP .94
          -----

          Subsequent update to fop-0.95

          The jar and sources are now at:
          https://svn.apache.org/repos/asf/forrest/trunk/plugins/org.apache.forrest.plugin.output.pdf/lib/
          Show
          David Crossley added a comment - At Apache Forrest we would be pleased to see this happen. We have our own modified Cocoon 2.1 block for enabling this. Here are some clues that might help ... Two snippets from our PDF Plugin's changes file ... ----- Updating the fop-library to fop 0.94 and upgrading the stylesheets to work properly with the new and more precise fo-interpeter. Replaced Cocoon FOP Block with special Forrest edition "cocoon-fop-ng-impl-special" compiled by jeremias. The sources are in the jar. See r603892 and the thread    http://mail-archives.apache.org/mod_mbox/forrest-dev/200712.mbox/%3C476AA40C.8050108@apache.org%3E   Re: Plans for integrating FOP .94 ----- Subsequent update to fop-0.95 The jar and sources are now at: https://svn.apache.org/repos/asf/forrest/trunk/plugins/org.apache.forrest.plugin.output.pdf/lib/
          Jasha Joachimsthal made changes -
          Field Original Value New Value
          Assignee Jasha Joachimsthal [ jashajoachimsthal ]
          Hide
          Jasha Joachimsthal added a comment -
          I'll try to move to fop 0.95 this weekend.
          Show
          Jasha Joachimsthal added a comment - I'll try to move to fop 0.95 this weekend.
          Hide
          Jasha Joachimsthal added a comment -
          I backported o.a.c.blocks.fop.FOPNGSerlializer from C2.2 to o.a.c.serialization.FOPSerializer in C2.1. Upgraded to FOP 0.95 and added xmlcommons-graphics. In the samples it only involved moving 1 line in the xsl-fo. If this is ok, I'll close the issue.
          Show
          Jasha Joachimsthal added a comment - I backported o.a.c.blocks.fop.FOPNGSerlializer from C2.2 to o.a.c.serialization.FOPSerializer in C2.1. Upgraded to FOP 0.95 and added xmlcommons-graphics. In the samples it only involved moving 1 line in the xsl-fo. If this is ok, I'll close the issue.
          Jasha Joachimsthal made changes -
          Status Open [ 1 ] On Hold [ 10000 ]
          Jasha Joachimsthal made changes -
          Status On Hold [ 10000 ] Closed [ 6 ]
          Fix version (Component) Parent values: Blocks: FOP(10237).
          Affects version (Component) Parent values: Blocks: FOP(10166).
          Resolution Fixed [ 1 ]
          David Crossley made changes -
          Link This issue relates to COCOON-2295 [ COCOON-2295 ]
          Transition Time In Source Status Execution Times Last Executer Last Execution Date
          Open Open Blocked Blocked
          3d 20h 7m 1 Jasha Joachimsthal 10/Apr/10 12:57
          Blocked Blocked Closed Closed
          5d 20h 7m 1 Jasha Joachimsthal 16/Apr/10 09:04

            People

            • Assignee:
              Jasha Joachimsthal
              Reporter:
              Cédric Damioli
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development