You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ode.apache.org by "Lee C K (JIRA)" <ji...@apache.org> on 2010/02/08 00:11:27 UTC
[jira] Created: (ODE-761) Wrong fault type is returned when
invoking operation with mutliple fault types
Wrong fault type is returned when invoking operation with mutliple fault types
-------------------------------------------------------------------------------
Key: ODE-761
URL: https://issues.apache.org/jira/browse/ODE-761
Project: ODE
Issue Type: Bug
Components: JBI Integration
Affects Versions: 1.3.4
Reporter: Lee C K
Priority: Critical
Using ode-jbi.messageMapper=org.apache.ode.jbi.msgmap.JbiWsdl11WrapperMapper, if a ws operation defines multiple fault types in the wsdl, when this operation is invoked and returns a fault message, the fault message that catch by bpel will always be the first fault type (first in alphabetical order).
There is a mistake with JbiWsdl11WrapperMapper.toFaultType(line 207). if (etype.equals(p.getElementName())) will always return the first fault type in the fault types list. It should be changed to NOT EQUALS - if (!etype.equals(p.getElementName()))
Example:
When the search operation is called, the endpoint returns UnexpectedErrorFault . But when the fault message reaches bpel script, the fault message has somehow converted to InvalidSObjectFault.
<definitions>
<operation name="search">
<soap:operation soapAction=""/>
<input>
<soap:header use="literal" message="tns:Header" part="SessionHeader"/>
<soap:header use="literal" message="tns:Header" part="CallOptions"/>
<soap:header use="literal" message="tns:Header" part="PackageVersionHeader"/>
<soap:body parts="parameters" use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
<fault name="InvalidSObjectFault">
<soap:fault name="InvalidSObjectFault" use="literal"/>
</fault>
<fault name="InvalidFieldFault">
<soap:fault name="InvalidFieldFault" use="literal"/>
</fault>
<fault name="MalformedSearchFault">
<soap:fault name="MalformedSearchFault" use="literal"/>
</fault>
<fault name="UnexpectedErrorFault">
<soap:fault name="UnexpectedErrorFault" use="literal"/>
</fault>
</operation>
</definitions>
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (ODE-761) Wrong fault type is returned when
invoking operation with mutliple fault types
Posted by "Hudson (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/ODE-761?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12832011#action_12832011 ]
Hudson commented on ODE-761:
----------------------------
Integrated in ODE-1.x #45 (See [http://hudson.zones.apache.org/hudson/job/ODE-1.x/45/])
: Wrong fault type is returned when invoking operation with mutliple fault types (test + fix)
> Wrong fault type is returned when invoking operation with mutliple fault types
> -------------------------------------------------------------------------------
>
> Key: ODE-761
> URL: https://issues.apache.org/jira/browse/ODE-761
> Project: ODE
> Issue Type: Bug
> Components: JBI Integration
> Affects Versions: 1.3.4
> Reporter: Lee C K
> Assignee: Rafal Rusin
> Priority: Critical
> Fix For: 1.3.4
>
>
> Using ode-jbi.messageMapper=org.apache.ode.jbi.msgmap.JbiWsdl11WrapperMapper, if a ws operation defines multiple fault types in the wsdl, when this operation is invoked and returns a fault message, the fault message that catch by bpel will always be the first fault type (first in alphabetical order).
> There is a mistake with JbiWsdl11WrapperMapper.toFaultType(line 207). if (etype.equals(p.getElementName())) will always return the first fault type in the fault types list. It should be changed to NOT EQUALS - if (!etype.equals(p.getElementName()))
> Example:
> When the search operation is called, the endpoint returns UnexpectedErrorFault . But when the fault message reaches bpel script, the fault message has somehow converted to InvalidSObjectFault.
> <definitions>
> <operation name="search">
> <soap:operation soapAction=""/>
> <input>
> <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
> <soap:header use="literal" message="tns:Header" part="CallOptions"/>
> <soap:header use="literal" message="tns:Header" part="PackageVersionHeader"/>
> <soap:body parts="parameters" use="literal"/>
> </input>
> <output>
> <soap:body use="literal"/>
> </output>
> <fault name="InvalidSObjectFault">
> <soap:fault name="InvalidSObjectFault" use="literal"/>
> </fault>
> <fault name="InvalidFieldFault">
> <soap:fault name="InvalidFieldFault" use="literal"/>
> </fault>
> <fault name="MalformedSearchFault">
> <soap:fault name="MalformedSearchFault" use="literal"/>
> </fault>
> <fault name="UnexpectedErrorFault">
> <soap:fault name="UnexpectedErrorFault" use="literal"/>
> </fault>
> </operation>
> </definitions>
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Resolved: (ODE-761) Wrong fault type is returned when
invoking operation with mutliple fault types
Posted by "Rafal Rusin (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/ODE-761?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Rafal Rusin resolved ODE-761.
-----------------------------
Resolution: Fixed
Fix Version/s: 1.3.4
> Wrong fault type is returned when invoking operation with mutliple fault types
> -------------------------------------------------------------------------------
>
> Key: ODE-761
> URL: https://issues.apache.org/jira/browse/ODE-761
> Project: ODE
> Issue Type: Bug
> Components: JBI Integration
> Affects Versions: 1.3.4
> Reporter: Lee C K
> Assignee: Rafal Rusin
> Priority: Critical
> Fix For: 1.3.4
>
>
> Using ode-jbi.messageMapper=org.apache.ode.jbi.msgmap.JbiWsdl11WrapperMapper, if a ws operation defines multiple fault types in the wsdl, when this operation is invoked and returns a fault message, the fault message that catch by bpel will always be the first fault type (first in alphabetical order).
> There is a mistake with JbiWsdl11WrapperMapper.toFaultType(line 207). if (etype.equals(p.getElementName())) will always return the first fault type in the fault types list. It should be changed to NOT EQUALS - if (!etype.equals(p.getElementName()))
> Example:
> When the search operation is called, the endpoint returns UnexpectedErrorFault . But when the fault message reaches bpel script, the fault message has somehow converted to InvalidSObjectFault.
> <definitions>
> <operation name="search">
> <soap:operation soapAction=""/>
> <input>
> <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
> <soap:header use="literal" message="tns:Header" part="CallOptions"/>
> <soap:header use="literal" message="tns:Header" part="PackageVersionHeader"/>
> <soap:body parts="parameters" use="literal"/>
> </input>
> <output>
> <soap:body use="literal"/>
> </output>
> <fault name="InvalidSObjectFault">
> <soap:fault name="InvalidSObjectFault" use="literal"/>
> </fault>
> <fault name="InvalidFieldFault">
> <soap:fault name="InvalidFieldFault" use="literal"/>
> </fault>
> <fault name="MalformedSearchFault">
> <soap:fault name="MalformedSearchFault" use="literal"/>
> </fault>
> <fault name="UnexpectedErrorFault">
> <soap:fault name="UnexpectedErrorFault" use="literal"/>
> </fault>
> </operation>
> </definitions>
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Assigned: (ODE-761) Wrong fault type is returned when
invoking operation with mutliple fault types
Posted by "Rafal Rusin (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/ODE-761?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Rafal Rusin reassigned ODE-761:
-------------------------------
Assignee: Rafal Rusin
> Wrong fault type is returned when invoking operation with mutliple fault types
> -------------------------------------------------------------------------------
>
> Key: ODE-761
> URL: https://issues.apache.org/jira/browse/ODE-761
> Project: ODE
> Issue Type: Bug
> Components: JBI Integration
> Affects Versions: 1.3.4
> Reporter: Lee C K
> Assignee: Rafal Rusin
> Priority: Critical
>
> Using ode-jbi.messageMapper=org.apache.ode.jbi.msgmap.JbiWsdl11WrapperMapper, if a ws operation defines multiple fault types in the wsdl, when this operation is invoked and returns a fault message, the fault message that catch by bpel will always be the first fault type (first in alphabetical order).
> There is a mistake with JbiWsdl11WrapperMapper.toFaultType(line 207). if (etype.equals(p.getElementName())) will always return the first fault type in the fault types list. It should be changed to NOT EQUALS - if (!etype.equals(p.getElementName()))
> Example:
> When the search operation is called, the endpoint returns UnexpectedErrorFault . But when the fault message reaches bpel script, the fault message has somehow converted to InvalidSObjectFault.
> <definitions>
> <operation name="search">
> <soap:operation soapAction=""/>
> <input>
> <soap:header use="literal" message="tns:Header" part="SessionHeader"/>
> <soap:header use="literal" message="tns:Header" part="CallOptions"/>
> <soap:header use="literal" message="tns:Header" part="PackageVersionHeader"/>
> <soap:body parts="parameters" use="literal"/>
> </input>
> <output>
> <soap:body use="literal"/>
> </output>
> <fault name="InvalidSObjectFault">
> <soap:fault name="InvalidSObjectFault" use="literal"/>
> </fault>
> <fault name="InvalidFieldFault">
> <soap:fault name="InvalidFieldFault" use="literal"/>
> </fault>
> <fault name="MalformedSearchFault">
> <soap:fault name="MalformedSearchFault" use="literal"/>
> </fault>
> <fault name="UnexpectedErrorFault">
> <soap:fault name="UnexpectedErrorFault" use="literal"/>
> </fault>
> </operation>
> </definitions>
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.