[prev in list] [next in list] [prev in thread] [next in thread] 

List:       sandesha-dev
Subject:    [jira] [Commented] (AXIS2-4551) AxisOperationFactory.getAxisOperation(int mepURI) returns the wrong
From:       "Victor (JIRA)" <jira () apache ! org>
Date:       2015-08-24 12:31:46
Message-ID: JIRA.12440638.1258134579000.145307.1440419506056 () Atlassian ! JIRA
[Download RAW message or body]


    [ https://issues.apache.org/jira/browse/AXIS2-4551?page=com.atlassian.jira.plugin. \
system.issuetabpanels:comment-tabpanel&focusedCommentId=14709174#comment-14709174 ] 

Victor commented on AXIS2-4551:
-------------------------------

This is maybe connected to AXIS2-5718 in terms of fishiness :)

> AxisOperationFactory.getAxisOperation(int mepURI) returns the wrong AxisOperation \
>                 instance for http://www.w3.org/ns/wsdl/robust-in-only MEPs
> --------------------------------------------------------------------------------------------------------------------------------------------
>  
> Key: AXIS2-4551
> URL: https://issues.apache.org/jira/browse/AXIS2-4551
> Project: Axis2
> Issue Type: Bug
> Components: codegen, deployment, wsdl
> Affects Versions: 1.4
> Reporter: Ben Reif
> 
> AxisOperationFactory.getAxisOperation(int mepURI) returns the wrong AxisOperation \
> instance for the ROBUST_IN_ONLY MEP. The code returns an InOutAxisOperation from \
> this: case WSDLConstants.MEP_CONSTANT_ROBUST_IN_ONLY : {
> abOpdesc = new InOutAxisOperation();
> abOpdesc.setMessageExchangePattern(WSDL2Constants.MEP_URI_ROBUST_IN_ONLY);
> break;
> }
> There should be a coresponding RobustInOnlyAxisOperation that it returns like this:
> case WSDLConstants.MEP_CONSTANT_ROBUST_IN_ONLY : {
> abOpdesc = new RobustInOnlyAxisOperation();
> abOpdesc.setMessageExchangePattern(WSDL2Constants.MEP_URI_ROBUST_IN_ONLY);
> break;
> }
> This causes issues because it adds an out AxisMessage to the operation and also \
> generates an <output> in the WSDL operations. This in-turn causes other code to \
> think that it's a Request-Response style service and you get exceptions when no \
> response comes back, like "The input stream for an incoming message is null". On \
> the same note, AxisOperationFactory.getAxisOperationDescription(String mepURI)  \
> also needs to be fixed for Robust-Out-Only and Robust-In-Only MEPs else if \
> (WSDL2Constants.MEP_URI_ROBUST_OUT_ONLY.equals(mepURI) || \
> WSDL20_2006Constants.MEP_URI_ROBUST_OUT_ONLY.equals(mepURI) || \
> WSDL20_2004_Constants.MEP_URI_ROBUST_OUT_ONLY.equals(mepURI)) { abOpdesc = new \
> RobustOutOnlyAxisOperation(); \
> abOpdesc.setMessageExchangePattern(WSDL2Constants.MEP_URI_ROBUST_OUT_ONLY); } else \
> if (WSDL2Constants.MEP_URI_ROBUST_IN_ONLY.equals(mepURI) || \
> WSDL20_2006Constants.MEP_URI_ROBUST_IN_ONLY.equals(mepURI) || \
> WSDL20_2004_Constants.MEP_URI_ROBUST_IN_ONLY.equals(mepURI)) { abOpdesc = new \
> RobustInOnlyAxisOperation(); \
> abOpdesc.setMessageExchangePattern(WSDL2Constants.MEP_URI_ROBUST_IN_ONLY); }
> If a new RobustInOnlyAxisOperation is unnecessary for some reason, then at least \
> the AxisOperationFactory.getAxisOperationDescription(String mepURI)  method should \
> be made consistent and the check for the ROBUST_IN_ONLY MEP should return an \
> instance of InOutAxisOperation, the same way that \
> AxisOperationFactory.getAxisOperation(int mepURI) does.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe@axis.apache.org
For additional commands, e-mail: java-dev-help@axis.apache.org


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic