Uploaded image for project: 'OFBiz'
  1. OFBiz
  2. OFBIZ-11396

replaceFirst sensible to variable pattern

Attach filesAttach ScreenshotVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • Release Branch 18.12, Release Branch 17.12, Trunk
    • 17.12.01, 18.12.01
    • framework/webtools, solr
    • None
    • OFBiz Community Day (Feb 2020)

    Description

      When using variable pattern with replaceFirst you may cross issues if the pattern contains specific tokens. For instance on Windows with the path "C:\projectsASF\Git\ofbiz-framework/" you have inside the token "\p" which has a special meaning.

      I stumbled upon this issue on Windows while using webtools/control/entityref:

      Caused by: java.util.regex.PatternSyntaxException: Unknown character property name {r} near index 4
      C:\projectsASF\Git\ofbiz-framework/
          ^
              at java.util.regex.Pattern.error(Pattern.java:1957) ~[?:1.8.0_202]
              at java.util.regex.Pattern.charPropertyNodeFor(Pattern.java:2783) ~[?:1.8.0_202]
              at java.util.regex.Pattern.family(Pattern.java:2738) ~[?:1.8.0_202]
              at java.util.regex.Pattern.sequence(Pattern.java:2078) ~[?:1.8.0_202]
              at java.util.regex.Pattern.expr(Pattern.java:1998) ~[?:1.8.0_202]
              at java.util.regex.Pattern.compile(Pattern.java:1698) ~[?:1.8.0_202]
              at java.util.regex.Pattern.<init>(Pattern.java:1351) ~[?:1.8.0_202]
              at java.util.regex.Pattern.compile(Pattern.java:1028) ~[?:1.8.0_202]
              at java.lang.String.replaceFirst(String.java:2178) ~[?:1.8.0_202]
              at org.apache.ofbiz.webtools.WebToolsServices.getEntityRefData(WebToolsServices.java:770) ~[main/:?]
      

      The simplest solution is to replace replaceFirst by StringUtils.replaceOnce.

      Attachments

        Activity

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

          People

            jleroux Jacques Le Roux
            jleroux Jacques Le Roux
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Agile

                Completed Sprint:
                OFBiz Community Day (Feb 2020) ended 02/Mar/20
                View on Board

                Slack

                  Issue deployment