Author: jim.ma
Date: 2010-10-20 03:05:26 -0400 (Wed, 20 Oct 2010)
New Revision: 13155
Modified:
stack/cxf/trunk/modules/client/src/main/java/org/jboss/wsf/stack/cxf/client/serviceref/CXFServiceRefStubPropertyConfigurer.java
stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/configuration/NonSpringBusHolder.java
stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/metadata/MetadataBuilder.java
stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/metadata/services/DDEndpoint.java
Log:
[JBWS-3140][JBWS-3141]:Create Non-spring endpoint and stub with parsed addressing,
respectBinding and mtom-threshold element
Modified:
stack/cxf/trunk/modules/client/src/main/java/org/jboss/wsf/stack/cxf/client/serviceref/CXFServiceRefStubPropertyConfigurer.java
===================================================================
---
stack/cxf/trunk/modules/client/src/main/java/org/jboss/wsf/stack/cxf/client/serviceref/CXFServiceRefStubPropertyConfigurer.java 2010-10-19
12:46:34 UTC (rev 13154)
+++
stack/cxf/trunk/modules/client/src/main/java/org/jboss/wsf/stack/cxf/client/serviceref/CXFServiceRefStubPropertyConfigurer.java 2010-10-20
07:05:26 UTC (rev 13155)
@@ -28,6 +28,7 @@
import javax.xml.namespace.QName;
import javax.xml.ws.WebServiceFeature;
+import javax.xml.ws.soap.AddressingFeature;
import javax.xml.ws.soap.MTOMFeature;
import org.apache.cxf.configuration.Configurer;
@@ -98,17 +99,32 @@
private void setMTOM(JaxWsServiceFactoryBean serviceFactoryBean,
UnifiedPortComponentRefMetaData upcmd)
{
+ List<WebServiceFeature> features = new
LinkedList<WebServiceFeature>();
+ List<WebServiceFeature> prevFeatures = serviceFactoryBean.getWsFeatures();
+ if (prevFeatures != null)
+ {
+ features.addAll(prevFeatures);
+ }
+
if (upcmd.isMtomEnabled())
{
- List<WebServiceFeature> features = new
LinkedList<WebServiceFeature>();
- List<WebServiceFeature> prevFeatures =
serviceFactoryBean.getWsFeatures();
- if (prevFeatures != null)
+ if (upcmd.getMtomThreshold() > 0)
{
- features.addAll(prevFeatures);
+ features.add(new MTOMFeature(true, upcmd.getMtomThreshold()));
+ }
+ else
+ {
+ features.add(new MTOMFeature(true));
}
- features.add(new MTOMFeature(true));
- serviceFactoryBean.setWsFeatures(features);
}
+
+ if (upcmd.isAddressingEnabled())
+ {
+ features.add(new AddressingFeature(true, upcmd.isAddressingRequired()));
+ }
+
+ serviceFactoryBean.setWsFeatures(features);
+
}
private void setProperties(JaxWsProxyFactoryBean proxyFactory,
UnifiedPortComponentRefMetaData upcmd)
Modified:
stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/configuration/NonSpringBusHolder.java
===================================================================
---
stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/configuration/NonSpringBusHolder.java 2010-10-19
12:46:34 UTC (rev 13154)
+++
stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/configuration/NonSpringBusHolder.java 2010-10-20
07:05:26 UTC (rev 13155)
@@ -35,6 +35,7 @@
import org.apache.cxf.transport.ConduitInitiator;
import org.apache.cxf.transport.DestinationFactory;
import org.apache.cxf.transport.servlet.ServletTransportFactory;
+import org.apache.cxf.ws.addressing.WSAddressingFeature;
import org.apache.cxf.ws.rm.RMManager;
import org.jboss.wsf.spi.binding.BindingCustomization;
import org.jboss.wsf.spi.deployment.Endpoint;
@@ -101,12 +102,20 @@
endpoint.setServiceName(dde.getServiceName());
endpoint.setWsdlLocation(dde.getWsdlLocation());
setHandlers(endpoint, dde.getHandlers());
+ if (dde.isAddressingEnabled())
+ {
+ WSAddressingFeature addressingFeature = new WSAddressingFeature();
+ addressingFeature.setAddressingRequired(dde.isAddressingRequired());
+ //endpoint.get
+ endpoint.getFeatures().add(addressingFeature);
+ }
endpoint.publish();
endpoints.add(endpoint);
if (dde.isMtomEnabled())
{
SOAPBinding binding = (SOAPBinding) endpoint.getBinding();
binding.setMTOMEnabled(true);
+
}
}
configured = true;
Modified:
stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/metadata/MetadataBuilder.java
===================================================================
---
stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/metadata/MetadataBuilder.java 2010-10-19
12:46:34 UTC (rev 13154)
+++
stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/metadata/MetadataBuilder.java 2010-10-20
07:05:26 UTC (rev 13155)
@@ -168,12 +168,27 @@
}
// MTOM settings
- if (portComp.isEnableMtom())
+ if (portComp.isMtomEnabled())
{
log.debug("Enabling MTOM");
endpoint.setMtomEnabled(true);
+ endpoint.setMtomThreshold(portComp.getMtomThreshold());
}
+ //Addressing
+ if (portComp.isAddressingEnabled())
+ {
+ log.debug("Enabling Addressing");
+ endpoint.setAddressingEnabled(true);
+ endpoint.setAddressingRequired(portComp.isAddressingRequired());
+
endpoint.setAddressingResponses(portComp.getAddressingResponses());
+ }
+ //RespectBinding
+ if (portComp.isRespectBindingEnabled())
+ {
+ log.debug("RepectBinging...");
+ endpoint.setRespectBindingEnabled(true);
+ }
//wsdlLocation override
String wsdlFile = portComp.getWebserviceDescription().getWsdlFile();
if (wsdlFile != null)
Modified:
stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/metadata/services/DDEndpoint.java
===================================================================
---
stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/metadata/services/DDEndpoint.java 2010-10-19
12:46:34 UTC (rev 13154)
+++
stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/metadata/services/DDEndpoint.java 2010-10-20
07:05:26 UTC (rev 13155)
@@ -46,6 +46,17 @@
private String invoker;
private boolean mtomEnabled;
+
+ private int mtomThreshold;
+
+ private boolean addressingEnabled;
+
+ private boolean addressingRequired;
+
+ private String addressingResponses;
+
+ private boolean respectBindingEnabled;
+
private String wsdlLocation;
private QName portName;
private QName serviceName;
@@ -157,6 +168,50 @@
this.mtomEnabled = mtomEnabled;
}
+ public void setMtomThreshold(final int mtomThreshold)
+ {
+ this.mtomThreshold = mtomThreshold;
+ }
+
+ public int getMtomThreshold() {
+ return this.mtomThreshold;
+ }
+
+ public void setRespectBindingEnabled(final boolean respectBindingEnabled) {
+ this.respectBindingEnabled = respectBindingEnabled;
+ }
+
+ public boolean isRespectBindingEnabled() {
+ return this.respectBindingEnabled;
+ }
+
+
+ public void setAddressingEnabled(final boolean addressingEnabled) {
+ this.addressingEnabled = addressingEnabled;
+ }
+
+ public boolean isAddressingEnabled() {
+ return this.addressingEnabled;
+ }
+
+ public void setAddressingRequired(final boolean addressingRequired) {
+ this.addressingRequired = addressingRequired;
+ }
+
+ public boolean isAddressingRequired() {
+ return this.addressingRequired;
+ }
+
+ public void setAddressingResponses(final String responsesTypes)
+ {
+ this.addressingResponses = responsesTypes;
+ }
+
+ public String getAddressingResponses() {
+ return this.addressingResponses;
+ }
+
+
public void writeTo(Writer writer) throws IOException
{
writer.write("<jaxws:endpoint id='" + this.id +
"'");
Show replies by date