TIBCO Data Virtualization OData URL fails with an error when a alphanumeric value is passed in $search query

TIBCO Data Virtualization OData URL fails with an error when a alphanumeric value is passed in $search query

book

Article ID: KB0075799

calendar_today

Updated On:

Products Versions
TIBCO Data Virtualization 8.2

Description

When a $search query is executed on the TDV OData V4 URL and the value passed in $search query is a combination of alphanumeric value (e.g 8VGR02 or @example) then an error may be returned by the browser.

Below is a sample OData URL which may return an error:

http://localhost:9400/odata4/databases/OdataQuotes/TEST?$search=@example 
 
Error returned by the browser:

{"error":{"code":"9901015","message":"Exception during tokenizer creation with message 'Forbidden character in state null->@'.","details":[

{"code":"9901015","message":"Forbidden character in state null->@"}
]}}

Issue/Introduction

TIBCO Data Virtualization OData URL fails with an error when a alphanumeric value is passed in $search query

Environment

All supported operating system

Resolution

The error message can be resolved by passing the $search parameter in double quotes.

Below is the sample URL:

http://localhost:9400/odata4/databases/OdataQuotes/TEST?$search="@example"

Root Cause:
An alphanumeric value is categorized as a "searchPhrase" and not "searchWord". As per the definition the value must be passed in double quotes when it is a "seachPhrase".
 

Additional Information

Below is the link to the OData documentation:

https://docs.oasis-open.org/odata/odata/v4.0/errata02/os/complete/abnf/odata-abnf-construction-rules.txt