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)