Uploaded image for project: 'CXF'
  1. CXF
  2. CXF-8216

Support optional path params in wadl2java

Agile BoardAttach filesAttach ScreenshotAdd voteVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • 3.3.5
    • None
    • Tooling
    • None
    • Unknown

    Description

      After reading https://nakov.com/blog/2009/07/15/jax-rs-path-pathparam-and-optional-parameters/, I tried to define my own:

      <resource path="/{uuid}\{version:(/version/[^/]+?)?\}/scan-code/{codez}">
          <param name="uuid" style="template" type="ns:UUID" required="true"/>
          <param name="version" style="template" type="xs:unsignedInt" required="false"/>
          <param name="codez" style="template" required="true" />
          <method id="scanCode" name="PATCH">
              <doc>Scan code</doc>
              <request>
                  <!--
                  <param name="version" style="matrix" type="xs:unsignedInt">
                      <doc>Version of the sales transaction.</doc>
                  </param>
                  -->
              </request>
              <response>
                  <representation mediaType="application/json" element="ns:SalesTransaction"/>
                  <representation mediaType="application/xml" element="ns:SalesTransaction"/>
              </response>
          </method>
      </resource>
      

      The problem seems to be that the generator treats path params as required.

      I was actually trying to define it as a matrix param, but it seems that a matrix param isn't really supported by JAX-RS at the end of the URL, not in middle path segments.

      Attachments

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            Unassigned Unassigned
            shadow Andrei Ivanov

            Dates

              Created:
              Updated:

              Slack

                Issue deployment