summaryrefslogtreecommitdiffstats
path: root/sca-java-2.x/contrib
diff options
context:
space:
mode:
authorslaws <slaws@13f79535-47bb-0310-9956-ffa450edef68>2010-06-25 09:39:55 +0000
committerslaws <slaws@13f79535-47bb-0310-9956-ffa450edef68>2010-06-25 09:39:55 +0000
commiteb1a98a7d7b9d279a7591f9bf2942001b5c34e7e (patch)
tree04ddf0701f3c3fe9c34caf66a561ecb1a962a1d4 /sca-java-2.x/contrib
parentca7a779c86fe5e522855f0bde38252283d12f4ff (diff)
Add a little bit more code to include the JAXWSMessageReciever so I can debug some samples and see if there is any mileage in this approach
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@957864 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'sca-java-2.x/contrib')
-rw-r--r--sca-java-2.x/contrib/modules/binding-ws-runtime-jaxws-axis2/pom.xml6
-rw-r--r--sca-java-2.x/contrib/modules/binding-ws-runtime-jaxws-axis2/src/main/java/org/apache/tuscany/sca/binding/ws/jaxws/axis2/Axis2EngineIntegration.java2
-rw-r--r--sca-java-2.x/contrib/modules/binding-ws-runtime-jaxws-axis2/src/main/java/org/apache/tuscany/sca/binding/ws/jaxws/axis2/JAXWSReferenceBindingProvider.java2
-rw-r--r--sca-java-2.x/contrib/modules/binding-ws-runtime-jaxws-axis2/src/main/java/org/apache/tuscany/sca/binding/ws/jaxws/axis2/JAXWSServiceBindingProvider.java18
-rw-r--r--sca-java-2.x/contrib/modules/binding-ws-runtime-jaxws-axis2/src/main/resources/org/apache/tuscany/sca/binding/ws/jaxws/axis2/engine/conf/tuscany-axis2.xml6
5 files changed, 29 insertions, 5 deletions
diff --git a/sca-java-2.x/contrib/modules/binding-ws-runtime-jaxws-axis2/pom.xml b/sca-java-2.x/contrib/modules/binding-ws-runtime-jaxws-axis2/pom.xml
index af3553a7dd..e1d0ab3060 100644
--- a/sca-java-2.x/contrib/modules/binding-ws-runtime-jaxws-axis2/pom.xml
+++ b/sca-java-2.x/contrib/modules/binding-ws-runtime-jaxws-axis2/pom.xml
@@ -42,6 +42,12 @@
<artifactId>tuscany-interface-wsdl</artifactId>
<version>2.0-SNAPSHOT</version>
</dependency>
+
+ <dependency>
+ <groupId>org.apache.tuscany.sca</groupId>
+ <artifactId>tuscany-interface-java</artifactId>
+ <version>2.0-SNAPSHOT</version>
+ </dependency>
<dependency>
<groupId>org.apache.tuscany.sca</groupId>
diff --git a/sca-java-2.x/contrib/modules/binding-ws-runtime-jaxws-axis2/src/main/java/org/apache/tuscany/sca/binding/ws/jaxws/axis2/Axis2EngineIntegration.java b/sca-java-2.x/contrib/modules/binding-ws-runtime-jaxws-axis2/src/main/java/org/apache/tuscany/sca/binding/ws/jaxws/axis2/Axis2EngineIntegration.java
index b466f133af..d17a501112 100644
--- a/sca-java-2.x/contrib/modules/binding-ws-runtime-jaxws-axis2/src/main/java/org/apache/tuscany/sca/binding/ws/jaxws/axis2/Axis2EngineIntegration.java
+++ b/sca-java-2.x/contrib/modules/binding-ws-runtime-jaxws-axis2/src/main/java/org/apache/tuscany/sca/binding/ws/jaxws/axis2/Axis2EngineIntegration.java
@@ -230,7 +230,7 @@ public class Axis2EngineIntegration {
Port port,
WebServiceBinding wsBinding) throws AxisFault {
- Definition definition = wsBinding.getWSDLDocument();
+ Definition definition = wsBinding.getGeneratedWSDLDocument();
QName serviceQName = wsBinding.getService().getQName();
Definition def = getDefinition(definition, serviceQName);
diff --git a/sca-java-2.x/contrib/modules/binding-ws-runtime-jaxws-axis2/src/main/java/org/apache/tuscany/sca/binding/ws/jaxws/axis2/JAXWSReferenceBindingProvider.java b/sca-java-2.x/contrib/modules/binding-ws-runtime-jaxws-axis2/src/main/java/org/apache/tuscany/sca/binding/ws/jaxws/axis2/JAXWSReferenceBindingProvider.java
index f01fc78c7c..c46301a5fd 100644
--- a/sca-java-2.x/contrib/modules/binding-ws-runtime-jaxws-axis2/src/main/java/org/apache/tuscany/sca/binding/ws/jaxws/axis2/JAXWSReferenceBindingProvider.java
+++ b/sca-java-2.x/contrib/modules/binding-ws-runtime-jaxws-axis2/src/main/java/org/apache/tuscany/sca/binding/ws/jaxws/axis2/JAXWSReferenceBindingProvider.java
@@ -50,7 +50,7 @@ public class JAXWSReferenceBindingProvider implements ReferenceBindingProvider {
this.wsBinding = (WebServiceBinding) endpointReference.getBinding();
// A WSDL document should always be present in the binding
- if (wsBinding.getWSDLDocument() == null) {
+ if (wsBinding.getGeneratedWSDLDocument() == null) {
throw new ServiceRuntimeException("No WSDL document for " + endpointReference.getURI());
}
diff --git a/sca-java-2.x/contrib/modules/binding-ws-runtime-jaxws-axis2/src/main/java/org/apache/tuscany/sca/binding/ws/jaxws/axis2/JAXWSServiceBindingProvider.java b/sca-java-2.x/contrib/modules/binding-ws-runtime-jaxws-axis2/src/main/java/org/apache/tuscany/sca/binding/ws/jaxws/axis2/JAXWSServiceBindingProvider.java
index 2aa2cc5db2..94cd1d621d 100644
--- a/sca-java-2.x/contrib/modules/binding-ws-runtime-jaxws-axis2/src/main/java/org/apache/tuscany/sca/binding/ws/jaxws/axis2/JAXWSServiceBindingProvider.java
+++ b/sca-java-2.x/contrib/modules/binding-ws-runtime-jaxws-axis2/src/main/java/org/apache/tuscany/sca/binding/ws/jaxws/axis2/JAXWSServiceBindingProvider.java
@@ -20,6 +20,7 @@ package org.apache.tuscany.sca.binding.ws.jaxws.axis2;
import java.net.URI;
import java.util.HashMap;
+import java.util.Iterator;
import java.util.List;
import javax.wsdl.Port;
@@ -28,7 +29,10 @@ import javax.xml.ws.Endpoint;
import org.apache.axiom.om.OMElement;
import org.apache.axis2.context.ConfigurationContext;
+import org.apache.axis2.description.AxisOperation;
import org.apache.axis2.description.AxisService;
+import org.apache.axis2.description.WSDL2Constants;
+import org.apache.axis2.engine.MessageReceiver;
import org.apache.axis2.jaxws.binding.BindingUtils;
import org.apache.axis2.jaxws.description.DescriptionFactory;
import org.apache.axis2.jaxws.description.EndpointDescription;
@@ -37,6 +41,7 @@ import org.apache.axis2.jaxws.description.builder.DescriptionBuilderComposite;
import org.apache.axis2.jaxws.description.builder.WebServiceProviderAnnot;
import org.apache.axis2.jaxws.description.builder.converter.JavaClassToDBCConverter;
import org.apache.axis2.jaxws.description.impl.DescriptionFactoryImpl;
+import org.apache.axis2.jaxws.server.JAXWSMessageReceiver;
import org.apache.tuscany.sca.binding.ws.WebServiceBinding;
import org.apache.tuscany.sca.core.ExtensionPointRegistry;
import org.apache.tuscany.sca.core.FactoryExtensionPoint;
@@ -45,6 +50,7 @@ import org.apache.tuscany.sca.databinding.DataBindingExtensionPoint;
import org.apache.tuscany.sca.host.http.SecurityContext;
import org.apache.tuscany.sca.host.http.ServletHost;
import org.apache.tuscany.sca.interfacedef.InterfaceContract;
+import org.apache.tuscany.sca.interfacedef.Operation;
import org.apache.tuscany.sca.invocation.MessageFactory;
import org.apache.tuscany.sca.provider.ServiceBindingProvider;
import org.apache.tuscany.sca.runtime.RuntimeComponent;
@@ -96,7 +102,7 @@ public class JAXWSServiceBindingProvider implements ServiceBindingProvider {
contract.getInterface().resetDataBinding(OMElement.class.getName());
// A WSDL document should always be present in the binding
- if (wsBinding.getWSDLDocument() == null) {
+ if (wsBinding.getGeneratedWSDLDocument() == null) {
throw new ServiceRuntimeException("No WSDL document for " + component.getName() + "/" + service.getName());
}
@@ -175,11 +181,13 @@ public class JAXWSServiceBindingProvider implements ServiceBindingProvider {
webServiceProviderAnnot.setTargetNamespace(targetNamespace);
webServiceProviderAnnot.setServiceName(wsBinding.getService().getQName().getLocalPart());
webServiceProviderAnnot.setPortName(wsBinding.getPort().getName());
+ webServiceProviderAnnot.setWsdlLocation("D:/sca-java-2.x-contrib/modules/binding-ws-runtime-jaxws-axis2/src/test/resources/org/apache/tuscany/sca/binding/ws/axis2/wsdlport/helloworld.wsdl");
// adjust the service description to match the service we're actually exposing
DescriptionBuilderComposite dbc = dbcMap.values().iterator().next();
dbc.setWebServiceProviderAnnot(webServiceProviderAnnot);
- dbc.setWsdlDefinition(wsBinding.getService().getQName(), wsBinding.getWSDLDefinition().getDefinition());
+ //dbc.setWsdlDefinition(wsBinding.getService().getQName(), wsBinding.getWSDLDefinition().getDefinition());
+
List<ServiceDescription> serviceDescList = DescriptionFactoryImpl.createServiceDescriptionFromDBCMap(dbcMap, configContext);
ServiceDescription sd = null;
if (serviceDescList != null && serviceDescList.size() > 0) {
@@ -196,6 +204,12 @@ public class JAXWSServiceBindingProvider implements ServiceBindingProvider {
axisService.setName(path);
axisService.setServiceDescription("Tuscany configured AxisService for service: " + deployedURI);
axisService.setClientSide(false);
+
+ for (Iterator<?> i = axisService.getOperations(); i.hasNext();) {
+ AxisOperation axisOp = (AxisOperation)i.next();
+ axisOp.setMessageReceiver(new JAXWSMessageReceiver());
+ }
+
configContext.getAxisConfiguration().addService(axisService);
// fire up the Axis servlet
diff --git a/sca-java-2.x/contrib/modules/binding-ws-runtime-jaxws-axis2/src/main/resources/org/apache/tuscany/sca/binding/ws/jaxws/axis2/engine/conf/tuscany-axis2.xml b/sca-java-2.x/contrib/modules/binding-ws-runtime-jaxws-axis2/src/main/resources/org/apache/tuscany/sca/binding/ws/jaxws/axis2/engine/conf/tuscany-axis2.xml
index 40e433e2f8..0db555f314 100644
--- a/sca-java-2.x/contrib/modules/binding-ws-runtime-jaxws-axis2/src/main/resources/org/apache/tuscany/sca/binding/ws/jaxws/axis2/engine/conf/tuscany-axis2.xml
+++ b/sca-java-2.x/contrib/modules/binding-ws-runtime-jaxws-axis2/src/main/resources/org/apache/tuscany/sca/binding/ws/jaxws/axis2/engine/conf/tuscany-axis2.xml
@@ -113,6 +113,8 @@
<messageReceivers>
<!-- Added by Tuscany -->
+ <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out"
+ class="org.apache.axis2.jaxws.server.JAXWSMessageReceiver"/>
<!--
<messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only"
@@ -449,7 +451,9 @@
<handler name="RequestURIOperationDispatcher"
class="org.apache.axis2.dispatchers.RequestURIOperationDispatcher"/>
<handler name="SOAPMessageBodyBasedDispatcher"
- class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/>
+ class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/>
+ <handler name="SOAPMessageBodyBasedOperationDispatcher"
+ class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedOperationDispatcher"/>
<!--
<handler name="HTTPLocationBasedDispatcher"
class="org.apache.axis2.dispatchers.HTTPLocationBasedDispatcher"/>