Uploaded image for project: 'Maven'
  1. Maven
  2. MNG-6434

Cannot specify empty string for configuration value

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • 3.5.4
    • 4.0.x-candidate
    • Plugin API
    • None

    Description

      We have a MOJO class that involves several user-configured parameters. Some of these parameters have default values that we'd like to use in the event that the user doesn't specify a value for them; however, we'd also like the user to be able to explicitly specify that the parameter should not have a value. The approach we wanted to take was to specify default values in the parameter's annotation:

      @Parameter(property = "foo.bar", defaultValue = "${project.scm.url}")
      private String foo;

      And then detect empty strings as the user's way of saying "I know there's a default value for this parameter but I'm sure that I'd actually like it to be empty anyways.":

      <configuration>
        <foo></foo>
      </configuration>

      or

      <configuration>
        <foo />
      </configuration>

       

      However, there's been some trouble as we haven't found a way yet to distinguish between an intentionally-empty string and one that hasn't been specified at all; the value for foo is always null regardless.

      Is there a friendly and/or intuitive way for the user to pass an empty string as a parameter value?

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              ChrisEgerton Chris Egerton
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated: