You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by an...@apache.org on 2007/03/01 12:46:23 UTC
svn commit: r513285 - in
/incubator/tuscany/branches/sca-java-integration/sca/extensions/axis2/binding/src:
main/java/org/apache/tuscany/binding/axis2/
test/java/org/apache/tuscany/binding/axis2/
Author: antelder
Date: Thu Mar 1 03:46:18 2007
New Revision: 513285
URL: http://svn.apache.org/viewvc?view=rev&rev=513285
Log:
Start at getting the WS binding to determine the WS endpoint based on the spec alogorithim
Added:
incubator/tuscany/branches/sca-java-integration/sca/extensions/axis2/binding/src/test/java/org/apache/tuscany/binding/axis2/Axis2BindingBuilderTestCase.java (with props)
Modified:
incubator/tuscany/branches/sca-java-integration/sca/extensions/axis2/binding/src/main/java/org/apache/tuscany/binding/axis2/Axis2BindingBuilder.java
incubator/tuscany/branches/sca-java-integration/sca/extensions/axis2/binding/src/main/java/org/apache/tuscany/binding/axis2/Axis2ReferenceBinding.java
incubator/tuscany/branches/sca-java-integration/sca/extensions/axis2/binding/src/main/java/org/apache/tuscany/binding/axis2/WebServiceBindingDefinition.java
incubator/tuscany/branches/sca-java-integration/sca/extensions/axis2/binding/src/test/java/org/apache/tuscany/binding/axis2/Axis2ReferenceTestCase.java
Modified: incubator/tuscany/branches/sca-java-integration/sca/extensions/axis2/binding/src/main/java/org/apache/tuscany/binding/axis2/Axis2BindingBuilder.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/branches/sca-java-integration/sca/extensions/axis2/binding/src/main/java/org/apache/tuscany/binding/axis2/Axis2BindingBuilder.java?view=diff&rev=513285&r1=513284&r2=513285
==============================================================================
--- incubator/tuscany/branches/sca-java-integration/sca/extensions/axis2/binding/src/main/java/org/apache/tuscany/binding/axis2/Axis2BindingBuilder.java (original)
+++ incubator/tuscany/branches/sca-java-integration/sca/extensions/axis2/binding/src/main/java/org/apache/tuscany/binding/axis2/Axis2BindingBuilder.java Thu Mar 1 03:46:18 2007
@@ -18,6 +18,9 @@
*/
package org.apache.tuscany.binding.axis2;
+import java.net.URI;
+import java.net.URISyntaxException;
+
import javax.wsdl.Port;
import javax.wsdl.PortType;
@@ -52,6 +55,9 @@
public class Axis2BindingBuilder extends BindingBuilderExtension<WebServiceBindingDefinition> {
private static final String OM_DATA_BINDING = OMElement.class.getName();
+ // TODO: what to do about the base URI?
+ private static final String BASE_URI = "http://localhost:8080/";
+
private ServletHost servletHost;
private ConfigurationContext configContext;
@@ -102,7 +108,7 @@
outboundContract.setDataBinding(OM_DATA_BINDING);
}
- // TODO: TUSCANY-xxx, <binding.ws> with no wsdl only works with <interface.wsdl>
+ // TODO: TUSCANY-1148, <binding.ws> with no wsdl only works with <interface.wsdl>
if (wsBinding.getWSDLDefinition() == null) {
if (outboundContract instanceof WSDLServiceContract) {
String ns = ((WSDLServiceContract)outboundContract).getPortType().getQName().getNamespaceURI();
@@ -156,54 +162,56 @@
WebServiceBindingDefinition wsBinding,
DeploymentContext deploymentContext) {
- try {
- // Set the default binding
- ServiceContract inboundContract = boundReferenceDefinition.getServiceContract();
- if (inboundContract instanceof WSDLServiceContract) {
- inboundContract.setDataBinding(OM_DATA_BINDING);
- }
+ // Set the default binding
+ ServiceContract inboundContract = boundReferenceDefinition.getServiceContract();
+ if (inboundContract instanceof WSDLServiceContract) {
+ inboundContract.setDataBinding(OM_DATA_BINDING);
+ }
- // TODO: TUSCANY-xxx, <binding.ws> with no wsdl only works with <interface.wsdl>
- if (wsBinding.getWSDLDefinition() == null) {
- if (inboundContract instanceof WSDLServiceContract) {
- String ns = ((WSDLServiceContract)inboundContract).getPortType().getQName().getNamespaceURI();
- wsBinding.setWSDLDefinition(wsdlReg.getDefinition(ns));
- } else {
- throw new IllegalStateException("<binding.ws> with no WSDL requires using <interface.wsdl>");
- }
+ // TODO: TUSCANY-1148, <binding.ws> with no wsdl only works with <interface.wsdl>
+ if (wsBinding.getWSDLDefinition() == null) {
+ if (inboundContract instanceof WSDLServiceContract) {
+ String ns = ((WSDLServiceContract)inboundContract).getPortType().getQName().getNamespaceURI();
+ wsBinding.setWSDLDefinition(wsdlReg.getDefinition(ns));
+ } else {
+ throw new IllegalStateException("<binding.ws> with no WSDL requires using <interface.wsdl>");
}
+ }
- // FIXME: We need to define how the WSDL PortType is honored in the case that
- // both the binding.ws and interface.wsdl are in place
- // The WSDL portType from the WSDL Port decides the incoming SOAP message format
-
- ServiceContract<?> outboundContract = inboundContract;
- Port port = wsBinding.getWSDLPort();
- if (port == null) {
- // FIXME: [rfeng] No WSDL is referenced by binding.ws, we need to create one from
- // the inbound service contract if it's JavaServiceContract
- outboundContract = inboundContract;
- }
- PortType portType = port.getBinding().getPortType();
+ // FIXME: We need to define how the WSDL PortType is honored in the case that
+ // both the binding.ws and interface.wsdl are in place
+ // The WSDL portType from the WSDL Port decides the incoming SOAP message format
+
+ ServiceContract<?> outboundContract = inboundContract;
+ Port port = wsBinding.getWSDLPort();
+ if (port == null) {
+ // FIXME: [rfeng] No WSDL is referenced by binding.ws, we need to create one from
+ // the inbound service contract if it's JavaServiceContract
+ outboundContract = inboundContract;
+ }
+ PortType portType = port.getBinding().getPortType();
+ try {
outboundContract = introspector.introspect(portType);
+ } catch (InvalidServiceContractException e) {
+ new Axis2BindingBuilderRuntimeException(e);
+ }
- // Set the default databinding
- outboundContract.setDataBinding(OM_DATA_BINDING);
- //FIXME ... need to figure out how to specify scope on wsdl.
- outboundContract.setInteractionScope(inboundContract.getInteractionScope());
-
- try {
- wireService.checkCompatibility(inboundContract, outboundContract, true);
- } catch (IncompatibleServiceContractException e) {
- throw new Axis2BindingBuilderRuntimeException(e);
- }
-
- return new Axis2ReferenceBinding(boundReferenceDefinition.getName(), parent, wsBinding,
- inboundContract, outboundContract, workContext);
+ // Set the default databinding
+ outboundContract.setDataBinding(OM_DATA_BINDING);
+ //FIXME ... need to figure out how to specify scope on wsdl.
+ outboundContract.setInteractionScope(inboundContract.getInteractionScope());
- } catch (InvalidServiceContractException e) {
+ try {
+ wireService.checkCompatibility(inboundContract, outboundContract, true);
+ } catch (IncompatibleServiceContractException e) {
throw new Axis2BindingBuilderRuntimeException(e);
}
+
+ String endpoint = computeActualURI(wsBinding, BASE_URI, parent.getName(), boundReferenceDefinition.getName());
+
+ return new Axis2ReferenceBinding(boundReferenceDefinition.getName(), parent, wsBinding,
+ inboundContract, outboundContract, workContext, endpoint);
+
}
protected Class<WebServiceBindingDefinition> getBindingType() {
@@ -216,6 +224,62 @@
this.configContext = new TuscanyAxisConfigurator().getConfigurationContext();
} catch (AxisFault e) {
throw new BuilderConfigException(e);
+ }
+ }
+
+ /**
+ * Compute the endpoint URI based on section 2.1.1 of the WS binding spec
+ * 1. The URIs in the endpoint(s) of the referenced WSDL, which may be relative
+ * 2. The URI specified by the wsa:Address element of the wsa:EndpointReference, which may be relative
+ * 3. The explicitly stated URI in the "uri" attribute of the binding.ws element, which may be relative,
+ * 4. The implicit URI as defined by in section 1.7 in the SCA Assembly spec
+ * If the <binding.ws> has no wsdlElement but does have a uri attribute then the uri takes precidence
+ * over any implicitly used WSDL.
+ */
+ protected String computeActualURI(WebServiceBindingDefinition wsBinding, String baseURI, String compositeName, String name) {
+ try {
+
+ URI portURI = null;
+ if ((wsBinding.getServiceName() != null || wsBinding.getPortName() == null) && wsBinding.getBindingName() == null) {
+ // <binding.ws> explicitly points at a wsdl port, may be a relative URI
+ portURI = wsBinding.getPortURI();
+ }
+ if (portURI != null && portURI.isAbsolute()) {
+ return portURI.toString();
+ }
+
+ URI explicitURI = null;
+ if (wsBinding.getURI() != null) {
+ explicitURI = new URI(wsBinding.getURI());
+ }
+
+ String actualURI = "";
+ if (explicitURI == null || !explicitURI.isAbsolute()) {
+ actualURI = baseURI + "/" + compositeName + "/" + name + "/";
+ }
+
+ if (explicitURI != null) {
+ if (portURI != null) {
+ actualURI = actualURI + explicitURI.toString() + "/" + portURI.toString();
+ } else {
+ if (explicitURI != null) {
+ actualURI = actualURI + explicitURI;
+ }
+ if (portURI != null) {
+ actualURI = actualURI + portURI;
+ }
+ }
+ } else {
+ if (portURI != null) {
+ actualURI = actualURI + portURI.toString();
+ }
+ }
+
+ // normalize to handle any . or .. occurances
+ return new URI(actualURI).normalize().toString();
+
+ } catch (URISyntaxException e) {
+ throw new Axis2BindingBuilderRuntimeException(e);
}
}
Modified: incubator/tuscany/branches/sca-java-integration/sca/extensions/axis2/binding/src/main/java/org/apache/tuscany/binding/axis2/Axis2ReferenceBinding.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/branches/sca-java-integration/sca/extensions/axis2/binding/src/main/java/org/apache/tuscany/binding/axis2/Axis2ReferenceBinding.java?view=diff&rev=513285&r1=513284&r2=513285
==============================================================================
--- incubator/tuscany/branches/sca-java-integration/sca/extensions/axis2/binding/src/main/java/org/apache/tuscany/binding/axis2/Axis2ReferenceBinding.java (original)
+++ incubator/tuscany/branches/sca-java-integration/sca/extensions/axis2/binding/src/main/java/org/apache/tuscany/binding/axis2/Axis2ReferenceBinding.java Thu Mar 1 03:46:18 2007
@@ -60,14 +60,15 @@
WebServiceBindingDefinition wsBinding,
ServiceContract contract,
ServiceContract<?> bindingServiceContract,
- WorkContext workContext) {
+ WorkContext workContext,
+ String endpointURI) {
super(theName, parent);
this.bindingServiceContract = bindingServiceContract;
this.workContext = workContext;
try {
Definition wsdlDefinition = wsBinding.getWSDLDefinition();
wsPortMetaData =
- new WebServicePortMetaData(wsdlDefinition, wsBinding.getWSDLPort(), wsBinding.getURI(), false);
+ new WebServicePortMetaData(wsdlDefinition, wsBinding.getWSDLPort(), endpointURI, false);
serviceClient = createServiceClient(wsdlDefinition, wsPortMetaData);
} catch (AxisFault e) {
throw new Axis2BindingRunTimeException(e);
Modified: incubator/tuscany/branches/sca-java-integration/sca/extensions/axis2/binding/src/main/java/org/apache/tuscany/binding/axis2/WebServiceBindingDefinition.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/branches/sca-java-integration/sca/extensions/axis2/binding/src/main/java/org/apache/tuscany/binding/axis2/WebServiceBindingDefinition.java?view=diff&rev=513285&r1=513284&r2=513285
==============================================================================
--- incubator/tuscany/branches/sca-java-integration/sca/extensions/axis2/binding/src/main/java/org/apache/tuscany/binding/axis2/WebServiceBindingDefinition.java (original)
+++ incubator/tuscany/branches/sca-java-integration/sca/extensions/axis2/binding/src/main/java/org/apache/tuscany/binding/axis2/WebServiceBindingDefinition.java Thu Mar 1 03:46:18 2007
@@ -19,12 +19,16 @@
package org.apache.tuscany.binding.axis2;
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.util.List;
import java.util.Map;
import javax.wsdl.Binding;
import javax.wsdl.Definition;
import javax.wsdl.Port;
import javax.wsdl.Service;
+import javax.wsdl.extensions.soap.SOAPAddress;
import javax.xml.namespace.QName;
import org.apache.tuscany.spi.model.BindingDefinition;
@@ -124,6 +128,25 @@
return uri;
}
+ public URI getPortURI() {
+ URI portURI = null;
+ if (definition != null) {
+ Port port = getWSDLPort();
+ final List wsdlPortExtensions = port.getExtensibilityElements();
+ for (final Object extension : wsdlPortExtensions) {
+ if (extension instanceof SOAPAddress) {
+ try {
+ portURI = new URI(((SOAPAddress) extension).getLocationURI());
+ } catch (URISyntaxException e) {
+ throw new RuntimeException(e);
+ }
+ break;
+ }
+ }
+ }
+ return portURI;
+ }
+
public void setURI(String theUri) {
this.uri = theUri;
}
@@ -144,5 +167,17 @@
public String getWSDLNamepace() {
return namespace;
+ }
+
+ public String getPortName() {
+ return portName;
+ }
+
+ public String getServiceName() {
+ return serviceName;
+ }
+
+ public String getBindingName() {
+ return bindingName;
}
}
Added: incubator/tuscany/branches/sca-java-integration/sca/extensions/axis2/binding/src/test/java/org/apache/tuscany/binding/axis2/Axis2BindingBuilderTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/branches/sca-java-integration/sca/extensions/axis2/binding/src/test/java/org/apache/tuscany/binding/axis2/Axis2BindingBuilderTestCase.java?view=auto&rev=513285
==============================================================================
--- incubator/tuscany/branches/sca-java-integration/sca/extensions/axis2/binding/src/test/java/org/apache/tuscany/binding/axis2/Axis2BindingBuilderTestCase.java (added)
+++ incubator/tuscany/branches/sca-java-integration/sca/extensions/axis2/binding/src/test/java/org/apache/tuscany/binding/axis2/Axis2BindingBuilderTestCase.java Thu Mar 1 03:46:18 2007
@@ -0,0 +1,188 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.tuscany.binding.axis2;
+
+import static org.easymock.EasyMock.createMock;
+import static org.easymock.EasyMock.expect;
+import static org.easymock.EasyMock.replay;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import javax.wsdl.Definition;
+import javax.wsdl.Port;
+import javax.wsdl.Service;
+import javax.wsdl.extensions.soap.SOAPAddress;
+import javax.xml.namespace.QName;
+
+import junit.framework.TestCase;
+
+import com.ibm.wsdl.extensions.soap.SOAPAddressImpl;
+
+/**
+ * Tests for the WebServicebindingLoader class
+ */
+@SuppressWarnings("deprecation")
+public class Axis2BindingBuilderTestCase extends TestCase {
+
+ private static final String NAME = "MyService";
+ private static final String COMPOSITE_NAME = "MyComposite";
+ private static final String BASE_URI = "http://localhost/services";
+
+ public void testDefaultURI() throws Exception {
+ Axis2BindingBuilder builder = new Axis2BindingBuilder();
+ WebServiceBindingDefinition wsBinding = new WebServiceBindingDefinition(null, null, null, null, null, null);
+ String uri = builder.computeActualURI(wsBinding, BASE_URI, COMPOSITE_NAME, NAME);
+ assertEquals("http://localhost/services/MyComposite/MyService/", uri);
+ }
+
+ public void testExplicitURI() throws Exception {
+ Axis2BindingBuilder builder = new Axis2BindingBuilder();
+ WebServiceBindingDefinition wsBinding = new WebServiceBindingDefinition(null, null, null, null, null, "http://foo/bar");
+ String uri = builder.computeActualURI(wsBinding, BASE_URI, COMPOSITE_NAME, NAME);
+ assertEquals("http://foo/bar", uri);
+ }
+
+ public void testExplicitWSDL() throws Exception {
+ Axis2BindingBuilder builder = new Axis2BindingBuilder();
+ WebServiceBindingDefinition wsBinding = new WebServiceBindingDefinition("myNS", createMockWSDL("http://my/wsdl/uri"), "myService", "myPort", null, null);
+ String uri = builder.computeActualURI(wsBinding, BASE_URI, COMPOSITE_NAME, NAME);
+ assertEquals("http://my/wsdl/uri", uri);
+ }
+
+ public void testExplicitWSDLExplicitURI() throws Exception {
+ Axis2BindingBuilder builder = new Axis2BindingBuilder();
+ WebServiceBindingDefinition wsBinding = new WebServiceBindingDefinition("myNS", createMockWSDL("http://my/wsdl/uri"), "myService", "myPort", null, "foo");
+ String uri = builder.computeActualURI(wsBinding, BASE_URI, COMPOSITE_NAME, NAME);
+
+ // explicit URI 'foo' should be ignored
+ assertEquals("http://my/wsdl/uri", uri);
+ }
+
+ public void testExplicitWSDLBindingExplicitURI() throws Exception {
+ Axis2BindingBuilder builder = new Axis2BindingBuilder();
+ WebServiceBindingDefinition wsBinding = new WebServiceBindingDefinition("myNS", createMockWSDLBinding("http://my/wsdl/uri"), null, null, "myBinding", "http://my/uri");
+ String uri = builder.computeActualURI(wsBinding, BASE_URI, COMPOSITE_NAME, NAME);
+
+ // explicit URI should be used as the WSDL binding is used not the wsdl service/port
+ assertEquals("http://my/uri", uri);
+ }
+
+ public void testExplicitWSDLBindingExplicitRelativeURI() throws Exception {
+ Axis2BindingBuilder builder = new Axis2BindingBuilder();
+ WebServiceBindingDefinition wsBinding = new WebServiceBindingDefinition("myNS", createMockWSDLBinding("http://my/wsdl/uri"), null, null, "myBinding", "x/y");
+ String uri = builder.computeActualURI(wsBinding, BASE_URI, COMPOSITE_NAME, NAME);
+
+ // explicit URI should be used as the WSDL binding is used not the wsdl service/port
+ assertEquals("http://localhost/services/MyComposite/MyService/x/y", uri);
+ }
+
+ public void testExplicitWSDLBindingExplicitRelativeURIWithDot() throws Exception {
+ Axis2BindingBuilder builder = new Axis2BindingBuilder();
+ WebServiceBindingDefinition wsBinding = new WebServiceBindingDefinition("myNS", createMockWSDLBinding("http://my/wsdl/uri"), null, null, "myBinding", "x/./y");
+ String uri = builder.computeActualURI(wsBinding, BASE_URI, COMPOSITE_NAME, NAME);
+
+ // explicit URI should be used as the WSDL binding is used not the wsdl service/port
+ assertEquals("http://localhost/services/MyComposite/MyService/x/y", uri);
+ }
+
+ public void testExplicitWSDLBindingExplicitRelativeURIWithDots() throws Exception {
+ Axis2BindingBuilder builder = new Axis2BindingBuilder();
+ WebServiceBindingDefinition wsBinding = new WebServiceBindingDefinition("myNS", createMockWSDLBinding("http://my/wsdl/uri"), null, null, "myBinding", "../../x/y");
+ String uri = builder.computeActualURI(wsBinding, BASE_URI, COMPOSITE_NAME, NAME);
+
+ // explicit URI should be used as the WSDL binding is used not the wsdl service/port
+ assertEquals("http://localhost/services/x/y", uri);
+ }
+
+ public void testExplicitRelativeWSDL() throws Exception {
+ Axis2BindingBuilder builder = new Axis2BindingBuilder();
+ WebServiceBindingDefinition wsBinding = new WebServiceBindingDefinition("myNS", createMockWSDL("foo/bar"), "myService", "myPort", null, null);
+ String uri = builder.computeActualURI(wsBinding, BASE_URI, COMPOSITE_NAME, NAME);
+ assertEquals("http://localhost/services/MyComposite/MyService/foo/bar", uri);
+ }
+
+ public void testExplicitRelativeWSDLWithDots() throws Exception {
+ Axis2BindingBuilder builder = new Axis2BindingBuilder();
+ WebServiceBindingDefinition wsBinding = new WebServiceBindingDefinition("myNS", createMockWSDL("../foo/bar"), "myService", "myPort", null, null);
+ String uri = builder.computeActualURI(wsBinding, BASE_URI, COMPOSITE_NAME, NAME);
+ assertEquals("http://localhost/services/MyComposite/foo/bar", uri);
+ }
+
+ public void testExplicitRelativeWSDLExplicitURI() throws Exception {
+ Axis2BindingBuilder builder = new Axis2BindingBuilder();
+ WebServiceBindingDefinition wsBinding = new WebServiceBindingDefinition("myNS", createMockWSDL("foo/bar"), "myService", "myPort", null, "http://my/wsdl/uri");
+ String uri = builder.computeActualURI(wsBinding, BASE_URI, COMPOSITE_NAME, NAME);
+ assertEquals("http://my/wsdl/uri/foo/bar", uri);
+ }
+
+ public void testExplicitRelativeWSDLWithDotsExplicitURI() throws Exception {
+ Axis2BindingBuilder builder = new Axis2BindingBuilder();
+ WebServiceBindingDefinition wsBinding = new WebServiceBindingDefinition("myNS", createMockWSDL("../foo/bar"), "myService", "myPort", null, "http://my/wsdl/uri");
+ String uri = builder.computeActualURI(wsBinding, BASE_URI, COMPOSITE_NAME, NAME);
+ assertEquals("http://my/wsdl/foo/bar", uri);
+ }
+
+ public void testExplicitRelativeWSDLExplicitRelativeURI() throws Exception {
+ Axis2BindingBuilder builder = new Axis2BindingBuilder();
+ WebServiceBindingDefinition wsBinding = new WebServiceBindingDefinition("myNS", createMockWSDL("foo/bar"), "myService", "myPort", null, "x/y");
+ String uri = builder.computeActualURI(wsBinding, BASE_URI, COMPOSITE_NAME, NAME);
+ assertEquals("http://localhost/services/MyComposite/MyService/x/y/foo/bar", uri);
+ }
+
+ public void testExplicitRelativeWSDLExplicitRelativeURIWithDots() throws Exception {
+ Axis2BindingBuilder builder = new Axis2BindingBuilder();
+ WebServiceBindingDefinition wsBinding = new WebServiceBindingDefinition("myNS", createMockWSDL("foo/bar"), "myService", "myPort", null, "../x/y");
+ String uri = builder.computeActualURI(wsBinding, BASE_URI, COMPOSITE_NAME, NAME);
+ assertEquals("http://localhost/services/MyComposite/x/y/foo/bar", uri);
+ }
+
+ protected Definition createMockWSDL(String endpoint) {
+ Definition mockDef = createMock(Definition.class);
+
+ Service wsdlService = createMock(Service.class);
+ expect(wsdlService.getQName()).andReturn(new QName("myNS", "myService"));
+
+ Port wsdlPort = createMock(Port.class);
+ List<SOAPAddress> ees = new ArrayList<SOAPAddress>();
+ SOAPAddress sa = createMock(SOAPAddress.class);
+ expect(sa.getLocationURI()).andReturn(endpoint);
+ ees.add(sa);
+ expect(wsdlPort.getExtensibilityElements()).andReturn(ees);
+
+ expect(wsdlService.getPort("myPort")).andReturn(wsdlPort);
+
+ Map<String, Service> services = new HashMap<String, Service>();
+ services.put("myService", wsdlService);
+ expect(mockDef.getServices()).andReturn(services);
+
+ replay(mockDef);
+ replay(wsdlService);
+ replay(wsdlPort);
+ replay(sa);
+ return mockDef;
+ }
+ protected Definition createMockWSDLBinding(String endpoint) {
+ Definition mockDef = createMock(Definition.class);
+ replay(mockDef);
+ return mockDef;
+ }
+}
Propchange: incubator/tuscany/branches/sca-java-integration/sca/extensions/axis2/binding/src/test/java/org/apache/tuscany/binding/axis2/Axis2BindingBuilderTestCase.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/tuscany/branches/sca-java-integration/sca/extensions/axis2/binding/src/test/java/org/apache/tuscany/binding/axis2/Axis2BindingBuilderTestCase.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Modified: incubator/tuscany/branches/sca-java-integration/sca/extensions/axis2/binding/src/test/java/org/apache/tuscany/binding/axis2/Axis2ReferenceTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/branches/sca-java-integration/sca/extensions/axis2/binding/src/test/java/org/apache/tuscany/binding/axis2/Axis2ReferenceTestCase.java?view=diff&rev=513285&r1=513284&r2=513285
==============================================================================
--- incubator/tuscany/branches/sca-java-integration/sca/extensions/axis2/binding/src/test/java/org/apache/tuscany/binding/axis2/Axis2ReferenceTestCase.java (original)
+++ incubator/tuscany/branches/sca-java-integration/sca/extensions/axis2/binding/src/test/java/org/apache/tuscany/binding/axis2/Axis2ReferenceTestCase.java Thu Mar 1 03:46:18 2007
@@ -18,9 +18,12 @@
*/
package org.apache.tuscany.binding.axis2;
+import static org.apache.tuscany.spi.model.Operation.NO_CONVERSATION;
+
import java.lang.reflect.Type;
import java.net.URL;
import java.util.HashMap;
+
import javax.wsdl.Definition;
import javax.wsdl.Port;
import javax.wsdl.Service;
@@ -28,20 +31,18 @@
import javax.wsdl.xml.WSDLReader;
import javax.xml.namespace.QName;
-import org.xml.sax.InputSource;
+import junit.framework.TestCase;
+import org.apache.tuscany.idl.wsdl.WSDLServiceContract;
import org.apache.tuscany.spi.component.CompositeComponent;
import org.apache.tuscany.spi.idl.java.JavaServiceContract;
import org.apache.tuscany.spi.model.Operation;
-import static org.apache.tuscany.spi.model.Operation.NO_CONVERSATION;
import org.apache.tuscany.spi.model.ServiceContract;
import org.apache.tuscany.spi.wire.InboundWire;
import org.apache.tuscany.spi.wire.TargetInvoker;
import org.apache.tuscany.spi.wire.WireService;
-
-import junit.framework.TestCase;
-import org.apache.tuscany.idl.wsdl.WSDLServiceContract;
import org.easymock.EasyMock;
+import org.xml.sax.InputSource;
public class Axis2ReferenceTestCase extends TestCase {
@@ -104,6 +105,7 @@
parent,
wsBinding,
contract,
+ null,
null,
null);
}
---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org