Evgeny Andreev created OLINGO-1585: -------------------------------------- Summary: Alpha-numeric string $search in $expand fails Key: OLINGO-1585 URL: https://issues.apache.org/jira/browse/OLINGO-1585 Project: Olingo Issue Type: Bug Components: odata4-server Affects Versions: (Java) V4 4.8.0 Reporter: Evgeny Andreev Fix For: (Java) V4 4.8.0 Attachments: patchfile.patch
The requests with {{$search}} in {{{}$expand{}}}, e.g. {{/Shop(1)?$expand=Items($search=a3b)}} fail with *{{The URI is malformed.}}* Exception when searching for alpha-numeric strings, containing BOTH letters and digits. The same {{{}$serach{}}}, however works fine when applying {{$search}} on a root entity. The issue is caused by the fact that: # There are 2 different URI search tokenizers, one for root search, another for expand; # The root search parser/tokenizer allows searching strings containing both digits and letters, the second one allows either ONLY letters OR digits. The issue was fixed by allowing the expand search tokenizer to reuse the functionality (allowed characters) of the root parser. The patch file with bug fix is attached. Best Regards, Evgeny Andreev -- This message was sent by Atlassian Jira (v8.20.10#820010)