[
https://issues.jboss.org/browse/TEIID-3914?page=com.atlassian.jira.plugin...
]
Steven Hawkins commented on TEIID-3914:
---------------------------------------
See the buildLocation logic in
https://github.com/apache/olingo-odata4/blob/master/lib/server-core-ext/s...
or in our EntityCollectionResponse. For non-string values it is taking the java toString
as the URI value. This is not correct for Timestamp, Binary, some Decimal values, etc.
Even if we correct our handling in EntityCollectionResponse, we are then calling to
EntityResponse to set the id again in the TeiidServiceHandler.createEntity method. Then
beyond that, the response.writeCreatedEntity will again call EntityResponse.buildLocation
(rather than reusing the id on the entity).
Datetime values not properly encoded in OData4 entity identifiers
-----------------------------------------------------------------
Key: TEIID-3914
URL:
https://issues.jboss.org/browse/TEIID-3914
Project: Teiid
Issue Type: Bug
Components: OData
Affects Versions: 8.12.4
Reporter: Simon Evenepoel
Assignee: Steven Hawkins
Labels: odata,
When the primary key of an OData entry consists of a timestamp or datetime value an odata
get request returns the following error message:
java.net.URISyntaxException: Illegal character in scheme name at index n:
tablename(partofkey='keyvalue',datepartofkey=2016-01-13 11:25:03.884)
For more information visit this thread on the user forums in which [~shawkins] said:
_"Actually there is an issue with our handling of building the entity id to go into
the response. We are not properly encoding datatime values.''_
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)