[ 
https://issues.apache.org/activemq/browse/SM-1225?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ron Gavlin reopened SM-1225:
----------------------------


It appears to me that the following change to CxfBcMessageObserver.onMessage is 
also required to implement this feature in CXF BC Provider. Without this patch, 
a NPE is generated if the operation is omitted from the incoming 
messageExchange.

CxfBcMessageObserver
...
    public void onMessage(Message message) {
        try {
                
            if (messageExchange.getStatus() != ExchangeStatus.ACTIVE) {
                return;
            }
            
            contentType = (String) message.get(Message.CONTENT_TYPE);
            SoapMessage soapMessage = new SoapMessage(message);
            
            

            // create XmlStreamReader
            EndpointInfo ei = providerEndpoint.getEndpointInfo();
            QName opeName = messageExchange.getOperation();
            
            
                BindingOperationInfo boi = null;
            if (opeName == null) {
                // if interface only have one operation, may not specify the 
opeName in MessageExchange
                boi = ei.getBinding().getOperations().iterator().next();
            } else {
                boi = ei.getBinding().getOperation(opeName);   
            }
            
            if (boi.getOperationInfo().isOneWay()) {
                return;
            }

            contentType = (String) message.get(Message.CONTENT_TYPE);
            SoapMessage soapMessage =
                (SoapMessage) 
this.providerEndpoint.getCxfEndpoint().getBinding().createMessage(message);

...

Also, this feature should be implemented in servicemix-cxf-se as well. 

> cxf bc provider should support exchange without specifing the operationName 
> if portType only have one operation
> ---------------------------------------------------------------------------------------------------------------
>
>                 Key: SM-1225
>                 URL: https://issues.apache.org/activemq/browse/SM-1225
>             Project: ServiceMix
>          Issue Type: Bug
>          Components: servicemix-cxf-bc
>            Reporter: Freeman Fang
>            Assignee: Freeman Fang
>             Fix For: 3.2.2, 3.3
>
>


-- 
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