[
https://issues.apache.org/jira/browse/CAMEL-19327?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jacek Szymański updated CAMEL-19327:
------------------------------------
Description:
A common use case is that a query (or a find) should return exactly one object,
and any other result is to be considered an error. camel-sql supports
thehttps://issues.apache.org/jira/browse/CAMEL-19327# outputType=SelectOne
option which will cause the component to throw an exception if the query does
not return a single row. camel-jpa does not have such an option and thus user
must manually check for body size.
This PR addresses that. It adds a boolean option {{singleResult}}, which, if
set to true:
- in case of a query will cause the component to put the single fetched object
into the message body, not in a List, or throw an exception otherwise
- in case of a find, if no object is found the component will throw an
exception rather than put null into the body
it has no effect on updates, and doesn't alter the consumer.
was:
A common use case is that a query (or a find) should return exactly one object,
and any other result is to be considered an error. camel-sql supports the
outputType=SelectOne option which will cause the component to throw an
exception if the query does not return a single row. camel-jpa does not have
such an option and thus user must manually check for body size.
This PR addresses that. It adds a boolean option {{singleResult}}, which, if
set to true:
- in case of a query will cause the component to put the single fetched object
into the message body, not in a List, or throw an exception otherwise
- in case of a find, if no object is found the component will throw an
exception rather than put null into the body
it has no effect on updates, and doesn't alter the consumer.
> camel-jpa: Single result
> ------------------------
>
> Key: CAMEL-19327
> URL: https://issues.apache.org/jira/browse/CAMEL-19327
> Project: Camel
> Issue Type: Improvement
> Components: camel-jpa
> Affects Versions: 3.20.4, 4.0-M3
> Reporter: Jacek Szymański
> Priority: Minor
>
> A common use case is that a query (or a find) should return exactly one
> object, and any other result is to be considered an error. camel-sql supports
> thehttps://issues.apache.org/jira/browse/CAMEL-19327# outputType=SelectOne
> option which will cause the component to throw an exception if the query does
> not return a single row. camel-jpa does not have such an option and thus user
> must manually check for body size.
> This PR addresses that. It adds a boolean option {{singleResult}}, which, if
> set to true:
> - in case of a query will cause the component to put the single fetched
> object into the message body, not in a List, or throw an exception otherwise
> - in case of a find, if no object is found the component will throw an
> exception rather than put null into the body
> it has no effect on updates, and doesn't alter the consumer.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)