Uploaded image for project: 'Fedora Repository Project'
  1. Fedora Repository Project
  2. FCREPO-1247

Fixity of versions fails due to jersey URL mapping

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: Fedora 4.0.0
    • Fix Version/s: Fedora 4.7.4
    • Component/s: f4-core
    • Labels:
    • Sprint:
      Sprint 2015 - 1

      Description

      This task is to determine why "fcr%3aversions" is not being decoded and interpreted in the example detailed here:
      https://groups.google.com/d/msg/fedora-tech/qw3GlptWBQw/CaGXHMuiRXIJ

      Then, likely update the logic to decode the URL but recognize the "fcr" prefix and treat it differently.

      **Background of issue (by Jared)**
      The issue is that we map URLs based on their structure and in Jersey if you have a URL
      http://localhost:8080/base/action1/action2/action3
      and mappings
      Path = .*/action1
      Path = .*/action2
      Path = .*/action3

      Then Jersey acts on the path match closest to the hostname first (action1 in my example), then the next one (action2) and so on (action3).

      So in our case we are matching on fcr:versions first and trying to perform this action. FedoraVersions doesn't handle fcr:fixity (nor expects it to be in the URL) so it fails. My assumption is that if this had succeeded then Fedora would have attempted to perform the fcr:fixity tasks next.

      My solution was to alter the fcr:versions @Path matching to _not_ match if the URL has fcr:versions but ends with fcr:fixity.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                whikloj Jared Whiklo
                Reporter:
                awead Adam Wead
                Reviewer:
                Andrew Woods
              • Votes:
                1 Vote for this issue
                Watchers:
                6 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: