Uploaded image for project: 'Tapestry'
  1. Tapestry
  2. TAPESTRY-1331

Need an @InjectValue annotation for cases where a value to insert contains a colon

    Details

    • Type: New Feature
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 5.0
    • Fix Version/s: 5.0.4
    • Component/s: tapestry-ioc
    • Labels:
      None

      Description

      If a value (not a service) to be injected into a method is a string that contains a colon (':') character, it will be interpreted as a object provider expression (i.e., such as "service:foo" or "infrastructure:bar"). If the value is a JDBC or other URL, the scheme ("http:") will be interpretted as a object provider prefix, resulting in an exception.

      Either @Inject needs an attribute for this case (i..e, literal=true), or there needs to be a secondary annotation, @InjectValue, for this case.

      Hiding the URL inside a symbol, i.e., @Inject("${mysymbol}") doesn't work, because ${mysymbol} is expanded before the check for the colon.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                hlship Howard M. Lewis Ship
                Reporter:
                hlship Howard M. Lewis Ship
              • Votes:
                0 Vote for this issue
                Watchers:
                0 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: