Steve Veum created OLINGO-1360:
----------------------------------

             Summary: OData V4 search phrases that contain ? character cause 
error
                 Key: OLINGO-1360
                 URL: https://issues.apache.org/jira/browse/OLINGO-1360
             Project: Olingo
          Issue Type: Bug
          Components: odata4-server
    Affects Versions: (Java) V4 4.6.0
            Reporter: Steve Veum
             Fix For: (Java) V4 4.7.0
         Attachments: 
0001-OData-V4-search-phrases-that-contain-character-cause.patch

The URI search parser returns an error if a search phrase contains the ? 
character

The OData 4 ABNF document specifies which characters are allowed in a search 
phrase. One of those characters is the question mark (?).

The URI search tokenizer follows the ABNF document by having a method called 
isQCharUnescaped which matches the qchar-escaped definition in the ABNF 
document.
This method is missing the condition which would allow the ? character as a 
member of the qchar-escaped. It looks like the author of this code just missed 
it
since the comment includes the ? as one of the allowed characters.

The following search phrase should be allowed:
$search="Olingo?"

I have attached a patch for this issue.  The fix and improved test were both 1 
line changes.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to