Author: ffang
Date: Wed May 20 01:50:31 2009
New Revision: 776519
URL: http://svn.apache.org/viewvc?rev=776519&view=rev
Log:
[SMXCOMP-542]remove AbstractBindingFactory.DATABINDING_DISABLED dependency when
build interceptor chain
Modified:
servicemix/smx3/branches/servicemix-3.2/deployables/bindingcomponents/servicemix-cxf-bc/src/main/java/org/apache/servicemix/cxfbc/CxfBcConsumer.java
servicemix/smx3/branches/servicemix-3.2/deployables/bindingcomponents/servicemix-cxf-bc/src/main/java/org/apache/servicemix/cxfbc/CxfBcProvider.java
Modified:
servicemix/smx3/branches/servicemix-3.2/deployables/bindingcomponents/servicemix-cxf-bc/src/main/java/org/apache/servicemix/cxfbc/CxfBcConsumer.java
URL:
http://svn.apache.org/viewvc/servicemix/smx3/branches/servicemix-3.2/deployables/bindingcomponents/servicemix-cxf-bc/src/main/java/org/apache/servicemix/cxfbc/CxfBcConsumer.java?rev=776519&r1=776518&r2=776519&view=diff
==============================================================================
---
servicemix/smx3/branches/servicemix-3.2/deployables/bindingcomponents/servicemix-cxf-bc/src/main/java/org/apache/servicemix/cxfbc/CxfBcConsumer.java
(original)
+++
servicemix/smx3/branches/servicemix-3.2/deployables/bindingcomponents/servicemix-cxf-bc/src/main/java/org/apache/servicemix/cxfbc/CxfBcConsumer.java
Wed May 20 01:50:31 2009
@@ -49,7 +49,6 @@
import org.apache.cxf.Bus;
import org.apache.cxf.BusFactory;
import org.apache.cxf.attachment.AttachmentImpl;
-import org.apache.cxf.binding.AbstractBindingFactory;
import org.apache.cxf.binding.jbi.JBIFault;
import org.apache.cxf.binding.soap.SoapFault;
import org.apache.cxf.binding.soap.SoapMessage;
@@ -433,8 +432,6 @@
ei.setAddress(locationURI);
}
- ei.getBinding().setProperty(
- AbstractBindingFactory.DATABINDING_DISABLED, Boolean.TRUE);
cxfService.getInInterceptors().add(new
MustUnderstandInterceptor());
cxfService.getInInterceptors().add(new AttachmentInInterceptor());
@@ -505,6 +502,7 @@
getBus().getOutFaultInterceptors());
chain = new JbiChainInitiationObserver(ep, getBus());
+ removeUnnecessaryInterceptprs();
server = new ServerImpl(getBus(), ep, null, chain);
super.validate();
} catch (DeploymentException e) {
@@ -514,6 +512,23 @@
}
}
+ private void removeUnnecessaryInterceptprs() {
+ for (Interceptor interceptor :
chain.getEndpoint().getBinding().getInInterceptors()) {
+ if
(interceptor.getClass().getName().equals("org.apache.cxf.interceptor.DocLiteralInInterceptor")
+ ||
interceptor.getClass().getName().equals("org.apache.cxf.binding.soap.interceptor.SoapHeaderInterceptor")
+ ||
interceptor.getClass().getName().equals("org.apache.cxf.binding.soap.interceptor.RPCInInterceptor"))
{
+
chain.getEndpoint().getBinding().getInInterceptors().remove(interceptor);
+ }
+ }
+
+ for (Interceptor interceptor :
chain.getEndpoint().getBinding().getOutInterceptors()) {
+ if
(interceptor.getClass().getName().equals("org.apache.cxf.interceptor.WrappedOutInterceptor")
+ ||
interceptor.getClass().getName().equals("org.apache.cxf.interceptor.BareOutInterceptor"))
{
+
chain.getEndpoint().getBinding().getOutInterceptors().remove(interceptor);
+ }
+ }
+ }
+
private void retrieveWSDL() throws JBIException, WSDLException,
DeploymentException, IOException {
if (wsdl == null) {
Modified:
servicemix/smx3/branches/servicemix-3.2/deployables/bindingcomponents/servicemix-cxf-bc/src/main/java/org/apache/servicemix/cxfbc/CxfBcProvider.java
URL:
http://svn.apache.org/viewvc/servicemix/smx3/branches/servicemix-3.2/deployables/bindingcomponents/servicemix-cxf-bc/src/main/java/org/apache/servicemix/cxfbc/CxfBcProvider.java?rev=776519&r1=776518&r2=776519&view=diff
==============================================================================
---
servicemix/smx3/branches/servicemix-3.2/deployables/bindingcomponents/servicemix-cxf-bc/src/main/java/org/apache/servicemix/cxfbc/CxfBcProvider.java
(original)
+++
servicemix/smx3/branches/servicemix-3.2/deployables/bindingcomponents/servicemix-cxf-bc/src/main/java/org/apache/servicemix/cxfbc/CxfBcProvider.java
Wed May 20 01:50:31 2009
@@ -49,7 +49,6 @@
import com.ibm.wsdl.Constants;
import org.apache.cxf.Bus;
-import org.apache.cxf.binding.AbstractBindingFactory;
import org.apache.cxf.binding.jbi.JBIConstants;
import org.apache.cxf.binding.jbi.JBIFault;
@@ -544,9 +543,7 @@
if (endpoint == null) {
endpoint = ei.getName().getLocalPart();
}
- ei.getBinding().setProperty(
- AbstractBindingFactory.DATABINDING_DISABLED,
- Boolean.TRUE);
+
ep = new EndpointImpl(getBus(), cxfService, ei);
@@ -563,7 +560,7 @@
CxfBcProviderMessageObserver obs = new
CxfBcProviderMessageObserver(
this);
conduit.setMessageObserver(obs);
-
+
checkWSRMInterceptors();