[ 
https://issues.apache.org/activemq/browse/SM-1667?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=48576#action_48576
 ] 

Guillaume Nodet commented on SM-1667:
-------------------------------------

I think the behavior is specified in the spec, though not very explicitely.
Section 5.4.2 of the JBI spec says:
{code}
Each pattern ends with a status exchange; this is necessary to 
deterministically complete the exchange.
{code}
Status exchanges include ERROR and DONE status.

Also, section 5.5.2.3.1 states: 
{code}
A new ME instance is ACTIVE, and remains so until the end of its life cycle, 
when it transitions to either a DONE or ERROR state.
{code}

Section 5.5.5.1 also gives an example of an InOnly MEP terminated with an ERROR 
status.

So the ERROR state on the InOnly MEP is not a ServiceMix extension to the spec. 
 In addition, the DONE / ERROR statuses are required to be able to use 
sendSync, which as Ron said, must not change the semantic of the MEP.

> TransformBeanSupport does not correctly report errors for in-only exchanges
> ---------------------------------------------------------------------------
>
>                 Key: SM-1667
>                 URL: https://issues.apache.org/activemq/browse/SM-1667
>             Project: ServiceMix
>          Issue Type: Bug
>          Components: servicemix-bean
>    Affects Versions: servicemix-bean-2008.01
>            Reporter: Ron Gavlin
>            Assignee: Guillaume Nodet
>            Priority: Critical
>             Fix For: servicemix-bean-2008.02, 3.2.4
>
>         Attachments: sm-1667-inout-regression.patch
>
>
> The smx-bean TransformBeanSupport class does not correctly report errors for 
> in-only exchanges. If the target exchange status is ERROR, the source 
> exchange status is still returned as DONE. This should be fixed for both sync 
> and async use cases.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to