[
https://issues.apache.org/jira/browse/OLINGO-1066?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15976534#comment-15976534
]
Kavindu Dodanduwa commented on OLINGO-1066:
-------------------------------------------
Further more I have come across following concern over streaming. [With
reference to V4.3.0]
According to the Olingo implementation service developer can provide an
implementation of ODataContentWriteErrorCallback which can be used to
invalidate the response as required by OData specification.
But if we go through the implementation, write method of ODataWritableContent
[Line 72] only catch SerializerException. So if our provided implementation to
be called, the thrown exception should be of type SerializerException. Adding
to that, when we use streaming we are supposed to implement EntityIterator and
provide that for the serializer. This implementation is done by service
developer and that could throw any type of valid exception (ex:- SqlException).
If such an exception is thrown, it won’t be caught and forwarded to callback
handler.
Going furthermore, if we check how exceptions are handled in top level through
ODataHttpHandlerImpl [Line 171] we only catch IOExceptions. So if a service
implementer does not wrap the exception inside a SerializerException, it won’t
be caught from any provided mechanism.
I think this need to be discussed and improved with this refactoring
> Stream support for Primitive and Complex type collections
> ---------------------------------------------------------
>
> Key: OLINGO-1066
> URL: https://issues.apache.org/jira/browse/OLINGO-1066
> Project: Olingo
> Issue Type: New Feature
> Components: odata4-server
> Affects Versions: (Java) V4 4.4.0
> Reporter: Kavindu Dodanduwa
> Assignee: Michael Bolz
> Priority: Minor
> Labels: features
> Attachments: patch.diff, patch-refactoring.diff
>
>
> Olingo currently doesn't support streaming support for serialization of
> primitive and complex collection type responses.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)