diff options
Diffstat (limited to '')
15 files changed, 1226 insertions, 0 deletions
diff --git a/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/pom.xml b/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/pom.xml new file mode 100644 index 0000000000..e2eb8dd69c --- /dev/null +++ b/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/pom.xml @@ -0,0 +1,58 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * 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. +--> +<project> + <modelVersion>4.0.0</modelVersion> + <parent> + <groupId>org.apache.tuscany.sca</groupId> + <artifactId>vtest-wsbinding-wsdlelement</artifactId> + <version>1.5</version> + <relativePath>../pom.xml</relativePath> + </parent> + <artifactId>vtest-wsbinding-wsdlelement-port</artifactId> + <name>Apache Tuscany SCA vTest Web Service Binding Verification Tests - WSDL wsdlElement wsdl.port</name> + + <dependencies> + <dependency> + <groupId>org.apache.tuscany.sca</groupId> + <artifactId>tuscany-host-embedded</artifactId> + <version>1.5</version> + </dependency> + + <dependency> + <groupId>org.apache.tuscany.sca</groupId> + <artifactId>tuscany-binding-ws-axis2</artifactId> + <version>1.5</version> + </dependency> + + <dependency> + <groupId>org.apache.tuscany.sca</groupId> + <artifactId>tuscany-host-tomcat</artifactId> + <version>1.5</version> + <scope>runtime</scope> + </dependency> + + <dependency> + <groupId>org.apache.tuscany.sca</groupId> + <artifactId>tuscany-implementation-java-runtime</artifactId> + <version>1.5</version> + <scope>runtime</scope> + </dependency> + </dependencies> +</project> diff --git a/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/wsdlelement/port/AService.java b/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/wsdlelement/port/AService.java new file mode 100644 index 0000000000..a0ed87249f --- /dev/null +++ b/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/wsdlelement/port/AService.java @@ -0,0 +1,40 @@ +/* + * 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.sca.vtest.wsbinding.wsdlelement.port; + +import org.osoa.sca.annotations.Remotable; + +/** + * The interface for AService. + */ +@Remotable +public interface AService { + + public String getName(); + + public String getB1String(String aString); + + public String getB1String2(String aString, String bString); + + public int getB1Int(int i); + + public String getB2String(String aString); + + public int getB2Int(int i); +} diff --git a/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/wsdlelement/port/BService.java b/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/wsdlelement/port/BService.java new file mode 100644 index 0000000000..1bdabeaea7 --- /dev/null +++ b/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/wsdlelement/port/BService.java @@ -0,0 +1,35 @@ +/* + * 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.sca.vtest.wsbinding.wsdlelement.port; + +import org.osoa.sca.annotations.Remotable; + +/** + * Simple Service used by another service + */ +@Remotable +public interface BService { + + public String getString(String aString); + + public String getString2(String aString, String bString); + + public int getInt(int i); + +} diff --git a/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/wsdlelement/port/BService2.java b/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/wsdlelement/port/BService2.java new file mode 100644 index 0000000000..3952d8c792 --- /dev/null +++ b/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/wsdlelement/port/BService2.java @@ -0,0 +1,33 @@ +/* + * 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.sca.vtest.wsbinding.wsdlelement.port; + +import org.osoa.sca.annotations.Remotable; + +/** + * Simple Service used by another service + */ +@Remotable +public interface BService2 { + + public String getString(String aString); + + public int getInt(int i); + +} diff --git a/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/wsdlelement/port/CService.java b/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/wsdlelement/port/CService.java new file mode 100644 index 0000000000..244907fa19 --- /dev/null +++ b/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/wsdlelement/port/CService.java @@ -0,0 +1,37 @@ +/* + * 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.sca.vtest.wsbinding.wsdlelement.port; + +import org.osoa.sca.annotations.Remotable; + +/** + * Simple Service used by another service + */ +@Remotable +public interface CService { + + public String getString(String aString); + + public String getString2(String aString, String bString); + + public Integer getInteger(Integer i); + + public float getFloat(float f); + +} diff --git a/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/wsdlelement/port/DService.java b/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/wsdlelement/port/DService.java new file mode 100644 index 0000000000..519374c1bd --- /dev/null +++ b/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/wsdlelement/port/DService.java @@ -0,0 +1,45 @@ +/* + * 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.sca.vtest.wsbinding.wsdlelement.port; + +import org.osoa.sca.annotations.Remotable; + +/** + * The interface for DService. + */ +@Remotable +public interface DService { + + public String getName(); + + public String getB1String(String aString); + + public String getB1String2(String aString, String bString); + + public int getB1Int(int i); + + public String getC1String(String aString); + + public String getC1String2(String aString, String bString); + + public Integer getC1Integer(Integer i); + + public float getC1Float(float f); + +} diff --git a/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/wsdlelement/port/impl/AServiceImpl.java b/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/wsdlelement/port/impl/AServiceImpl.java new file mode 100644 index 0000000000..558ddcbb49 --- /dev/null +++ b/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/wsdlelement/port/impl/AServiceImpl.java @@ -0,0 +1,62 @@ +/* + * 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.sca.vtest.wsbinding.wsdlelement.port.impl; + +import org.apache.tuscany.sca.vtest.wsbinding.wsdlelement.port.AService; +import org.apache.tuscany.sca.vtest.wsbinding.wsdlelement.port.BService; +import org.apache.tuscany.sca.vtest.wsbinding.wsdlelement.port.BService2; +import org.osoa.sca.annotations.Reference; +import org.osoa.sca.annotations.Service; + +/** + * This class implements AService. + */ +@Service(AService.class) +public class AServiceImpl implements AService { + + @Reference(required=false) + public BService b1; + + @Reference(required=false) + public BService2 b2; + + public String getName() { + return "AService"; + } + + public String getB1String(String aString) { + return b1.getString(aString); + } + + public String getB1String2(String aString, String bString) { + return b1.getString2(aString, bString); + } + + public int getB1Int(int i) { + return b1.getInt(i); + } + + public String getB2String(String aString) { + return b2.getString(aString); + } + + public int getB2Int(int i) { + return b2.getInt(i); + } +}
\ No newline at end of file diff --git a/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/wsdlelement/port/impl/BService2Impl.java b/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/wsdlelement/port/impl/BService2Impl.java new file mode 100644 index 0000000000..b1dd73edc8 --- /dev/null +++ b/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/wsdlelement/port/impl/BService2Impl.java @@ -0,0 +1,40 @@ +/* + * 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.sca.vtest.wsbinding.wsdlelement.port.impl; + +import org.apache.tuscany.sca.vtest.wsbinding.wsdlelement.port.BService2; +import org.osoa.sca.annotations.Service; + +@Service(BService2.class) +public class BService2Impl implements BService2 { + + public String getName() { + return "BService2"; + } + + public String getString(String aString) { + return aString; + } + + public int getInt(int i) { + return i; + } + +} diff --git a/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/wsdlelement/port/impl/BServiceImpl.java b/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/wsdlelement/port/impl/BServiceImpl.java new file mode 100644 index 0000000000..b132fca45b --- /dev/null +++ b/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/wsdlelement/port/impl/BServiceImpl.java @@ -0,0 +1,44 @@ +/* + * 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.sca.vtest.wsbinding.wsdlelement.port.impl; + +import org.apache.tuscany.sca.vtest.wsbinding.wsdlelement.port.BService; +import org.osoa.sca.annotations.Service; + +@Service(BService.class) +public class BServiceImpl implements BService { + + public String getName() { + return "BService"; + } + + public String getString(String aString) { + return aString; + } + + public String getString2(String aString, String bString) { + return aString + bString; + } + + public int getInt(int i) { + return i; + } + +} diff --git a/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/wsdlelement/port/impl/CServiceImpl.java b/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/wsdlelement/port/impl/CServiceImpl.java new file mode 100644 index 0000000000..ca3ec62b83 --- /dev/null +++ b/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/wsdlelement/port/impl/CServiceImpl.java @@ -0,0 +1,48 @@ +/* + * 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.sca.vtest.wsbinding.wsdlelement.port.impl; + +import org.apache.tuscany.sca.vtest.wsbinding.wsdlelement.port.CService; +import org.osoa.sca.annotations.Service; + +@Service(CService.class) +public class CServiceImpl implements CService { + + public String getName() { + return "CService"; + } + + public String getString(String aString) { + return aString; + } + + public String getString2(String aString, String bString) { + return aString + bString; + } + + public Integer getInteger(Integer i) { + return i; + } + + public float getFloat(float f) { + return f; + } + +} diff --git a/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/wsdlelement/port/impl/DServiceImpl.java b/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/wsdlelement/port/impl/DServiceImpl.java new file mode 100644 index 0000000000..767deae23f --- /dev/null +++ b/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/wsdlelement/port/impl/DServiceImpl.java @@ -0,0 +1,70 @@ +/* + * 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.sca.vtest.wsbinding.wsdlelement.port.impl; + +import org.apache.tuscany.sca.vtest.wsbinding.wsdlelement.port.BService; +import org.apache.tuscany.sca.vtest.wsbinding.wsdlelement.port.CService; +import org.apache.tuscany.sca.vtest.wsbinding.wsdlelement.port.DService; +import org.osoa.sca.annotations.Reference; +import org.osoa.sca.annotations.Service; + +/** + * This class implements DService. + */ +@Service(DService.class) +public class DServiceImpl implements DService { + + @Reference + public BService b1; + + @Reference + public CService c1; + + public String getName() { + return "DService"; + } + + public String getB1String(String aString) { + return b1.getString(aString); + } + + public String getB1String2(String aString, String bString) { + return b1.getString2(aString, bString); + } + + public int getB1Int(int i) { + return b1.getInt(i); + } + + public String getC1String(String aString) { + return c1.getString(aString); + } + + public String getC1String2(String aString, String bString) { + return c1.getString2(aString, bString); + } + + public Integer getC1Integer(Integer i) { + return c1.getInteger(i); + } + + public float getC1Float(float f) { + return c1.getFloat(f); + } +}
\ No newline at end of file diff --git a/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/main/resources/bservice.wsdl b/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/main/resources/bservice.wsdl new file mode 100644 index 0000000000..d5c8d72dc1 --- /dev/null +++ b/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/main/resources/bservice.wsdl @@ -0,0 +1,238 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * 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.
+-->
+<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://vtest.wsbinding.wsdlelement.port.bservice" xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="wsdlelement" targetNamespace="http://vtest.wsbinding.wsdlelement.port.bservice" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/">
+ <wsdl:types>
+ <xsd:schema targetNamespace="http://vtest.wsbinding.wsdlelement.port.bservice" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+ <xsd:element name="getString">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="in" type="xsd:string"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="getStringResponse">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="out" type="xsd:string"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="getString2">
+ <xsd:complexType>
+ <xsd:sequence>
<xsd:element name="in1" type="xsd:string"></xsd:element> + <xsd:element name="in2" type="xsd:string"></xsd:element> + </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element> + <xsd:element name="getString2Response"> + <xsd:complexType> + <xsd:sequence>
+ <xsd:element name="out" type="xsd:string"></xsd:element> + </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element> + <xsd:element name="getInt"> + <xsd:complexType> + <xsd:sequence>
+ <xsd:element name="in" type="xsd:int"></xsd:element> + </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element> + <xsd:element name="getIntResponse"> + <xsd:complexType> + <xsd:sequence>
+ <xsd:element name="out" type="xsd:string"></xsd:element> + </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element> + </xsd:schema>
+ </wsdl:types>
+ <wsdl:message name="getStringRequest">
+ <wsdl:part element="tns:getString" name="parameters"/>
+ </wsdl:message>
+ <wsdl:message name="getStringResponse">
+ <wsdl:part element="tns:getStringResponse" name="parameters"/>
+ </wsdl:message>
+ <wsdl:message name="getString2Request">
+ <wsdl:part name="parameters" element="tns:getString2"></wsdl:part>
+ </wsdl:message> + <wsdl:message name="getString2Response"> + <wsdl:part name="parameters" element="tns:getString2Response"></wsdl:part>
+ </wsdl:message> + <wsdl:message name="getIntRequest"> + <wsdl:part name="parameters" element="tns:getInt"></wsdl:part>
+ </wsdl:message> + <wsdl:message name="getIntResponse"> + <wsdl:part name="parameters" element="tns:getIntResponse"></wsdl:part>
+ </wsdl:message> + <wsdl:message name="getStringRequest"> + <wsdl:part name="parameters" element="tns:getString"></wsdl:part>
+ </wsdl:message> + <wsdl:message name="getStringResponse"> + <wsdl:part name="parameters" element="tns:getStringResponse"></wsdl:part>
+ </wsdl:message> + <wsdl:message name="getIntRequest"> + <wsdl:part name="parameters" element="tns:getInt"></wsdl:part>
+ </wsdl:message> + <wsdl:message name="getIntResponse"> + <wsdl:part name="parameters" element="tns:getIntResponse"></wsdl:part>
+ </wsdl:message> + <wsdl:portType name="BService1PortType">
+ <wsdl:operation name="getString">
+ <wsdl:input message="tns:getStringRequest"/>
+ <wsdl:output message="tns:getStringResponse"/>
+ </wsdl:operation>
+ <wsdl:operation name="getString2">
+ <wsdl:input message="tns:getString2Request"></wsdl:input> + <wsdl:output message="tns:getString2Response"></wsdl:output>
+ </wsdl:operation> + <wsdl:operation name="getInt"> + <wsdl:input message="tns:getIntRequest"></wsdl:input> + <wsdl:output message="tns:getIntResponse"></wsdl:output>
+ </wsdl:operation> + </wsdl:portType>
+ <wsdl:portType name="BService2PortType">
+ <wsdl:operation name="getString">
+ <wsdl:input message="tns:getStringRequest"></wsdl:input> + <wsdl:output message="tns:getStringResponse"></wsdl:output>
+ </wsdl:operation>
+ <wsdl:operation name="getInt">
+ <wsdl:input message="tns:getIntRequest"></wsdl:input> + <wsdl:output message="tns:getIntResponse"></wsdl:output>
+ </wsdl:operation> + </wsdl:portType> + <wsdl:binding name="BService1SOAPBinding"
+ type="tns:BService1PortType">
<soap:binding style="document"
+ transport="http://schemas.xmlsoap.org/soap/http" />
<wsdl:operation name="getString">
<soap:operation
+ soapAction="http://vtest.wsbinding.wsdlelement.port.bservice/getString" />
<wsdl:input>
<soap:body use="literal" />
+ </wsdl:input>
+ <wsdl:output>
<soap:body use="literal" />
+ </wsdl:output>
+ </wsdl:operation>
+ <wsdl:operation name="getString2">
+ <soap:operation
+ soapAction="http://vtest.wsbinding.wsdlelement.port.bservice/getString2" /> + <wsdl:input>
+ <soap:body use="literal" /> + </wsdl:input> + <wsdl:output>
+ <soap:body use="literal" /> + </wsdl:output>
+ </wsdl:operation> + <wsdl:operation name="getInt"> + <soap:operation
+ soapAction="http://vtest.wsbinding.wsdlelement.port.bservice/getInt" /> + <wsdl:input>
+ <soap:body use="literal" /> + </wsdl:input> + <wsdl:output>
+ <soap:body use="literal" /> + </wsdl:output>
+ </wsdl:operation> + </wsdl:binding>
+ <wsdl:binding name="BService2SOAPBinding"
+ type="tns:BService2PortType">
+ <soap:binding style="document"
+ transport="http://schemas.xmlsoap.org/soap/http" /> + <wsdl:operation name="getString"> + <soap:operation
+ soapAction="http://vtest.wsbinding.wsdlelement.port.bservice/getString" /> + <wsdl:input>
+ <soap:body use="literal" /> + </wsdl:input> + <wsdl:output>
+ <soap:body use="literal" /> + </wsdl:output>
+ </wsdl:operation>
+ <wsdl:operation name="getInt">
+ <soap:operation
+ soapAction="http://vtest.wsbinding.wsdlelement.port.bservice/getInt" /> + <wsdl:input>
+ <soap:body use="literal" /> + </wsdl:input> + <wsdl:output>
+ <soap:body use="literal" /> + </wsdl:output>
+ </wsdl:operation> + </wsdl:binding> + <wsdl:binding name="BService3SOAP12Binding"
+ type="tns:BService1PortType">
+
+ <soap12:binding style="document"
+ transport="http://schemas.xmlsoap.org/soap/http" />
+ <wsdl:operation name="getString">
+
+ <soap12:operation
+ soapAction="http://vtest.wsbinding.wsdlelement.port.bservice/getString" />
+ <wsdl:input>
+
+ <soap12:body use="literal" />
+ </wsdl:input>
+ <wsdl:output>
+
+ <soap12:body use="literal" />
+ </wsdl:output>
+ </wsdl:operation>
+ <wsdl:operation name="getString2">
+
+ <soap12:operation
+ soapAction="http://vtest.wsbinding.wsdlelement.port.bservice/getString2" />
+ <wsdl:input>
+
+ <soap12:body use="literal" />
+ </wsdl:input>
+ <wsdl:output>
+
+ <soap12:body use="literal" />
+ </wsdl:output>
+ </wsdl:operation>
+ <wsdl:operation name="getInt">
+
+ <soap12:operation
+ soapAction="http://vtest.wsbinding.wsdlelement.port.bservice/getInt" />
+ <wsdl:input>
+
+ <soap12:body use="literal" />
+ </wsdl:input>
+ <wsdl:output>
+
+ <soap12:body use="literal" />
+ </wsdl:output>
+ </wsdl:operation>
+ </wsdl:binding>
+ <wsdl:service name="BService">
+ <wsdl:port binding="tns:BService1SOAPBinding" name="BService1SOAP">
+ <soap:address location=""/>
+ </wsdl:port>
+ <wsdl:port name="BService2SOAP"
+ binding="tns:BService2SOAPBinding">
+ <soap:address location="" />
+ </wsdl:port>
+ <wsdl:port name="BService3SOAP12"
+ binding="tns:BService3SOAP12Binding">
+ <soap12:address location=""></soap12:address>
+ </wsdl:port>
+ </wsdl:service>
+ <wsdl:service name="BService2">
+ <wsdl:port name="BService2Port" binding="tns:BService2SOAPBinding">
+ <soap:address location="" />
+ </wsdl:port>
+ </wsdl:service> +</wsdl:definitions>
diff --git a/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/main/resources/cservice.wsdl b/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/main/resources/cservice.wsdl new file mode 100644 index 0000000000..8a715a2081 --- /dev/null +++ b/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/main/resources/cservice.wsdl @@ -0,0 +1,173 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * 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.
+-->
+<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://vtest.wsbinding.wsdlelement.port.cservice" xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="CService" targetNamespace="http://vtest.wsbinding.wsdlelement.port.cservice">
+ <wsdl:types>
+ <xsd:schema targetNamespace="http://vtest.wsbinding.wsdlelement.port.cservice" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+ <xsd:element name="getFloat">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="in" type="xsd:float"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="getFloatResponse">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="out" type="xsd:float"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="getInteger">
+ <xsd:complexType>
+ <xsd:sequence>
<xsd:element name="in" type="xsd:integer"></xsd:element> + </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element> + <xsd:element name="getIntegerResponse"> + <xsd:complexType> + <xsd:sequence>
+ <xsd:element name="out" type="xsd:integer"></xsd:element> + </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element> + <xsd:element name="getString2"> + <xsd:complexType> + <xsd:sequence>
+ <xsd:element name="in1" type="xsd:string"></xsd:element> + <xsd:element name="in2" type="xsd:string"></xsd:element> + </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element> + <xsd:element name="getString2Response"> + <xsd:complexType> + <xsd:sequence>
+ <xsd:element name="out" type="xsd:string"></xsd:element> + </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element> + <xsd:element name="getString"> + <xsd:complexType> + <xsd:sequence>
+ <xsd:element name="in" type="xsd:string"></xsd:element> + </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element> + <xsd:element name="getStringResponse"> + <xsd:complexType> + <xsd:sequence>
+ <xsd:element name="out" type="xsd:string"></xsd:element> + </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element> + </xsd:schema>
+ </wsdl:types>
+ <wsdl:message name="getFloatRequest">
+ <wsdl:part element="tns:getFloat" name="parameters"/>
+ </wsdl:message>
+ <wsdl:message name="getFloatResponse">
+ <wsdl:part element="tns:getFloatResponse" name="parameters"/>
+ </wsdl:message>
+ <wsdl:message name="getIntegerRequest">
+ <wsdl:part name="parameters" element="tns:getInteger"></wsdl:part>
+ </wsdl:message> + <wsdl:message name="getIntegerResponse"> + <wsdl:part name="parameters" element="tns:getIntegerResponse"></wsdl:part>
+ </wsdl:message> + <wsdl:message name="getString2Request"> + <wsdl:part name="parameters" element="tns:getString2"></wsdl:part>
+ </wsdl:message> + <wsdl:message name="getString2Response"> + <wsdl:part name="parameters" element="tns:getString2Response"></wsdl:part>
+ </wsdl:message> + <wsdl:message name="getStringRequest"> + <wsdl:part name="parameters" element="tns:getString"></wsdl:part>
+ </wsdl:message> + <wsdl:message name="getStringResponse"> + <wsdl:part name="parameters" element="tns:getStringResponse"></wsdl:part>
+ </wsdl:message> + <wsdl:message name="getString2Request"> + <wsdl:part name="parameters" element="tns:getString2"></wsdl:part>
+ </wsdl:message> + <wsdl:message name="getString2Response"> + <wsdl:part name="parameters" element="tns:getString2Response"></wsdl:part>
+ </wsdl:message> + <wsdl:portType name="CServicePortType">
+ <wsdl:operation name="getFloat">
+ <wsdl:input message="tns:getFloatRequest"/>
+ <wsdl:output message="tns:getFloatResponse"/>
+ </wsdl:operation>
+ <wsdl:operation name="getInteger">
+ <wsdl:input message="tns:getIntegerRequest"></wsdl:input> + <wsdl:output message="tns:getIntegerResponse"></wsdl:output>
+ </wsdl:operation> + <wsdl:operation name="getString"> + <wsdl:input message="tns:getStringRequest"></wsdl:input> + <wsdl:output message="tns:getStringResponse"></wsdl:output>
+ </wsdl:operation> + <wsdl:operation name="getString2"> + <wsdl:input message="tns:getString2Request"></wsdl:input> + <wsdl:output message="tns:getString2Response"></wsdl:output>
+ </wsdl:operation> + </wsdl:portType>
+ <wsdl:binding name="CServiceSOAPBinding"
+ type="tns:CServicePortType">
<soap:binding style="document"
+ transport="http://schemas.xmlsoap.org/soap/http" />
<wsdl:operation name="getFloat">
<soap:operation
+ soapAction="http://vtest.wsbinding.wsdlelement.port.cservice/getFloat" />
<wsdl:input>
<soap:body use="literal" />
+ </wsdl:input>
+ <wsdl:output>
<soap:body use="literal" />
+ </wsdl:output>
+ </wsdl:operation>
+ <wsdl:operation name="getInteger">
+ <soap:operation
+ soapAction="http://vtest.wsbinding.wsdlelement.port.cservice/getInteger" /> + <wsdl:input>
+ <soap:body use="literal" /> + </wsdl:input> + <wsdl:output>
+ <soap:body use="literal" /> + </wsdl:output>
+ </wsdl:operation> + <wsdl:operation name="getString"> + <soap:operation
+ soapAction="http://vtest.wsbinding.wsdlelement.port.cservice/getString" /> + <wsdl:input>
+ <soap:body use="literal" /> + </wsdl:input> + <wsdl:output>
+ <soap:body use="literal" /> + </wsdl:output>
+ </wsdl:operation> + <wsdl:operation name="getString2"> + <soap:operation
+ soapAction="http://vtest.wsbinding.wsdlelement.port.cservice/getString2" /> + <wsdl:input>
+ <soap:body use="literal" /> + </wsdl:input> + <wsdl:output>
+ <soap:body use="literal" /> + </wsdl:output>
+ </wsdl:operation> + </wsdl:binding>
+ <wsdl:service name="CService">
+ <wsdl:port binding="tns:CServiceSOAPBinding" name="CServiceSOAP">
+ <soap:address location=""/>
+ </wsdl:port>
+ </wsdl:service>
+</wsdl:definitions>
diff --git a/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/main/resources/wsdlelement.port.composite b/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/main/resources/wsdlelement.port.composite new file mode 100644 index 0000000000..5b9b77683e --- /dev/null +++ b/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/main/resources/wsdlelement.port.composite @@ -0,0 +1,115 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * 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. +--> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" + targetNamespace="http://vtest.wsbinding.wsdlelement.port" + xmlns:wsdli="http://www.w3.org/2004/08/wsdl-instance" + name="wsdlelement.port"> + + + <component name="BComponent1"> + <implementation.java class="org.apache.tuscany.sca.vtest.wsbinding.wsdlelement.port.impl.BServiceImpl"/> + <service name="BService"> + <interface.java interface="org.apache.tuscany.sca.vtest.wsbinding.wsdlelement.port.BService"/> + <binding.ws wsdlElement="http://vtest.wsbinding.wsdlelement.port.bservice#wsdl.port(BService/BService1SOAP)" + uri="http://localhost:8085/BComponent1"/> + </service> + </component> + + <component name="BComponent2"> + <implementation.java class="org.apache.tuscany.sca.vtest.wsbinding.wsdlelement.port.impl.BServiceImpl"/> + <service name="BService"> + <interface.java interface="org.apache.tuscany.sca.vtest.wsbinding.wsdlelement.port.BService"/> + <binding.ws wsdlElement="http://vtest.wsbinding.wsdlelement.port.bservice#wsdl.port(BService/BService2SOAP)" + uri="http://localhost:8085/BComponent2"/> + </service> + </component> + + <component name="BComponent3"> + <implementation.java class="org.apache.tuscany.sca.vtest.wsbinding.wsdlelement.port.impl.BService2Impl"/> + <service name="BService2"> + <interface.java interface="org.apache.tuscany.sca.vtest.wsbinding.wsdlelement.port.BService2"/> + <binding.ws wsdlElement="http://vtest.wsbinding.wsdlelement.port.bservice#wsdl.port(BService2/BService2Port)" + uri="http://localhost:8085/BComponent3"/> + </service> + </component> + + <component name="BComponent4"> + <implementation.java class="org.apache.tuscany.sca.vtest.wsbinding.wsdlelement.port.impl.BServiceImpl"/> + <service name="BService"> + <interface.java interface="org.apache.tuscany.sca.vtest.wsbinding.wsdlelement.port.BService"/> + <binding.ws wsdlElement="http://vtest.wsbinding.wsdlelement.port.bservice#wsdl.port(BService/BService3SOAP12)" + uri="http://localhost:8085/BComponent4"/> + </service> + </component> + + <component name="CComponent"> + <implementation.java class="org.apache.tuscany.sca.vtest.wsbinding.wsdlelement.port.impl.CServiceImpl"/> + <service name="CService"> + <interface.java interface="org.apache.tuscany.sca.vtest.wsbinding.wsdlelement.port.CService"/> + <binding.ws wsdlElement="http://vtest.wsbinding.wsdlelement.port.cservice#wsdl.port(CService/CServiceSOAP)" + uri="http://localhost:8085/CComponent"/> + </service> + </component> + + <component name="AComponent1"> + <implementation.java class="org.apache.tuscany.sca.vtest.wsbinding.wsdlelement.port.impl.AServiceImpl"/> + <reference name="b1" target="BComponent1/BService"> + <interface.java interface="org.apache.tuscany.sca.vtest.wsbinding.wsdlelement.port.BService"/> + <binding.ws wsdlElement="http://vtest.wsbinding.wsdlelement.port.bservice#wsdl.port(BService/BService1SOAP)" uri="http://localhost:8085/BComponent1"/> + </reference> + </component> + + <component name="AComponent2"> + <implementation.java class="org.apache.tuscany.sca.vtest.wsbinding.wsdlelement.port.impl.AServiceImpl"/> + <reference name="b1" target="BComponent2/BService"> + <interface.java interface="org.apache.tuscany.sca.vtest.wsbinding.wsdlelement.port.BService"/> + <binding.ws wsdlElement="http://vtest.wsbinding.wsdlelement.port.bservice#wsdl.port(BService/BService2SOAP)" uri="http://localhost:8085/BComponent2"/> + </reference> + </component> + + <component name="AComponent3"> + <implementation.java class="org.apache.tuscany.sca.vtest.wsbinding.wsdlelement.port.impl.AServiceImpl"/> + <reference name="b2" target="BComponent3/BService2"> + <interface.java interface="org.apache.tuscany.sca.vtest.wsbinding.wsdlelement.port.BService2"/> + <binding.ws wsdlElement="http://vtest.wsbinding.wsdlelement.port.bservice#wsdl.port(BService2/BService2Port)" uri="http://localhost:8085/BComponent3"/> + </reference> + </component> + + <component name="AComponent4"> + <implementation.java class="org.apache.tuscany.sca.vtest.wsbinding.wsdlelement.port.impl.AServiceImpl"/> + <reference name="b1" target="BComponent4/BService"> + <interface.java interface="org.apache.tuscany.sca.vtest.wsbinding.wsdlelement.port.BService"/> + <binding.ws wsdlElement="http://vtest.wsbinding.wsdlelement.port.bservice#wsdl.port(BService/BService3SOAP12)" uri="http://localhost:8085/BComponent4"/> + </reference> + </component> + + <component name="DComponent1"> + <implementation.java class="org.apache.tuscany.sca.vtest.wsbinding.wsdlelement.port.impl.DServiceImpl"/> + <reference name="b1" target="BComponent1/BService"> + <interface.java interface="org.apache.tuscany.sca.vtest.wsbinding.wsdlelement.port.BService"/> + <binding.ws wsdlElement="http://vtest.wsbinding.wsdlelement.port.bservice#wsdl.port(BService/BService1SOAP)" uri="http://localhost:8085/BComponent1"/> + </reference> + <reference name="c1" target="CComponent/CService"> + <interface.java interface="org.apache.tuscany.sca.vtest.wsbinding.wsdlelement.port.CService"/> + <binding.ws wsdlElement="http://vtest.wsbinding.wsdlelement.port.cservice#wsdl.port(CService/CServiceSOAP)" uri="http://localhost:8085/CComponent"/> + </reference> + </component> + +</composite> diff --git a/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/test/java/org/apache/tuscany/sca/vtest/wsbinding/wsdlelement/port/WsdlElementPortTestCase.java b/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/test/java/org/apache/tuscany/sca/vtest/wsbinding/wsdlelement/port/WsdlElementPortTestCase.java new file mode 100644 index 0000000000..0db579002b --- /dev/null +++ b/tags/java/sca/1.5/vtest/wsbinding/wsdlelement/port/src/test/java/org/apache/tuscany/sca/vtest/wsbinding/wsdlelement/port/WsdlElementPortTestCase.java @@ -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.sca.vtest.wsbinding.wsdlelement.port; + +import static org.junit.Assert.fail; +import junit.framework.Assert; + +import org.apache.tuscany.sca.vtest.utilities.ServiceFinder; +import org.apache.tuscany.sca.vtest.wsbinding.wsdlelement.port.AService; +import org.apache.tuscany.sca.vtest.wsbinding.wsdlelement.port.DService; +import org.junit.AfterClass; +import org.junit.BeforeClass; +import org.junit.Test; + +/** + * Tests the simplest form of the binding element wsdl.port with WSDL + * document described in section section 2.1 of SCA Web Services Binding + * V1.00<br> + */ +public class WsdlElementPortTestCase { + + protected static ServiceFinder serviceFinder; + protected static String compositeName = "wsdlelement.port.composite"; + protected static AService a1; + protected static AService a2; + protected static AService a3; + protected static AService a4; + protected static DService d; + + @BeforeClass + public static void init() throws Exception { + try { + System.out.println("Setting up"); + ServiceFinder.init(compositeName); + a1 = ServiceFinder.getService(AService.class, "AComponent1"); + a2 = ServiceFinder.getService(AService.class, "AComponent2"); + a3 = ServiceFinder.getService(AService.class, "AComponent3"); + a4 = ServiceFinder.getService(AService.class, "AComponent4"); + d = ServiceFinder.getService(DService.class, "DComponent1"); + } catch (Exception ex) { + ex.printStackTrace(); + } + } + + /** + * Lines 42-45:<br> + * Port (WSDL 1.1):<br> + * <WSDL-namespace-URI>#wsdl.port(<service-name>/<port-name>) + * In this case, the identified port in the WSDL 1.1 Service must have an + * equivalent PortType with the SCA service or reference.<br> + * <br> + * Test wsdl.port(BService/BService1SOAP)<br> + */ + @Test + public void testWsdlElementPort1() throws Exception { + String aName = a1.getName(); + String b1Str1 = a1.getB1String("string1"); + String b1Str2 = a1.getB1String2("string2", "string3"); + int b1Int = a1.getB1Int(1000); + + System.out.println(aName + ": " + b1Str1 + ", " + b1Str2 + ", " + b1Int); + Assert.assertEquals("AService", aName); + Assert.assertEquals("string1", b1Str1); + Assert.assertEquals("string2string3", b1Str2); + Assert.assertEquals(1000, b1Int); + } + + /** + * Lines 42-45:<br> + * Port (WSDL 1.1):<br> + * <br> + * Tests wsdl.port(BService/BService2SOAP) with BService where the port + * does not define getString2, so exceptions are expected.<br> + */ + @Test + public void testWsdlElementPort2() throws Exception { + String aName = a2.getName(); + System.out.println(aName + ": "); + try { + a2.getB1String("string1"); + fail("Should not be able to call getString"); + } catch (Exception e) { + System.out.println(" Exception is expected: " + e.toString()); + } + try { + a2.getB1String2("string2", "string3"); + fail("Should not be able to call getString2"); + } catch (Exception e) { + System.out.println(" Exception is expected: " + e.toString()); + } + try { + a2.getB1Int(2000); + fail("Should not be able to call getInt"); + } catch (Exception e) { + System.out.println(" Exception is expected: " + e.toString()); + } + } + + /** + * Lines 42-45:<br> + * Port (WSDL 1.1):<br> + * <br> + * Tests wsdl.port(BService/BService2SOAP) with BService2<br> + */ + @Test + public void testWsdlElementPort3() throws Exception { + String aName = a3.getName(); + String b2Str1 = a3.getB2String("string1"); + int b2Int = a3.getB2Int(1000); + + System.out.println(aName + ": " + b2Str1 + ", " + b2Int); + Assert.assertEquals("AService", aName); + Assert.assertEquals("string1", b2Str1); + Assert.assertEquals(1000, b2Int); + } + + /** + * Lines 42-45:<br> + * Port (WSDL 1.1):<br> + * <br> += * Tests two references using wsdl.port.<br> + */ + @Test + public void testWsdlElementPort4() throws Exception { + String dName = d.getName(); + String b1Str1 = d.getB1String("string1"); + String b1Str2 = d.getB1String2("string2", "string3"); + String c1Str1 = d.getC1String("string5"); + String c1Str2 = d.getC1String2("string6", "string7"); + + int b1Int = d.getB1Int(4000); + float c1Float = d.getC1Float((float) 8.8); + + Integer c1Integer = d.getC1Integer(new Integer(9000)); + + System.out.println(dName + ": " + b1Str1 + ", " + b1Str2 + ", " + b1Int + ", " + c1Str1 + ", " + c1Str2 + ", " + c1Float + ", " + c1Integer); + Assert.assertEquals("DService", dName); + Assert.assertEquals("string1", b1Str1); + Assert.assertEquals("string2string3", b1Str2); + Assert.assertEquals(4000, b1Int); + Assert.assertEquals("string5", c1Str1); + Assert.assertEquals("string6string7", c1Str2); + Assert.assertEquals((float) 8.8, c1Float); + Assert.assertEquals(new Integer(9000), c1Integer); + } + + /** + * Lines 42-45:<br> + * Port (WSDL 1.1):<br> + * <br> += * Tests wsdl.port(BService/BService3SOAP12) which uses SOAP 1.2<br> + */ + @Test + public void testWsdlElementPort5() throws Exception { + String aName = a4.getName(); + String b1Str1 = a4.getB1String("string1"); + String b1Str2 = a4.getB1String2("string2", "string3"); + int b1Int = a4.getB1Int(5000); + + System.out.println(aName + ": " + b1Str1 + ", " + b1Str2 + ", " + b1Int); + Assert.assertEquals("AService", aName); + Assert.assertEquals("string1", b1Str1); + Assert.assertEquals("string2string3", b1Str2); + Assert.assertEquals(5000, b1Int); + } + + @AfterClass + public static void destroy() throws Exception { + System.out.println("Cleaning up"); + ServiceFinder.cleanup(); + } +} |