diff options
author | lresende <lresende@13f79535-47bb-0310-9956-ffa450edef68> | 2009-11-11 23:13:31 +0000 |
---|---|---|
committer | lresende <lresende@13f79535-47bb-0310-9956-ffa450edef68> | 2009-11-11 23:13:31 +0000 |
commit | 3caf8614f25d6b1962e20331fdf423c863bc02f3 (patch) | |
tree | 069fa30b63dd4804846385d8571928bdaa7b73ad /sca-java-1.x/branches/sca-java-integration/testing/sca | |
parent | 6d0e93c68d3aeaeb4bb6d96ac0460eec40ef786e (diff) |
Moving 1.x branches
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@835144 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'sca-java-1.x/branches/sca-java-integration/testing/sca')
602 files changed, 48355 insertions, 0 deletions
diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/pom.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/pom.xml new file mode 100644 index 0000000000..f6de7e91de --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/pom.xml @@ -0,0 +1,52 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * Copyright (c) 2005-2006 The Apache Software Foundation or its licensors, as applicable. + * + * Licensed 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> + <parent> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>tuscany-testing-sca-interop</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + </parent> + + <modelVersion>4.0.0</modelVersion> + <artifactId>tuscany-interop-clients</artifactId> + <packaging>pom</packaging> + <name>Tuscany Interop Testing - Clients</name> + + <modules> + <module>webserviceInteropDoc</module> + <module>webserviceSOAPRound2</module> + <module>webserviceXSQ</module> + </modules> + + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-surefire-plugin</artifactId> + <version>2.3</version> + <configuration> + <includes> + <include>**/*TestCase.java</include> + </includes> + <reportFormat>brief</reportFormat> + <useFile>false</useFile> + </configuration> + </plugin> + </plugins> + </build> + +</project> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/LICENSE.txt b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/LICENSE.txt new file mode 100644 index 0000000000..0084319535 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/LICENSE.txt @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, serviceDefinition marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed 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. diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/NOTICE.txt b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/NOTICE.txt new file mode 100644 index 0000000000..d83ebbe236 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/NOTICE.txt @@ -0,0 +1,14 @@ +${pom.name} +Copyright (c) 2005 - 2006 The Apache Software Foundation + +Apache Tuscany is an effort undergoing incubation at The Apache Software +Foundation (ASF), sponsored by the Apache Web Services PMC. Incubation is +required of all newly accepted projects until a further review indicates that +the infrastructure, communications, and decision making process have stabilized +in a manner consistent with other successful ASF projects. While incubation +status is not necessarily a reflection of the completeness or stability of the +code, it does indicate that the project has yet to be fully endorsed by the ASF. + +This product includes software developed by +The Apache Software Foundation (http://www.apache.org/). + diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/pom.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/pom.xml new file mode 100644 index 0000000000..7cf88d1c51 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/pom.xml @@ -0,0 +1,77 @@ +<?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> + <parent> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>tuscany-interop-clients</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + </parent> + + <modelVersion>4.0.0</modelVersion> + <artifactId>interop-client-webserviceInteropDoc</artifactId> + <packaging>jar</packaging> + <name>Tuscany Interop Testing - Clients - InteropDoc</name> + + <properties> + <ws.type>axis2</ws.type> + </properties> + + + <build> + <plugins> + <plugin> + <groupId>org.apache.tuscany.sdo</groupId> + <artifactId>tuscany-sdo-plugin</artifactId> + <version>${sdo.version}</version> + <executions> + <execution> + <configuration> + <schemaFile>${basedir}/src/main/resources/wsdl/interopdoc.wsdl</schemaFile> + <noNotification>true</noNotification> + <noContainer>true</noContainer> + <noInterfaces>true</noInterfaces> + <noUnsettable>true</noUnsettable> + </configuration> + <goals> + <goal>generate</goal> + </goals> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.apache.tuscany.sca.extensions.axis2.plugins</groupId> + <artifactId>tuscany-plugin-wsdl2java</artifactId> + <version>${sca.version}</version> + <executions> + <execution> + <configuration> + <wsdlFile>${basedir}/src/main/resources/wsdl/interopdoc.wsdl</wsdlFile> + <javaPackage>org.soapinterop</javaPackage> + </configuration> + <goals> + <goal>generate</goal> + </goals> + </execution> + </executions> + </plugin> + + </plugins> + </build> +</project> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/src/main/java/org/apache/tuscany/test/interop/client/LoopbackInteropDocServiceComponentImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/src/main/java/org/apache/tuscany/test/interop/client/LoopbackInteropDocServiceComponentImpl.java new file mode 100644 index 0000000000..1b3a6a6c1d --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/src/main/java/org/apache/tuscany/test/interop/client/LoopbackInteropDocServiceComponentImpl.java @@ -0,0 +1,49 @@ +/* + * 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.test.interop.client; + +import java.rmi.RemoteException; + +import org.osoa.sca.annotations.Scope; +import org.osoa.sca.annotations.Service; +import org.soapinterop.ComplexDocument; +import org.soapinterop.DocTestPortType; +import org.soapinterop.SimpleDocument1; +import org.soapinterop.SingleTag; + +/** + * This class implements the DocTest service component. + */ +@Service(DocTestPortType.class) +//FIXME workaround for JIRA TUSCANY-41 +@Scope("COMPOSITE") +public class LoopbackInteropDocServiceComponentImpl implements DocTestPortType { + + public ComplexDocument ComplexDocument(ComplexDocument param0) throws RemoteException { + return param0; + } + + public SimpleDocument1 SimpleDocument(SimpleDocument1 param4) throws RemoteException { + return param4; + } + + public SingleTag SingleTag(SingleTag param2) throws RemoteException { + return param2; + } +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/src/main/resources/META-INF/LICENSE.txt b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/src/main/resources/META-INF/LICENSE.txt new file mode 100644 index 0000000000..25d78feeac --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/src/main/resources/META-INF/LICENSE.txt @@ -0,0 +1,1277 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed 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. + + +APACHE TUSCANY SUBCOMPONENTS: + +The Apache Tuscany distribution includes a number of subcomponents with +separate copyright notices and license terms. Your use of the source +code for the these subcomponents is subject to the terms and +conditions of the following licenses. + +=============================================================================== + +For the Eclipse Modeling Framework component and the Celtix binding: + +Eclipse Public License - v 1.0 + +THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE +PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF +THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT. + +1. DEFINITIONS + +"Contribution" means: + +a) in the case of the initial Contributor, the initial code and +documentation distributed under this Agreement, and +b) in the case of each subsequent Contributor: + +i) changes to the Program, and + +ii) additions to the Program; + +where such changes and/or additions to the Program originate from and +are distributed by that particular Contributor. A Contribution +'originates' from a Contributor if it was added to the Program by such +Contributor itself or anyone acting on such Contributor's behalf. +Contributions do not include additions to the Program which: (i) are +separate modules of software distributed in conjunction with the +Program under their own license agreement, and (ii) are not derivative +works of the Program. + +"Contributor" means any person or entity that distributes the Program. + +"Licensed Patents " mean patent claims licensable by a Contributor +which are necessarily infringed by the use or sale of its Contribution +alone or when combined with the Program. + +"Program" means the Contributions distributed in accordance with this +Agreement. + +"Recipient" means anyone who receives the Program under this +Agreement, including all Contributors. + +2. GRANT OF RIGHTS + +a) Subject to the terms of this Agreement, each Contributor hereby +grants Recipient a non-exclusive, worldwide, royalty-free copyright +license to reproduce, prepare derivative works of, publicly display, +publicly perform, distribute and sublicense the Contribution of such +Contributor, if any, and such derivative works, in source code and +object code form. + +b) Subject to the terms of this Agreement, each Contributor hereby +grants Recipient a non-exclusive, worldwide, royalty-free patent +license under Licensed Patents to make, use, sell, offer to sell, +import and otherwise transfer the Contribution of such Contributor, if +any, in source code and object code form. This patent license shall +apply to the combination of the Contribution and the Program if, at +the time the Contribution is added by the Contributor, such addition +of the Contribution causes such combination to be covered by the +Licensed Patents. The patent license shall not apply to any other +combinations which include the Contribution. No hardware per se is +licensed hereunder. + +c) Recipient understands that although each Contributor grants the +licenses to its Contributions set forth herein, no assurances are +provided by any Contributor that the Program does not infringe the +patent or other intellectual property rights of any other entity. Each +Contributor disclaims any liability to Recipient for claims brought by +any other entity based on infringement of intellectual property rights +or otherwise. As a condition to exercising the rights and licenses +granted hereunder, each Recipient hereby assumes sole responsibility +to secure any other intellectual property rights needed, if any. For +example, if a third party patent license is required to allow +Recipient to distribute the Program, it is Recipient's responsibility +to acquire that license before distributing the Program. + +d) Each Contributor represents that to its knowledge it has sufficient +copyright rights in its Contribution, if any, to grant the copyright +license set forth in this Agreement. + +3. REQUIREMENTS + +A Contributor may choose to distribute the Program in object code form +under its own license agreement, provided that: + +a) it complies with the terms and conditions of this Agreement; and + +b) its license agreement: + +i) effectively disclaims on behalf of all Contributors all warranties +and conditions, express and implied, including warranties or +conditions of title and non-infringement, and implied warranties or +conditions of merchantability and fitness for a particular purpose; + +ii) effectively excludes on behalf of all Contributors all liability +for damages, including direct, indirect, special, incidental and +consequential damages, such as lost profits; + +iii) states that any provisions which differ from this Agreement are +offered by that Contributor alone and not by any other party; and + +iv) states that source code for the Program is available from such +Contributor, and informs licensees how to obtain it in a reasonable +manner on or through a medium customarily used for software exchange. + +When the Program is made available in source code form: + +a) it must be made available under this Agreement; and + +b) a copy of this Agreement must be included with each copy of the +Program. + +Contributors may not remove or alter any copyright notices contained +within the Program. + +Each Contributor must identify itself as the originator of its +Contribution, if any, in a manner that reasonably allows subsequent +Recipients to identify the originator of the Contribution. + +4. COMMERCIAL DISTRIBUTION + +Commercial distributors of software may accept certain +responsibilities with respect to end users, business partners and the +like. While this license is intended to facilitate the commercial use +of the Program, the Contributor who includes the Program in a +commercial product offering should do so in a manner which does not +create potential liability for other Contributors. Therefore, if a +Contributor includes the Program in a commercial product offering, +such Contributor ("Commercial Contributor") hereby agrees to defend +and indemnify every other Contributor ("Indemnified Contributor") +against any losses, damages and costs (collectively "Losses") arising +from claims, lawsuits and other legal actions brought by a third party +against the Indemnified Contributor to the extent caused by the acts +or omissions of such Commercial Contributor in connection with its +distribution of the Program in a commercial product offering. The +obligations in this section do not apply to any claims or Losses +relating to any actual or alleged intellectual property infringement. +In order to qualify, an Indemnified Contributor must: a) promptly +notify the Commercial Contributor in writing of such claim, and b) +allow the Commercial Contributor to control, and cooperate with the +Commercial Contributor in, the defense and any related settlement +negotiations. The Indemnified Contributor may participate in any such +claim at its own expense. + +For example, a Contributor might include the Program in a commercial +product offering, Product X. That Contributor is then a Commercial +Contributor. If that Commercial Contributor then makes performance +claims, or offers warranties related to Product X, those performance +claims and warranties are such Commercial Contributor's responsibility +alone. Under this section, the Commercial Contributor would have to +defend claims against the other Contributors related to those +performance claims and warranties, and if a court requires any other +Contributor to pay any damages as a result, the Commercial Contributor +must pay those damages. + +5. NO WARRANTY + +EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS +PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY +WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY +OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely +responsible for determining the appropriateness of using and +distributing the Program and assumes all risks associated with its +exercise of rights under this Agreement , including but not limited to +the risks and costs of program errors, compliance with applicable +laws, damage to or loss of data, programs or equipment, and +unavailability or interruption of operations. + +6. DISCLAIMER OF LIABILITY + +EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR +ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, +INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING +WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR +DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED +HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. + +7. GENERAL + +If any provision of this Agreement is invalid or unenforceable under +applicable law, it shall not affect the validity or enforceability of +the remainder of the terms of this Agreement, and without further +action by the parties hereto, such provision shall be reformed to the +minimum extent necessary to make such provision valid and enforceable. + +If Recipient institutes patent litigation against any entity +(including a cross-claim or counterclaim in a lawsuit) alleging that +the Program itself (excluding combinations of the Program with other +software or hardware) infringes such Recipient's patent(s), then such +Recipient's rights granted under Section 2(b) shall terminate as of +the date such litigation is filed. + +All Recipient's rights under this Agreement shall terminate if it +fails to comply with any of the material terms or conditions of this +Agreement and does not cure such failure in a reasonable period of +time after becoming aware of such noncompliance. If all Recipient's +rights under this Agreement terminate, Recipient agrees to cease use +and distribution of the Program as soon as reasonably practicable. +However, Recipient's obligations under this Agreement and any licenses +granted by Recipient relating to the Program shall continue and +survive. + +Everyone is permitted to copy and distribute copies of this Agreement, +but in order to avoid inconsistency the Agreement is copyrighted and +may only be modified in the following manner. The Agreement Steward +reserves the right to publish new versions (including revisions) of +this Agreement from time to time. No one other than the Agreement +Steward has the right to modify this Agreement. The Eclipse Foundation +is the initial Agreement Steward. The Eclipse Foundation may assign +the responsibility to serve as the Agreement Steward to a suitable +separate entity. Each new version of the Agreement will be given a +distinguishing version number. The Program (including Contributions) +may always be distributed subject to the version of the Agreement +under which it was received. In addition, after a new version of the +Agreement is published, Contributor may elect to distribute the +Program (including its Contributions) under the new version. Except as +expressly stated in Sections 2(a) and 2(b) above, Recipient receives +no rights or licenses to the intellectual property of any Contributor +under this Agreement, whether expressly, by implication, estoppel or +otherwise. All rights in the Program not expressly granted under this +Agreement are reserved. + +This Agreement is governed by the laws of the State of New York and +the intellectual property laws of the United States of America. No +party to this Agreement will bring a legal action under this Agreement +more than one year after the cause of action arose. Each party waives +its rights to a jury trial in any resulting litigation. + +=============================================================================== + +For the Rhino JavaScript container component: + +Mozilla Public License 1.1 (MPL 1.1) + +1. Definitions. + + 1.0.1. "Commercial Use" means distribution or otherwise making the +Covered Code available to a third party. + + 1.1. "Contributor" means each entity that creates or contributes to +the creation of Modifications. + + 1.2. "Contributor Version" means the combination of the Original Code, +prior Modifications used by a Contributor, and the Modifications made by that +particular Contributor. + + 1.3. "Covered Code" means the Original Code or Modifications or the +combination of the Original Code and Modifications, in each case including +portions thereof. + + 1.4. "Electronic Distribution Mechanism" means a mechanism generally +accepted in the software development community for the electronic transfer of +data. + + 1.5. "Executable" means Covered Code in any form other than Source +Code. + + 1.6. "Initial Developer" means the individual or entity identified as +the Initial Developer in the Source Code notice required by Exhibit A. + + 1.7. "Larger Work" means a work which combines Covered Code or +portions thereof with code not governed by the terms of this License. + + 1.8. "License" means this document. + + 1.8.1. "Licensable" means having the right to grant, to the maximum +extent possible, whether at the time of the initial grant or subsequently +acquired, any and all of the rights conveyed herein. + + 1.9. "Modifications" means any addition to or deletion from the +substance or structure of either the Original Code or any previous +Modifications. When Covered Code is released as a series of files, a +Modification is: + A. Any addition to or deletion from the contents of a file +containing Original Code or previous Modifications. + + B. Any new file that contains any part of the Original Code or +previous Modifications. + + 1.10. "Original Code" means Source Code of computer software code +which is described in the Source Code notice required by Exhibit A as Original +Code, and which, at the time of its release under this License is not already +Covered Code governed by this License. + + 1.10.1. "Patent Claims" means any patent claim(s), now owned or +hereafter acquired, including without limitation, method, process, and +apparatus claims, in any patent Licensable by grantor. + + 1.11. "Source Code" means the preferred form of the Covered Code for +making modifications to it, including all modules it contains, plus any +associated interface definition files, scripts used to control compilation and +installation of an Executable, or source code differential comparisons against +either the Original Code or another well known, available Covered Code of the +Contributor's choice. The Source Code can be in a compressed or archival form, +provided the appropriate decompression or de-archiving software is widely +available for no charge. + + 1.12. "You" (or "Your") means an individual or a legal entity +exercising rights under, and complying with all of the terms of, this License +or a future version of this License issued under Section 6.1. For legal +entities, "You" includes any entity which controls, is controlled by, or is +under common control with You. For purposes of this definition, "control" +means (a) the power, direct or indirect, to cause the direction or management +of such entity, whether by contract or otherwise, or (b) ownership of more +than fifty percent (50%) of the outstanding shares or beneficial ownership of +such entity. + +2. Source Code License. + + 2.1. The Initial Developer Grant. + The Initial Developer hereby grants You a world-wide, royalty-free, +non-exclusive license, subject to third party intellectual property claims: + (a) under intellectual property rights (other than patent or +trademark) Licensable by Initial Developer to use, reproduce, modify, display, +perform, sublicense and distribute the Original Code (or portions thereof) +with or without Modifications, and/or as part of a Larger Work; and + + (b) under Patents Claims infringed by the making, using or selling +of Original Code, to make, have made, use, practice, sell, and offer for sale, +and/or otherwise dispose of the Original Code (or portions thereof). + (c) the licenses granted in this Section 2.1(a) and +(b) are effective on the date Initial Developer first distributes Original +Code under the terms of this License. + + (d) Notwithstanding Section 2.1(b) above, no patent license is +granted: 1) for code that You delete from the Original Code; 2) separate from +the Original Code; or 3) for infringements caused by: i) the modification of +the Original Code or ii) the combination of the Original Code with other +software or devices. + + 2.2. Contributor Grant. + Subject to third party intellectual property claims, each Contributor +hereby grants You a world-wide, royalty-free, non-exclusive license + + (a) under intellectual property rights (other than patent or +trademark) Licensable by Contributor, to use, reproduce, modify, display, +perform, sublicense and distribute the Modifications created by such +Contributor (or portions thereof) either on an unmodified basis, with other +Modifications, as Covered Code and/or as part of a Larger Work; and + + (b) under Patent Claims infringed by the making, using, or selling +of Modifications made by that Contributor either alone and/or in combination +with its Contributor Version (or portions of such combination), to make, use, +sell, offer for sale, have made, and/or otherwise dispose of: 1) Modifications +made by that Contributor (or portions thereof); and 2) the combination of +Modifications made by that Contributor with its Contributor Version (or +portions of such combination). + + (c) the licenses granted in Sections 2.2(a) and 2.2(b) are +effective on the date Contributor first makes Commercial Use of the Covered +Code. + + (d) Notwithstanding Section 2.2(b) above, no patent license is +granted: 1) for any code that Contributor has deleted from the Contributor +Version; 2) separate from the Contributor Version; 3) for infringements +caused by: i) third party modifications of Contributor Version or ii) the +combination of Modifications made by that Contributor with other software +(except as part of the Contributor Version) or other devices; or 4) under +Patent Claims infringed by Covered Code in the absence of Modifications made +by that Contributor. + + +3. Distribution Obligations. + + 3.1. Application of License. + The Modifications which You create or to which You contribute are +governed by the terms of this License, including without limitation Section +2.2. The Source Code version of Covered Code may be distributed only under the +terms of this License or a future version of this License released under +Section 6.1, and You must include a copy of this License with every copy of +the Source Code You distribute. You may not offer or impose any terms on any +Source Code version that alters or restricts the applicable version of this +License or the recipients' rights hereunder. However, You may include an +additional document offering the additional rights described in Section 3.5. + + 3.2. Availability of Source Code. + Any Modification which You create or to which You contribute must be +made available in Source Code form under the terms of this License either on +the same media as an Executable version or via an accepted Electronic +Distribution Mechanism to anyone to whom you made an Executable version +available; and if made available via Electronic Distribution Mechanism, must +remain available for at least twelve (12) months after the date it initially +became available, or at least six (6) months after a subsequent version of +that particular Modification has been made available to such recipients. You +are responsible for ensuring that the Source Code version remains available +even if the Electronic Distribution Mechanism is maintained by a third party. + + 3.3. Description of Modifications. + You must cause all Covered Code to which You contribute to contain a +file documenting the changes You made to create that Covered Code and the date +of any change. You must include a prominent statement that the Modification is +derived, directly or indirectly, from Original Code provided by the Initial +Developer and including the name of the Initial Developer in (a) the Source +Code, and (b) in any notice in an Executable version or related documentation +in which You describe the origin or ownership of the Covered Code. + + 3.4. Intellectual Property Matters + (a) Third Party Claims. + If Contributor has knowledge that a license under a third party's +intellectual property rights is required to exercise the rights granted by +such Contributor under Sections 2.1 or 2.2, Contributor must include a text +file with the Source Code distribution titled "LEGAL" which describes the +claim and the party making the claim in sufficient detail that a recipient +will know whom to contact. If Contributor obtains such knowledge after the +Modification is made available as described in Section 3.2, Contributor shall +promptly modify the LEGAL file in all copies Contributor makes available +thereafter and shall take other steps (such as notifying appropriate mailing +lists or newsgroups) reasonably calculated to inform those who received the +Covered Code that new knowledge has been obtained. + + (b) Contributor APIs. + If Contributor's Modifications include an application programming +interface and Contributor has knowledge of patent licenses which are +reasonably necessary to implement that API, Contributor must also include this +information in the LEGAL file. + + (c) Representations. + Contributor represents that, except as disclosed pursuant to +Section 3.4(a) above, Contributor believes that Contributor's Modifications +are Contributor's original creation(s) and/or Contributor has sufficient +rights to grant the rights conveyed by this License. + + + 3.5. Required Notices. + You must duplicate the notice in Exhibit A in each file of the Source +Code. If it is not possible to put such notice in a particular Source Code +file due to its structure, then You must include such notice in a location +(such as a relevant directory) where a user would be likely to look for such a +notice. If You created one or more Modification(s) You may add your name as a +Contributor to the notice described in Exhibit A. You must also duplicate +this License in any documentation for the Source Code where You describe +recipients' rights or ownership rights relating to Covered Code. You may +choose to offer, and to charge a fee for, warranty, support, indemnity or +liability obligations to one or more recipients of Covered Code. However, You +may do so only on Your own behalf, and not on behalf of the Initial Developer +or any Contributor. You must make it absolutely clear than any such warranty, +support, indemnity or liability obligation is offered by You alone, and You +hereby agree to indemnify the Initial Developer and every Contributor for any +liability incurred by the Initial Developer or such Contributor as a result of +warranty, support, indemnity or liability terms You offer. + + 3.6. Distribution of Executable Versions. + You may distribute Covered Code in Executable form only if the +requirements of Section 3.1-3.5 have been met for that Covered Code, and if +You include a notice stating that the Source Code version of the Covered Code +is available under the terms of this License, including a description of how +and where You have fulfilled the obligations of Section 3.2. The notice must +be conspicuously included in any notice in an Executable version, related +documentation or collateral in which You describe recipients' rights relating +to the Covered Code. You may distribute the Executable version of Covered Code +or ownership rights under a license of Your choice, which may contain terms +different from this License, provided that You are in compliance with the +terms of this License and that the license for the Executable version does not +attempt to limit or alter the recipient's rights in the Source Code version +from the rights set forth in this License. If You distribute the Executable +version under a different license You must make it absolutely clear that any +terms which differ from this License are offered by You alone, not by the +Initial Developer or any Contributor. You hereby agree to indemnify the +Initial Developer and every Contributor for any liability incurred by the +Initial Developer or such Contributor as a result of any such terms You offer. + + 3.7. Larger Works. + You may create a Larger Work by combining Covered Code with other code +not governed by the terms of this License and distribute the Larger Work as a +single product. In such a case, You must make sure the requirements of this +License are fulfilled for the Covered Code. + +4. Inability to Comply Due to Statute or Regulation. + + If it is impossible for You to comply with any of the terms of this +License with respect to some or all of the Covered Code due to statute, +judicial order, or regulation then You must: (a) comply with the terms of this +License to the maximum extent possible; and (b) describe the limitations and +the code they affect. Such description must be included in the LEGAL file +described in Section 3.4 and must be included with all distributions of the +Source Code. Except to the extent prohibited by statute or regulation, such +description must be sufficiently detailed for a recipient of ordinary skill to +be able to understand it. + +5. Application of this License. + + This License applies to code to which the Initial Developer has attached +the notice in Exhibit A and to related Covered Code. + +6. Versions of the License. + + 6.1. New Versions. + Netscape Communications Corporation ("Netscape") may publish revised +and/or new versions of the License from time to time. Each version will be +given a distinguishing version number. + + 6.2. Effect of New Versions. + Once Covered Code has been published under a particular version of the +License, You may always continue to use it under the terms of that version. +You may also choose to use such Covered Code under the terms of any subsequent +version of the License published by Netscape. No one other than Netscape has +the right to modify the terms applicable to Covered Code created under this +License. + + 6.3. Derivative Works. + If You create or use a modified version of this License (which you may +only do in order to apply it to code which is not already Covered Code +governed by this License), You must (a) rename Your license so that the +phrases "Mozilla", "MOZILLAPL", "MOZPL", "Netscape", "MPL", "NPL" or +any confusingly similar phrase do not appear in your license (except to note +that your license differs from this License) and (b) otherwise make it clear +that Your version of the license contains terms which differ from the Mozilla +Public License and Netscape Public License. (Filling in the name of the +Initial Developer, Original Code or Contributor in the notice described in +Exhibit A shall not of themselves be deemed to be modifications of this +License.) + +7. DISCLAIMER OF WARRANTY. + + COVERED CODE IS PROVIDED UNDER THIS LICENSE ON AN "AS IS" BASIS, +WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, WITHOUT +LIMITATION, WARRANTIES THAT THE COVERED CODE IS FREE OF DEFECTS, MERCHANTABLE, +FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING. THE ENTIRE RISK AS TO THE +QUALITY AND PERFORMANCE OF THE COVERED CODE IS WITH YOU. SHOULD ANY COVERED +CODE PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT THE INITIAL DEVELOPER OR ANY +OTHER CONTRIBUTOR) ASSUME THE COST OF ANY NECESSARY SERVICING, REPAIR OR +CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS +LICENSE. NO USE OF ANY COVERED CODE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS +DISCLAIMER. + +8. TERMINATION. + + 8.1. This License and the rights granted hereunder will terminate +automatically if You fail to comply with terms herein and fail to cure such +breach within 30 days of becoming aware of the breach. All sublicenses to the +Covered Code which are properly granted shall survive any termination of this +License. Provisions which, by their nature, must remain in effect beyond the +termination of this License shall survive. + + 8.2. If You initiate litigation by asserting a patent infringement +claim (excluding declatory judgment actions) against Initial Developer or a +Contributor (the Initial Developer or Contributor against whom You file such +action is referred to as "Participant") alleging that: + + (a) such Participant's Contributor Version directly or indirectly +infringes any patent, then any and all rights granted by such Participant to +You under Sections 2.1 and/or 2.2 of this License shall, upon 60 days notice +from Participant terminate prospectively, unless if within 60 days after +receipt of notice You either: (i) agree in writing to pay Participant a +mutually agreeable reasonable royalty for Your past and future use of +Modifications made by such Participant, or (ii) withdraw Your litigation claim +with respect to the Contributor Version against such Participant. If within +60 days of notice, a reasonable royalty and payment arrangement are not +mutually agreed upon in writing by the parties or the litigation claim is not +withdrawn, the rights granted by Participant to You under Sections 2.1 and/or +2.2 automatically terminate at the expiration of the 60 day notice period +specified above. + + (b) any software, hardware, or device, other than such Participant's +Contributor Version, directly or indirectly infringes any patent, then any +rights granted to You by such Participant under Sections 2.1(b) and 2.2(b) are +revoked effective as of the date You first made, used, sold, distributed, or +had made, Modifications made by that Participant. + + 8.3. If You assert a patent infringement claim against Participant +alleging that such Participant's Contributor Version directly or indirectly +infringes any patent where such claim is resolved (such as by license or +settlement) prior to the initiation of patent infringement litigation, then +the reasonable value of the licenses granted by such Participant under +Sections 2.1 or 2.2 shall be taken into account in determining the amount or +value of any payment or license. + + 8.4. In the event of termination under Sections 8.1 or 8.2 above, all +end user license agreements (excluding distributors and resellers) which have +been validly granted by You or any distributor hereunder prior to termination +shall survive termination. + +9. LIMITATION OF LIABILITY. + + UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT +(INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL YOU, THE INITIAL +DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF COVERED CODE, OR ANY +SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON FOR ANY INDIRECT, +SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING, +WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL, WORK STOPPAGE, COMPUTER +FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER COMMERCIAL DAMAGES OR LOSSES, +EVEN IF SUCH PARTY SHALL HAVE BEEN INFORMED OF THE POSSIBILITY OF SUCH +DAMAGES. THIS LIMITATION OF LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH +OR PERSONAL INJURY RESULTING FROM SUCH PARTY'S NEGLIGENCE TO THE EXTENT +APPLICABLE LAW PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO NOT ALLOW THE +EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO THIS +EXCLUSION AND LIMITATION MAY NOT APPLY TO YOU. + +10. U.S. GOVERNMENT END USERS. + + The Covered Code is a "commercial item," as that term is defined in 48 +C.F.R. 2.101 (Oct. 1995), consisting of "commercial computer software" and +"commercial computer software documentation," as such terms are used in 48 +C.F.R. 12.212 (Sept. 1995). Consistent with 48 C.F.R. 12.212 and 48 C.F.R. +227.7202-1 through 227.7202-4 (June 1995), all U.S. Government End Users +acquire Covered Code with only those rights set forth herein. + +11. MISCELLANEOUS. + + This License represents the complete agreement concerning subject matter +hereof. If any provision of this License is held to be unenforceable, such +provision shall be reformed only to the extent necessary to make it +enforceable. This License shall be governed by California law provisions +(except to the extent applicable law, if any, provides otherwise), excluding +its conflict-of-law provisions. With respect to disputes in which at least one +party is a citizen of, or an entity chartered or registered to do business in +the United States of America, any litigation relating to this License shall be +subject to the jurisdiction of the Federal Courts of the Northern District of +California, with venue lying in Santa Clara County, California, with the +losing party responsible for costs, including without limitation, court costs +and reasonable attorneys' fees and expenses. The application of the United +Nations Convention on Contracts for the International Sale of Goods is +expressly excluded. Any law or regulation which provides that the language of +a contract shall be construed against the drafter shall not apply to this +License. + +12. RESPONSIBILITY FOR CLAIMS. + + As between Initial Developer and the Contributors, each party is +responsible for claims and damages arising, directly or indirectly, out of its +utilization of rights under this License and You agree to work with Initial +Developer and Contributors to distribute such responsibility on an equitable +basis. Nothing herein is intended or shall be deemed to constitute any +admission of liability. + +13. MULTIPLE-LICENSED CODE. + + Initial Developer may designate portions of the Covered Code as +Multiple-Licensed. Multiple-Licensed means that the Initial Developer permits +you to utilize portions of the Covered Code under Your choice of the MPL or +the alternative licenses, if any, specified by the Initial Developer in the +file described in Exhibit A. + + +EXHIBIT A -Mozilla Public License. + + ``The contents of this file are subject to the Mozilla Public License +Version 1.1 (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.mozilla.org/MPL/ + + Software distributed under the License is distributed on an "AS IS" +basis, WITHOUT WARRANTY OF + ANY KIND, either express or implied. See the License for the specific +language governing rights and + limitations under the License. + + The Original Code is ______________________________________. + + The Initial Developer of the Original Code is ________________________. +Portions created by + ______________________ are Copyright (C) ______ +_______________________. All Rights + Reserved. + + Contributor(s): ______________________________________. + + Alternatively, the contents of this file may be used under the terms of +the _____ license (the [___] License), in which case the provisions of +[______] License are applicable instead of those above. If you wish to allow +use of your version of this file only under the terms of the [____] License +and not to allow others to use your version of this file under the MPL, +indicate your decision by deleting the provisions above and replace them +with the notice and other provisions required by the [___] License. If you do +not delete the provisions above, a recipient may use your version of this file +under either the MPL or the [___] License." + + [NOTE: The text of this Exhibit A may differ slightly from the text of +the notices in the Source Code files of the Original Code. You should use the +text of this Exhibit A rather than the text found in the Original Code Source +Code for Your Modifications.] + + +=============================================================================== + +For the JAX-WS Reference Implementation component: + +COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.0 + + + 1. Definitions. + + 1.1. "Contributor" means each individual or entity that + creates or contributes to the creation of Modifications. + + 1.2. "Contributor Version" means the combination of the + Original Software, prior Modifications used by a + Contributor (if any), and the Modifications made by that + particular Contributor. + + 1.3. "Covered Software" means (a) the Original Software, or + (b) Modifications, or (c) the combination of files + containing Original Software with files containing + Modifications, in each case including portions thereof. + + 1.4. "Executable" means the Covered Software in any form + other than Source Code. + + 1.5. "Initial Developer" means the individual or entity + that first makes Original Software available under this + License. + + 1.6. "Larger Work" means a work which combines Covered + Software or portions thereof with code not governed by the + terms of this License. + + 1.7. "License" means this document. + + 1.8. "Licensable" means having the right to grant, to the + maximum extent possible, whether at the time of the initial + grant or subsequently acquired, any and all of the rights + conveyed herein. + + 1.9. "Modifications" means the Source Code and Executable + form of any of the following: + + A. Any file that results from an addition to, + deletion from or modification of the contents of a + file containing Original Software or previous + Modifications; + + B. Any new file that contains any part of the + Original Software or previous Modification; or + + C. Any new file that is contributed or otherwise made + available under the terms of this License. + + 1.10. "Original Software" means the Source Code and + Executable form of computer software code that is + originally released under this License. + + 1.11. "Patent Claims" means any patent claim(s), now owned + or hereafter acquired, including without limitation, + method, process, and apparatus claims, in any patent + Licensable by grantor. + + 1.12. "Source Code" means (a) the common form of computer + software code in which modifications are made and (b) + associated documentation included in or with such code. + + 1.13. "You" (or "Your") means an individual or a legal + entity exercising rights under, and complying with all of + the terms of, this License. For legal entities, "You" + includes any entity which controls, is controlled by, or is + under common control with You. For purposes of this + definition, "control" means (a) the power, direct or + indirect, to cause the direction or management of such + entity, whether by contract or otherwise, or (b) ownership + of more than fifty percent (50%) of the outstanding shares + or beneficial ownership of such entity. + + 2. License Grants. + + 2.1. The Initial Developer Grant. + + Conditioned upon Your compliance with Section 3.1 below and + subject to third party intellectual property claims, the + Initial Developer hereby grants You a world-wide, + royalty-free, non-exclusive license: + + (a) under intellectual property rights (other than + patent or trademark) Licensable by Initial Developer, + to use, reproduce, modify, display, perform, + sublicense and distribute the Original Software (or + portions thereof), with or without Modifications, + and/or as part of a Larger Work; and + + (b) under Patent Claims infringed by the making, + using or selling of Original Software, to make, have + made, use, practice, sell, and offer for sale, and/or + otherwise dispose of the Original Software (or + portions thereof). + + (c) The licenses granted in Sections 2.1(a) and (b) + are effective on the date Initial Developer first + distributes or otherwise makes the Original Software + available to a third party under the terms of this + License. + + (d) Notwithstanding Section 2.1(b) above, no patent + license is granted: (1) for code that You delete from + the Original Software, or (2) for infringements + caused by: (i) the modification of the Original + Software, or (ii) the combination of the Original + Software with other software or devices. + + 2.2. Contributor Grant. + + Conditioned upon Your compliance with Section 3.1 below and + subject to third party intellectual property claims, each + Contributor hereby grants You a world-wide, royalty-free, + non-exclusive license: + + (a) under intellectual property rights (other than + patent or trademark) Licensable by Contributor to + use, reproduce, modify, display, perform, sublicense + and distribute the Modifications created by such + Contributor (or portions thereof), either on an + unmodified basis, with other Modifications, as + Covered Software and/or as part of a Larger Work; and + + + (b) under Patent Claims infringed by the making, + using, or selling of Modifications made by that + Contributor either alone and/or in combination with + its Contributor Version (or portions of such + combination), to make, use, sell, offer for sale, + have made, and/or otherwise dispose of: (1) + Modifications made by that Contributor (or portions + thereof); and (2) the combination of Modifications + made by that Contributor with its Contributor Version + (or portions of such combination). + + (c) The licenses granted in Sections 2.2(a) and + 2.2(b) are effective on the date Contributor first + distributes or otherwise makes the Modifications + available to a third party. + + (d) Notwithstanding Section 2.2(b) above, no patent + license is granted: (1) for any code that Contributor + has deleted from the Contributor Version; (2) for + infringements caused by: (i) third party + modifications of Contributor Version, or (ii) the + combination of Modifications made by that Contributor + with other software (except as part of the + Contributor Version) or other devices; or (3) under + Patent Claims infringed by Covered Software in the + absence of Modifications made by that Contributor. + + 3. Distribution Obligations. + + 3.1. Availability of Source Code. + + Any Covered Software that You distribute or otherwise make + available in Executable form must also be made available in + Source Code form and that Source Code form must be + distributed only under the terms of this License. You must + include a copy of this License with every copy of the + Source Code form of the Covered Software You distribute or + otherwise make available. You must inform recipients of any + such Covered Software in Executable form as to how they can + obtain such Covered Software in Source Code form in a + reasonable manner on or through a medium customarily used + for software exchange. + + 3.2. Modifications. + + The Modifications that You create or to which You + contribute are governed by the terms of this License. You + represent that You believe Your Modifications are Your + original creation(s) and/or You have sufficient rights to + grant the rights conveyed by this License. + + 3.3. Required Notices. + + You must include a notice in each of Your Modifications + that identifies You as the Contributor of the Modification. + You may not remove or alter any copyright, patent or + trademark notices contained within the Covered Software, or + any notices of licensing or any descriptive text giving + attribution to any Contributor or the Initial Developer. + + 3.4. Application of Additional Terms. + + You may not offer or impose any terms on any Covered + Software in Source Code form that alters or restricts the + applicable version of this License or the recipients' + rights hereunder. You may choose to offer, and to charge a + fee for, warranty, support, indemnity or liability + obligations to one or more recipients of Covered Software. + However, you may do so only on Your own behalf, and not on + behalf of the Initial Developer or any Contributor. You + must make it absolutely clear that any such warranty, + support, indemnity or liability obligation is offered by + You alone, and You hereby agree to indemnify the Initial + Developer and every Contributor for any liability incurred + by the Initial Developer or such Contributor as a result of + warranty, support, indemnity or liability terms You offer. + + + 3.5. Distribution of Executable Versions. + + You may distribute the Executable form of the Covered + Software under the terms of this License or under the terms + of a license of Your choice, which may contain terms + different from this License, provided that You are in + compliance with the terms of this License and that the + license for the Executable form does not attempt to limit + or alter the recipient's rights in the Source Code form + from the rights set forth in this License. If You + distribute the Covered Software in Executable form under a + different license, You must make it absolutely clear that + any terms which differ from this License are offered by You + alone, not by the Initial Developer or Contributor. You + hereby agree to indemnify the Initial Developer and every + Contributor for any liability incurred by the Initial + Developer or such Contributor as a result of any such terms + You offer. + + 3.6. Larger Works. + + You may create a Larger Work by combining Covered Software + with other code not governed by the terms of this License + and distribute the Larger Work as a single product. In such + a case, You must make sure the requirements of this License + are fulfilled for the Covered Software. + + 4. Versions of the License. + + 4.1. New Versions. + + Sun Microsystems, Inc. is the initial license steward and + may publish revised and/or new versions of this License + from time to time. Each version will be given a + distinguishing version number. Except as provided in + Section 4.3, no one other than the license steward has the + right to modify this License. + + 4.2. Effect of New Versions. + + You may always continue to use, distribute or otherwise + make the Covered Software available under the terms of the + version of the License under which You originally received + the Covered Software. If the Initial Developer includes a + notice in the Original Software prohibiting it from being + distributed or otherwise made available under any + subsequent version of the License, You must distribute and + make the Covered Software available under the terms of the + version of the License under which You originally received + the Covered Software. Otherwise, You may also choose to + use, distribute or otherwise make the Covered Software + available under the terms of any subsequent version of the + License published by the license steward. + + 4.3. Modified Versions. + + When You are an Initial Developer and You want to create a + new license for Your Original Software, You may create and + use a modified version of this License if You: (a) rename + the license and remove any references to the name of the + license steward (except to note that the license differs + from this License); and (b) otherwise make it clear that + the license contains terms which differ from this License. + + + 5. DISCLAIMER OF WARRANTY. + + COVERED SOFTWARE IS PROVIDED UNDER THIS LICENSE ON AN "AS IS" + BASIS, WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, + INCLUDING, WITHOUT LIMITATION, WARRANTIES THAT THE COVERED + SOFTWARE IS FREE OF DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR + PURPOSE OR NON-INFRINGING. THE ENTIRE RISK AS TO THE QUALITY AND + PERFORMANCE OF THE COVERED SOFTWARE IS WITH YOU. SHOULD ANY + COVERED SOFTWARE PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT THE + INITIAL DEVELOPER OR ANY OTHER CONTRIBUTOR) ASSUME THE COST OF + ANY NECESSARY SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER OF + WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF + ANY COVERED SOFTWARE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS + DISCLAIMER. + + 6. TERMINATION. + + 6.1. This License and the rights granted hereunder will + terminate automatically if You fail to comply with terms + herein and fail to cure such breach within 30 days of + becoming aware of the breach. Provisions which, by their + nature, must remain in effect beyond the termination of + this License shall survive. + + 6.2. If You assert a patent infringement claim (excluding + declaratory judgment actions) against Initial Developer or + a Contributor (the Initial Developer or Contributor against + whom You assert such claim is referred to as "Participant") + alleging that the Participant Software (meaning the + Contributor Version where the Participant is a Contributor + or the Original Software where the Participant is the + Initial Developer) directly or indirectly infringes any + patent, then any and all rights granted directly or + indirectly to You by such Participant, the Initial + Developer (if the Initial Developer is not the Participant) + and all Contributors under Sections 2.1 and/or 2.2 of this + License shall, upon 60 days notice from Participant + terminate prospectively and automatically at the expiration + of such 60 day notice period, unless if within such 60 day + period You withdraw Your claim with respect to the + Participant Software against such Participant either + unilaterally or pursuant to a written agreement with + Participant. + + 6.3. In the event of termination under Sections 6.1 or 6.2 + above, all end user licenses that have been validly granted + by You or any distributor hereunder prior to termination + (excluding licenses granted to You by any distributor) + shall survive termination. + + 7. LIMITATION OF LIABILITY. + + UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT + (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL YOU, THE + INITIAL DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF + COVERED SOFTWARE, OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE + LIABLE TO ANY PERSON FOR ANY INDIRECT, SPECIAL, INCIDENTAL, OR + CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING, WITHOUT + LIMITATION, DAMAGES FOR LOST PROFITS, LOSS OF GOODWILL, WORK + STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER + COMMERCIAL DAMAGES OR LOSSES, EVEN IF SUCH PARTY SHALL HAVE BEEN + INFORMED OF THE POSSIBILITY OF SUCH DAMAGES. THIS LIMITATION OF + LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH OR PERSONAL + INJURY RESULTING FROM SUCH PARTY'S NEGLIGENCE TO THE EXTENT + APPLICABLE LAW PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO + NOT ALLOW THE EXCLUSION OR LIMITATION OF INCIDENTAL OR + CONSEQUENTIAL DAMAGES, SO THIS EXCLUSION AND LIMITATION MAY NOT + APPLY TO YOU. + + 8. U.S. GOVERNMENT END USERS. + + The Covered Software is a "commercial item," as that term is + defined in 48 C.F.R. 2.101 (Oct. 1995), consisting of "commercial + computer software" (as that term is defined at 48 C.F.R. + 252.227-7014(a)(1)) and "commercial computer software + documentation" as such terms are used in 48 C.F.R. 12.212 (Sept. + 1995). Consistent with 48 C.F.R. 12.212 and 48 C.F.R. 227.7202-1 + through 227.7202-4 (June 1995), all U.S. Government End Users + acquire Covered Software with only those rights set forth herein. + This U.S. Government Rights clause is in lieu of, and supersedes, + any other FAR, DFAR, or other clause or provision that addresses + Government rights in computer software under this License. + + 9. MISCELLANEOUS. + + This License represents the complete agreement concerning subject + matter hereof. If any provision of this License is held to be + unenforceable, such provision shall be reformed only to the + extent necessary to make it enforceable. This License shall be + governed by the law of the jurisdiction specified in a notice + contained within the Original Software (except to the extent + applicable law, if any, provides otherwise), excluding such + jurisdiction's conflict-of-law provisions. Any litigation + relating to this License shall be subject to the jurisdiction of + the courts located in the jurisdiction and venue specified in a + notice contained within the Original Software, with the losing + party responsible for costs, including, without limitation, court + costs and reasonable attorneys' fees and expenses. The + application of the United Nations Convention on Contracts for the + International Sale of Goods is expressly excluded. Any law or + regulation which provides that the language of a contract shall + be construed against the drafter shall not apply to this License. + You agree that You alone are responsible for compliance with the + United States export administration regulations (and the export + control laws and regulation of any other countries) when You use, + distribute or otherwise make available any Covered Software. + + 10. RESPONSIBILITY FOR CLAIMS. + + As between Initial Developer and the Contributors, each party is + responsible for claims and damages arising, directly or + indirectly, out of its utilization of rights under this License + and You agree to work with Initial Developer and Contributors to + distribute such responsibility on an equitable basis. Nothing + herein is intended or shall be deemed to constitute any admission + of liability. + diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/src/main/resources/META-INF/NOTICE b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/src/main/resources/META-INF/NOTICE new file mode 100644 index 0000000000..d48810c0ec --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/src/main/resources/META-INF/NOTICE @@ -0,0 +1,18 @@ +========================================================================= +== NOTICE file corresponding to the section 4 d of == +== the Apache License, Version 2.0, == +== in this case for the Apache Tuscany distribution. == +========================================================================= + +This product includes software developed by the Apache Software Foundation +(http://www.apache.org/). + +This product also includes software developed by: +- the Eclipse Modeling Framework project (http://www.eclipse.org/emf/) +- the Celtix project (http://celtix.objectweb.org/) +- the Mozilla Rhino project (http://www.mozilla.org/rhino/) +- the GlassFish JAX-WS project (https://jax-ws.dev.java.net/) + +Please read the LICENSE.txt file present in the root directory of this +distribution. + diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/src/main/resources/META-INF/README.txt b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/src/main/resources/META-INF/README.txt new file mode 100644 index 0000000000..9b26d1690a --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/src/main/resources/META-INF/README.txt @@ -0,0 +1,35 @@ +Apache Tuscany M1 build (May, 2006) +=================================== + +http://incubator.apache.org/tuscany/ + +Tuscany is an effort undergoing incubation at the Apache Software Foundation +(ASF), sponsored by the Web Services PMC. + +Incubation is required of all newly accepted projects until a further review +indicates that the infrastructure, communications, and decision making process +have stabilized in a manner consistent with other successful ASF projects. + +While incubation status is not necessarily a reflection of the completeness or +stability of the code, it does indicate that the project has yet to be fully +endorsed by the ASF. + + +Support +------- + +Any problem with this release can be reported to the Tuscany mailing list +or in the JIRA issue tracker. + +Mailing list subscription: + tuscany-dev-subscribe@ws.apache.org + +Jira: + http://issues.apache.org/jira/browse/Tuscany + + +Thank you for using Tuscany! + + +The Tuscany Team. + diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/src/main/resources/META-INF/sca/default.scdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/src/main/resources/META-INF/sca/default.scdl new file mode 100644 index 0000000000..d286a5137f --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/src/main/resources/META-INF/sca/default.scdl @@ -0,0 +1,50 @@ +<?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"
+ xmlns:dbsdo="http://tuscany.apache.org/xmlns/sca/databinding/sdo/1.0"
+ name="interop.client">
+<!--
+ <import.sdo factory="org.soapinterop.SoapinteropFactory"/>
+ <import.wsdl wsdlLocation="wsdl/interopdoc.wsdl"/>
+ -->
+ <!-- import.sdo location="wsdl/interopdoc.wsdl" -->
+ <dbsdo:import.sdo factory="org.soapinterop.SoapinteropFactory"/>
+
+ <component name="LoopbackInteropDocService">
+ <implementation.java class="org.apache.tuscany.test.interop.client.LoopbackInteropDocServiceComponentImpl"/>
+ </component>
+
+ <reference name="RemoteInteropDocService">
+ <!-- interface.wsdl interface="http://soapinterop.org/#wsdl.interface(DocTestPortType)"/ -->
+ <interface.java interface="org.soapinterop.DocTestPortType"/>
+
+ <binding.ws endpoint="http://soapinterop.org/#wsdl.endpoint(interopDocSvc/interopDocPort)" location="wsdl/interopdoc.wsdl"/>
+ </reference>
+
+ <reference name="LocalHostInteropDocService">
+ <!-- interface.wsdl interface="http://soapinterop.org/#wsdl.interface(DocTestPortType)"/ -->
+ <interface.java interface="org.soapinterop.DocTestPortType"/>
+
+
+ <binding.ws endpoint="http://soapinterop.org/#wsdl.endpoint(interopDocSvc/interopDocPort)"
+ location="wsdl/interopdoc.wsdl"/>
+ </reference>
+
+</composite>
\ No newline at end of file diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/src/main/resources/META-INF/tuscany/extensions/includes/binding.axis2.scdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/src/main/resources/META-INF/tuscany/extensions/includes/binding.axis2.scdl new file mode 100644 index 0000000000..fb208f56ab --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/src/main/resources/META-INF/tuscany/extensions/includes/binding.axis2.scdl @@ -0,0 +1,39 @@ +<?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. +--> +<!-- Axis2 based WebService binding extension --> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" + xmlns:system="http://tuscany.apache.org/xmlns/system/1.0-SNAPSHOT" + name="org.apache.tuscany.binding.axis2.WebServiceBinding"> + + <dependency xmlns="http://tuscany.apache.org/xmlns/1.0-SNAPSHOT"> + <group>axis2</group> + <name>axis2-kernel</name> + <version>SNAPSHOT</version> + </dependency> + + <component name="webservice.bindingLoader"> + <system:implementation.system class="org.apache.tuscany.binding.axis2.WebServiceBindingLoader"/> + </component> + + <component name="webservice.axis2.bindingBuilder"> + <system:implementation.system class="org.apache.tuscany.binding.axis2.Axis2BindingBuilder"/> + </component> + +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/src/main/resources/META-INF/tuscany/extensions/includes/databinding.axiom.scdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/src/main/resources/META-INF/tuscany/extensions/includes/databinding.axiom.scdl new file mode 100644 index 0000000000..92a6be450f --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/src/main/resources/META-INF/tuscany/extensions/includes/databinding.axiom.scdl @@ -0,0 +1,50 @@ +<?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" xmlns:system="http://tuscany.apache.org/xmlns/system/1.0-SNAPSHOT" + name="org.apache.tuscany.databinding.Axiom"> + + <component name="databinding.axiom"> + <system:implementation.system class="org.apache.tuscany.databinding.axiom.AxiomDataBinding" /> + </component> + + <component name="transformer.XMLStreamReader2OMElement"> + <system:implementation.system class="org.apache.tuscany.databinding.axiom.XMLStreamReader2OMElement" /> + </component> + + <component name="transformer.OMElement2XMLStreamReader"> + <system:implementation.system class="org.apache.tuscany.databinding.axiom.OMElement2XMLStreamReader" /> + </component> + + <component name="transformer.String2OMElement"> + <system:implementation.system class="org.apache.tuscany.databinding.axiom.String2OMElement" /> + </component> + + <component name="transformer.OMElement2String"> + <system:implementation.system class="org.apache.tuscany.databinding.axiom.OMElement2String" /> + </component> + + <component name="transformer.Object2OMElement"> + <system:implementation.system class="org.apache.tuscany.databinding.axiom.Object2OMElement" /> + </component> + + <component name="transformer.OMElement2Object"> + <system:implementation.system class="org.apache.tuscany.databinding.axiom.OMElement2Object" /> + </component> +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/src/main/resources/META-INF/tuscany/extensions/includes/databinding.sdo.scdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/src/main/resources/META-INF/tuscany/extensions/includes/databinding.sdo.scdl new file mode 100644 index 0000000000..61753384b4 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/src/main/resources/META-INF/tuscany/extensions/includes/databinding.sdo.scdl @@ -0,0 +1,60 @@ +<?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. +--> +<!-- + import.sdo configuration + + $Rev: 431086 $ $Date: 2006-08-12 13:58:17 -0700 (Sat, 12 Aug 2006) $ +--> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" + xmlns:system="http://tuscany.apache.org/xmlns/system/1.0-SNAPSHOT" + name="org.apache.tuscany.databinding.sdo"> + + <!-- import.sdo element loader implementations --> + <component name="elementLoader.import.sdo"> + <system:implementation.system class="org.apache.tuscany.databinding.sdo.ImportSDOLoader"/> + </component> + + <component name="databinding.sdo"> + <system:implementation.system class="org.apache.tuscany.databinding.sdo.SDODataBinding" /> + </component> + + <component name="transformer.DataObject2String"> + <system:implementation.system class="org.apache.tuscany.databinding.sdo.DataObject2String"/> + </component> + <component name="transformer.DataObject2XMLStreamReader"> + <system:implementation.system class="org.apache.tuscany.databinding.sdo.DataObject2XMLStreamReader"/> + </component> + <component name="transformer.XMLDocument2String"> + <system:implementation.system class="org.apache.tuscany.databinding.sdo.XMLDocument2String"/> + </component> + <component name="transformer.String2DataObject"> + <system:implementation.system class="org.apache.tuscany.databinding.sdo.String2DataObject"/> + </component> + <component name="transformer.XMLDocument2XMLStreamReader"> + <system:implementation.system class="org.apache.tuscany.databinding.sdo.XMLDocument2XMLStreamReader"/> + </component> + <component name="transformer.XMLStreamReader2DataObject"> + <system:implementation.system class="org.apache.tuscany.databinding.sdo.XMLStreamReader2DataObject"/> + </component> + <component name="transformer.XMLStreamReader2XMLDocument"> + <system:implementation.system class="org.apache.tuscany.databinding.sdo.XMLStreamReader2XMLDocument"/> + </component> + +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/src/main/resources/META-INF/tuscany/extensions/includes/interface.wsdl.scdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/src/main/resources/META-INF/tuscany/extensions/includes/interface.wsdl.scdl new file mode 100644 index 0000000000..84538dab8b --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/src/main/resources/META-INF/tuscany/extensions/includes/interface.wsdl.scdl @@ -0,0 +1,55 @@ +<?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. +--> +<!-- + Default system configuration for the launcher environment. + + $Rev: 440894 $ $Date: 2006-09-06 15:52:01 -0700 (Wed, 06 Sep 2006) $ +--> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" xmlns:system="http://tuscany.apache.org/xmlns/system/1.0-SNAPSHOT" + name="org.apache.tuscany.idl.WSDL"> + + <dependency xmlns="http://tuscany.apache.org/xmlns/1.0-SNAPSHOT"> + <group>wsdl4j</group> + <name>wsdl4j</name> + <version>1.5.2</version> + </dependency> + <dependency xmlns="http://tuscany.apache.org/xmlns/1.0-SNAPSHOT"> + <group>org.apache.ws.commons</group> + <name>XmlSchema</name> + <version>SNAPSHOT</version> + </dependency> + + <component name="interface.wsdl.Loader"> + <system:implementation.system class="org.apache.tuscany.idl.wsdl.InterfaceWSDLLoader" /> + </component> + + <component name="wsdl.Registry"> + <system:implementation.system class="org.apache.tuscany.idl.wsdl.WSDLDefinitionRegistryImpl" initLevel="40" /> + </component> + + <component name="xmlSchema.registry"> + <system:implementation.system class="org.apache.tuscany.idl.wsdl.XMLSchemaRegistryImpl" initLevel="35" /> + </component> + + <component name="interface.wsdl.Introspector"> + <system:implementation.system class="org.apache.tuscany.idl.wsdl.InterfaceWSDLIntrospectorImpl" initLevel="40" /> + </component> + +</composite>
\ No newline at end of file diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/src/main/resources/META-INF/tuscany/extensions/test-extensions.scdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/src/main/resources/META-INF/tuscany/extensions/test-extensions.scdl new file mode 100644 index 0000000000..bda64f749e --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/src/main/resources/META-INF/tuscany/extensions/test-extensions.scdl @@ -0,0 +1,25 @@ +<?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 name="test.extensions" xmlns="http://www.osoa.org/xmlns/sca/1.0" xmlns:system="http://tuscany.apache.org/xmlns/system/1.0-SNAPSHOT"> + <include name="org.apache.tuscany.interface.wsdl" scdlLocation="includes/interface.wsdl.scdl"/> + <include name="org.apache.tuscany.databinding.axiom" scdlLocation="includes/databinding.axiom.scdl"/> + <include name="org.apache.tuscany.databinding.sdo" scdlLocation="includes/databinding.sdo.scdl"/> + <include name="org.apache.tuscany.binding.axis2" scdlLocation="includes/binding.axis2.scdl"/> +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/src/main/resources/wsdl/interopdoc.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/src/main/resources/wsdl/interopdoc.wsdl new file mode 100644 index 0000000000..89a8a2e3de --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/src/main/resources/wsdl/interopdoc.wsdl @@ -0,0 +1,185 @@ +<?xml version="1.0"?> +<!-- + * 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. + --> +<definitions name="InteropTestDoc" targetNamespace="http://soapinterop.org/" + xmlns="http://schemas.xmlsoap.org/wsdl/" + xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:tns="http://soapinterop.org/" + xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"> + + <types> + + <xsd:schema elementFormDefault="qualified" targetNamespace="http://soapinterop.org/" xmlns:interop="http://soapinterop.org/"> + + <xsd:element name="SingleTag"> + <xsd:complexType> + <xsd:sequence> + <xsd:element minOccurs="0" maxOccurs="1" name="SingleTag" type="interop:SingleTag"/> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="SingleTag"/> + <xsd:element name="SingleTagResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element minOccurs="0" maxOccurs="1" name="SingleTag" type="interop:SingleTag"/> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="SimpleDocument"> + <xsd:complexType> + <xsd:sequence> + <xsd:element minOccurs="0" maxOccurs="1" name="SimpleDocument" type="interop:SimpleDocument"/> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:complexType name="SimpleDocument"> + <xsd:simpleContent> + <xsd:extension base="xsd:string"/> + </xsd:simpleContent> + </xsd:complexType> + <xsd:element name="SimpleDocumentResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element minOccurs="0" maxOccurs="1" name="SimpleDocument" type="interop:SimpleDocument"/> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="ComplexDocument"> + <xsd:complexType> + <xsd:sequence> + <xsd:element minOccurs="0" maxOccurs="1" name="ComplexDocument" type="interop:ComplexDocument"/> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:complexType name="ComplexDocument"> + <xsd:sequence> + <xsd:element minOccurs="0" maxOccurs="1" name="simpleDoc" type="interop:ArrayOfSimpleDocument"/> + <xsd:element minOccurs="0" maxOccurs="1" name="child" type="interop:ChildDocument"/> + </xsd:sequence> + <xsd:attribute name="AnAttribute" type="xsd:string"/> + </xsd:complexType> + <xsd:complexType name="ArrayOfSimpleDocument"> + <xsd:sequence> + <xsd:element minOccurs="0" maxOccurs="unbounded" name="SimpleDocument" nillable="true" type="interop:SimpleDocument"/> + </xsd:sequence> + </xsd:complexType> + <xsd:complexType name="ChildDocument"> + <xsd:sequence> + <xsd:element minOccurs="0" maxOccurs="1" name="childSimpleDoc" type="interop:ArrayOfSimpleDocument"/> + </xsd:sequence> + </xsd:complexType> + <xsd:element name="ComplexDocumentResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element minOccurs="0" maxOccurs="1" name="ComplexDocument" type="interop:ComplexDocument"/> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + </xsd:schema> + + </types> + + <message name="SingleTagSoapIn"> + <part name="parameters" element="tns:SingleTag"/> + </message> + <message name="SingleTagSoapOut"> + <part name="outputDoc" element="tns:SingleTagResponse"/> + </message> + <message name="SimpleDocumentSoapIn"> + <part name="parameters" element="tns:SimpleDocument"/> + </message> + <message name="SimpleDocumentSoapOut"> + <part name="outputDoc" element="tns:SimpleDocumentResponse"/> + </message> + <message name="ComplexDocumentSoapIn"> + <part name="parameters" element="tns:ComplexDocument"/> + </message> + <message name="ComplexDocumentSoapOut"> + <part name="outputDoc" element="tns:ComplexDocumentResponse"/> + </message> + + <portType name="DocTestPortType"> + + <operation name="SingleTag"> + <input message="tns:SingleTagSoapIn"/> + <output message="tns:SingleTagSoapOut"/> + </operation> + <operation name="SimpleDocument"> + <input message="tns:SimpleDocumentSoapIn"/> + <output message="tns:SimpleDocumentSoapOut"/> + </operation> + <operation name="ComplexDocument"> + <input message="tns:ComplexDocumentSoapIn"/> + <output message="tns:ComplexDocumentSoapOut"/> + </operation> + + </portType> + + <binding name="doc_test_binding" type="tns:DocTestPortType"> + <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> + + <operation name="SingleTag"> + <soap:operation soapAction="http://soapinterop.org/SingleTag"/> + <input> + <soap:body use="literal"/> + </input> + <output> + <soap:body use="literal"/> + </output> + </operation> + + <operation name="SimpleDocument"> + <soap:operation soapAction="http://soapinterop.org/SimpleDocument"/> + <input> + <soap:body use="literal"/> + </input> + <output> + <soap:body use="literal"/> + </output> + </operation> + + <operation name="ComplexDocument"> + <soap:operation soapAction="http://soapinterop.org/ComplexDocument"/> + <input> + <soap:body use="literal"/> + </input> + <output> + <soap:body use="literal"/> + </output> + </operation> + </binding> + + <service name="interopDocSvc"> + + <port name="interopDocPort" binding="tns:doc_test_binding"> + <soap:address location="http://www.whitemesa.net/interopdoc"/> + <!-- soap:address location="http://mssoapinterop.org/asmx/simple.asmx"/ --> + <!-- soap:address location="http://easysoap.sourceforge.net/cgi-bin/interopserver"/ --> + <!-- soap:address location="http://www.mssoapinterop.org/remoting/ServiceAllTypes.soap"/ --> + <http-conf:client xmlns:http-conf="http://celtix.objectweb.org/transports/http/configuration" + AllowChunking="false"/> + </port> + + </service> + +</definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/src/test/java/org/apache/tuscany/test/interop/client/InteropDocClientTestCase.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/src/test/java/org/apache/tuscany/test/interop/client/InteropDocClientTestCase.java new file mode 100644 index 0000000000..6b74f04283 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceInteropDoc/src/test/java/org/apache/tuscany/test/interop/client/InteropDocClientTestCase.java @@ -0,0 +1,155 @@ +/* + * 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.test.interop.client; + +import java.rmi.RemoteException; + +import org.apache.tuscany.test.SCATestCase; +import org.osoa.sca.CompositeContext; +import org.osoa.sca.CurrentCompositeContext; +import org.soapinterop.ArrayOfSimpleDocument; +import org.soapinterop.ChildDocument; +import org.soapinterop.ComplexDocument; +import org.soapinterop.DocTestPortType; +import org.soapinterop.SimpleDocument; +import org.soapinterop.SimpleDocument1; +import org.soapinterop.SingleTag; + +import commonj.sdo.helper.DataFactory; + +public class InteropDocClientTestCase extends SCATestCase { + + private DataFactory dataFactory; + + private DocTestPortType interopDoc; + + public InteropDocClientTestCase(){}; + + public void testSingleTag() throws RemoteException { + + // Create the input + SingleTag input = (SingleTag) dataFactory.create(SingleTag.class); + + // Invoke the service + SingleTag output = interopDoc.SingleTag(input); + + // Test the results + assertNotNull(output); + + } + + public void testSimpleDocument() throws RemoteException { + + // Create the input + SimpleDocument1 input = (SimpleDocument1) dataFactory.create(SimpleDocument1.class); + input.setValue("123"); + + // Invoke the service + SimpleDocument1 output = interopDoc.SimpleDocument(input); + + // Test the results + assertNotNull(output); + assertEquals("123", output.getValue()); + + } + + public void testComplexDocument() throws RemoteException { + + // Create the input + ComplexDocument input = (ComplexDocument) dataFactory.create(ComplexDocument.class); + input.setAnAttribute("789"); + ChildDocument childDocument = (ChildDocument) dataFactory.create(ChildDocument.class); + SimpleDocument simpleDocument = (SimpleDocument) dataFactory.create(SimpleDocument.class); + ; + SimpleDocument1 simpleDocument1 = (SimpleDocument1) dataFactory.create(SimpleDocument1.class); + ; + simpleDocument.setSimpleDocument(simpleDocument1); + simpleDocument1.setValue("456"); + ArrayOfSimpleDocument arrayOfSimpleDocument = (ArrayOfSimpleDocument) dataFactory.create(ArrayOfSimpleDocument.class); + ; + arrayOfSimpleDocument.getSimpleDocument().add(simpleDocument1); + childDocument.setChildSimpleDoc(arrayOfSimpleDocument); + input.setChild(childDocument); + + // Invoke the service + ComplexDocument output = interopDoc.ComplexDocument(input); + + // Test the results + assertNotNull(output); + assertEquals("789", output.getAnAttribute()); + assertNotNull(output.getChild()); + assertNotNull(output.getChild().getChildSimpleDoc()); + + // FIXME Add more tests of the output document + + } + + protected void setUp() throws Exception { + + setApplicationSCDL(LoopbackInteropDocServiceComponentImpl.class, "META-INF/sca/default.scdl"); + + addExtension("test.extensions", getClass().getClassLoader().getResource("META-INF/tuscany/extensions/test-extensions.scdl")); + /* + addExtension("org.apache.tuscany.idl.wsdl.WSDLDefinitionRegistry", getClass().getClassLoader().getResource( + + "META-INF/tuscany/interface.wsdl.scdl")); + + addExtension("org.apache.tuscany.idl.wsdl.InterfaceWSDLIntrospector", getClass().getClassLoader().getResource( + "META-INF/tuscany/interface.wsdl.scdl")); + + + + addExtension("org.apache.tuscany.binding.axis2.WebServiceBinding", getClass().getClassLoader().getResource( + "META-INF/tuscany/binding.axis2.scdl")); + addExtension("org.apache.tuscany.databinding.sdo", getClass().getClassLoader().getResource("META-INF/tuscany/databinding.sdo.scdl")); + */ + super.setUp(); + + // Get the SDO DataFactory + dataFactory = DataFactory.INSTANCE; + + // Locate the service to test + interopDoc = locateInteropDocService(); + + } + + /** + * Locate the interop service to test + * + * @return + */ + protected DocTestPortType locateInteropDocService() { + String interopLocation = System.getProperty("interopLocation"); + + // Valid service names are: + // RemoteInteropDocService: the live interop Web Service + // LocalHostInteropDocService: the interop Web Service hosted by Tuscany on localhost + // LoopbackInteropDocServiceComponent: a dummy loopback service component + + // To specify the service name run mvn -interopLocation="Remote" + + if (interopLocation == null) + interopLocation = "Remote"; + + CompositeContext compositeContext = CurrentCompositeContext.getContext(); + + return (DocTestPortType) compositeContext.locateService(DocTestPortType.class, interopLocation + "InteropDocService"); + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/LICENSE.txt b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/LICENSE.txt new file mode 100644 index 0000000000..0084319535 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/LICENSE.txt @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, serviceDefinition marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed 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. diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/NOTICE.txt b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/NOTICE.txt new file mode 100644 index 0000000000..d83ebbe236 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/NOTICE.txt @@ -0,0 +1,14 @@ +${pom.name} +Copyright (c) 2005 - 2006 The Apache Software Foundation + +Apache Tuscany is an effort undergoing incubation at The Apache Software +Foundation (ASF), sponsored by the Apache Web Services PMC. Incubation is +required of all newly accepted projects until a further review indicates that +the infrastructure, communications, and decision making process have stabilized +in a manner consistent with other successful ASF projects. While incubation +status is not necessarily a reflection of the completeness or stability of the +code, it does indicate that the project has yet to be fully endorsed by the ASF. + +This product includes software developed by +The Apache Software Foundation (http://www.apache.org/). + diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/pom.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/pom.xml new file mode 100644 index 0000000000..ba34ed3df3 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/pom.xml @@ -0,0 +1,77 @@ +<?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> + <parent> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>tuscany-interop-clients</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + </parent> + + <modelVersion>4.0.0</modelVersion> + <artifactId>interop-client-webserviceSOAPRound2</artifactId> + <packaging>jar</packaging> + <name>Tuscany Interop Testing - Clients - SOAP Builders Round 2 Interop Test</name> + + <properties> + <ws.type>axis2</ws.type> + </properties> + + + <build> + <plugins> + <plugin> + <groupId>org.apache.tuscany.sdo</groupId> + <artifactId>tuscany-sdo-plugin</artifactId> + <version>${sdo.version}</version> + <executions> + <execution> + <configuration> + <schemaFile>${basedir}/src/main/resources/wsdl/interoptestdoclit.wsdl</schemaFile> + <noNotification>true</noNotification> + <noContainer>true</noContainer> + <noInterfaces>true</noInterfaces> + <noUnsettable>true</noUnsettable> + </configuration> + <goals> + <goal>generate</goal> + </goals> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.apache.tuscany.sca.extensions.axis2.plugins</groupId> + <artifactId>tuscany-plugin-wsdl2java</artifactId> + <version>${sca.version}</version> + <executions> + <execution> + <configuration> + <wsdlFile>${basedir}/src/main/resources/wsdl/interoptestdoclit.wsdl</wsdlFile> + <javaPackage>org.soapinterop.wsdl.interop.test.doc.lit</javaPackage> + </configuration> + <goals> + <goal>generate</goal> + </goals> + </execution> + </executions> + </plugin> + + </plugins> + </build> +</project> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/src/main/java/org/apache/tuscany/test/interop/client/InteropTestDocLit.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/src/main/java/org/apache/tuscany/test/interop/client/InteropTestDocLit.java new file mode 100644 index 0000000000..079d3aefeb --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/src/main/java/org/apache/tuscany/test/interop/client/InteropTestDocLit.java @@ -0,0 +1,44 @@ +package org.apache.tuscany.test.interop.client; +import org.soapinterop.wsdl.interop.test.doc.lit.WSDLInteropTestDocLitPortType; + +/* + * 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. + */ + + +/** + * @author rineholt + * + */ +public class InteropTestDocLit { + private WSDLInteropTestDocLitPortType interopTestDocLitPortType =null; + /** + * @param args + */ + public static void main(String[] args) { + + + } + WSDLInteropTestDocLitPortType getInteropTestDocLitPortType() { + return interopTestDocLitPortType; + } + void setInteropTestDocLitPortType(WSDLInteropTestDocLitPortType interopTestDocLitPortType) { + this.interopTestDocLitPortType = interopTestDocLitPortType; + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/src/main/resources/META-INF/LICENSE.txt b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/src/main/resources/META-INF/LICENSE.txt new file mode 100644 index 0000000000..25d78feeac --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/src/main/resources/META-INF/LICENSE.txt @@ -0,0 +1,1277 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed 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. + + +APACHE TUSCANY SUBCOMPONENTS: + +The Apache Tuscany distribution includes a number of subcomponents with +separate copyright notices and license terms. Your use of the source +code for the these subcomponents is subject to the terms and +conditions of the following licenses. + +=============================================================================== + +For the Eclipse Modeling Framework component and the Celtix binding: + +Eclipse Public License - v 1.0 + +THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE +PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF +THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT. + +1. DEFINITIONS + +"Contribution" means: + +a) in the case of the initial Contributor, the initial code and +documentation distributed under this Agreement, and +b) in the case of each subsequent Contributor: + +i) changes to the Program, and + +ii) additions to the Program; + +where such changes and/or additions to the Program originate from and +are distributed by that particular Contributor. A Contribution +'originates' from a Contributor if it was added to the Program by such +Contributor itself or anyone acting on such Contributor's behalf. +Contributions do not include additions to the Program which: (i) are +separate modules of software distributed in conjunction with the +Program under their own license agreement, and (ii) are not derivative +works of the Program. + +"Contributor" means any person or entity that distributes the Program. + +"Licensed Patents " mean patent claims licensable by a Contributor +which are necessarily infringed by the use or sale of its Contribution +alone or when combined with the Program. + +"Program" means the Contributions distributed in accordance with this +Agreement. + +"Recipient" means anyone who receives the Program under this +Agreement, including all Contributors. + +2. GRANT OF RIGHTS + +a) Subject to the terms of this Agreement, each Contributor hereby +grants Recipient a non-exclusive, worldwide, royalty-free copyright +license to reproduce, prepare derivative works of, publicly display, +publicly perform, distribute and sublicense the Contribution of such +Contributor, if any, and such derivative works, in source code and +object code form. + +b) Subject to the terms of this Agreement, each Contributor hereby +grants Recipient a non-exclusive, worldwide, royalty-free patent +license under Licensed Patents to make, use, sell, offer to sell, +import and otherwise transfer the Contribution of such Contributor, if +any, in source code and object code form. This patent license shall +apply to the combination of the Contribution and the Program if, at +the time the Contribution is added by the Contributor, such addition +of the Contribution causes such combination to be covered by the +Licensed Patents. The patent license shall not apply to any other +combinations which include the Contribution. No hardware per se is +licensed hereunder. + +c) Recipient understands that although each Contributor grants the +licenses to its Contributions set forth herein, no assurances are +provided by any Contributor that the Program does not infringe the +patent or other intellectual property rights of any other entity. Each +Contributor disclaims any liability to Recipient for claims brought by +any other entity based on infringement of intellectual property rights +or otherwise. As a condition to exercising the rights and licenses +granted hereunder, each Recipient hereby assumes sole responsibility +to secure any other intellectual property rights needed, if any. For +example, if a third party patent license is required to allow +Recipient to distribute the Program, it is Recipient's responsibility +to acquire that license before distributing the Program. + +d) Each Contributor represents that to its knowledge it has sufficient +copyright rights in its Contribution, if any, to grant the copyright +license set forth in this Agreement. + +3. REQUIREMENTS + +A Contributor may choose to distribute the Program in object code form +under its own license agreement, provided that: + +a) it complies with the terms and conditions of this Agreement; and + +b) its license agreement: + +i) effectively disclaims on behalf of all Contributors all warranties +and conditions, express and implied, including warranties or +conditions of title and non-infringement, and implied warranties or +conditions of merchantability and fitness for a particular purpose; + +ii) effectively excludes on behalf of all Contributors all liability +for damages, including direct, indirect, special, incidental and +consequential damages, such as lost profits; + +iii) states that any provisions which differ from this Agreement are +offered by that Contributor alone and not by any other party; and + +iv) states that source code for the Program is available from such +Contributor, and informs licensees how to obtain it in a reasonable +manner on or through a medium customarily used for software exchange. + +When the Program is made available in source code form: + +a) it must be made available under this Agreement; and + +b) a copy of this Agreement must be included with each copy of the +Program. + +Contributors may not remove or alter any copyright notices contained +within the Program. + +Each Contributor must identify itself as the originator of its +Contribution, if any, in a manner that reasonably allows subsequent +Recipients to identify the originator of the Contribution. + +4. COMMERCIAL DISTRIBUTION + +Commercial distributors of software may accept certain +responsibilities with respect to end users, business partners and the +like. While this license is intended to facilitate the commercial use +of the Program, the Contributor who includes the Program in a +commercial product offering should do so in a manner which does not +create potential liability for other Contributors. Therefore, if a +Contributor includes the Program in a commercial product offering, +such Contributor ("Commercial Contributor") hereby agrees to defend +and indemnify every other Contributor ("Indemnified Contributor") +against any losses, damages and costs (collectively "Losses") arising +from claims, lawsuits and other legal actions brought by a third party +against the Indemnified Contributor to the extent caused by the acts +or omissions of such Commercial Contributor in connection with its +distribution of the Program in a commercial product offering. The +obligations in this section do not apply to any claims or Losses +relating to any actual or alleged intellectual property infringement. +In order to qualify, an Indemnified Contributor must: a) promptly +notify the Commercial Contributor in writing of such claim, and b) +allow the Commercial Contributor to control, and cooperate with the +Commercial Contributor in, the defense and any related settlement +negotiations. The Indemnified Contributor may participate in any such +claim at its own expense. + +For example, a Contributor might include the Program in a commercial +product offering, Product X. That Contributor is then a Commercial +Contributor. If that Commercial Contributor then makes performance +claims, or offers warranties related to Product X, those performance +claims and warranties are such Commercial Contributor's responsibility +alone. Under this section, the Commercial Contributor would have to +defend claims against the other Contributors related to those +performance claims and warranties, and if a court requires any other +Contributor to pay any damages as a result, the Commercial Contributor +must pay those damages. + +5. NO WARRANTY + +EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS +PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY +WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY +OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely +responsible for determining the appropriateness of using and +distributing the Program and assumes all risks associated with its +exercise of rights under this Agreement , including but not limited to +the risks and costs of program errors, compliance with applicable +laws, damage to or loss of data, programs or equipment, and +unavailability or interruption of operations. + +6. DISCLAIMER OF LIABILITY + +EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR +ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, +INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING +WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR +DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED +HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. + +7. GENERAL + +If any provision of this Agreement is invalid or unenforceable under +applicable law, it shall not affect the validity or enforceability of +the remainder of the terms of this Agreement, and without further +action by the parties hereto, such provision shall be reformed to the +minimum extent necessary to make such provision valid and enforceable. + +If Recipient institutes patent litigation against any entity +(including a cross-claim or counterclaim in a lawsuit) alleging that +the Program itself (excluding combinations of the Program with other +software or hardware) infringes such Recipient's patent(s), then such +Recipient's rights granted under Section 2(b) shall terminate as of +the date such litigation is filed. + +All Recipient's rights under this Agreement shall terminate if it +fails to comply with any of the material terms or conditions of this +Agreement and does not cure such failure in a reasonable period of +time after becoming aware of such noncompliance. If all Recipient's +rights under this Agreement terminate, Recipient agrees to cease use +and distribution of the Program as soon as reasonably practicable. +However, Recipient's obligations under this Agreement and any licenses +granted by Recipient relating to the Program shall continue and +survive. + +Everyone is permitted to copy and distribute copies of this Agreement, +but in order to avoid inconsistency the Agreement is copyrighted and +may only be modified in the following manner. The Agreement Steward +reserves the right to publish new versions (including revisions) of +this Agreement from time to time. No one other than the Agreement +Steward has the right to modify this Agreement. The Eclipse Foundation +is the initial Agreement Steward. The Eclipse Foundation may assign +the responsibility to serve as the Agreement Steward to a suitable +separate entity. Each new version of the Agreement will be given a +distinguishing version number. The Program (including Contributions) +may always be distributed subject to the version of the Agreement +under which it was received. In addition, after a new version of the +Agreement is published, Contributor may elect to distribute the +Program (including its Contributions) under the new version. Except as +expressly stated in Sections 2(a) and 2(b) above, Recipient receives +no rights or licenses to the intellectual property of any Contributor +under this Agreement, whether expressly, by implication, estoppel or +otherwise. All rights in the Program not expressly granted under this +Agreement are reserved. + +This Agreement is governed by the laws of the State of New York and +the intellectual property laws of the United States of America. No +party to this Agreement will bring a legal action under this Agreement +more than one year after the cause of action arose. Each party waives +its rights to a jury trial in any resulting litigation. + +=============================================================================== + +For the Rhino JavaScript container component: + +Mozilla Public License 1.1 (MPL 1.1) + +1. Definitions. + + 1.0.1. "Commercial Use" means distribution or otherwise making the +Covered Code available to a third party. + + 1.1. "Contributor" means each entity that creates or contributes to +the creation of Modifications. + + 1.2. "Contributor Version" means the combination of the Original Code, +prior Modifications used by a Contributor, and the Modifications made by that +particular Contributor. + + 1.3. "Covered Code" means the Original Code or Modifications or the +combination of the Original Code and Modifications, in each case including +portions thereof. + + 1.4. "Electronic Distribution Mechanism" means a mechanism generally +accepted in the software development community for the electronic transfer of +data. + + 1.5. "Executable" means Covered Code in any form other than Source +Code. + + 1.6. "Initial Developer" means the individual or entity identified as +the Initial Developer in the Source Code notice required by Exhibit A. + + 1.7. "Larger Work" means a work which combines Covered Code or +portions thereof with code not governed by the terms of this License. + + 1.8. "License" means this document. + + 1.8.1. "Licensable" means having the right to grant, to the maximum +extent possible, whether at the time of the initial grant or subsequently +acquired, any and all of the rights conveyed herein. + + 1.9. "Modifications" means any addition to or deletion from the +substance or structure of either the Original Code or any previous +Modifications. When Covered Code is released as a series of files, a +Modification is: + A. Any addition to or deletion from the contents of a file +containing Original Code or previous Modifications. + + B. Any new file that contains any part of the Original Code or +previous Modifications. + + 1.10. "Original Code" means Source Code of computer software code +which is described in the Source Code notice required by Exhibit A as Original +Code, and which, at the time of its release under this License is not already +Covered Code governed by this License. + + 1.10.1. "Patent Claims" means any patent claim(s), now owned or +hereafter acquired, including without limitation, method, process, and +apparatus claims, in any patent Licensable by grantor. + + 1.11. "Source Code" means the preferred form of the Covered Code for +making modifications to it, including all modules it contains, plus any +associated interface definition files, scripts used to control compilation and +installation of an Executable, or source code differential comparisons against +either the Original Code or another well known, available Covered Code of the +Contributor's choice. The Source Code can be in a compressed or archival form, +provided the appropriate decompression or de-archiving software is widely +available for no charge. + + 1.12. "You" (or "Your") means an individual or a legal entity +exercising rights under, and complying with all of the terms of, this License +or a future version of this License issued under Section 6.1. For legal +entities, "You" includes any entity which controls, is controlled by, or is +under common control with You. For purposes of this definition, "control" +means (a) the power, direct or indirect, to cause the direction or management +of such entity, whether by contract or otherwise, or (b) ownership of more +than fifty percent (50%) of the outstanding shares or beneficial ownership of +such entity. + +2. Source Code License. + + 2.1. The Initial Developer Grant. + The Initial Developer hereby grants You a world-wide, royalty-free, +non-exclusive license, subject to third party intellectual property claims: + (a) under intellectual property rights (other than patent or +trademark) Licensable by Initial Developer to use, reproduce, modify, display, +perform, sublicense and distribute the Original Code (or portions thereof) +with or without Modifications, and/or as part of a Larger Work; and + + (b) under Patents Claims infringed by the making, using or selling +of Original Code, to make, have made, use, practice, sell, and offer for sale, +and/or otherwise dispose of the Original Code (or portions thereof). + (c) the licenses granted in this Section 2.1(a) and +(b) are effective on the date Initial Developer first distributes Original +Code under the terms of this License. + + (d) Notwithstanding Section 2.1(b) above, no patent license is +granted: 1) for code that You delete from the Original Code; 2) separate from +the Original Code; or 3) for infringements caused by: i) the modification of +the Original Code or ii) the combination of the Original Code with other +software or devices. + + 2.2. Contributor Grant. + Subject to third party intellectual property claims, each Contributor +hereby grants You a world-wide, royalty-free, non-exclusive license + + (a) under intellectual property rights (other than patent or +trademark) Licensable by Contributor, to use, reproduce, modify, display, +perform, sublicense and distribute the Modifications created by such +Contributor (or portions thereof) either on an unmodified basis, with other +Modifications, as Covered Code and/or as part of a Larger Work; and + + (b) under Patent Claims infringed by the making, using, or selling +of Modifications made by that Contributor either alone and/or in combination +with its Contributor Version (or portions of such combination), to make, use, +sell, offer for sale, have made, and/or otherwise dispose of: 1) Modifications +made by that Contributor (or portions thereof); and 2) the combination of +Modifications made by that Contributor with its Contributor Version (or +portions of such combination). + + (c) the licenses granted in Sections 2.2(a) and 2.2(b) are +effective on the date Contributor first makes Commercial Use of the Covered +Code. + + (d) Notwithstanding Section 2.2(b) above, no patent license is +granted: 1) for any code that Contributor has deleted from the Contributor +Version; 2) separate from the Contributor Version; 3) for infringements +caused by: i) third party modifications of Contributor Version or ii) the +combination of Modifications made by that Contributor with other software +(except as part of the Contributor Version) or other devices; or 4) under +Patent Claims infringed by Covered Code in the absence of Modifications made +by that Contributor. + + +3. Distribution Obligations. + + 3.1. Application of License. + The Modifications which You create or to which You contribute are +governed by the terms of this License, including without limitation Section +2.2. The Source Code version of Covered Code may be distributed only under the +terms of this License or a future version of this License released under +Section 6.1, and You must include a copy of this License with every copy of +the Source Code You distribute. You may not offer or impose any terms on any +Source Code version that alters or restricts the applicable version of this +License or the recipients' rights hereunder. However, You may include an +additional document offering the additional rights described in Section 3.5. + + 3.2. Availability of Source Code. + Any Modification which You create or to which You contribute must be +made available in Source Code form under the terms of this License either on +the same media as an Executable version or via an accepted Electronic +Distribution Mechanism to anyone to whom you made an Executable version +available; and if made available via Electronic Distribution Mechanism, must +remain available for at least twelve (12) months after the date it initially +became available, or at least six (6) months after a subsequent version of +that particular Modification has been made available to such recipients. You +are responsible for ensuring that the Source Code version remains available +even if the Electronic Distribution Mechanism is maintained by a third party. + + 3.3. Description of Modifications. + You must cause all Covered Code to which You contribute to contain a +file documenting the changes You made to create that Covered Code and the date +of any change. You must include a prominent statement that the Modification is +derived, directly or indirectly, from Original Code provided by the Initial +Developer and including the name of the Initial Developer in (a) the Source +Code, and (b) in any notice in an Executable version or related documentation +in which You describe the origin or ownership of the Covered Code. + + 3.4. Intellectual Property Matters + (a) Third Party Claims. + If Contributor has knowledge that a license under a third party's +intellectual property rights is required to exercise the rights granted by +such Contributor under Sections 2.1 or 2.2, Contributor must include a text +file with the Source Code distribution titled "LEGAL" which describes the +claim and the party making the claim in sufficient detail that a recipient +will know whom to contact. If Contributor obtains such knowledge after the +Modification is made available as described in Section 3.2, Contributor shall +promptly modify the LEGAL file in all copies Contributor makes available +thereafter and shall take other steps (such as notifying appropriate mailing +lists or newsgroups) reasonably calculated to inform those who received the +Covered Code that new knowledge has been obtained. + + (b) Contributor APIs. + If Contributor's Modifications include an application programming +interface and Contributor has knowledge of patent licenses which are +reasonably necessary to implement that API, Contributor must also include this +information in the LEGAL file. + + (c) Representations. + Contributor represents that, except as disclosed pursuant to +Section 3.4(a) above, Contributor believes that Contributor's Modifications +are Contributor's original creation(s) and/or Contributor has sufficient +rights to grant the rights conveyed by this License. + + + 3.5. Required Notices. + You must duplicate the notice in Exhibit A in each file of the Source +Code. If it is not possible to put such notice in a particular Source Code +file due to its structure, then You must include such notice in a location +(such as a relevant directory) where a user would be likely to look for such a +notice. If You created one or more Modification(s) You may add your name as a +Contributor to the notice described in Exhibit A. You must also duplicate +this License in any documentation for the Source Code where You describe +recipients' rights or ownership rights relating to Covered Code. You may +choose to offer, and to charge a fee for, warranty, support, indemnity or +liability obligations to one or more recipients of Covered Code. However, You +may do so only on Your own behalf, and not on behalf of the Initial Developer +or any Contributor. You must make it absolutely clear than any such warranty, +support, indemnity or liability obligation is offered by You alone, and You +hereby agree to indemnify the Initial Developer and every Contributor for any +liability incurred by the Initial Developer or such Contributor as a result of +warranty, support, indemnity or liability terms You offer. + + 3.6. Distribution of Executable Versions. + You may distribute Covered Code in Executable form only if the +requirements of Section 3.1-3.5 have been met for that Covered Code, and if +You include a notice stating that the Source Code version of the Covered Code +is available under the terms of this License, including a description of how +and where You have fulfilled the obligations of Section 3.2. The notice must +be conspicuously included in any notice in an Executable version, related +documentation or collateral in which You describe recipients' rights relating +to the Covered Code. You may distribute the Executable version of Covered Code +or ownership rights under a license of Your choice, which may contain terms +different from this License, provided that You are in compliance with the +terms of this License and that the license for the Executable version does not +attempt to limit or alter the recipient's rights in the Source Code version +from the rights set forth in this License. If You distribute the Executable +version under a different license You must make it absolutely clear that any +terms which differ from this License are offered by You alone, not by the +Initial Developer or any Contributor. You hereby agree to indemnify the +Initial Developer and every Contributor for any liability incurred by the +Initial Developer or such Contributor as a result of any such terms You offer. + + 3.7. Larger Works. + You may create a Larger Work by combining Covered Code with other code +not governed by the terms of this License and distribute the Larger Work as a +single product. In such a case, You must make sure the requirements of this +License are fulfilled for the Covered Code. + +4. Inability to Comply Due to Statute or Regulation. + + If it is impossible for You to comply with any of the terms of this +License with respect to some or all of the Covered Code due to statute, +judicial order, or regulation then You must: (a) comply with the terms of this +License to the maximum extent possible; and (b) describe the limitations and +the code they affect. Such description must be included in the LEGAL file +described in Section 3.4 and must be included with all distributions of the +Source Code. Except to the extent prohibited by statute or regulation, such +description must be sufficiently detailed for a recipient of ordinary skill to +be able to understand it. + +5. Application of this License. + + This License applies to code to which the Initial Developer has attached +the notice in Exhibit A and to related Covered Code. + +6. Versions of the License. + + 6.1. New Versions. + Netscape Communications Corporation ("Netscape") may publish revised +and/or new versions of the License from time to time. Each version will be +given a distinguishing version number. + + 6.2. Effect of New Versions. + Once Covered Code has been published under a particular version of the +License, You may always continue to use it under the terms of that version. +You may also choose to use such Covered Code under the terms of any subsequent +version of the License published by Netscape. No one other than Netscape has +the right to modify the terms applicable to Covered Code created under this +License. + + 6.3. Derivative Works. + If You create or use a modified version of this License (which you may +only do in order to apply it to code which is not already Covered Code +governed by this License), You must (a) rename Your license so that the +phrases "Mozilla", "MOZILLAPL", "MOZPL", "Netscape", "MPL", "NPL" or +any confusingly similar phrase do not appear in your license (except to note +that your license differs from this License) and (b) otherwise make it clear +that Your version of the license contains terms which differ from the Mozilla +Public License and Netscape Public License. (Filling in the name of the +Initial Developer, Original Code or Contributor in the notice described in +Exhibit A shall not of themselves be deemed to be modifications of this +License.) + +7. DISCLAIMER OF WARRANTY. + + COVERED CODE IS PROVIDED UNDER THIS LICENSE ON AN "AS IS" BASIS, +WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, WITHOUT +LIMITATION, WARRANTIES THAT THE COVERED CODE IS FREE OF DEFECTS, MERCHANTABLE, +FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING. THE ENTIRE RISK AS TO THE +QUALITY AND PERFORMANCE OF THE COVERED CODE IS WITH YOU. SHOULD ANY COVERED +CODE PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT THE INITIAL DEVELOPER OR ANY +OTHER CONTRIBUTOR) ASSUME THE COST OF ANY NECESSARY SERVICING, REPAIR OR +CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS +LICENSE. NO USE OF ANY COVERED CODE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS +DISCLAIMER. + +8. TERMINATION. + + 8.1. This License and the rights granted hereunder will terminate +automatically if You fail to comply with terms herein and fail to cure such +breach within 30 days of becoming aware of the breach. All sublicenses to the +Covered Code which are properly granted shall survive any termination of this +License. Provisions which, by their nature, must remain in effect beyond the +termination of this License shall survive. + + 8.2. If You initiate litigation by asserting a patent infringement +claim (excluding declatory judgment actions) against Initial Developer or a +Contributor (the Initial Developer or Contributor against whom You file such +action is referred to as "Participant") alleging that: + + (a) such Participant's Contributor Version directly or indirectly +infringes any patent, then any and all rights granted by such Participant to +You under Sections 2.1 and/or 2.2 of this License shall, upon 60 days notice +from Participant terminate prospectively, unless if within 60 days after +receipt of notice You either: (i) agree in writing to pay Participant a +mutually agreeable reasonable royalty for Your past and future use of +Modifications made by such Participant, or (ii) withdraw Your litigation claim +with respect to the Contributor Version against such Participant. If within +60 days of notice, a reasonable royalty and payment arrangement are not +mutually agreed upon in writing by the parties or the litigation claim is not +withdrawn, the rights granted by Participant to You under Sections 2.1 and/or +2.2 automatically terminate at the expiration of the 60 day notice period +specified above. + + (b) any software, hardware, or device, other than such Participant's +Contributor Version, directly or indirectly infringes any patent, then any +rights granted to You by such Participant under Sections 2.1(b) and 2.2(b) are +revoked effective as of the date You first made, used, sold, distributed, or +had made, Modifications made by that Participant. + + 8.3. If You assert a patent infringement claim against Participant +alleging that such Participant's Contributor Version directly or indirectly +infringes any patent where such claim is resolved (such as by license or +settlement) prior to the initiation of patent infringement litigation, then +the reasonable value of the licenses granted by such Participant under +Sections 2.1 or 2.2 shall be taken into account in determining the amount or +value of any payment or license. + + 8.4. In the event of termination under Sections 8.1 or 8.2 above, all +end user license agreements (excluding distributors and resellers) which have +been validly granted by You or any distributor hereunder prior to termination +shall survive termination. + +9. LIMITATION OF LIABILITY. + + UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT +(INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL YOU, THE INITIAL +DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF COVERED CODE, OR ANY +SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON FOR ANY INDIRECT, +SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING, +WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL, WORK STOPPAGE, COMPUTER +FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER COMMERCIAL DAMAGES OR LOSSES, +EVEN IF SUCH PARTY SHALL HAVE BEEN INFORMED OF THE POSSIBILITY OF SUCH +DAMAGES. THIS LIMITATION OF LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH +OR PERSONAL INJURY RESULTING FROM SUCH PARTY'S NEGLIGENCE TO THE EXTENT +APPLICABLE LAW PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO NOT ALLOW THE +EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO THIS +EXCLUSION AND LIMITATION MAY NOT APPLY TO YOU. + +10. U.S. GOVERNMENT END USERS. + + The Covered Code is a "commercial item," as that term is defined in 48 +C.F.R. 2.101 (Oct. 1995), consisting of "commercial computer software" and +"commercial computer software documentation," as such terms are used in 48 +C.F.R. 12.212 (Sept. 1995). Consistent with 48 C.F.R. 12.212 and 48 C.F.R. +227.7202-1 through 227.7202-4 (June 1995), all U.S. Government End Users +acquire Covered Code with only those rights set forth herein. + +11. MISCELLANEOUS. + + This License represents the complete agreement concerning subject matter +hereof. If any provision of this License is held to be unenforceable, such +provision shall be reformed only to the extent necessary to make it +enforceable. This License shall be governed by California law provisions +(except to the extent applicable law, if any, provides otherwise), excluding +its conflict-of-law provisions. With respect to disputes in which at least one +party is a citizen of, or an entity chartered or registered to do business in +the United States of America, any litigation relating to this License shall be +subject to the jurisdiction of the Federal Courts of the Northern District of +California, with venue lying in Santa Clara County, California, with the +losing party responsible for costs, including without limitation, court costs +and reasonable attorneys' fees and expenses. The application of the United +Nations Convention on Contracts for the International Sale of Goods is +expressly excluded. Any law or regulation which provides that the language of +a contract shall be construed against the drafter shall not apply to this +License. + +12. RESPONSIBILITY FOR CLAIMS. + + As between Initial Developer and the Contributors, each party is +responsible for claims and damages arising, directly or indirectly, out of its +utilization of rights under this License and You agree to work with Initial +Developer and Contributors to distribute such responsibility on an equitable +basis. Nothing herein is intended or shall be deemed to constitute any +admission of liability. + +13. MULTIPLE-LICENSED CODE. + + Initial Developer may designate portions of the Covered Code as +Multiple-Licensed. Multiple-Licensed means that the Initial Developer permits +you to utilize portions of the Covered Code under Your choice of the MPL or +the alternative licenses, if any, specified by the Initial Developer in the +file described in Exhibit A. + + +EXHIBIT A -Mozilla Public License. + + ``The contents of this file are subject to the Mozilla Public License +Version 1.1 (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.mozilla.org/MPL/ + + Software distributed under the License is distributed on an "AS IS" +basis, WITHOUT WARRANTY OF + ANY KIND, either express or implied. See the License for the specific +language governing rights and + limitations under the License. + + The Original Code is ______________________________________. + + The Initial Developer of the Original Code is ________________________. +Portions created by + ______________________ are Copyright (C) ______ +_______________________. All Rights + Reserved. + + Contributor(s): ______________________________________. + + Alternatively, the contents of this file may be used under the terms of +the _____ license (the [___] License), in which case the provisions of +[______] License are applicable instead of those above. If you wish to allow +use of your version of this file only under the terms of the [____] License +and not to allow others to use your version of this file under the MPL, +indicate your decision by deleting the provisions above and replace them +with the notice and other provisions required by the [___] License. If you do +not delete the provisions above, a recipient may use your version of this file +under either the MPL or the [___] License." + + [NOTE: The text of this Exhibit A may differ slightly from the text of +the notices in the Source Code files of the Original Code. You should use the +text of this Exhibit A rather than the text found in the Original Code Source +Code for Your Modifications.] + + +=============================================================================== + +For the JAX-WS Reference Implementation component: + +COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.0 + + + 1. Definitions. + + 1.1. "Contributor" means each individual or entity that + creates or contributes to the creation of Modifications. + + 1.2. "Contributor Version" means the combination of the + Original Software, prior Modifications used by a + Contributor (if any), and the Modifications made by that + particular Contributor. + + 1.3. "Covered Software" means (a) the Original Software, or + (b) Modifications, or (c) the combination of files + containing Original Software with files containing + Modifications, in each case including portions thereof. + + 1.4. "Executable" means the Covered Software in any form + other than Source Code. + + 1.5. "Initial Developer" means the individual or entity + that first makes Original Software available under this + License. + + 1.6. "Larger Work" means a work which combines Covered + Software or portions thereof with code not governed by the + terms of this License. + + 1.7. "License" means this document. + + 1.8. "Licensable" means having the right to grant, to the + maximum extent possible, whether at the time of the initial + grant or subsequently acquired, any and all of the rights + conveyed herein. + + 1.9. "Modifications" means the Source Code and Executable + form of any of the following: + + A. Any file that results from an addition to, + deletion from or modification of the contents of a + file containing Original Software or previous + Modifications; + + B. Any new file that contains any part of the + Original Software or previous Modification; or + + C. Any new file that is contributed or otherwise made + available under the terms of this License. + + 1.10. "Original Software" means the Source Code and + Executable form of computer software code that is + originally released under this License. + + 1.11. "Patent Claims" means any patent claim(s), now owned + or hereafter acquired, including without limitation, + method, process, and apparatus claims, in any patent + Licensable by grantor. + + 1.12. "Source Code" means (a) the common form of computer + software code in which modifications are made and (b) + associated documentation included in or with such code. + + 1.13. "You" (or "Your") means an individual or a legal + entity exercising rights under, and complying with all of + the terms of, this License. For legal entities, "You" + includes any entity which controls, is controlled by, or is + under common control with You. For purposes of this + definition, "control" means (a) the power, direct or + indirect, to cause the direction or management of such + entity, whether by contract or otherwise, or (b) ownership + of more than fifty percent (50%) of the outstanding shares + or beneficial ownership of such entity. + + 2. License Grants. + + 2.1. The Initial Developer Grant. + + Conditioned upon Your compliance with Section 3.1 below and + subject to third party intellectual property claims, the + Initial Developer hereby grants You a world-wide, + royalty-free, non-exclusive license: + + (a) under intellectual property rights (other than + patent or trademark) Licensable by Initial Developer, + to use, reproduce, modify, display, perform, + sublicense and distribute the Original Software (or + portions thereof), with or without Modifications, + and/or as part of a Larger Work; and + + (b) under Patent Claims infringed by the making, + using or selling of Original Software, to make, have + made, use, practice, sell, and offer for sale, and/or + otherwise dispose of the Original Software (or + portions thereof). + + (c) The licenses granted in Sections 2.1(a) and (b) + are effective on the date Initial Developer first + distributes or otherwise makes the Original Software + available to a third party under the terms of this + License. + + (d) Notwithstanding Section 2.1(b) above, no patent + license is granted: (1) for code that You delete from + the Original Software, or (2) for infringements + caused by: (i) the modification of the Original + Software, or (ii) the combination of the Original + Software with other software or devices. + + 2.2. Contributor Grant. + + Conditioned upon Your compliance with Section 3.1 below and + subject to third party intellectual property claims, each + Contributor hereby grants You a world-wide, royalty-free, + non-exclusive license: + + (a) under intellectual property rights (other than + patent or trademark) Licensable by Contributor to + use, reproduce, modify, display, perform, sublicense + and distribute the Modifications created by such + Contributor (or portions thereof), either on an + unmodified basis, with other Modifications, as + Covered Software and/or as part of a Larger Work; and + + + (b) under Patent Claims infringed by the making, + using, or selling of Modifications made by that + Contributor either alone and/or in combination with + its Contributor Version (or portions of such + combination), to make, use, sell, offer for sale, + have made, and/or otherwise dispose of: (1) + Modifications made by that Contributor (or portions + thereof); and (2) the combination of Modifications + made by that Contributor with its Contributor Version + (or portions of such combination). + + (c) The licenses granted in Sections 2.2(a) and + 2.2(b) are effective on the date Contributor first + distributes or otherwise makes the Modifications + available to a third party. + + (d) Notwithstanding Section 2.2(b) above, no patent + license is granted: (1) for any code that Contributor + has deleted from the Contributor Version; (2) for + infringements caused by: (i) third party + modifications of Contributor Version, or (ii) the + combination of Modifications made by that Contributor + with other software (except as part of the + Contributor Version) or other devices; or (3) under + Patent Claims infringed by Covered Software in the + absence of Modifications made by that Contributor. + + 3. Distribution Obligations. + + 3.1. Availability of Source Code. + + Any Covered Software that You distribute or otherwise make + available in Executable form must also be made available in + Source Code form and that Source Code form must be + distributed only under the terms of this License. You must + include a copy of this License with every copy of the + Source Code form of the Covered Software You distribute or + otherwise make available. You must inform recipients of any + such Covered Software in Executable form as to how they can + obtain such Covered Software in Source Code form in a + reasonable manner on or through a medium customarily used + for software exchange. + + 3.2. Modifications. + + The Modifications that You create or to which You + contribute are governed by the terms of this License. You + represent that You believe Your Modifications are Your + original creation(s) and/or You have sufficient rights to + grant the rights conveyed by this License. + + 3.3. Required Notices. + + You must include a notice in each of Your Modifications + that identifies You as the Contributor of the Modification. + You may not remove or alter any copyright, patent or + trademark notices contained within the Covered Software, or + any notices of licensing or any descriptive text giving + attribution to any Contributor or the Initial Developer. + + 3.4. Application of Additional Terms. + + You may not offer or impose any terms on any Covered + Software in Source Code form that alters or restricts the + applicable version of this License or the recipients' + rights hereunder. You may choose to offer, and to charge a + fee for, warranty, support, indemnity or liability + obligations to one or more recipients of Covered Software. + However, you may do so only on Your own behalf, and not on + behalf of the Initial Developer or any Contributor. You + must make it absolutely clear that any such warranty, + support, indemnity or liability obligation is offered by + You alone, and You hereby agree to indemnify the Initial + Developer and every Contributor for any liability incurred + by the Initial Developer or such Contributor as a result of + warranty, support, indemnity or liability terms You offer. + + + 3.5. Distribution of Executable Versions. + + You may distribute the Executable form of the Covered + Software under the terms of this License or under the terms + of a license of Your choice, which may contain terms + different from this License, provided that You are in + compliance with the terms of this License and that the + license for the Executable form does not attempt to limit + or alter the recipient's rights in the Source Code form + from the rights set forth in this License. If You + distribute the Covered Software in Executable form under a + different license, You must make it absolutely clear that + any terms which differ from this License are offered by You + alone, not by the Initial Developer or Contributor. You + hereby agree to indemnify the Initial Developer and every + Contributor for any liability incurred by the Initial + Developer or such Contributor as a result of any such terms + You offer. + + 3.6. Larger Works. + + You may create a Larger Work by combining Covered Software + with other code not governed by the terms of this License + and distribute the Larger Work as a single product. In such + a case, You must make sure the requirements of this License + are fulfilled for the Covered Software. + + 4. Versions of the License. + + 4.1. New Versions. + + Sun Microsystems, Inc. is the initial license steward and + may publish revised and/or new versions of this License + from time to time. Each version will be given a + distinguishing version number. Except as provided in + Section 4.3, no one other than the license steward has the + right to modify this License. + + 4.2. Effect of New Versions. + + You may always continue to use, distribute or otherwise + make the Covered Software available under the terms of the + version of the License under which You originally received + the Covered Software. If the Initial Developer includes a + notice in the Original Software prohibiting it from being + distributed or otherwise made available under any + subsequent version of the License, You must distribute and + make the Covered Software available under the terms of the + version of the License under which You originally received + the Covered Software. Otherwise, You may also choose to + use, distribute or otherwise make the Covered Software + available under the terms of any subsequent version of the + License published by the license steward. + + 4.3. Modified Versions. + + When You are an Initial Developer and You want to create a + new license for Your Original Software, You may create and + use a modified version of this License if You: (a) rename + the license and remove any references to the name of the + license steward (except to note that the license differs + from this License); and (b) otherwise make it clear that + the license contains terms which differ from this License. + + + 5. DISCLAIMER OF WARRANTY. + + COVERED SOFTWARE IS PROVIDED UNDER THIS LICENSE ON AN "AS IS" + BASIS, WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, + INCLUDING, WITHOUT LIMITATION, WARRANTIES THAT THE COVERED + SOFTWARE IS FREE OF DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR + PURPOSE OR NON-INFRINGING. THE ENTIRE RISK AS TO THE QUALITY AND + PERFORMANCE OF THE COVERED SOFTWARE IS WITH YOU. SHOULD ANY + COVERED SOFTWARE PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT THE + INITIAL DEVELOPER OR ANY OTHER CONTRIBUTOR) ASSUME THE COST OF + ANY NECESSARY SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER OF + WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF + ANY COVERED SOFTWARE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS + DISCLAIMER. + + 6. TERMINATION. + + 6.1. This License and the rights granted hereunder will + terminate automatically if You fail to comply with terms + herein and fail to cure such breach within 30 days of + becoming aware of the breach. Provisions which, by their + nature, must remain in effect beyond the termination of + this License shall survive. + + 6.2. If You assert a patent infringement claim (excluding + declaratory judgment actions) against Initial Developer or + a Contributor (the Initial Developer or Contributor against + whom You assert such claim is referred to as "Participant") + alleging that the Participant Software (meaning the + Contributor Version where the Participant is a Contributor + or the Original Software where the Participant is the + Initial Developer) directly or indirectly infringes any + patent, then any and all rights granted directly or + indirectly to You by such Participant, the Initial + Developer (if the Initial Developer is not the Participant) + and all Contributors under Sections 2.1 and/or 2.2 of this + License shall, upon 60 days notice from Participant + terminate prospectively and automatically at the expiration + of such 60 day notice period, unless if within such 60 day + period You withdraw Your claim with respect to the + Participant Software against such Participant either + unilaterally or pursuant to a written agreement with + Participant. + + 6.3. In the event of termination under Sections 6.1 or 6.2 + above, all end user licenses that have been validly granted + by You or any distributor hereunder prior to termination + (excluding licenses granted to You by any distributor) + shall survive termination. + + 7. LIMITATION OF LIABILITY. + + UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT + (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL YOU, THE + INITIAL DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF + COVERED SOFTWARE, OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE + LIABLE TO ANY PERSON FOR ANY INDIRECT, SPECIAL, INCIDENTAL, OR + CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING, WITHOUT + LIMITATION, DAMAGES FOR LOST PROFITS, LOSS OF GOODWILL, WORK + STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER + COMMERCIAL DAMAGES OR LOSSES, EVEN IF SUCH PARTY SHALL HAVE BEEN + INFORMED OF THE POSSIBILITY OF SUCH DAMAGES. THIS LIMITATION OF + LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH OR PERSONAL + INJURY RESULTING FROM SUCH PARTY'S NEGLIGENCE TO THE EXTENT + APPLICABLE LAW PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO + NOT ALLOW THE EXCLUSION OR LIMITATION OF INCIDENTAL OR + CONSEQUENTIAL DAMAGES, SO THIS EXCLUSION AND LIMITATION MAY NOT + APPLY TO YOU. + + 8. U.S. GOVERNMENT END USERS. + + The Covered Software is a "commercial item," as that term is + defined in 48 C.F.R. 2.101 (Oct. 1995), consisting of "commercial + computer software" (as that term is defined at 48 C.F.R. + 252.227-7014(a)(1)) and "commercial computer software + documentation" as such terms are used in 48 C.F.R. 12.212 (Sept. + 1995). Consistent with 48 C.F.R. 12.212 and 48 C.F.R. 227.7202-1 + through 227.7202-4 (June 1995), all U.S. Government End Users + acquire Covered Software with only those rights set forth herein. + This U.S. Government Rights clause is in lieu of, and supersedes, + any other FAR, DFAR, or other clause or provision that addresses + Government rights in computer software under this License. + + 9. MISCELLANEOUS. + + This License represents the complete agreement concerning subject + matter hereof. If any provision of this License is held to be + unenforceable, such provision shall be reformed only to the + extent necessary to make it enforceable. This License shall be + governed by the law of the jurisdiction specified in a notice + contained within the Original Software (except to the extent + applicable law, if any, provides otherwise), excluding such + jurisdiction's conflict-of-law provisions. Any litigation + relating to this License shall be subject to the jurisdiction of + the courts located in the jurisdiction and venue specified in a + notice contained within the Original Software, with the losing + party responsible for costs, including, without limitation, court + costs and reasonable attorneys' fees and expenses. The + application of the United Nations Convention on Contracts for the + International Sale of Goods is expressly excluded. Any law or + regulation which provides that the language of a contract shall + be construed against the drafter shall not apply to this License. + You agree that You alone are responsible for compliance with the + United States export administration regulations (and the export + control laws and regulation of any other countries) when You use, + distribute or otherwise make available any Covered Software. + + 10. RESPONSIBILITY FOR CLAIMS. + + As between Initial Developer and the Contributors, each party is + responsible for claims and damages arising, directly or + indirectly, out of its utilization of rights under this License + and You agree to work with Initial Developer and Contributors to + distribute such responsibility on an equitable basis. Nothing + herein is intended or shall be deemed to constitute any admission + of liability. + diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/src/main/resources/META-INF/NOTICE b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/src/main/resources/META-INF/NOTICE new file mode 100644 index 0000000000..d48810c0ec --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/src/main/resources/META-INF/NOTICE @@ -0,0 +1,18 @@ +========================================================================= +== NOTICE file corresponding to the section 4 d of == +== the Apache License, Version 2.0, == +== in this case for the Apache Tuscany distribution. == +========================================================================= + +This product includes software developed by the Apache Software Foundation +(http://www.apache.org/). + +This product also includes software developed by: +- the Eclipse Modeling Framework project (http://www.eclipse.org/emf/) +- the Celtix project (http://celtix.objectweb.org/) +- the Mozilla Rhino project (http://www.mozilla.org/rhino/) +- the GlassFish JAX-WS project (https://jax-ws.dev.java.net/) + +Please read the LICENSE.txt file present in the root directory of this +distribution. + diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/src/main/resources/META-INF/README.txt b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/src/main/resources/META-INF/README.txt new file mode 100644 index 0000000000..9b26d1690a --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/src/main/resources/META-INF/README.txt @@ -0,0 +1,35 @@ +Apache Tuscany M1 build (May, 2006) +=================================== + +http://incubator.apache.org/tuscany/ + +Tuscany is an effort undergoing incubation at the Apache Software Foundation +(ASF), sponsored by the Web Services PMC. + +Incubation is required of all newly accepted projects until a further review +indicates that the infrastructure, communications, and decision making process +have stabilized in a manner consistent with other successful ASF projects. + +While incubation status is not necessarily a reflection of the completeness or +stability of the code, it does indicate that the project has yet to be fully +endorsed by the ASF. + + +Support +------- + +Any problem with this release can be reported to the Tuscany mailing list +or in the JIRA issue tracker. + +Mailing list subscription: + tuscany-dev-subscribe@ws.apache.org + +Jira: + http://issues.apache.org/jira/browse/Tuscany + + +Thank you for using Tuscany! + + +The Tuscany Team. + diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/src/main/resources/META-INF/sca/default.scdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/src/main/resources/META-INF/sca/default.scdl new file mode 100644 index 0000000000..0ed260399c --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/src/main/resources/META-INF/sca/default.scdl @@ -0,0 +1,38 @@ +<?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" + xmlns:dbsdo="http://tuscany.apache.org/xmlns/sca/databinding/sdo/1.0" + name="InteropClient"> + + <dbsdo:import.sdo location="wsdl/interoptestdoclit.wsdl"/> + <dbsdo:import.sdo factory="org.soapinterop.xsd.XsdFactory"/> + + <reference name="RemoteInteropDocService"> +<!-- + <interface.wsdl interface="http://soapinterop.org/WSDLInteropTestDocLit#wsdl.interface(WSDLInteropTestDocLitPortType)"/> + <binding.ws port="http://soapinterop.org/WSDLInteropTestDocLit#wsdl.endpoint(WSDLInteropTestDocLitService/WSDLInteropTestDocLitPort)"/> +--> + + <interface.java interface="org.soapinterop.wsdl.interop.test.doc.lit.WSDLInteropTestDocLitPortType"/> + <binding.ws endpoint="http://soapinterop.org/WSDLInteropTestDocLit#wsdl.endpoint(WSDLInteropTestDocLitService/WSDLInteropTestDocLitPort)" + location="wsdl/interoptestdoclit.wsdl" /> + </reference> + +</composite>
\ No newline at end of file diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/src/main/resources/META-INF/tuscany/extensions/includes/binding.axis2.scdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/src/main/resources/META-INF/tuscany/extensions/includes/binding.axis2.scdl new file mode 100644 index 0000000000..fb208f56ab --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/src/main/resources/META-INF/tuscany/extensions/includes/binding.axis2.scdl @@ -0,0 +1,39 @@ +<?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. +--> +<!-- Axis2 based WebService binding extension --> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" + xmlns:system="http://tuscany.apache.org/xmlns/system/1.0-SNAPSHOT" + name="org.apache.tuscany.binding.axis2.WebServiceBinding"> + + <dependency xmlns="http://tuscany.apache.org/xmlns/1.0-SNAPSHOT"> + <group>axis2</group> + <name>axis2-kernel</name> + <version>SNAPSHOT</version> + </dependency> + + <component name="webservice.bindingLoader"> + <system:implementation.system class="org.apache.tuscany.binding.axis2.WebServiceBindingLoader"/> + </component> + + <component name="webservice.axis2.bindingBuilder"> + <system:implementation.system class="org.apache.tuscany.binding.axis2.Axis2BindingBuilder"/> + </component> + +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/src/main/resources/META-INF/tuscany/extensions/includes/databinding.axiom.scdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/src/main/resources/META-INF/tuscany/extensions/includes/databinding.axiom.scdl new file mode 100644 index 0000000000..21df676937 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/src/main/resources/META-INF/tuscany/extensions/includes/databinding.axiom.scdl @@ -0,0 +1,50 @@ +<?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" xmlns:system="http://tuscany.apache.org/xmlns/system/1.0-SNAPSHOT" + name="org.apache.tuscany.databinding.Axiom"> + + <component name="databinding.axiom"> + <system:implementation.system class="org.apache.tuscany.databinding.axiom.AxiomDataBinding" /> + </component> + + <component name="transformer.XMLStreamReader2OMElement"> + <system:implementation.system class="org.apache.tuscany.databinding.axiom.XMLStreamReader2OMElement" /> + </component> + + <component name="transformer.OMElement2XMLStreamReader"> + <system:implementation.system class="org.apache.tuscany.databinding.axiom.OMElement2XMLStreamReader" /> + </component> + + <component name="transformer.String2OMElement"> + <system:implementation.system class="org.apache.tuscany.databinding.axiom.String2OMElement" /> + </component> + + <component name="transformer.OMElement2String"> + <system:implementation.system class="org.apache.tuscany.databinding.axiom.OMElement2String" /> + </component> + + <component name="transformer.Object2OMElement"> + <system:implementation.system class="org.apache.tuscany.databinding.axiom.Object2OMElement" /> + </component> + + <component name="transformer.OMElement2Object"> + <system:implementation.system class="org.apache.tuscany.databinding.axiom.OMElement2Object" /> + </component> +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/src/main/resources/META-INF/tuscany/extensions/includes/databinding.sdo.scdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/src/main/resources/META-INF/tuscany/extensions/includes/databinding.sdo.scdl new file mode 100644 index 0000000000..61753384b4 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/src/main/resources/META-INF/tuscany/extensions/includes/databinding.sdo.scdl @@ -0,0 +1,60 @@ +<?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. +--> +<!-- + import.sdo configuration + + $Rev: 431086 $ $Date: 2006-08-12 13:58:17 -0700 (Sat, 12 Aug 2006) $ +--> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" + xmlns:system="http://tuscany.apache.org/xmlns/system/1.0-SNAPSHOT" + name="org.apache.tuscany.databinding.sdo"> + + <!-- import.sdo element loader implementations --> + <component name="elementLoader.import.sdo"> + <system:implementation.system class="org.apache.tuscany.databinding.sdo.ImportSDOLoader"/> + </component> + + <component name="databinding.sdo"> + <system:implementation.system class="org.apache.tuscany.databinding.sdo.SDODataBinding" /> + </component> + + <component name="transformer.DataObject2String"> + <system:implementation.system class="org.apache.tuscany.databinding.sdo.DataObject2String"/> + </component> + <component name="transformer.DataObject2XMLStreamReader"> + <system:implementation.system class="org.apache.tuscany.databinding.sdo.DataObject2XMLStreamReader"/> + </component> + <component name="transformer.XMLDocument2String"> + <system:implementation.system class="org.apache.tuscany.databinding.sdo.XMLDocument2String"/> + </component> + <component name="transformer.String2DataObject"> + <system:implementation.system class="org.apache.tuscany.databinding.sdo.String2DataObject"/> + </component> + <component name="transformer.XMLDocument2XMLStreamReader"> + <system:implementation.system class="org.apache.tuscany.databinding.sdo.XMLDocument2XMLStreamReader"/> + </component> + <component name="transformer.XMLStreamReader2DataObject"> + <system:implementation.system class="org.apache.tuscany.databinding.sdo.XMLStreamReader2DataObject"/> + </component> + <component name="transformer.XMLStreamReader2XMLDocument"> + <system:implementation.system class="org.apache.tuscany.databinding.sdo.XMLStreamReader2XMLDocument"/> + </component> + +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/src/main/resources/META-INF/tuscany/extensions/includes/interface.wsdl.scdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/src/main/resources/META-INF/tuscany/extensions/includes/interface.wsdl.scdl new file mode 100644 index 0000000000..84538dab8b --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/src/main/resources/META-INF/tuscany/extensions/includes/interface.wsdl.scdl @@ -0,0 +1,55 @@ +<?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. +--> +<!-- + Default system configuration for the launcher environment. + + $Rev: 440894 $ $Date: 2006-09-06 15:52:01 -0700 (Wed, 06 Sep 2006) $ +--> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" xmlns:system="http://tuscany.apache.org/xmlns/system/1.0-SNAPSHOT" + name="org.apache.tuscany.idl.WSDL"> + + <dependency xmlns="http://tuscany.apache.org/xmlns/1.0-SNAPSHOT"> + <group>wsdl4j</group> + <name>wsdl4j</name> + <version>1.5.2</version> + </dependency> + <dependency xmlns="http://tuscany.apache.org/xmlns/1.0-SNAPSHOT"> + <group>org.apache.ws.commons</group> + <name>XmlSchema</name> + <version>SNAPSHOT</version> + </dependency> + + <component name="interface.wsdl.Loader"> + <system:implementation.system class="org.apache.tuscany.idl.wsdl.InterfaceWSDLLoader" /> + </component> + + <component name="wsdl.Registry"> + <system:implementation.system class="org.apache.tuscany.idl.wsdl.WSDLDefinitionRegistryImpl" initLevel="40" /> + </component> + + <component name="xmlSchema.registry"> + <system:implementation.system class="org.apache.tuscany.idl.wsdl.XMLSchemaRegistryImpl" initLevel="35" /> + </component> + + <component name="interface.wsdl.Introspector"> + <system:implementation.system class="org.apache.tuscany.idl.wsdl.InterfaceWSDLIntrospectorImpl" initLevel="40" /> + </component> + +</composite>
\ No newline at end of file diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/src/main/resources/META-INF/tuscany/extensions/test-extensions.scdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/src/main/resources/META-INF/tuscany/extensions/test-extensions.scdl new file mode 100644 index 0000000000..1e8c3b1589 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/src/main/resources/META-INF/tuscany/extensions/test-extensions.scdl @@ -0,0 +1,25 @@ +<?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 name="test.extensions" xmlns="http://www.osoa.org/xmlns/sca/1.0" xmlns:system="http://tuscany.apache.org/xmlns/system/1.0-SNAPSHOT"> + <include name="org.apache.tuscany.interface.wsdl" scdlLocation="includes/interface.wsdl.scdl"/> + <include name="org.apache.tuscany.databinding.axiom" scdlLocation="includes/databinding.axiom.scdl"/> + <include name="org.apache.tuscany.databinding.sdo" scdlLocation="includes/databinding.sdo.scdl"/> + <include name="org.apache.tuscany.binding.axis2" scdlLocation="includes/binding.axis2.scdl"/> +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/src/main/resources/wsdl/interoptestdoclit.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/src/main/resources/wsdl/interoptestdoclit.wsdl new file mode 100644 index 0000000000..e08039cedb --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/src/main/resources/wsdl/interoptestdoclit.wsdl @@ -0,0 +1,155 @@ +<?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. + --> +<definitions name="WSDLInteropTestDocLitService" + targetNamespace="http://soapinterop.org/WSDLInteropTestDocLit" + xmlns="http://schemas.xmlsoap.org/wsdl/" + xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" + xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" + xmlns:tns="http://soapinterop.org/WSDLInteropTestDocLit" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:xsd1="http://soapinterop.org/xsd" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> + <types> + <schema targetNamespace="http://soapinterop.org/xsd" + xmlns="http://www.w3.org/2001/XMLSchema" + xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" + elementFormDefault="qualified"> + <complexType name="ArrayOfstring_literal"> + <sequence> + <element maxOccurs="unbounded" minOccurs="1" name="string" type="xsd:string"/> + </sequence> + </complexType> + <complexType name="SOAPStruct"> + <all> + <element name="varFloat" type="xsd:float"/> + <element name="varInt" type="xsd:int"/> + <element name="varString" type="xsd:string"/> + </all> + </complexType> + + <element name="echoStringParam" type="xsd:string"/> + + <element name="echoStringReturn" type="xsd:string"/> + <element name="echoStringArrayParam" type="xsd1:ArrayOfstring_literal"/> + + <element name="echoStringArrayReturn" type="xsd1:ArrayOfstring_literal"/> + + <element name="echoStructParam" type="xsd1:SOAPStruct"/> + + <element name="echoStructReturn" type="xsd1:SOAPStruct"/> + </schema> + </types> + <message name="echoString"> + <part element="xsd1:echoStringParam" name="a"/> + </message> + <message name="echoStringResponse"> + <part element="xsd1:echoStringReturn" name="result"/> + </message> + <message name="echoStringArray"> + <part element="xsd1:echoStringArrayParam" name="a"/> + </message> + <message name="echoStringArrayResponse"> + <part element="xsd1:echoStringArrayReturn" name="result"/> + </message> + <message name="echoStruct"> + <part element="xsd1:echoStructParam" name="a"/> + </message> + <message name="echoStructResponse"> + <part element="xsd1:echoStructReturn" name="result"/> + </message> + <message name="echoVoid"/> + <message name="echoVoidResponse"/> + + <portType name="WSDLInteropTestDocLitPortType"> + <operation name="echoString"> + <input message="tns:echoString" name="echoString"/> + <output message="tns:echoStringResponse" name="echoStringResponse"/> + </operation> + <operation name="echoStringArray"> + <input message="tns:echoStringArray" name="echoStringArray"/> + <output message="tns:echoStringArrayResponse" name="echoStringArrayResponse"/> + </operation> + <operation name="echoStruct"> + <input message="tns:echoStruct" name="echoStruct"/> + <output message="tns:echoStructResponse" name="echoStructResponse"/> + </operation> + <operation name="echoVoid"> + <input message="tns:echoVoid" name="echoVoid"/> + <output message="tns:echoVoidResponse" name="echoVoidResponse"/> + </operation> + </portType> + <binding name="WSDLInteropTestDocLitPortBinding" + type="tns:WSDLInteropTestDocLitPortType"> + <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> + <operation name="echoString"> + <soap:operation soapAction="http://soapinterop.org/" style="document"/> + <input name="echoString"> + <soap:body namespace="http://soapinterop.org/WSDLInteropTestDocLit" + use="literal"/> + </input> + <output name="echoStringResponse"> + <soap:body namespace="http://soapinterop.org/WSDLInteropTestDocLit" + use="literal"/> + </output> + </operation> + <operation name="echoStringArray"> + <soap:operation soapAction="http://soapinterop.org/" style="document"/> + <input name="echoStringArray"> + <soap:body namespace="http://soapinterop.org/WSDLInteropTestDocLit" + use="literal"/> + </input> + <output name="echoStringArrayResponse"> + <soap:body namespace="http://soapinterop.org/WSDLInteropTestDocLit" + use="literal"/> + </output> + </operation> + <operation name="echoStruct"> + <soap:operation soapAction="http://soapinterop.org/" style="document"/> + <input name="echoStruct"> + <soap:body namespace="http://soapinterop.org/WSDLInteropTestDocLit" + use="literal"/> + </input> + <output name="echoStructResponse"> + <soap:body namespace="http://soapinterop.org/WSDLInteropTestDocLit" + use="literal"/> + </output> + </operation> + <operation name="echoVoid"> + <soap:operation soapAction="http://soapinterop.org/" style="document"/> + <input name="echoVoid"> + <soap:body namespace="http://soapinterop.org/WSDLInteropTestDocLit" + use="literal"/> + </input> + <output name="echoVoidResponse"> + <soap:body namespace="http://soapinterop.org/WSDLInteropTestDocLit" + use="literal"/> + </output> + </operation> + </binding> + <service name="WSDLInteropTestDocLitService"> + <port binding="tns:WSDLInteropTestDocLitPortBinding" + name="WSDLInteropTestDocLitPort"> + <soap:address + location="http://mssoapinterop.org/stkv3/wsdl/interopTestDocLit.wsdl"/> + <http-conf:client xmlns:http-conf="http://celtix.objectweb.org/transports/http/configuration" + AllowChunking="false"/> + </port> + </service> +</definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/src/test/java/org/apache/tuscany/test/interop/client/InteropTestDocLitTestCase.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/src/test/java/org/apache/tuscany/test/interop/client/InteropTestDocLitTestCase.java new file mode 100644 index 0000000000..da70d5b3a6 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceSOAPRound2/src/test/java/org/apache/tuscany/test/interop/client/InteropTestDocLitTestCase.java @@ -0,0 +1,133 @@ +/* + * 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.test.interop.client; + +import java.rmi.RemoteException; +import java.util.Arrays; +import java.util.List; + +import org.apache.tuscany.test.SCATestCase; +import org.osoa.sca.CompositeContext; +import org.osoa.sca.CurrentCompositeContext; +import org.soapinterop.wsdl.interop.test.doc.lit.WSDLInteropTestDocLitPortType; +import org.soapinterop.xsd.ArrayOfstring_literal; +import org.soapinterop.xsd.SOAPStruct; +import org.soapinterop.xsd.XsdPackage; + +import commonj.sdo.helper.DataFactory; + +/** + * This test case is part of the tuscany interop tests. This is a reduced version of the SOAPBuilders InteropTest test, document/literal mode. This + * version has operations such as echoString, echoArrayOfString and echoStruct. + * + * <p> + * The WSDL for the external service used in this test case can be downloaded from http://www.mssoapinterop.org/stkV3/wsdl/InteropTestDocLit.wsdl. + * This is part of the WSDL interop test from Microsoft and more details aobout this test case are found at + * http://www.mssoapinterop.org/stkV3/wsdl/WSDLInterop-0118.htm + */ +public class InteropTestDocLitTestCase extends SCATestCase { + + private WSDLInteropTestDocLitPortType doc = null; + + private DataFactory dataFactory; + + + protected void setUp() throws Exception { + setApplicationSCDL(InteropTestDocLit.class, "META-INF/sca/default.scdl"); + addExtension("test.extensions", InteropTestDocLit.class.getClassLoader().getResource("META-INF/tuscany/extensions/test-extensions.scdl")); + + super.setUp(); + + // Get the SDO DataFactory + dataFactory = DataFactory.INSTANCE; + + // Locate the service to test + doc = locateInteropDocService(); + } + + /** + * Locate the interop service to test + * + * @return + */ + protected WSDLInteropTestDocLitPortType locateInteropDocService() { + + CompositeContext compositeContext = CurrentCompositeContext.getContext(); + return compositeContext.locateService(WSDLInteropTestDocLitPortType.class, "RemoteInteropDocService"); + + } + + /** + * test echo void + * + * @throws RemoteException + */ + public void testEchoVoid() throws RemoteException { + doc.echoVoid(); + assertTrue(true); + } + + /** + * test echo string + * + * @throws RemoteException + */ + public void testEchoString() throws RemoteException { + String input = "a test string"; + String output = doc.echoString(input); + assertEquals(input, output); + } + + /** + * test echo string + * + * @throws RemoteException + */ + public void testEchoStringArray() throws RemoteException { + + ArrayOfstring_literal input = (ArrayOfstring_literal) dataFactory.create(ArrayOfstring_literal.class); + List inStrings = Arrays.asList(new String[] { "petra", "sue" }); + input.set(XsdPackage.ARRAY_OFSTRING_LITERAL__STRING, inStrings); + + ArrayOfstring_literal output = doc.echoStringArray(input); + + List outStrings = output.getString(); + assertNotNull(outStrings); + assertEquals(2, outStrings.size()); + assertEquals("petra", outStrings.get(0)); + assertEquals("sue", outStrings.get(1)); + } + + /** + * test echo struct + * + * @throws RemoteException + */ + public void testEchoStruct() throws RemoteException { + SOAPStruct input = (SOAPStruct) dataFactory.create(SOAPStruct.class); + input.setVarInt(200); + input.setVarFloat(.002f); + input.setVarString("Hello"); + SOAPStruct output = doc.echoStruct(input); + assertEquals(input.getVarInt(), output.getVarInt()); + assertEquals(input.getVarFloat(), output.getVarFloat()); + assertEquals(input.getVarString(), output.getVarString()); + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/LICENSE.txt b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/LICENSE.txt new file mode 100644 index 0000000000..0084319535 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/LICENSE.txt @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, serviceDefinition marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed 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. diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/NOTICE.txt b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/NOTICE.txt new file mode 100644 index 0000000000..d83ebbe236 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/NOTICE.txt @@ -0,0 +1,14 @@ +${pom.name} +Copyright (c) 2005 - 2006 The Apache Software Foundation + +Apache Tuscany is an effort undergoing incubation at The Apache Software +Foundation (ASF), sponsored by the Apache Web Services PMC. Incubation is +required of all newly accepted projects until a further review indicates that +the infrastructure, communications, and decision making process have stabilized +in a manner consistent with other successful ASF projects. While incubation +status is not necessarily a reflection of the completeness or stability of the +code, it does indicate that the project has yet to be fully endorsed by the ASF. + +This product includes software developed by +The Apache Software Foundation (http://www.apache.org/). + diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/pom.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/pom.xml new file mode 100644 index 0000000000..c31cce8fc3 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/pom.xml @@ -0,0 +1,60 @@ +<?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> + <parent> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>tuscany-interop-clients</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + </parent> + <modelVersion>4.0.0</modelVersion> + <artifactId>interop-client-webserviceXSQ</artifactId> + <packaging>jar</packaging> + <name>Tuscany Interop Testing - Clients - webserviceXSQ</name> + <properties> + <ws.type>axis2</ws.type> + </properties> + + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-surefire-plugin</artifactId> + <configuration> + <forkMode>always</forkMode> + <argLine>-Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,address=3720,server=y,suspend=y</argLine> + </configuration> + </plugin> + </plugins> + </build> + + + + <dependencies> + <dependency> + <groupId>org.apache.tuscany.sca.services.idl</groupId> + <artifactId>tuscany-wsdl</artifactId> + <version>${sca.version}</version> + <scope>provided</scope> + </dependency> + </dependencies> + + + +</project> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/src/main/resources/META-INF/LICENSE.txt b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/src/main/resources/META-INF/LICENSE.txt new file mode 100644 index 0000000000..25d78feeac --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/src/main/resources/META-INF/LICENSE.txt @@ -0,0 +1,1277 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed 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. + + +APACHE TUSCANY SUBCOMPONENTS: + +The Apache Tuscany distribution includes a number of subcomponents with +separate copyright notices and license terms. Your use of the source +code for the these subcomponents is subject to the terms and +conditions of the following licenses. + +=============================================================================== + +For the Eclipse Modeling Framework component and the Celtix binding: + +Eclipse Public License - v 1.0 + +THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE +PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF +THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT. + +1. DEFINITIONS + +"Contribution" means: + +a) in the case of the initial Contributor, the initial code and +documentation distributed under this Agreement, and +b) in the case of each subsequent Contributor: + +i) changes to the Program, and + +ii) additions to the Program; + +where such changes and/or additions to the Program originate from and +are distributed by that particular Contributor. A Contribution +'originates' from a Contributor if it was added to the Program by such +Contributor itself or anyone acting on such Contributor's behalf. +Contributions do not include additions to the Program which: (i) are +separate modules of software distributed in conjunction with the +Program under their own license agreement, and (ii) are not derivative +works of the Program. + +"Contributor" means any person or entity that distributes the Program. + +"Licensed Patents " mean patent claims licensable by a Contributor +which are necessarily infringed by the use or sale of its Contribution +alone or when combined with the Program. + +"Program" means the Contributions distributed in accordance with this +Agreement. + +"Recipient" means anyone who receives the Program under this +Agreement, including all Contributors. + +2. GRANT OF RIGHTS + +a) Subject to the terms of this Agreement, each Contributor hereby +grants Recipient a non-exclusive, worldwide, royalty-free copyright +license to reproduce, prepare derivative works of, publicly display, +publicly perform, distribute and sublicense the Contribution of such +Contributor, if any, and such derivative works, in source code and +object code form. + +b) Subject to the terms of this Agreement, each Contributor hereby +grants Recipient a non-exclusive, worldwide, royalty-free patent +license under Licensed Patents to make, use, sell, offer to sell, +import and otherwise transfer the Contribution of such Contributor, if +any, in source code and object code form. This patent license shall +apply to the combination of the Contribution and the Program if, at +the time the Contribution is added by the Contributor, such addition +of the Contribution causes such combination to be covered by the +Licensed Patents. The patent license shall not apply to any other +combinations which include the Contribution. No hardware per se is +licensed hereunder. + +c) Recipient understands that although each Contributor grants the +licenses to its Contributions set forth herein, no assurances are +provided by any Contributor that the Program does not infringe the +patent or other intellectual property rights of any other entity. Each +Contributor disclaims any liability to Recipient for claims brought by +any other entity based on infringement of intellectual property rights +or otherwise. As a condition to exercising the rights and licenses +granted hereunder, each Recipient hereby assumes sole responsibility +to secure any other intellectual property rights needed, if any. For +example, if a third party patent license is required to allow +Recipient to distribute the Program, it is Recipient's responsibility +to acquire that license before distributing the Program. + +d) Each Contributor represents that to its knowledge it has sufficient +copyright rights in its Contribution, if any, to grant the copyright +license set forth in this Agreement. + +3. REQUIREMENTS + +A Contributor may choose to distribute the Program in object code form +under its own license agreement, provided that: + +a) it complies with the terms and conditions of this Agreement; and + +b) its license agreement: + +i) effectively disclaims on behalf of all Contributors all warranties +and conditions, express and implied, including warranties or +conditions of title and non-infringement, and implied warranties or +conditions of merchantability and fitness for a particular purpose; + +ii) effectively excludes on behalf of all Contributors all liability +for damages, including direct, indirect, special, incidental and +consequential damages, such as lost profits; + +iii) states that any provisions which differ from this Agreement are +offered by that Contributor alone and not by any other party; and + +iv) states that source code for the Program is available from such +Contributor, and informs licensees how to obtain it in a reasonable +manner on or through a medium customarily used for software exchange. + +When the Program is made available in source code form: + +a) it must be made available under this Agreement; and + +b) a copy of this Agreement must be included with each copy of the +Program. + +Contributors may not remove or alter any copyright notices contained +within the Program. + +Each Contributor must identify itself as the originator of its +Contribution, if any, in a manner that reasonably allows subsequent +Recipients to identify the originator of the Contribution. + +4. COMMERCIAL DISTRIBUTION + +Commercial distributors of software may accept certain +responsibilities with respect to end users, business partners and the +like. While this license is intended to facilitate the commercial use +of the Program, the Contributor who includes the Program in a +commercial product offering should do so in a manner which does not +create potential liability for other Contributors. Therefore, if a +Contributor includes the Program in a commercial product offering, +such Contributor ("Commercial Contributor") hereby agrees to defend +and indemnify every other Contributor ("Indemnified Contributor") +against any losses, damages and costs (collectively "Losses") arising +from claims, lawsuits and other legal actions brought by a third party +against the Indemnified Contributor to the extent caused by the acts +or omissions of such Commercial Contributor in connection with its +distribution of the Program in a commercial product offering. The +obligations in this section do not apply to any claims or Losses +relating to any actual or alleged intellectual property infringement. +In order to qualify, an Indemnified Contributor must: a) promptly +notify the Commercial Contributor in writing of such claim, and b) +allow the Commercial Contributor to control, and cooperate with the +Commercial Contributor in, the defense and any related settlement +negotiations. The Indemnified Contributor may participate in any such +claim at its own expense. + +For example, a Contributor might include the Program in a commercial +product offering, Product X. That Contributor is then a Commercial +Contributor. If that Commercial Contributor then makes performance +claims, or offers warranties related to Product X, those performance +claims and warranties are such Commercial Contributor's responsibility +alone. Under this section, the Commercial Contributor would have to +defend claims against the other Contributors related to those +performance claims and warranties, and if a court requires any other +Contributor to pay any damages as a result, the Commercial Contributor +must pay those damages. + +5. NO WARRANTY + +EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS +PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY +WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY +OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely +responsible for determining the appropriateness of using and +distributing the Program and assumes all risks associated with its +exercise of rights under this Agreement , including but not limited to +the risks and costs of program errors, compliance with applicable +laws, damage to or loss of data, programs or equipment, and +unavailability or interruption of operations. + +6. DISCLAIMER OF LIABILITY + +EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR +ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, +INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING +WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR +DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED +HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. + +7. GENERAL + +If any provision of this Agreement is invalid or unenforceable under +applicable law, it shall not affect the validity or enforceability of +the remainder of the terms of this Agreement, and without further +action by the parties hereto, such provision shall be reformed to the +minimum extent necessary to make such provision valid and enforceable. + +If Recipient institutes patent litigation against any entity +(including a cross-claim or counterclaim in a lawsuit) alleging that +the Program itself (excluding combinations of the Program with other +software or hardware) infringes such Recipient's patent(s), then such +Recipient's rights granted under Section 2(b) shall terminate as of +the date such litigation is filed. + +All Recipient's rights under this Agreement shall terminate if it +fails to comply with any of the material terms or conditions of this +Agreement and does not cure such failure in a reasonable period of +time after becoming aware of such noncompliance. If all Recipient's +rights under this Agreement terminate, Recipient agrees to cease use +and distribution of the Program as soon as reasonably practicable. +However, Recipient's obligations under this Agreement and any licenses +granted by Recipient relating to the Program shall continue and +survive. + +Everyone is permitted to copy and distribute copies of this Agreement, +but in order to avoid inconsistency the Agreement is copyrighted and +may only be modified in the following manner. The Agreement Steward +reserves the right to publish new versions (including revisions) of +this Agreement from time to time. No one other than the Agreement +Steward has the right to modify this Agreement. The Eclipse Foundation +is the initial Agreement Steward. The Eclipse Foundation may assign +the responsibility to serve as the Agreement Steward to a suitable +separate entity. Each new version of the Agreement will be given a +distinguishing version number. The Program (including Contributions) +may always be distributed subject to the version of the Agreement +under which it was received. In addition, after a new version of the +Agreement is published, Contributor may elect to distribute the +Program (including its Contributions) under the new version. Except as +expressly stated in Sections 2(a) and 2(b) above, Recipient receives +no rights or licenses to the intellectual property of any Contributor +under this Agreement, whether expressly, by implication, estoppel or +otherwise. All rights in the Program not expressly granted under this +Agreement are reserved. + +This Agreement is governed by the laws of the State of New York and +the intellectual property laws of the United States of America. No +party to this Agreement will bring a legal action under this Agreement +more than one year after the cause of action arose. Each party waives +its rights to a jury trial in any resulting litigation. + +=============================================================================== + +For the Rhino JavaScript container component: + +Mozilla Public License 1.1 (MPL 1.1) + +1. Definitions. + + 1.0.1. "Commercial Use" means distribution or otherwise making the +Covered Code available to a third party. + + 1.1. "Contributor" means each entity that creates or contributes to +the creation of Modifications. + + 1.2. "Contributor Version" means the combination of the Original Code, +prior Modifications used by a Contributor, and the Modifications made by that +particular Contributor. + + 1.3. "Covered Code" means the Original Code or Modifications or the +combination of the Original Code and Modifications, in each case including +portions thereof. + + 1.4. "Electronic Distribution Mechanism" means a mechanism generally +accepted in the software development community for the electronic transfer of +data. + + 1.5. "Executable" means Covered Code in any form other than Source +Code. + + 1.6. "Initial Developer" means the individual or entity identified as +the Initial Developer in the Source Code notice required by Exhibit A. + + 1.7. "Larger Work" means a work which combines Covered Code or +portions thereof with code not governed by the terms of this License. + + 1.8. "License" means this document. + + 1.8.1. "Licensable" means having the right to grant, to the maximum +extent possible, whether at the time of the initial grant or subsequently +acquired, any and all of the rights conveyed herein. + + 1.9. "Modifications" means any addition to or deletion from the +substance or structure of either the Original Code or any previous +Modifications. When Covered Code is released as a series of files, a +Modification is: + A. Any addition to or deletion from the contents of a file +containing Original Code or previous Modifications. + + B. Any new file that contains any part of the Original Code or +previous Modifications. + + 1.10. "Original Code" means Source Code of computer software code +which is described in the Source Code notice required by Exhibit A as Original +Code, and which, at the time of its release under this License is not already +Covered Code governed by this License. + + 1.10.1. "Patent Claims" means any patent claim(s), now owned or +hereafter acquired, including without limitation, method, process, and +apparatus claims, in any patent Licensable by grantor. + + 1.11. "Source Code" means the preferred form of the Covered Code for +making modifications to it, including all modules it contains, plus any +associated interface definition files, scripts used to control compilation and +installation of an Executable, or source code differential comparisons against +either the Original Code or another well known, available Covered Code of the +Contributor's choice. The Source Code can be in a compressed or archival form, +provided the appropriate decompression or de-archiving software is widely +available for no charge. + + 1.12. "You" (or "Your") means an individual or a legal entity +exercising rights under, and complying with all of the terms of, this License +or a future version of this License issued under Section 6.1. For legal +entities, "You" includes any entity which controls, is controlled by, or is +under common control with You. For purposes of this definition, "control" +means (a) the power, direct or indirect, to cause the direction or management +of such entity, whether by contract or otherwise, or (b) ownership of more +than fifty percent (50%) of the outstanding shares or beneficial ownership of +such entity. + +2. Source Code License. + + 2.1. The Initial Developer Grant. + The Initial Developer hereby grants You a world-wide, royalty-free, +non-exclusive license, subject to third party intellectual property claims: + (a) under intellectual property rights (other than patent or +trademark) Licensable by Initial Developer to use, reproduce, modify, display, +perform, sublicense and distribute the Original Code (or portions thereof) +with or without Modifications, and/or as part of a Larger Work; and + + (b) under Patents Claims infringed by the making, using or selling +of Original Code, to make, have made, use, practice, sell, and offer for sale, +and/or otherwise dispose of the Original Code (or portions thereof). + (c) the licenses granted in this Section 2.1(a) and +(b) are effective on the date Initial Developer first distributes Original +Code under the terms of this License. + + (d) Notwithstanding Section 2.1(b) above, no patent license is +granted: 1) for code that You delete from the Original Code; 2) separate from +the Original Code; or 3) for infringements caused by: i) the modification of +the Original Code or ii) the combination of the Original Code with other +software or devices. + + 2.2. Contributor Grant. + Subject to third party intellectual property claims, each Contributor +hereby grants You a world-wide, royalty-free, non-exclusive license + + (a) under intellectual property rights (other than patent or +trademark) Licensable by Contributor, to use, reproduce, modify, display, +perform, sublicense and distribute the Modifications created by such +Contributor (or portions thereof) either on an unmodified basis, with other +Modifications, as Covered Code and/or as part of a Larger Work; and + + (b) under Patent Claims infringed by the making, using, or selling +of Modifications made by that Contributor either alone and/or in combination +with its Contributor Version (or portions of such combination), to make, use, +sell, offer for sale, have made, and/or otherwise dispose of: 1) Modifications +made by that Contributor (or portions thereof); and 2) the combination of +Modifications made by that Contributor with its Contributor Version (or +portions of such combination). + + (c) the licenses granted in Sections 2.2(a) and 2.2(b) are +effective on the date Contributor first makes Commercial Use of the Covered +Code. + + (d) Notwithstanding Section 2.2(b) above, no patent license is +granted: 1) for any code that Contributor has deleted from the Contributor +Version; 2) separate from the Contributor Version; 3) for infringements +caused by: i) third party modifications of Contributor Version or ii) the +combination of Modifications made by that Contributor with other software +(except as part of the Contributor Version) or other devices; or 4) under +Patent Claims infringed by Covered Code in the absence of Modifications made +by that Contributor. + + +3. Distribution Obligations. + + 3.1. Application of License. + The Modifications which You create or to which You contribute are +governed by the terms of this License, including without limitation Section +2.2. The Source Code version of Covered Code may be distributed only under the +terms of this License or a future version of this License released under +Section 6.1, and You must include a copy of this License with every copy of +the Source Code You distribute. You may not offer or impose any terms on any +Source Code version that alters or restricts the applicable version of this +License or the recipients' rights hereunder. However, You may include an +additional document offering the additional rights described in Section 3.5. + + 3.2. Availability of Source Code. + Any Modification which You create or to which You contribute must be +made available in Source Code form under the terms of this License either on +the same media as an Executable version or via an accepted Electronic +Distribution Mechanism to anyone to whom you made an Executable version +available; and if made available via Electronic Distribution Mechanism, must +remain available for at least twelve (12) months after the date it initially +became available, or at least six (6) months after a subsequent version of +that particular Modification has been made available to such recipients. You +are responsible for ensuring that the Source Code version remains available +even if the Electronic Distribution Mechanism is maintained by a third party. + + 3.3. Description of Modifications. + You must cause all Covered Code to which You contribute to contain a +file documenting the changes You made to create that Covered Code and the date +of any change. You must include a prominent statement that the Modification is +derived, directly or indirectly, from Original Code provided by the Initial +Developer and including the name of the Initial Developer in (a) the Source +Code, and (b) in any notice in an Executable version or related documentation +in which You describe the origin or ownership of the Covered Code. + + 3.4. Intellectual Property Matters + (a) Third Party Claims. + If Contributor has knowledge that a license under a third party's +intellectual property rights is required to exercise the rights granted by +such Contributor under Sections 2.1 or 2.2, Contributor must include a text +file with the Source Code distribution titled "LEGAL" which describes the +claim and the party making the claim in sufficient detail that a recipient +will know whom to contact. If Contributor obtains such knowledge after the +Modification is made available as described in Section 3.2, Contributor shall +promptly modify the LEGAL file in all copies Contributor makes available +thereafter and shall take other steps (such as notifying appropriate mailing +lists or newsgroups) reasonably calculated to inform those who received the +Covered Code that new knowledge has been obtained. + + (b) Contributor APIs. + If Contributor's Modifications include an application programming +interface and Contributor has knowledge of patent licenses which are +reasonably necessary to implement that API, Contributor must also include this +information in the LEGAL file. + + (c) Representations. + Contributor represents that, except as disclosed pursuant to +Section 3.4(a) above, Contributor believes that Contributor's Modifications +are Contributor's original creation(s) and/or Contributor has sufficient +rights to grant the rights conveyed by this License. + + + 3.5. Required Notices. + You must duplicate the notice in Exhibit A in each file of the Source +Code. If it is not possible to put such notice in a particular Source Code +file due to its structure, then You must include such notice in a location +(such as a relevant directory) where a user would be likely to look for such a +notice. If You created one or more Modification(s) You may add your name as a +Contributor to the notice described in Exhibit A. You must also duplicate +this License in any documentation for the Source Code where You describe +recipients' rights or ownership rights relating to Covered Code. You may +choose to offer, and to charge a fee for, warranty, support, indemnity or +liability obligations to one or more recipients of Covered Code. However, You +may do so only on Your own behalf, and not on behalf of the Initial Developer +or any Contributor. You must make it absolutely clear than any such warranty, +support, indemnity or liability obligation is offered by You alone, and You +hereby agree to indemnify the Initial Developer and every Contributor for any +liability incurred by the Initial Developer or such Contributor as a result of +warranty, support, indemnity or liability terms You offer. + + 3.6. Distribution of Executable Versions. + You may distribute Covered Code in Executable form only if the +requirements of Section 3.1-3.5 have been met for that Covered Code, and if +You include a notice stating that the Source Code version of the Covered Code +is available under the terms of this License, including a description of how +and where You have fulfilled the obligations of Section 3.2. The notice must +be conspicuously included in any notice in an Executable version, related +documentation or collateral in which You describe recipients' rights relating +to the Covered Code. You may distribute the Executable version of Covered Code +or ownership rights under a license of Your choice, which may contain terms +different from this License, provided that You are in compliance with the +terms of this License and that the license for the Executable version does not +attempt to limit or alter the recipient's rights in the Source Code version +from the rights set forth in this License. If You distribute the Executable +version under a different license You must make it absolutely clear that any +terms which differ from this License are offered by You alone, not by the +Initial Developer or any Contributor. You hereby agree to indemnify the +Initial Developer and every Contributor for any liability incurred by the +Initial Developer or such Contributor as a result of any such terms You offer. + + 3.7. Larger Works. + You may create a Larger Work by combining Covered Code with other code +not governed by the terms of this License and distribute the Larger Work as a +single product. In such a case, You must make sure the requirements of this +License are fulfilled for the Covered Code. + +4. Inability to Comply Due to Statute or Regulation. + + If it is impossible for You to comply with any of the terms of this +License with respect to some or all of the Covered Code due to statute, +judicial order, or regulation then You must: (a) comply with the terms of this +License to the maximum extent possible; and (b) describe the limitations and +the code they affect. Such description must be included in the LEGAL file +described in Section 3.4 and must be included with all distributions of the +Source Code. Except to the extent prohibited by statute or regulation, such +description must be sufficiently detailed for a recipient of ordinary skill to +be able to understand it. + +5. Application of this License. + + This License applies to code to which the Initial Developer has attached +the notice in Exhibit A and to related Covered Code. + +6. Versions of the License. + + 6.1. New Versions. + Netscape Communications Corporation ("Netscape") may publish revised +and/or new versions of the License from time to time. Each version will be +given a distinguishing version number. + + 6.2. Effect of New Versions. + Once Covered Code has been published under a particular version of the +License, You may always continue to use it under the terms of that version. +You may also choose to use such Covered Code under the terms of any subsequent +version of the License published by Netscape. No one other than Netscape has +the right to modify the terms applicable to Covered Code created under this +License. + + 6.3. Derivative Works. + If You create or use a modified version of this License (which you may +only do in order to apply it to code which is not already Covered Code +governed by this License), You must (a) rename Your license so that the +phrases "Mozilla", "MOZILLAPL", "MOZPL", "Netscape", "MPL", "NPL" or +any confusingly similar phrase do not appear in your license (except to note +that your license differs from this License) and (b) otherwise make it clear +that Your version of the license contains terms which differ from the Mozilla +Public License and Netscape Public License. (Filling in the name of the +Initial Developer, Original Code or Contributor in the notice described in +Exhibit A shall not of themselves be deemed to be modifications of this +License.) + +7. DISCLAIMER OF WARRANTY. + + COVERED CODE IS PROVIDED UNDER THIS LICENSE ON AN "AS IS" BASIS, +WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, WITHOUT +LIMITATION, WARRANTIES THAT THE COVERED CODE IS FREE OF DEFECTS, MERCHANTABLE, +FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING. THE ENTIRE RISK AS TO THE +QUALITY AND PERFORMANCE OF THE COVERED CODE IS WITH YOU. SHOULD ANY COVERED +CODE PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT THE INITIAL DEVELOPER OR ANY +OTHER CONTRIBUTOR) ASSUME THE COST OF ANY NECESSARY SERVICING, REPAIR OR +CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS +LICENSE. NO USE OF ANY COVERED CODE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS +DISCLAIMER. + +8. TERMINATION. + + 8.1. This License and the rights granted hereunder will terminate +automatically if You fail to comply with terms herein and fail to cure such +breach within 30 days of becoming aware of the breach. All sublicenses to the +Covered Code which are properly granted shall survive any termination of this +License. Provisions which, by their nature, must remain in effect beyond the +termination of this License shall survive. + + 8.2. If You initiate litigation by asserting a patent infringement +claim (excluding declatory judgment actions) against Initial Developer or a +Contributor (the Initial Developer or Contributor against whom You file such +action is referred to as "Participant") alleging that: + + (a) such Participant's Contributor Version directly or indirectly +infringes any patent, then any and all rights granted by such Participant to +You under Sections 2.1 and/or 2.2 of this License shall, upon 60 days notice +from Participant terminate prospectively, unless if within 60 days after +receipt of notice You either: (i) agree in writing to pay Participant a +mutually agreeable reasonable royalty for Your past and future use of +Modifications made by such Participant, or (ii) withdraw Your litigation claim +with respect to the Contributor Version against such Participant. If within +60 days of notice, a reasonable royalty and payment arrangement are not +mutually agreed upon in writing by the parties or the litigation claim is not +withdrawn, the rights granted by Participant to You under Sections 2.1 and/or +2.2 automatically terminate at the expiration of the 60 day notice period +specified above. + + (b) any software, hardware, or device, other than such Participant's +Contributor Version, directly or indirectly infringes any patent, then any +rights granted to You by such Participant under Sections 2.1(b) and 2.2(b) are +revoked effective as of the date You first made, used, sold, distributed, or +had made, Modifications made by that Participant. + + 8.3. If You assert a patent infringement claim against Participant +alleging that such Participant's Contributor Version directly or indirectly +infringes any patent where such claim is resolved (such as by license or +settlement) prior to the initiation of patent infringement litigation, then +the reasonable value of the licenses granted by such Participant under +Sections 2.1 or 2.2 shall be taken into account in determining the amount or +value of any payment or license. + + 8.4. In the event of termination under Sections 8.1 or 8.2 above, all +end user license agreements (excluding distributors and resellers) which have +been validly granted by You or any distributor hereunder prior to termination +shall survive termination. + +9. LIMITATION OF LIABILITY. + + UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT +(INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL YOU, THE INITIAL +DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF COVERED CODE, OR ANY +SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON FOR ANY INDIRECT, +SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING, +WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL, WORK STOPPAGE, COMPUTER +FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER COMMERCIAL DAMAGES OR LOSSES, +EVEN IF SUCH PARTY SHALL HAVE BEEN INFORMED OF THE POSSIBILITY OF SUCH +DAMAGES. THIS LIMITATION OF LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH +OR PERSONAL INJURY RESULTING FROM SUCH PARTY'S NEGLIGENCE TO THE EXTENT +APPLICABLE LAW PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO NOT ALLOW THE +EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO THIS +EXCLUSION AND LIMITATION MAY NOT APPLY TO YOU. + +10. U.S. GOVERNMENT END USERS. + + The Covered Code is a "commercial item," as that term is defined in 48 +C.F.R. 2.101 (Oct. 1995), consisting of "commercial computer software" and +"commercial computer software documentation," as such terms are used in 48 +C.F.R. 12.212 (Sept. 1995). Consistent with 48 C.F.R. 12.212 and 48 C.F.R. +227.7202-1 through 227.7202-4 (June 1995), all U.S. Government End Users +acquire Covered Code with only those rights set forth herein. + +11. MISCELLANEOUS. + + This License represents the complete agreement concerning subject matter +hereof. If any provision of this License is held to be unenforceable, such +provision shall be reformed only to the extent necessary to make it +enforceable. This License shall be governed by California law provisions +(except to the extent applicable law, if any, provides otherwise), excluding +its conflict-of-law provisions. With respect to disputes in which at least one +party is a citizen of, or an entity chartered or registered to do business in +the United States of America, any litigation relating to this License shall be +subject to the jurisdiction of the Federal Courts of the Northern District of +California, with venue lying in Santa Clara County, California, with the +losing party responsible for costs, including without limitation, court costs +and reasonable attorneys' fees and expenses. The application of the United +Nations Convention on Contracts for the International Sale of Goods is +expressly excluded. Any law or regulation which provides that the language of +a contract shall be construed against the drafter shall not apply to this +License. + +12. RESPONSIBILITY FOR CLAIMS. + + As between Initial Developer and the Contributors, each party is +responsible for claims and damages arising, directly or indirectly, out of its +utilization of rights under this License and You agree to work with Initial +Developer and Contributors to distribute such responsibility on an equitable +basis. Nothing herein is intended or shall be deemed to constitute any +admission of liability. + +13. MULTIPLE-LICENSED CODE. + + Initial Developer may designate portions of the Covered Code as +Multiple-Licensed. Multiple-Licensed means that the Initial Developer permits +you to utilize portions of the Covered Code under Your choice of the MPL or +the alternative licenses, if any, specified by the Initial Developer in the +file described in Exhibit A. + + +EXHIBIT A -Mozilla Public License. + + ``The contents of this file are subject to the Mozilla Public License +Version 1.1 (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.mozilla.org/MPL/ + + Software distributed under the License is distributed on an "AS IS" +basis, WITHOUT WARRANTY OF + ANY KIND, either express or implied. See the License for the specific +language governing rights and + limitations under the License. + + The Original Code is ______________________________________. + + The Initial Developer of the Original Code is ________________________. +Portions created by + ______________________ are Copyright (C) ______ +_______________________. All Rights + Reserved. + + Contributor(s): ______________________________________. + + Alternatively, the contents of this file may be used under the terms of +the _____ license (the [___] License), in which case the provisions of +[______] License are applicable instead of those above. If you wish to allow +use of your version of this file only under the terms of the [____] License +and not to allow others to use your version of this file under the MPL, +indicate your decision by deleting the provisions above and replace them +with the notice and other provisions required by the [___] License. If you do +not delete the provisions above, a recipient may use your version of this file +under either the MPL or the [___] License." + + [NOTE: The text of this Exhibit A may differ slightly from the text of +the notices in the Source Code files of the Original Code. You should use the +text of this Exhibit A rather than the text found in the Original Code Source +Code for Your Modifications.] + + +=============================================================================== + +For the JAX-WS Reference Implementation component: + +COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.0 + + + 1. Definitions. + + 1.1. "Contributor" means each individual or entity that + creates or contributes to the creation of Modifications. + + 1.2. "Contributor Version" means the combination of the + Original Software, prior Modifications used by a + Contributor (if any), and the Modifications made by that + particular Contributor. + + 1.3. "Covered Software" means (a) the Original Software, or + (b) Modifications, or (c) the combination of files + containing Original Software with files containing + Modifications, in each case including portions thereof. + + 1.4. "Executable" means the Covered Software in any form + other than Source Code. + + 1.5. "Initial Developer" means the individual or entity + that first makes Original Software available under this + License. + + 1.6. "Larger Work" means a work which combines Covered + Software or portions thereof with code not governed by the + terms of this License. + + 1.7. "License" means this document. + + 1.8. "Licensable" means having the right to grant, to the + maximum extent possible, whether at the time of the initial + grant or subsequently acquired, any and all of the rights + conveyed herein. + + 1.9. "Modifications" means the Source Code and Executable + form of any of the following: + + A. Any file that results from an addition to, + deletion from or modification of the contents of a + file containing Original Software or previous + Modifications; + + B. Any new file that contains any part of the + Original Software or previous Modification; or + + C. Any new file that is contributed or otherwise made + available under the terms of this License. + + 1.10. "Original Software" means the Source Code and + Executable form of computer software code that is + originally released under this License. + + 1.11. "Patent Claims" means any patent claim(s), now owned + or hereafter acquired, including without limitation, + method, process, and apparatus claims, in any patent + Licensable by grantor. + + 1.12. "Source Code" means (a) the common form of computer + software code in which modifications are made and (b) + associated documentation included in or with such code. + + 1.13. "You" (or "Your") means an individual or a legal + entity exercising rights under, and complying with all of + the terms of, this License. For legal entities, "You" + includes any entity which controls, is controlled by, or is + under common control with You. For purposes of this + definition, "control" means (a) the power, direct or + indirect, to cause the direction or management of such + entity, whether by contract or otherwise, or (b) ownership + of more than fifty percent (50%) of the outstanding shares + or beneficial ownership of such entity. + + 2. License Grants. + + 2.1. The Initial Developer Grant. + + Conditioned upon Your compliance with Section 3.1 below and + subject to third party intellectual property claims, the + Initial Developer hereby grants You a world-wide, + royalty-free, non-exclusive license: + + (a) under intellectual property rights (other than + patent or trademark) Licensable by Initial Developer, + to use, reproduce, modify, display, perform, + sublicense and distribute the Original Software (or + portions thereof), with or without Modifications, + and/or as part of a Larger Work; and + + (b) under Patent Claims infringed by the making, + using or selling of Original Software, to make, have + made, use, practice, sell, and offer for sale, and/or + otherwise dispose of the Original Software (or + portions thereof). + + (c) The licenses granted in Sections 2.1(a) and (b) + are effective on the date Initial Developer first + distributes or otherwise makes the Original Software + available to a third party under the terms of this + License. + + (d) Notwithstanding Section 2.1(b) above, no patent + license is granted: (1) for code that You delete from + the Original Software, or (2) for infringements + caused by: (i) the modification of the Original + Software, or (ii) the combination of the Original + Software with other software or devices. + + 2.2. Contributor Grant. + + Conditioned upon Your compliance with Section 3.1 below and + subject to third party intellectual property claims, each + Contributor hereby grants You a world-wide, royalty-free, + non-exclusive license: + + (a) under intellectual property rights (other than + patent or trademark) Licensable by Contributor to + use, reproduce, modify, display, perform, sublicense + and distribute the Modifications created by such + Contributor (or portions thereof), either on an + unmodified basis, with other Modifications, as + Covered Software and/or as part of a Larger Work; and + + + (b) under Patent Claims infringed by the making, + using, or selling of Modifications made by that + Contributor either alone and/or in combination with + its Contributor Version (or portions of such + combination), to make, use, sell, offer for sale, + have made, and/or otherwise dispose of: (1) + Modifications made by that Contributor (or portions + thereof); and (2) the combination of Modifications + made by that Contributor with its Contributor Version + (or portions of such combination). + + (c) The licenses granted in Sections 2.2(a) and + 2.2(b) are effective on the date Contributor first + distributes or otherwise makes the Modifications + available to a third party. + + (d) Notwithstanding Section 2.2(b) above, no patent + license is granted: (1) for any code that Contributor + has deleted from the Contributor Version; (2) for + infringements caused by: (i) third party + modifications of Contributor Version, or (ii) the + combination of Modifications made by that Contributor + with other software (except as part of the + Contributor Version) or other devices; or (3) under + Patent Claims infringed by Covered Software in the + absence of Modifications made by that Contributor. + + 3. Distribution Obligations. + + 3.1. Availability of Source Code. + + Any Covered Software that You distribute or otherwise make + available in Executable form must also be made available in + Source Code form and that Source Code form must be + distributed only under the terms of this License. You must + include a copy of this License with every copy of the + Source Code form of the Covered Software You distribute or + otherwise make available. You must inform recipients of any + such Covered Software in Executable form as to how they can + obtain such Covered Software in Source Code form in a + reasonable manner on or through a medium customarily used + for software exchange. + + 3.2. Modifications. + + The Modifications that You create or to which You + contribute are governed by the terms of this License. You + represent that You believe Your Modifications are Your + original creation(s) and/or You have sufficient rights to + grant the rights conveyed by this License. + + 3.3. Required Notices. + + You must include a notice in each of Your Modifications + that identifies You as the Contributor of the Modification. + You may not remove or alter any copyright, patent or + trademark notices contained within the Covered Software, or + any notices of licensing or any descriptive text giving + attribution to any Contributor or the Initial Developer. + + 3.4. Application of Additional Terms. + + You may not offer or impose any terms on any Covered + Software in Source Code form that alters or restricts the + applicable version of this License or the recipients' + rights hereunder. You may choose to offer, and to charge a + fee for, warranty, support, indemnity or liability + obligations to one or more recipients of Covered Software. + However, you may do so only on Your own behalf, and not on + behalf of the Initial Developer or any Contributor. You + must make it absolutely clear that any such warranty, + support, indemnity or liability obligation is offered by + You alone, and You hereby agree to indemnify the Initial + Developer and every Contributor for any liability incurred + by the Initial Developer or such Contributor as a result of + warranty, support, indemnity or liability terms You offer. + + + 3.5. Distribution of Executable Versions. + + You may distribute the Executable form of the Covered + Software under the terms of this License or under the terms + of a license of Your choice, which may contain terms + different from this License, provided that You are in + compliance with the terms of this License and that the + license for the Executable form does not attempt to limit + or alter the recipient's rights in the Source Code form + from the rights set forth in this License. If You + distribute the Covered Software in Executable form under a + different license, You must make it absolutely clear that + any terms which differ from this License are offered by You + alone, not by the Initial Developer or Contributor. You + hereby agree to indemnify the Initial Developer and every + Contributor for any liability incurred by the Initial + Developer or such Contributor as a result of any such terms + You offer. + + 3.6. Larger Works. + + You may create a Larger Work by combining Covered Software + with other code not governed by the terms of this License + and distribute the Larger Work as a single product. In such + a case, You must make sure the requirements of this License + are fulfilled for the Covered Software. + + 4. Versions of the License. + + 4.1. New Versions. + + Sun Microsystems, Inc. is the initial license steward and + may publish revised and/or new versions of this License + from time to time. Each version will be given a + distinguishing version number. Except as provided in + Section 4.3, no one other than the license steward has the + right to modify this License. + + 4.2. Effect of New Versions. + + You may always continue to use, distribute or otherwise + make the Covered Software available under the terms of the + version of the License under which You originally received + the Covered Software. If the Initial Developer includes a + notice in the Original Software prohibiting it from being + distributed or otherwise made available under any + subsequent version of the License, You must distribute and + make the Covered Software available under the terms of the + version of the License under which You originally received + the Covered Software. Otherwise, You may also choose to + use, distribute or otherwise make the Covered Software + available under the terms of any subsequent version of the + License published by the license steward. + + 4.3. Modified Versions. + + When You are an Initial Developer and You want to create a + new license for Your Original Software, You may create and + use a modified version of this License if You: (a) rename + the license and remove any references to the name of the + license steward (except to note that the license differs + from this License); and (b) otherwise make it clear that + the license contains terms which differ from this License. + + + 5. DISCLAIMER OF WARRANTY. + + COVERED SOFTWARE IS PROVIDED UNDER THIS LICENSE ON AN "AS IS" + BASIS, WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, + INCLUDING, WITHOUT LIMITATION, WARRANTIES THAT THE COVERED + SOFTWARE IS FREE OF DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR + PURPOSE OR NON-INFRINGING. THE ENTIRE RISK AS TO THE QUALITY AND + PERFORMANCE OF THE COVERED SOFTWARE IS WITH YOU. SHOULD ANY + COVERED SOFTWARE PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT THE + INITIAL DEVELOPER OR ANY OTHER CONTRIBUTOR) ASSUME THE COST OF + ANY NECESSARY SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER OF + WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF + ANY COVERED SOFTWARE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS + DISCLAIMER. + + 6. TERMINATION. + + 6.1. This License and the rights granted hereunder will + terminate automatically if You fail to comply with terms + herein and fail to cure such breach within 30 days of + becoming aware of the breach. Provisions which, by their + nature, must remain in effect beyond the termination of + this License shall survive. + + 6.2. If You assert a patent infringement claim (excluding + declaratory judgment actions) against Initial Developer or + a Contributor (the Initial Developer or Contributor against + whom You assert such claim is referred to as "Participant") + alleging that the Participant Software (meaning the + Contributor Version where the Participant is a Contributor + or the Original Software where the Participant is the + Initial Developer) directly or indirectly infringes any + patent, then any and all rights granted directly or + indirectly to You by such Participant, the Initial + Developer (if the Initial Developer is not the Participant) + and all Contributors under Sections 2.1 and/or 2.2 of this + License shall, upon 60 days notice from Participant + terminate prospectively and automatically at the expiration + of such 60 day notice period, unless if within such 60 day + period You withdraw Your claim with respect to the + Participant Software against such Participant either + unilaterally or pursuant to a written agreement with + Participant. + + 6.3. In the event of termination under Sections 6.1 or 6.2 + above, all end user licenses that have been validly granted + by You or any distributor hereunder prior to termination + (excluding licenses granted to You by any distributor) + shall survive termination. + + 7. LIMITATION OF LIABILITY. + + UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT + (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL YOU, THE + INITIAL DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF + COVERED SOFTWARE, OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE + LIABLE TO ANY PERSON FOR ANY INDIRECT, SPECIAL, INCIDENTAL, OR + CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING, WITHOUT + LIMITATION, DAMAGES FOR LOST PROFITS, LOSS OF GOODWILL, WORK + STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER + COMMERCIAL DAMAGES OR LOSSES, EVEN IF SUCH PARTY SHALL HAVE BEEN + INFORMED OF THE POSSIBILITY OF SUCH DAMAGES. THIS LIMITATION OF + LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH OR PERSONAL + INJURY RESULTING FROM SUCH PARTY'S NEGLIGENCE TO THE EXTENT + APPLICABLE LAW PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO + NOT ALLOW THE EXCLUSION OR LIMITATION OF INCIDENTAL OR + CONSEQUENTIAL DAMAGES, SO THIS EXCLUSION AND LIMITATION MAY NOT + APPLY TO YOU. + + 8. U.S. GOVERNMENT END USERS. + + The Covered Software is a "commercial item," as that term is + defined in 48 C.F.R. 2.101 (Oct. 1995), consisting of "commercial + computer software" (as that term is defined at 48 C.F.R. + 252.227-7014(a)(1)) and "commercial computer software + documentation" as such terms are used in 48 C.F.R. 12.212 (Sept. + 1995). Consistent with 48 C.F.R. 12.212 and 48 C.F.R. 227.7202-1 + through 227.7202-4 (June 1995), all U.S. Government End Users + acquire Covered Software with only those rights set forth herein. + This U.S. Government Rights clause is in lieu of, and supersedes, + any other FAR, DFAR, or other clause or provision that addresses + Government rights in computer software under this License. + + 9. MISCELLANEOUS. + + This License represents the complete agreement concerning subject + matter hereof. If any provision of this License is held to be + unenforceable, such provision shall be reformed only to the + extent necessary to make it enforceable. This License shall be + governed by the law of the jurisdiction specified in a notice + contained within the Original Software (except to the extent + applicable law, if any, provides otherwise), excluding such + jurisdiction's conflict-of-law provisions. Any litigation + relating to this License shall be subject to the jurisdiction of + the courts located in the jurisdiction and venue specified in a + notice contained within the Original Software, with the losing + party responsible for costs, including, without limitation, court + costs and reasonable attorneys' fees and expenses. The + application of the United Nations Convention on Contracts for the + International Sale of Goods is expressly excluded. Any law or + regulation which provides that the language of a contract shall + be construed against the drafter shall not apply to this License. + You agree that You alone are responsible for compliance with the + United States export administration regulations (and the export + control laws and regulation of any other countries) when You use, + distribute or otherwise make available any Covered Software. + + 10. RESPONSIBILITY FOR CLAIMS. + + As between Initial Developer and the Contributors, each party is + responsible for claims and damages arising, directly or + indirectly, out of its utilization of rights under this License + and You agree to work with Initial Developer and Contributors to + distribute such responsibility on an equitable basis. Nothing + herein is intended or shall be deemed to constitute any admission + of liability. + diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/src/main/resources/META-INF/NOTICE b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/src/main/resources/META-INF/NOTICE new file mode 100644 index 0000000000..d48810c0ec --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/src/main/resources/META-INF/NOTICE @@ -0,0 +1,18 @@ +========================================================================= +== NOTICE file corresponding to the section 4 d of == +== the Apache License, Version 2.0, == +== in this case for the Apache Tuscany distribution. == +========================================================================= + +This product includes software developed by the Apache Software Foundation +(http://www.apache.org/). + +This product also includes software developed by: +- the Eclipse Modeling Framework project (http://www.eclipse.org/emf/) +- the Celtix project (http://celtix.objectweb.org/) +- the Mozilla Rhino project (http://www.mozilla.org/rhino/) +- the GlassFish JAX-WS project (https://jax-ws.dev.java.net/) + +Please read the LICENSE.txt file present in the root directory of this +distribution. + diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/src/main/resources/META-INF/README.txt b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/src/main/resources/META-INF/README.txt new file mode 100644 index 0000000000..9b26d1690a --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/src/main/resources/META-INF/README.txt @@ -0,0 +1,35 @@ +Apache Tuscany M1 build (May, 2006) +=================================== + +http://incubator.apache.org/tuscany/ + +Tuscany is an effort undergoing incubation at the Apache Software Foundation +(ASF), sponsored by the Web Services PMC. + +Incubation is required of all newly accepted projects until a further review +indicates that the infrastructure, communications, and decision making process +have stabilized in a manner consistent with other successful ASF projects. + +While incubation status is not necessarily a reflection of the completeness or +stability of the code, it does indicate that the project has yet to be fully +endorsed by the ASF. + + +Support +------- + +Any problem with this release can be reported to the Tuscany mailing list +or in the JIRA issue tracker. + +Mailing list subscription: + tuscany-dev-subscribe@ws.apache.org + +Jira: + http://issues.apache.org/jira/browse/Tuscany + + +Thank you for using Tuscany! + + +The Tuscany Team. + diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/src/test/java/interop/ClientTestCase.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/src/test/java/interop/ClientTestCase.java new file mode 100644 index 0000000000..f2a7b198a1 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/src/test/java/interop/ClientTestCase.java @@ -0,0 +1,77 @@ +/* + * 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 interop; + +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; + +import org.apache.tuscany.test.SCATestCase; +import org.osoa.sca.CompositeContext; +import org.osoa.sca.CurrentCompositeContext; + +/** + * This client program shows how to create an SCA runtime, start it, locate a + * simple HelloWorld service component and invoke it. + */ +public class ClientTestCase extends SCATestCase { + private Object serviceProxy; + + // old tc + // public void testGetQuote() throws ConfigurationException, + // SecurityException, NoSuchMethodException, IllegalArgumentException, + // IllegalAccessException, InvocationTargetException { + // + // TuscanyRuntime tuscany = new TuscanyRuntime("getQuote", null); + // tuscany.start(); + // ModuleContext moduleContext = CurrentModuleContext.getContext(); + // + // Object serviceProxy = moduleContext.locateService("webserviceXSQ"); + // Method m = serviceProxy.getClass().getMethod("GetQuote", new Class[] { + // String.class }); + // + // String sqResponse = (String) m.invoke(serviceProxy, "IBM"); + // + // assertTrue(sqResponse.startsWith("<StockQuotes><Stock><Symbol>IBM</Symbol>")); + // + // tuscany.stop(); + // } + + public void testGetQuote() throws IllegalArgumentException, IllegalAccessException, + InvocationTargetException, SecurityException, NoSuchMethodException { + Method m = serviceProxy.getClass().getMethod("GetQuote", new Class[] {String.class}); + + String sqResponse = (String)m.invoke(serviceProxy, "IBM"); + + assertTrue(sqResponse.startsWith("<StockQuotes><Stock><Symbol>IBM</Symbol>")); + + } + + @Override + protected void setUp() throws Exception { + setApplicationSCDL(getClass(), "META-INF/sca/test.scdl"); + + addExtension("test.exts", getClass().getClassLoader() + .getResource("META-INF/tuscany/test-extensions.scdl")); + + super.setUp(); + CompositeContext compositeContext = CurrentCompositeContext.getContext(); + serviceProxy = compositeContext.locateService(Object.class, "webserviceXSQ"); + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/src/test/resources/META-INF/sca/test.scdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/src/test/resources/META-INF/sca/test.scdl new file mode 100644 index 0000000000..22b3b90623 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/src/test/resources/META-INF/sca/test.scdl @@ -0,0 +1,31 @@ +<?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" + xmlns:wsdli="http://www.w3.org/2006/01/wsdl-instance" + name="composite.webserviceXSQ"> + <dbsdo:import.sdo xmlns:dbsdo="http://tuscany.apache.org/xmlns/sca/databinding/sdo/1.0" location="wsdl/sq.wsdl"/> + + <reference name="webserviceXSQ"> + <interface.wsdl interface="http://www.webserviceX.NET/#wsdl.interface(StockQuoteSoap)" wsdli:wsdlLocation="http://www.webserviceX.NET/ wsdl/sq.wsdl" /> + <binding.ws endpoint="http://www.webserviceX.NET/#wsdl.endpoint(StockQuote/StockQuoteSoap)" + location="wsdl/sq.wsdl" /> + </reference> + +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/src/test/resources/META-INF/tuscany/binding.axis2.scdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/src/test/resources/META-INF/tuscany/binding.axis2.scdl new file mode 100644 index 0000000000..fb208f56ab --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/src/test/resources/META-INF/tuscany/binding.axis2.scdl @@ -0,0 +1,39 @@ +<?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. +--> +<!-- Axis2 based WebService binding extension --> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" + xmlns:system="http://tuscany.apache.org/xmlns/system/1.0-SNAPSHOT" + name="org.apache.tuscany.binding.axis2.WebServiceBinding"> + + <dependency xmlns="http://tuscany.apache.org/xmlns/1.0-SNAPSHOT"> + <group>axis2</group> + <name>axis2-kernel</name> + <version>SNAPSHOT</version> + </dependency> + + <component name="webservice.bindingLoader"> + <system:implementation.system class="org.apache.tuscany.binding.axis2.WebServiceBindingLoader"/> + </component> + + <component name="webservice.axis2.bindingBuilder"> + <system:implementation.system class="org.apache.tuscany.binding.axis2.Axis2BindingBuilder"/> + </component> + +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/src/test/resources/META-INF/tuscany/databinding.axiom.scdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/src/test/resources/META-INF/tuscany/databinding.axiom.scdl new file mode 100644 index 0000000000..e4fe956e61 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/src/test/resources/META-INF/tuscany/databinding.axiom.scdl @@ -0,0 +1,52 @@ +<?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" xmlns:system="http://tuscany.apache.org/xmlns/system/1.0-SNAPSHOT"
+ name="org.apache.tuscany.databinding.Axiom">
+
+ <component name="databinding.axiom">
+ <system:implementation.system class="org.apache.tuscany.databinding.axiom.AxiomDataBinding" />
+ </component>
+
+ <!-- Transformers -->
+ <component name="transformer.XMLStreamReader2OMElement">
+ <system:implementation.system class="org.apache.tuscany.databinding.axiom.XMLStreamReader2OMElement" />
+ </component>
+
+ <component name="transformer.OMElement2XMLStreamReader">
+ <system:implementation.system class="org.apache.tuscany.databinding.axiom.OMElement2XMLStreamReader" />
+ </component>
+
+ <component name="transformer.String2OMElement">
+ <system:implementation.system class="org.apache.tuscany.databinding.axiom.String2OMElement" />
+ </component>
+
+ <component name="transformer.OMElement2String">
+ <system:implementation.system class="org.apache.tuscany.databinding.axiom.OMElement2String" />
+ </component>
+
+ <component name="transformer.Object2OMElement">
+ <system:implementation.system class="org.apache.tuscany.databinding.axiom.Object2OMElement" />
+ </component>
+
+ <component name="transformer.OMElement2Object">
+ <system:implementation.system class="org.apache.tuscany.databinding.axiom.OMElement2Object" />
+ </component>
+
+</composite>
\ No newline at end of file diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/src/test/resources/META-INF/tuscany/databinding.sdo.scdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/src/test/resources/META-INF/tuscany/databinding.sdo.scdl new file mode 100644 index 0000000000..61753384b4 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/src/test/resources/META-INF/tuscany/databinding.sdo.scdl @@ -0,0 +1,60 @@ +<?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. +--> +<!-- + import.sdo configuration + + $Rev: 431086 $ $Date: 2006-08-12 13:58:17 -0700 (Sat, 12 Aug 2006) $ +--> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" + xmlns:system="http://tuscany.apache.org/xmlns/system/1.0-SNAPSHOT" + name="org.apache.tuscany.databinding.sdo"> + + <!-- import.sdo element loader implementations --> + <component name="elementLoader.import.sdo"> + <system:implementation.system class="org.apache.tuscany.databinding.sdo.ImportSDOLoader"/> + </component> + + <component name="databinding.sdo"> + <system:implementation.system class="org.apache.tuscany.databinding.sdo.SDODataBinding" /> + </component> + + <component name="transformer.DataObject2String"> + <system:implementation.system class="org.apache.tuscany.databinding.sdo.DataObject2String"/> + </component> + <component name="transformer.DataObject2XMLStreamReader"> + <system:implementation.system class="org.apache.tuscany.databinding.sdo.DataObject2XMLStreamReader"/> + </component> + <component name="transformer.XMLDocument2String"> + <system:implementation.system class="org.apache.tuscany.databinding.sdo.XMLDocument2String"/> + </component> + <component name="transformer.String2DataObject"> + <system:implementation.system class="org.apache.tuscany.databinding.sdo.String2DataObject"/> + </component> + <component name="transformer.XMLDocument2XMLStreamReader"> + <system:implementation.system class="org.apache.tuscany.databinding.sdo.XMLDocument2XMLStreamReader"/> + </component> + <component name="transformer.XMLStreamReader2DataObject"> + <system:implementation.system class="org.apache.tuscany.databinding.sdo.XMLStreamReader2DataObject"/> + </component> + <component name="transformer.XMLStreamReader2XMLDocument"> + <system:implementation.system class="org.apache.tuscany.databinding.sdo.XMLStreamReader2XMLDocument"/> + </component> + +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/src/test/resources/META-INF/tuscany/interface.wsdl.scdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/src/test/resources/META-INF/tuscany/interface.wsdl.scdl new file mode 100644 index 0000000000..84538dab8b --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/src/test/resources/META-INF/tuscany/interface.wsdl.scdl @@ -0,0 +1,55 @@ +<?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. +--> +<!-- + Default system configuration for the launcher environment. + + $Rev: 440894 $ $Date: 2006-09-06 15:52:01 -0700 (Wed, 06 Sep 2006) $ +--> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" xmlns:system="http://tuscany.apache.org/xmlns/system/1.0-SNAPSHOT" + name="org.apache.tuscany.idl.WSDL"> + + <dependency xmlns="http://tuscany.apache.org/xmlns/1.0-SNAPSHOT"> + <group>wsdl4j</group> + <name>wsdl4j</name> + <version>1.5.2</version> + </dependency> + <dependency xmlns="http://tuscany.apache.org/xmlns/1.0-SNAPSHOT"> + <group>org.apache.ws.commons</group> + <name>XmlSchema</name> + <version>SNAPSHOT</version> + </dependency> + + <component name="interface.wsdl.Loader"> + <system:implementation.system class="org.apache.tuscany.idl.wsdl.InterfaceWSDLLoader" /> + </component> + + <component name="wsdl.Registry"> + <system:implementation.system class="org.apache.tuscany.idl.wsdl.WSDLDefinitionRegistryImpl" initLevel="40" /> + </component> + + <component name="xmlSchema.registry"> + <system:implementation.system class="org.apache.tuscany.idl.wsdl.XMLSchemaRegistryImpl" initLevel="35" /> + </component> + + <component name="interface.wsdl.Introspector"> + <system:implementation.system class="org.apache.tuscany.idl.wsdl.InterfaceWSDLIntrospectorImpl" initLevel="40" /> + </component> + +</composite>
\ No newline at end of file diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/src/test/resources/META-INF/tuscany/test-extensions.scdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/src/test/resources/META-INF/tuscany/test-extensions.scdl new file mode 100644 index 0000000000..355b663a1b --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/src/test/resources/META-INF/tuscany/test-extensions.scdl @@ -0,0 +1,29 @@ +<?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" xmlns:system="http://tuscany.apache.org/xmlns/system/1.0-SNAPSHOT"
+ name="test.extensions">
+
+ <include name="org.apache.tuscany.databinding.axiom" scdlLocation="databinding.axiom.scdl"/>
+ <include name="org.apache.tuscany.databinding.sdo" scdlLocation="databinding.sdo.scdl"/>
+ <include name="org.apache.tuscany.interface.wsdl" scdlLocation="interface.wsdl.scdl"/>
+ <include name="org.apache.tuscany.binding.axis2" scdlLocation="binding.axis2.scdl"/>
+
+
+</composite>
\ No newline at end of file diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/src/test/resources/wsdl/sq.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/src/test/resources/wsdl/sq.wsdl new file mode 100644 index 0000000000..0408a60297 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/clients/webserviceXSQ/src/test/resources/wsdl/sq.wsdl @@ -0,0 +1,142 @@ +<?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:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" + xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" + xmlns:tns="http://www.webserviceX.NET/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" + xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" targetNamespace="http://www.webserviceX.NET/" + xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"> + <wsdl:types> + <s:schema elementFormDefault="qualified" targetNamespace="http://www.webserviceX.NET/"> + <s:element name="GetQuote"> + <s:complexType> + <s:sequence> + <s:element minOccurs="0" maxOccurs="1" name="symbol" type="s:string" /> + </s:sequence> + </s:complexType> + + </s:element> + <s:element name="GetQuoteResponse"> + <s:complexType> + <s:sequence> + <s:element minOccurs="0" maxOccurs="1" name="GetQuoteResult" type="s:string" /> + </s:sequence> + </s:complexType> + </s:element> + <s:element name="string" nillable="true" type="s:string" /> + + </s:schema> + </wsdl:types> + <wsdl:message name="GetQuoteSoapIn"> + <wsdl:part name="parameters" element="tns:GetQuote" /> + </wsdl:message> + <wsdl:message name="GetQuoteSoapOut"> + <wsdl:part name="parameters" element="tns:GetQuoteResponse" /> + </wsdl:message> + <wsdl:message name="GetQuoteHttpGetIn"> + + <wsdl:part name="symbol" type="s:string" /> + </wsdl:message> + <wsdl:message name="GetQuoteHttpGetOut"> + <wsdl:part name="Body" element="tns:string" /> + </wsdl:message> + <wsdl:message name="GetQuoteHttpPostIn"> + <wsdl:part name="symbol" type="s:string" /> + </wsdl:message> + <wsdl:message name="GetQuoteHttpPostOut"> + + <wsdl:part name="Body" element="tns:string" /> + </wsdl:message> + <wsdl:portType name="StockQuoteSoap"> + <wsdl:operation name="GetQuote"> + <documentation xmlns="http://schemas.xmlsoap.org/wsdl/">Get Stock quote for a company Symbol</documentation> + <wsdl:input message="tns:GetQuoteSoapIn" /> + <wsdl:output message="tns:GetQuoteSoapOut" /> + </wsdl:operation> + + </wsdl:portType> + <wsdl:portType name="StockQuoteHttpGet"> + <wsdl:operation name="GetQuote"> + <documentation xmlns="http://schemas.xmlsoap.org/wsdl/">Get Stock quote for a company Symbol</documentation> + <wsdl:input message="tns:GetQuoteHttpGetIn" /> + <wsdl:output message="tns:GetQuoteHttpGetOut" /> + </wsdl:operation> + </wsdl:portType> + + <wsdl:portType name="StockQuoteHttpPost"> + <wsdl:operation name="GetQuote"> + <documentation xmlns="http://schemas.xmlsoap.org/wsdl/">Get Stock quote for a company Symbol</documentation> + <wsdl:input message="tns:GetQuoteHttpPostIn" /> + <wsdl:output message="tns:GetQuoteHttpPostOut" /> + </wsdl:operation> + </wsdl:portType> + <wsdl:binding name="StockQuoteSoap" type="tns:StockQuoteSoap"> + + <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" /> + <wsdl:operation name="GetQuote"> + <soap:operation soapAction="http://www.webserviceX.NET/GetQuote" style="document" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + + </wsdl:operation> + </wsdl:binding> + <wsdl:binding name="StockQuoteHttpGet" type="tns:StockQuoteHttpGet"> + <http:binding verb="GET" /> + <wsdl:operation name="GetQuote"> + <http:operation location="/GetQuote" /> + <wsdl:input> + <http:urlEncoded /> + </wsdl:input> + + <wsdl:output> + <mime:mimeXml part="Body" /> + </wsdl:output> + </wsdl:operation> + </wsdl:binding> + <wsdl:binding name="StockQuoteHttpPost" type="tns:StockQuoteHttpPost"> + <http:binding verb="POST" /> + <wsdl:operation name="GetQuote"> + <http:operation location="/GetQuote" /> + + <wsdl:input> + <mime:content type="application/x-www-form-urlencoded" /> + </wsdl:input> + <wsdl:output> + <mime:mimeXml part="Body" /> + </wsdl:output> + </wsdl:operation> + </wsdl:binding> + <wsdl:service name="StockQuote"> + + <wsdl:port name="StockQuoteSoap" binding="tns:StockQuoteSoap"> + <soap:address location="http://www.webservicex.net/stockquote.asmx" /> + </wsdl:port> + <wsdl:port name="StockQuoteHttpGet" binding="tns:StockQuoteHttpGet"> + <http:address location="http://www.webservicex.net/stockquote.asmx" /> + </wsdl:port> + <wsdl:port name="StockQuoteHttpPost" binding="tns:StockQuoteHttpPost"> + <http:address location="http://www.webservicex.net/stockquote.asmx" /> + </wsdl:port> + + </wsdl:service> +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/pom.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/pom.xml new file mode 100644 index 0000000000..461ba16256 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/pom.xml @@ -0,0 +1,41 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * Copyright (c) 2005-2006 The Apache Software Foundation or its licensors, as applicable. + * + * Licensed 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> + <parent> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>tuscany-testing-sca</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + </parent> + + <modelVersion>4.0.0</modelVersion> + <artifactId>tuscany-testing-sca-interop</artifactId> + <packaging>pom</packaging> + <name>Apache Tuscany SCA Interop Testing</name> + + <properties> + <sdo.version>1.0-incubator-SNAPSHOT</sdo.version> + <specVersionSDO>2.1</specVersionSDO> + </properties> + + <modules> + <module>clients</module> + <sdo.version>1.0-incubator-SNAPSHOT</sdo.version> + <specVersionSDO>2.1</specVersionSDO> + <module>services</module> + </modules> + +</project> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/services/pom.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/services/pom.xml new file mode 100644 index 0000000000..1f1970ff63 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/services/pom.xml @@ -0,0 +1,33 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * Copyright (c) 2005-2006 The Apache Software Foundation or its licensors, as applicable. + * + * Licensed 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> + <parent> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>tuscany-testing-sca-interop</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + </parent> + + <modelVersion>4.0.0</modelVersion> + <artifactId>tuscany-interop-services</artifactId> + <packaging>pom</packaging> + <name>Tuscany Interop Testing - Services</name> + + <modules> + <module>webserviceInteropDoc</module> + </modules> + +</project> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/services/webserviceInteropDoc/LICENSE.txt b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/services/webserviceInteropDoc/LICENSE.txt new file mode 100644 index 0000000000..0084319535 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/services/webserviceInteropDoc/LICENSE.txt @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, serviceDefinition marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed 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. diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/services/webserviceInteropDoc/NOTICE.txt b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/services/webserviceInteropDoc/NOTICE.txt new file mode 100644 index 0000000000..d83ebbe236 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/services/webserviceInteropDoc/NOTICE.txt @@ -0,0 +1,14 @@ +${pom.name} +Copyright (c) 2005 - 2006 The Apache Software Foundation + +Apache Tuscany is an effort undergoing incubation at The Apache Software +Foundation (ASF), sponsored by the Apache Web Services PMC. Incubation is +required of all newly accepted projects until a further review indicates that +the infrastructure, communications, and decision making process have stabilized +in a manner consistent with other successful ASF projects. While incubation +status is not necessarily a reflection of the completeness or stability of the +code, it does indicate that the project has yet to be fully endorsed by the ASF. + +This product includes software developed by +The Apache Software Foundation (http://www.apache.org/). + diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/services/webserviceInteropDoc/pom.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/services/webserviceInteropDoc/pom.xml new file mode 100644 index 0000000000..2da8adf7af --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/services/webserviceInteropDoc/pom.xml @@ -0,0 +1,109 @@ +<?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> + <parent> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>tuscany-interop-services</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + </parent> + + <modelVersion>4.0.0</modelVersion> + <artifactId>interop-service-webserviceInteropDoc</artifactId> + <packaging>war</packaging> + <name>Tuscany Interop Testing - Services - InteropDoc</name> + + <dependencies> + + <dependency> + <groupId>org.apache.tuscany.sca.runtime</groupId> + <artifactId>webapp</artifactId> + <version>${sca.version}</version> + <scope>runtime</scope> <!-- runtime is need for webapp integration to include jar --> + </dependency> + <dependency> + <groupId>org.apache.tuscany.sca.runtime</groupId> + <artifactId>webapp-host</artifactId> + <version>${sca.version}</version> + <scope>runtime</scope> <!-- runtime is need for webapp integration to include jar --> + </dependency> + + <dependency> + <groupId>org.apache.tuscany.sca.services.idl</groupId> + <artifactId>tuscany-wsdl</artifactId> + <version>${sca.version}</version> + <scope>runtime</scope> <!-- runtime is need for webapp integration to include jar --> + </dependency> + + <dependency> + <groupId>org.apache.ws.commons.axiom</groupId> + <artifactId>axiom-api</artifactId> + <version>SNAPSHOT</version> + <scope>compile</scope> + </dependency> + <dependency> + <groupId>org.apache.ws.commons.axiom</groupId> + <artifactId>axiom-impl</artifactId> + <version>SNAPSHOT</version> + <scope>runtime</scope> + </dependency> + + </dependencies> + + <build> + <plugins> + <plugin> + <groupId>org.apache.tuscany.sdo</groupId> + <artifactId>tuscany-sdo-plugin</artifactId> + <version>${sdo.version}</version> + <executions> + <execution> + <configuration> + <schemaFile>${basedir}/src/main/resources/wsdl/interopdoc.wsdl</schemaFile> + <noNotification>true</noNotification> + <noContainer>true</noContainer> + <noInterfaces>true</noInterfaces> + <noUnsettable>true</noUnsettable> + </configuration> + <goals> + <goal>generate</goal> + </goals> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.apache.tuscany.sca.extensions.axis2.plugins</groupId> + <artifactId>tuscany-plugin-wsdl2java</artifactId> + <version>${sca.version}</version> + <executions> + <execution> + <configuration> + <wsdlFile>${basedir}/src/main/resources/wsdl/interopdoc.wsdl</wsdlFile> + <javaPackage>org.soapinterop</javaPackage> + </configuration> + <goals> + <goal>generate</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + +</project> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/services/webserviceInteropDoc/src/main/java/org/apache/tuscany/test/interop/server/InteropDocServiceComponentImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/services/webserviceInteropDoc/src/main/java/org/apache/tuscany/test/interop/server/InteropDocServiceComponentImpl.java new file mode 100644 index 0000000000..c34941f43e --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/services/webserviceInteropDoc/src/main/java/org/apache/tuscany/test/interop/server/InteropDocServiceComponentImpl.java @@ -0,0 +1,47 @@ +/* + * 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.test.interop.server; + +import java.rmi.RemoteException; + +import org.osoa.sca.annotations.Service; +import org.soapinterop.ComplexDocument; +import org.soapinterop.DocTestPortType; +import org.soapinterop.SimpleDocument1; +import org.soapinterop.SingleTag; + +/** + * This class implements the HelloWorld service component. + */ +@Service(DocTestPortType.class) +public class InteropDocServiceComponentImpl implements DocTestPortType { + + public ComplexDocument ComplexDocument(ComplexDocument param2) throws RemoteException { + return param2; + } + + public SimpleDocument1 SimpleDocument(SimpleDocument1 param0) throws RemoteException { + return param0; + } + + public SingleTag SingleTag(SingleTag param4) throws RemoteException { + return param4; + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/services/webserviceInteropDoc/src/main/resources/wsdl/interopdoc.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/services/webserviceInteropDoc/src/main/resources/wsdl/interopdoc.wsdl new file mode 100644 index 0000000000..820c26ca34 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/services/webserviceInteropDoc/src/main/resources/wsdl/interopdoc.wsdl @@ -0,0 +1,180 @@ +<?xml version="1.0"?> +<!-- + * 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. + --> +<definitions name="InteropTestDoc" targetNamespace="http://soapinterop.org/" + xmlns="http://schemas.xmlsoap.org/wsdl/" + xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:tns="http://soapinterop.org/" + xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"> + + <types> + + <xsd:schema elementFormDefault="qualified" targetNamespace="http://soapinterop.org/" xmlns:interop="http://soapinterop.org/"> + + <xsd:element name="SingleTag"> + <xsd:complexType> + <xsd:sequence> + <xsd:element minOccurs="0" maxOccurs="1" name="SingleTag" type="interop:SingleTag"/> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="SingleTag"/> + <xsd:element name="SingleTagResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element minOccurs="0" maxOccurs="1" name="SingleTag" type="interop:SingleTag"/> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="SimpleDocument"> + <xsd:complexType> + <xsd:sequence> + <xsd:element minOccurs="0" maxOccurs="1" name="SimpleDocument" type="interop:SimpleDocument"/> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:complexType name="SimpleDocument"> + <xsd:simpleContent> + <xsd:extension base="xsd:string"/> + </xsd:simpleContent> + </xsd:complexType> + <xsd:element name="SimpleDocumentResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element minOccurs="0" maxOccurs="1" name="SimpleDocument" type="interop:SimpleDocument"/> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="ComplexDocument"> + <xsd:complexType> + <xsd:sequence> + <xsd:element minOccurs="0" maxOccurs="1" name="ComplexDocument" type="interop:ComplexDocument"/> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:complexType name="ComplexDocument"> + <xsd:sequence> + <xsd:element minOccurs="0" maxOccurs="1" name="simpleDoc" type="interop:ArrayOfSimpleDocument"/> + <xsd:element minOccurs="0" maxOccurs="1" name="child" type="interop:ChildDocument"/> + </xsd:sequence> + <xsd:attribute name="AnAttribute" type="xsd:string"/> + </xsd:complexType> + <xsd:complexType name="ArrayOfSimpleDocument"> + <xsd:sequence> + <xsd:element minOccurs="0" maxOccurs="unbounded" name="SimpleDocument" nillable="true" type="interop:SimpleDocument"/> + </xsd:sequence> + </xsd:complexType> + <xsd:complexType name="ChildDocument"> + <xsd:sequence> + <xsd:element minOccurs="0" maxOccurs="1" name="childSimpleDoc" type="interop:ArrayOfSimpleDocument"/> + </xsd:sequence> + </xsd:complexType> + <xsd:element name="ComplexDocumentResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element minOccurs="0" maxOccurs="1" name="ComplexDocument" type="interop:ComplexDocument"/> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + </xsd:schema> + + </types> + + <message name="SingleTagSoapIn"> + <part name="parameters" element="tns:SingleTag"/> + </message> + <message name="SingleTagSoapOut"> + <part name="outputDoc" element="tns:SingleTagResponse"/> + </message> + <message name="SimpleDocumentSoapIn"> + <part name="parameters" element="tns:SimpleDocument"/> + </message> + <message name="SimpleDocumentSoapOut"> + <part name="outputDoc" element="tns:SimpleDocumentResponse"/> + </message> + <message name="ComplexDocumentSoapIn"> + <part name="parameters" element="tns:ComplexDocument"/> + </message> + <message name="ComplexDocumentSoapOut"> + <part name="outputDoc" element="tns:ComplexDocumentResponse"/> + </message> + + <portType name="DocTestPortType"> + + <operation name="SingleTag"> + <input message="tns:SingleTagSoapIn"/> + <output message="tns:SingleTagSoapOut"/> + </operation> + <operation name="SimpleDocument"> + <input message="tns:SimpleDocumentSoapIn"/> + <output message="tns:SimpleDocumentSoapOut"/> + </operation> + <operation name="ComplexDocument"> + <input message="tns:ComplexDocumentSoapIn"/> + <output message="tns:ComplexDocumentSoapOut"/> + </operation> + + </portType> + + <binding name="doc_test_binding" type="tns:DocTestPortType"> + <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> + + <operation name="SingleTag"> + <soap:operation soapAction="http://soapinterop.org/SingleTag"/> + <input> + <soap:body use="literal"/> + </input> + <output> + <soap:body use="literal"/> + </output> + </operation> + + <operation name="SimpleDocument"> + <soap:operation soapAction="http://soapinterop.org/SimpleDocument"/> + <input> + <soap:body use="literal"/> + </input> + <output> + <soap:body use="literal"/> + </output> + </operation> + + <operation name="ComplexDocument"> + <soap:operation soapAction="http://soapinterop.org/ComplexDocument"/> + <input> + <soap:body use="literal"/> + </input> + <output> + <soap:body use="literal"/> + </output> + </operation> + </binding> + + <service name="interopDocSvc"> + + <port name="interopDocPort" binding="tns:doc_test_binding"> + <soap:address location="http://www.whitemesa.net/interopdoc"/> + </port> + + </service> + +</definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/services/webserviceInteropDoc/src/main/webapp/META-INF/sca/default.scdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/services/webserviceInteropDoc/src/main/webapp/META-INF/sca/default.scdl new file mode 100644 index 0000000000..3fbc73616e --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/services/webserviceInteropDoc/src/main/webapp/META-INF/sca/default.scdl @@ -0,0 +1,42 @@ +<?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" + name="interop.server"> + + <import.sdo location="wsdl/interopdoc.wsdl"/> + <!-- import.wsdl wsdlLocation="wsdl/interopdoc.wsdl"/ --> + + <service name="InteropDocService"> + <!-- interface.wsdl interface="http://soapinterop.org/#wsdl.interface(DocTestPortType)"/ --> + <interface.java interface="org.soapinterop.DocTestPortType"/> + + <binding.ws endpoint="http://soapinterop.org/#wsdl.endpoint(interopDocSvc/interopDocPort)" + conformanceURIs="http://ws-i.org/profiles/basic/1.1" + location="wsdl/interopdoc.wsdl" + /> + + <reference>InteropDocServiceComponent/DocTestPortType</reference> + </service> + + <component name="InteropDocServiceComponent"> + <implementation.java class="org.apache.tuscany.test.interop.server.InteropDocServiceComponentImpl"/> + </component> + +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/services/webserviceInteropDoc/src/main/webapp/WEB-INF/web.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/services/webserviceInteropDoc/src/main/webapp/WEB-INF/web.xml new file mode 100644 index 0000000000..8cf95fb789 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/services/webserviceInteropDoc/src/main/webapp/WEB-INF/web.xml @@ -0,0 +1,51 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<!-- + * 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. +--> + +<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web +Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"> +<web-app> + <display-name>Tuscany Interop Test Server</display-name> + + <context-param> + <param-name>systemScdlPath</param-name> + <param-value>/META-INF/sca/webapp.system.scdl</param-value> + </context-param> + + <context-param> + <param-name>applicationScdlPath</param-name> + <param-value>/META-INF/sca/default.scdl</param-value> + </context-param> + + <listener> + <listener-class>org.apache.tuscany.runtime.webapp.TuscanyContextListener</listener-class> + </listener> + + <servlet> + <servlet-name>TuscanyServlet</servlet-name> + <display-name>Tuscany Servlet</display-name> + <servlet-class>org.apache.tuscany.runtime.webapp.TuscanyServlet</servlet-class> + </servlet> + + <servlet-mapping> + <servlet-name>TuscanyServlet</servlet-name> + <url-pattern>/services/*</url-pattern> + </servlet-mapping> + +</web-app> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/services/webserviceInteropDoc/t.bat b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/services/webserviceInteropDoc/t.bat new file mode 100755 index 0000000000..f612aabb75 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/interop/services/webserviceInteropDoc/t.bat @@ -0,0 +1,16 @@ +@echo off +pushd target +jar -xf ..\apache-tomcat-5.5.17.zip +popd +copy target\sample-helloworldws-1.0-SNAPSHOT.war target\apache-tomcat-5.5.17\webapps +rem pushd target\apache-tomcat-5.5.17\webapps +rem md sample-helloworldws-1.0-SNAPSHOT +rem cd sample-helloworldws-1.0-SNAPSHOT +rem jar -xf ..\sample-helloworldws-1.0-SNAPSHOT.war +pushd target\apache-tomcat-5.5.17\shared +rem jar -xf "%USERPROFILE%\.m2\repository\org\apache\tuscany\web\1.0-SNAPSHOT\web-1.0-SNAPSHOT-bin.zip" +jar -xf "%USERPROFILE%\.m2\repository\org\apache\tuscany\web\1.0-SNAPSHOT\web-1.0-SNAPSHOT-bin.zip" +popd +rem hack +mkdir target\apache-tomcat-5.5.17\shared\extension +copy target\apache-tomcat-5.5.17\shared\lib\axis2-1.0-SNAPSHOT.jar target\apache-tomcat-5.5.17\shared\extension diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/IntegrationTestHelp.html b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/IntegrationTestHelp.html new file mode 100644 index 0000000000..66f84f52c3 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/IntegrationTestHelp.html @@ -0,0 +1,1293 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html xmlns="http://www.w3.org/1999/xhtml"> +<head> + + <meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> + + <meta content="text/css" http-equiv="Content-Style-Type"> + + <meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type"> + + <style media="all" type="text/css"> +@import url("../../../javadoc/css/maven-base.css"); +@import url("../../../javadoc/css/maven-theme.css"); +@import url("../../../javadoc/css/site.css"); + </style> + <link href="../../../javadoc/css/print.css" media="print" rel="stylesheet" type="text/css"> + <title>IntegrationTestFramework - Getting Started</title> + + +</head> + + +<body> + +<div id="bodyColumn"> +<div id="contentBox"> +<div class="section"> +<h2>Itegration Test Framework - Getting started</h2> + +<p>This page will describe what is the integration test framework +and how it can be used to write test cases.</p> + +<p>The Integration Test Framework gives the ability for users to +write +Function Verification Test Cases, which can then be run on a fully +integrated tuscany runtime. Some of the features of the Itest plugin +are auto start and stop of the tuscany runtime, and running the test +cases within the runtime. </p> + +</div> + +<div class="section"> +<h2>Writing Test Cases to run on Tuscany StandAlone</h2> + +You could have a simple test +case as is the example with the propertyTest. Here the application is +simply a jar file that would run on standalone tuscany runtime. In the +pom.xml file, you can specify the following:<br> + +<br> + +</div> + +<a name="setup JDK 5.0"></a> +<div class="section"> +<h2><font><font size="-1"><plugin><br> + + +<groupId>org.apache.tuscany.sca.plugins</groupId><br> + + +<artifactId>tuscany-itest-plugin</artifactId><br> + + +<executions><br> + +<span style="color: rgb(255, 0, 0);"> <span style="color: rgb(255, 255, 0);"> +<span style="color: rgb(255, 0, 0);"><execution></span></span></span><br style="color: rgb(255, 0, 0);"> + +<span style="color: rgb(255, 0, 0);"> +<id>start</id></span><br style="color: rgb(255, 0, 0);"> + +<span style="color: rgb(255, 0, 0);"> +<goals></span><br style="color: rgb(255, 0, 0);"> + +<span style="color: rgb(255, 0, 0);"> +<goal>start</goal></span><br style="color: rgb(255, 0, 0);"> + +<span style="color: rgb(255, 0, 0);"> +</goals></span><br style="color: rgb(255, 0, 0);"> + +<span style="color: rgb(255, 0, 0);"> +</execution></span><br> + + +<span style="color: rgb(0, 128, 0);"><execution></span><br style="color: rgb(0, 128, 0);"> + +<span style="color: rgb(0, 128, 0);"> +<id>test</id></span><br style="color: rgb(0, 128, 0);"> + +<span style="color: rgb(0, 128, 0);"> +<goals></span><br style="color: rgb(0, 128, 0);"> + +<span style="color: rgb(0, 128, 0);"> +<goal>test</goal></span><br style="color: rgb(0, 128, 0);"> + +<span style="color: rgb(0, 128, 0);"> +</goals></span><br style="color: rgb(0, 128, 0);"> + +<span style="color: rgb(0, 128, 0);"> +<configuration></span><br style="color: rgb(0, 128, 0);"> + +<span style="color: rgb(0, 128, 0);"> +<includes></span><br style="color: rgb(0, 128, 0);"> + +<span style="color: rgb(0, 128, 0);"> +<include>**/*ITest.java</include></span><br style="color: rgb(0, 128, 0);"> + +<span style="color: rgb(0, 128, 0);"> +</includes></span><br style="color: rgb(0, 128, 0);"> + +<span style="color: rgb(0, 128, 0);"> +</configuration></span><br style="color: rgb(0, 128, 0);"> + +<span style="color: rgb(0, 128, 0);"> +</execution></span><br> + + <span style="color: rgb(0, 0, 255);"> +<execution></span><br style="color: rgb(0, 0, 255);"> + +<span style="color: rgb(0, 0, 255);"> +<id>stop</id></span><br style="color: rgb(0, 0, 255);"> + +<span style="color: rgb(0, 0, 255);"> +<goals></span><br style="color: rgb(0, 0, 255);"> + +<span style="color: rgb(0, 0, 255);"> +<goal>stop</goal></span><br style="color: rgb(0, 0, 255);"> + +<span style="color: rgb(0, 0, 255);"> +</goals></span><br style="color: rgb(0, 0, 255);"> + +<span style="color: rgb(0, 0, 255);"> +</execution></span><br> + + +</executions><br> + + </plugin></font></font></h2> + +<br> + +In the above, the code marked in red starts up the tuscany runtime.<br> + +<br> + +And similarly, the code marked in blue stops the tuscany +runtime after the tests are run<br> + +<br> + +The code marked in green runs the actual test cases. Notice that it +does have an <include> filter, to indicate which of the +tests you +want to include. Similarly you can have an <exclude> +filter.<br> + +<br> + +Also, you should have the following code in order to not run these +testcases as part of the regular unit tests in case you have other unit +testcases.<br> + +</div> + +<div class="section"> <a name="Starting the Server"></a> +<h2><font><font size="-1"> + +<plugin><br> + + +<groupId>org.apache.maven.plugins</groupId><br> + + +<artifactId>maven-surefire-plugin</artifactId><br> + + +<configuration><br> + + +<excludes><br> + +<exclude>**/*ITest.java</exclude><br> + + +</excludes><br> + + +</configuration><br> + + +</plugin></font></font></h2> + +To see the code for the test case, please check the propertyTest module.</div> + +<div class="section"> +<h2>Writing Test Cases to test on Apache Tomcat</h2> + +<br> + +You may have your testSuite containing webApps that need to be +deployed on tomcat (For example if you have testcases to test +single or multiple composites). In such a case, you would need to use +the "Maven Cargo Plugin". More information on the plugin itself can be +found here: <a href="http://cargo.codehaus.org/Maven2+plugin">Maven +Cargo Plugin.</a><br> + +<br> + +This plugin can be used to automatically deploy your webApp on a tomcat +server, start the server, run the testcases and stop the server. The +following code illustrates this process.<br> + +<br> + +The Maven Cargo plugin is defined as such in the pom.xml file:<br> + +<br> + +<h2><font><font><font><font><font><font><font><font size="-1"><plugin><br> + + +<groupId>org.codehaus.cargo</groupId><br> + + +<artifactId>cargo-maven2-plugin</artifactId><br> + +</plugin></font></font></font></font></font></font></font></font></h2> + +The following code illustrated starting and stopping the container from +within the cargo plugin. The container is started in a +"pre-integration-test" phase. This ensures that the container is +started well before the actual tests are run which is desired. Also, +the container is stopped in a "post-integration-test" phase, which +ensures that the container is stopped well after the test cases are run.<br> + +<h2><font><font><font><font size="-1"> + + <executions><br> + + +<execution><br> + +<id>start-container</id><br> + +<phase>pre-integration-test</phase><br> + +<goals><br> + +<goal>start</goal><br> + +</goals><br> + + +</execution><br> + + +<execution><br> + +<id>stop-container</id><br> + +<phase>post-integration-test</phase><br> + +<goals><br> + +<goal>stop</goal><br> + +</goals><br> + + +</execution><br> + + +</executions></font></font></font></font></h2> + +The following code specifies the configuration for the container. +Firstly the configuration of the container itself is specified, by +specifying the container ID and home, which in this case is wherever +tomcat is installed. Next, the configuration to be used within the +container is specified. This would include the home for the container, +which is where all the container (tomcat) core files are copied and +used for the testcases. Also specified, are the webApps which need to +be deployed on the container during this run.<br> + +<br> + +<h2><font><font><font><font><font><font><font><font size="-1"> +<configuration><br> + + +<wait>false</wait><br> + +<br> + + +<!-- Container configuration --><br> + + +<container><br> + +<containerId>tomcat5x</containerId><br> + +<home>${tomcat.dir}</home><br> + + +</container><br> + +<br> + + +<!-- Configuration to use with the container --><br> + + +<configuration><br> + +<home>${project.build.directory}/tomcat5x</home><br> + + + + + + <deployables><br> + + + + + + +<deployable><br> + + + + + + +<groupId>org.apache.tuscany.testing.bindingstest</groupId><br> + + + + + + +<artifactId>bindingscomposite</artifactId><br> + + + + + + +<type>war</type><br> + + + + + + +<properties><br> + + + + + + +<context>/testtool</context><br> + + + + + + +</properties><br> + + + + + + +<pingURL>http://localhost:8080/testtool/services</pingURL><br> + + + + + + +</deployable><br> + + + + + + +<deployable><br> + + + + + + +<groupId>org.apache.tuscany.testing.bindingstest</groupId><br> + + + + + + +<artifactId>bindingsutility</artifactId><br> + + + + + + +<type>war</type><br> + + + + + + +<properties><br> + + + + + + +<context>/testutil</context><br> + + + + + + +</properties><br> + + + + + + +<pingURL>http://localhost:8080/testutil/services</pingURL><br> + + + + + + +</deployable><br> + + + + + + </deployables><br> + + +</configuration><br> + +<br> + + +</configuration><br> + +</font></font></font></font></font></font></font></font></h2> + +In the above code, for each webApp that is deployed, there is a +<context> property specified, which is the context under +which +the webApp is deployed.<br> + +<br> + +Now the final part of the code below which illustrates the running of +the testcases using the itest plugin:<br> + +<br> + +<h2><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font size="-1"> + <plugin><br> + + +<groupId>org.apache.tuscany.sca.plugins</groupId><br> + + +<artifactId>tuscany-itest-plugin</artifactId><br> + + +<executions><br> + + +<execution><br> + +<id>start</id><br> + +<phase>pre-integration-test</phase><br> + +<goals><br> + +<goal>start</goal><br> + +</goals><br> + +<configuration><br> + +<applicationScdl><br> + +file:///C:/SDO2/Tuscany/java/testing/sca/itest/bindingsTest/bindingsclient/src/main/resources/META-INF/sca/default.scdl<br> + +</applicationScdl><br> + +<extensions><br> + +<dependency><br> + +<groupId>org.apache.tuscany.sca.services.databinding</groupId><br> + +<artifactId>databinding-sdo</artifactId><br> + +<version>1.0-incubator-SNAPSHOT</version><br> + +</dependency><br> + +<dependency><br> + +<groupId>org.apache.tuscany.sca.services.bindings</groupId><br> + +<artifactId>axis2</artifactId><br> + +<version>1.0-incubator-SNAPSHOT</version><br> + +</dependency><br> + +</extensions><br> + +</configuration><br> + + +</execution><br> + + +<execution><br> + +<id>test</id><br> + +<phase>pre-integration-test</phase><br> + +<goals><br> + +<goal>test</goal><br> + +</goals><br> + +<configuration><br> + +<includes><br> + +<include>**/*ITest.java</include><br> + +</includes><br> + +</configuration><br> + + +</execution><br> + + +<execution><br> + +<id>stop</id><br> + +<phase>pre-integration-test</phase><br> + +<goals><br> + +<goal>stop</goal><br> + +</goals><br> + + +</execution><br> + + +</executions><br> + + +</plugin><br> + +</font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></h2> + +Notice in the above code, how the execution <start> and +<stop> phase for the testcases is defined as +"pre-integration-test". This is the same phase under which the +container was started. Hence this ensures that the testcases are run +after the container is started, and before it is stopped. In the above +example, we have two composites as webApps being deployed on tomcat. +Since we have multiple scdl files, with the same name, we need to +specify the application scdl file which can done using +<applicationScdl> property. Also, if the testcases +require some +extensions, then they can also be specified as indicated above using +the <extensions> property.<br> + +<br> + +The final pom file for such a test case should be similar to the one +given below: +<h2><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font><font size="-1"> <project +xmlns="http://maven.apache.org/POM/4.0.0" +xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"<br> + + +xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 +http://maven.apache.org/maven-v4_0_0.xsd"><br> + + +<modelVersion>4.0.0</modelVersion><br> + + +<groupId>org.apache.tuscany.testing.bindingstest</groupId><br> + + +<artifactId>bindingsclient</artifactId><br> + + +<packaging>jar</packaging><br> + + +<version>SNAPSHOT</version><br> + + <name>SCA FVT +Bindings Test Tool JSP Client</name><br> + +<br> + + +<properties><br> + + +<tomcat.dir>C:/Apache/Tomcat +5.5</tomcat.dir><br> + + +</properties><br> + +<br> + + <dependencies><br> + + + <dependency><br> + + + + +<groupId>junit</groupId><br> + + + + +<artifactId>junit</artifactId><br> + + + + +<version>3.8.1</version><br> + + + + +<scope>test</scope><br> + + + </dependency><br> + + + <dependency><br> + + + + <groupId>org.osoa</groupId><br> + + + + <artifactId>sca-api-r0.95</artifactId><br> + + + + <version>1.0-incubator-SNAPSHOT</version><br> + + + + <scope>provided</scope><br> + + + </dependency><br> + + <br> + + + <dependency><br> + + + +<groupId>org.apache.tuscany.sca.services.bindings</groupId><br> + + + +<artifactId>axis2</artifactId><br> + + + +<version>1.0-incubator-SNAPSHOT</version><br> + + + </dependency><br> + + + <dependency><br> + + + +<groupId>org.apache.tuscany.testing.bindingstest</groupId><br> + + + +<artifactId>bindingscomposite</artifactId><br> + + + +<version>SNAPSHOT</version><br> + + + +<type>war</type><br> + + + +<scope>provided</scope><br> + + + </dependency> <br> + + + <dependency><br> + + + +<groupId>org.apache.tuscany.testing.bindingstest</groupId><br> + + + +<artifactId>bindingsutility</artifactId><br> + + + +<version>SNAPSHOT</version><br> + + + +<type>war</type><br> + + + +<scope>provided</scope><br> + + + </dependency> <br> + + + <dependency><br> + + + + +<groupId>org.apache.tuscany.sca</groupId><br> + + + +<artifactId>test</artifactId><br> + + + + +<version>1.0-incubator-SNAPSHOT</version><br> + + + </dependency><br> + + <br> + + <br> + + </dependencies><br> + +<br> + +<br> + +<br> + + <br> + + <build><br> + + +<defaultGoal>install</defaultGoal><br> + + <plugins><br> + + + +<plugin><br> + + + +<groupId>org.apache.maven.plugins</groupId><br> + + + +<artifactId>maven-compiler-plugin</artifactId><br> + + + +<configuration><br> + + + +<source>1.5</source><br> + + + +<target>1.5</target><br> + + + +<showDeprecation>true</showDeprecation><br> + + + +<compilerArgument>-Xlint:unchecked,deprecation,fallthrough,finally</compilerArgument><br> + + + +</configuration><br> + + + +</plugin><br> + + + +<plugin><br> + + +<groupId>org.codehaus.cargo</groupId><br> + + +<artifactId>cargo-maven2-plugin</artifactId><br> + + +<executions><br> + + +<execution><br> + +<id>start-container</id><br> + +<phase>pre-integration-test</phase><br> + +<goals><br> + +<goal>start</goal><br> + +</goals><br> + + +</execution><br> + + +<execution><br> + +<id>stop-container</id><br> + +<phase>post-integration-test</phase><br> + +<goals><br> + +<goal>stop</goal><br> + +</goals><br> + + +</execution><br> + + +</executions><br> + +<br> + + +<configuration><br> + + +<wait>false</wait><br> + +<br> + + +<!-- Container configuration --><br> + + +<container><br> + +<containerId>tomcat5x</containerId><br> + +<home>${tomcat.dir}</home><br> + +<!-- <br> + +<zipUrlInstaller><br> + +<url>http://www.orionserver.com/distributions/orion2.0.5.zip</url><br> + +<installDir>${java.io.tmpdir}/cargoinstalls</installDir><br> + +</zipUrlInstaller><br> + +--><br> + +<br> + + +</container><br> + +<br> + + +<!-- Configuration to use with the container --><br> + + +<configuration><br> + +<home>${project.build.directory}/tomcat5x</home><br> + + + + + + <deployables><br> + + + + + + +<deployable><br> + + + + + + +<groupId>org.apache.tuscany.testing.bindingstest</groupId><br> + + + + + + +<artifactId>bindingscomposite</artifactId><br> + + + + + + +<type>war</type><br> + + + + + + +<properties><br> + + + + + + +<context>/testtool</context><br> + + + + + + +</properties><br> + + + + + + +<pingURL>http://localhost:8080/testtool/services</pingURL><br> + + + + + + +</deployable><br> + + + + + + +<deployable><br> + + + + + + +<groupId>org.apache.tuscany.testing.bindingstest</groupId><br> + + + + + + +<artifactId>bindingsutility</artifactId><br> + + + + + + +<type>war</type><br> + + + + + + +<properties><br> + + + + + + +<context>/testutil</context><br> + + + + + + +</properties><br> + + + + + + +<pingURL>http://localhost:8080/testutil/services</pingURL><br> + + + + + + +</deployable><br> + + + + + + </deployables><br> + + +</configuration><br> + +<br> + + +</configuration><br> + + +</plugin> + <br> + + +<plugin><br> + + +<groupId>org.apache.tuscany.sca.plugins</groupId><br> + + +<artifactId>tuscany-itest-plugin</artifactId><br> + + +<executions><br> + + +<execution><br> + +<id>start</id><br> + +<phase>pre-integration-test</phase><br> + +<goals><br> + +<goal>start</goal><br> + +</goals><br> + +<configuration><br> + +<applicationScdl><br> + +file:///C:/SDO2/Tuscany/java/testing/sca/itest/bindingsTest/bindingsclient/src/main/resources/META-INF/sca/default.scdl<br> + +</applicationScdl><br> + +<extensions><br> + +<dependency><br> + +<groupId>org.apache.tuscany.sca.services.databinding</groupId><br> + +<artifactId>databinding-sdo</artifactId><br> + +<version>1.0-incubator-SNAPSHOT</version><br> + +</dependency><br> + +<dependency><br> + +<groupId>org.apache.tuscany.sca.services.bindings</groupId><br> + +<artifactId>axis2</artifactId><br> + +<version>1.0-incubator-SNAPSHOT</version><br> + +</dependency><br> + +</extensions><br> + +</configuration><br> + + +</execution><br> + + +<execution><br> + +<id>test</id><br> + +<phase>pre-integration-test</phase><br> + +<goals><br> + +<goal>test</goal><br> + +</goals><br> + +<configuration><br> + +<includes><br> + +<include>**/*ITest.java</include><br> + +</includes><br> + +</configuration><br> + + +</execution><br> + + +<execution><br> + +<id>stop</id><br> + +<phase>pre-integration-test</phase><br> + +<goals><br> + +<goal>stop</goal><br> + +</goals><br> + + +</execution><br> + + +</executions><br> + + +</plugin><br> + + + <plugin><br> + + + + +<groupId>org.apache.maven.plugins</groupId><br> + + + + +<artifactId>maven-surefire-plugin</artifactId><br> + + + +<configuration><br> + + + + +<excludes><br> + + + + +<exclude>**/*ITest.java</exclude><br> + + + + +</excludes><br> + + + +</configuration><br> + + + </plugin><br> + + </plugins><br> + + </build><br> + + <br> + +</project></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></font></h2> + +</div> + +<div class="section"> +<h2>Getting Help</h2> + +<p>First place to look is at the Tuscany FAQ at <a href="http://incubator.apache.org/tuscany/faq.html" target="_blank">http://incubator.apache.org/tuscany/faq.html</a> +</p> + +<p>Any problem with this release can be reported to the Tuscany <a href="http://incubator.apache.org/tuscany/mail-lists.html" target="_blank">mailing lists</a> or create a JIRA +issue at <a href="http://issues.apache.org/jira/browse/Tuscany" target="_blank">http://issues.apache.org/jira/browse/Tuscany</a>.</p> + +<p></p> + +<table class="bodyTable"> + + <tbody> + + <tr class="a"> + + <td> + <p>Thank you for your interest in Tuscany.</p> + + <strong><em>-The Tuscany Development Team</em></strong> + <p></p> + + </td> + + </tr> + + </tbody> +</table> + +<p></p> + +</div> + +</div> + +</div> + +</body> +</html> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsclient/pom.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsclient/pom.xml new file mode 100644 index 0000000000..f9a72ae54b --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsclient/pom.xml @@ -0,0 +1,64 @@ +<?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 xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + + <parent> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>sca-itest</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + <relativePath>../../pom.xml</relativePath> + </parent> + + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.tuscany.testing.bindingstest</groupId> + <artifactId>tuscany-itest-bindings-bindingsclient</artifactId> + <packaging>jar</packaging> + <name>SCA FVT Bindings Test Tool JSP Client</name> + + <dependencies> + + <dependency> + <groupId>org.apache.tuscany.testing.bindingstest</groupId> + <artifactId>tuscany-itest-bindings-bindingscomposite</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + </dependency> + + <dependency> + <groupId>org.apache.tuscany.testing.bindingstest</groupId> + <artifactId>tuscany-itest-bindings-bindingsutility</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + </dependency> + + <dependency> + <groupId>org.apache.tuscany.sca.services.databinding</groupId> + <artifactId>databinding-sdo</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + </dependency> + + <dependency> + <groupId>commonj</groupId> + <artifactId>sdo-api-r2.1</artifactId> + <version>1.0-incubator-SNAPSHOT</version> + <scope>runtime</scope> + </dependency> + </dependencies> + +</project> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsclient/src/main/java/org/apache/tuscany/sca/itest/SCATestToolService.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsclient/src/main/java/org/apache/tuscany/sca/itest/SCATestToolService.java new file mode 100644 index 0000000000..44801846f6 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsclient/src/main/java/org/apache/tuscany/sca/itest/SCATestToolService.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.itest; + +import org.osoa.sca.annotations.Remotable; + +/** + * SCA Test Tool Service + */ + +@Remotable +public interface SCATestToolService { + + public String doOneHopPing(String input); + + public String doTwoHopPing(String input); + + public String doDataTypeTest(String input); + + public String getCallbackBuffer(); + + public void clearCallbackBuffer(); +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsclient/src/main/resources/bindingsclient.composite b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsclient/src/main/resources/bindingsclient.composite new file mode 100644 index 0000000000..ca3ff6494e --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsclient/src/main/resources/bindingsclient.composite @@ -0,0 +1,47 @@ +<?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" xmlns:v="http://www.osoa.org/xmlns/sca/values/1.0" + xmlns:wsdli="http://www.w3.org/2006/01/wsdl-instance" + xmlns:dbsdo="http://incubator.apache.org/tuscany/xmlns/databinding/sdo/1.0-incubator-M2" + name="bindingsclient"> + + <!-- + <reference name="SCATestToolSCAReference"> + <interface.java interface="org.apache.tuscany.sca.itest.SCATestToolService"/> + <binding.sca uri="SCATestToolSCAServiceComponent"/> + </reference> + --> + + <reference name="SCATestToolWSReference"> + <interface.java interface="org.apache.tuscany.sca.itest.SCATestToolService" /> + <binding.ws endpoint="http://scatesttool.scabeta1fvt#wsdl.endpoint(SCATestToolService/SCATestToolServiceSoapPort)" + location="wsdl/testtool.wsdl" /> + </reference> + + <!-- + <reference name="SCATestToolEJBReference"> + <interface.java interface="org.apache.tuscany.sca.itest.SCATestToolService"/> + <binding.ejb uri="corbaname:iiop:localhost:2811/NameServiceServerRoot#ejb/scabeta1fvt/scatesttool/SCATestToolServiceHome"/> + </reference> + + --> +</composite> + diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsclient/src/main/resources/wsdl/testtool.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsclient/src/main/resources/wsdl/testtool.wsdl new file mode 100644 index 0000000000..22d7070ec3 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsclient/src/main/resources/wsdl/testtool.wsdl @@ -0,0 +1,272 @@ +<?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 targetNamespace="http://scatesttool.scabeta1fvt" xmlns:impl="http://scatesttool.scabeta1fvt"
+ xmlns:tns="http://scatesttool.scabeta1fvt" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+ xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsi="http://ws-i.org/profiles/basic/1.1/xsd"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="testtool"> + <wsdl:types> + <schema targetNamespace="http://scatesttool.scabeta1fvt" xmlns="http://www.w3.org/2001/XMLSchema"
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> + <element name="doOneHopPingResponse"> + <complexType> + <sequence> + <element name="doOneHopPingReturn" minOccurs="0" type="xsd:string" /> + </sequence> + </complexType> + </element> + <element name="doTwoHopPing"> + <complexType> + <sequence> + <element name="input" minOccurs="0" type="xsd:string" /> + </sequence> + </complexType> + </element> + <element name="doTwoHopPingResponse"> + <complexType> + <sequence> + <element name="doTwoHopPingReturn" minOccurs="0" type="xsd:string" /> + </sequence> + </complexType> + </element> + <element name="doDataTypeTest"> + <complexType> + <sequence> + <element name="input" minOccurs="0" type="xsd:string" /> + </sequence> + </complexType> + </element> + <element name="doDataTypeTestResponse"> + <complexType> + <sequence> + <element name="doDataTypeTestReturn" minOccurs="0" type="xsd:string" /> + </sequence> + </complexType> + </element> + <element name="getCallbackBuffer"> + <complexType> + <sequence /> + </complexType> + </element> + <element name="getCallbackBufferResponse"> + <complexType> + <sequence> + <element name="getCallbackBufferReturn" minOccurs="0" type="xsd:string" /> + </sequence> + </complexType> + </element> + <element name="clearCallbackBuffer"> + <complexType> + <sequence /> + </complexType> + </element> + <element name="clearCallbackBufferResponse"> + <complexType> + <sequence /> + </complexType> + </element> + <element name="doOneHopPing"> + <complexType> + <sequence> + <element name="input" minOccurs="0" type="xsd:string" /> + </sequence> + </complexType> + </element> + </schema> + </wsdl:types> + + <wsdl:message name="doOneHopPingResponse"> + <wsdl:part element="tns:doOneHopPingResponse" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="doDataTypeTestResponse"> + <wsdl:part element="tns:doDataTypeTestResponse" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="clearCallbackBufferResponse"> + <wsdl:part element="tns:clearCallbackBufferResponse" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="getCallbackBufferRequest"> + <wsdl:part element="tns:getCallbackBuffer" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="doTwoHopPingRequest"> + <wsdl:part element="tns:doTwoHopPing" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="doTwoHopPingResponse"> + <wsdl:part element="tns:doTwoHopPingResponse" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="getCallbackBufferResponse"> + <wsdl:part element="tns:getCallbackBufferResponse" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="clearCallbackBufferRequest"> + <wsdl:part element="tns:clearCallbackBuffer" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="doDataTypeTestRequest"> + <wsdl:part element="tns:doDataTypeTest" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="doOneHopPingRequest"> + <wsdl:part element="tns:doOneHopPing" name="parameters" /> + + </wsdl:message> + + <wsdl:portType name="SCATestToolService"> + <wsdl:operation name="doOneHopPing"> + <wsdl:input message="tns:doOneHopPingRequest" name="doOneHopPingRequest" /> + + <wsdl:output message="tns:doOneHopPingResponse" name="doOneHopPingResponse" /> + + </wsdl:operation> + + <wsdl:operation name="doTwoHopPing"> + <wsdl:input message="tns:doTwoHopPingRequest" name="doTwoHopPingRequest" /> + + <wsdl:output message="tns:doTwoHopPingResponse" name="doTwoHopPingResponse" /> + + </wsdl:operation> + + <wsdl:operation name="doDataTypeTest"> + <wsdl:input message="tns:doDataTypeTestRequest" name="doDataTypeTestRequest" /> + + <wsdl:output message="tns:doDataTypeTestResponse" name="doDataTypeTestResponse" /> + + </wsdl:operation> + + <wsdl:operation name="getCallbackBuffer"> + <wsdl:input message="tns:getCallbackBufferRequest" name="getCallbackBufferRequest" /> + + <wsdl:output message="tns:getCallbackBufferResponse" name="getCallbackBufferResponse" /> + + </wsdl:operation> + + <wsdl:operation name="clearCallbackBuffer"> + <wsdl:input message="tns:clearCallbackBufferRequest" name="clearCallbackBufferRequest" /> + + <wsdl:output message="tns:clearCallbackBufferResponse" name="clearCallbackBufferResponse" /> + + </wsdl:operation> + + </wsdl:portType> + + <wsdl:binding name="SCATestToolServiceSoapBinding" type="tns:SCATestToolService"> + <!-- <wsaw:UsingAddressing wsdl:required="false" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"/> --> + + <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" /> + + <wsdl:operation name="doOneHopPing"> + <wsdlsoap:operation soapAction="" /> + + <wsdl:input name="doOneHopPingRequest"> + <wsdlsoap:body use="literal" /> + + </wsdl:input> + + <wsdl:output name="doOneHopPingResponse"> + <wsdlsoap:body use="literal" /> + + </wsdl:output> + + </wsdl:operation> + + <wsdl:operation name="doTwoHopPing"> + <wsdlsoap:operation soapAction="" /> + + <wsdl:input name="doTwoHopPingRequest"> + <wsdlsoap:body use="literal" /> + + </wsdl:input> + + <wsdl:output name="doTwoHopPingResponse"> + <wsdlsoap:body use="literal" /> + + </wsdl:output> + + </wsdl:operation> + + <wsdl:operation name="doDataTypeTest"> + <wsdlsoap:operation soapAction="" /> + + <wsdl:input name="doDataTypeTestRequest"> + <wsdlsoap:body use="literal" /> + + </wsdl:input> + + <wsdl:output name="doDataTypeTestResponse"> + <wsdlsoap:body use="literal" /> + + </wsdl:output> + + </wsdl:operation> + + <wsdl:operation name="getCallbackBuffer"> + <wsdlsoap:operation soapAction="" /> + + <wsdl:input name="getCallbackBufferRequest"> + <wsdlsoap:body use="literal" /> + + </wsdl:input> + + <wsdl:output name="getCallbackBufferResponse"> + <wsdlsoap:body use="literal" /> + + </wsdl:output> + + </wsdl:operation> + + <wsdl:operation name="clearCallbackBuffer"> + <wsdlsoap:operation soapAction="" /> + + <wsdl:input name="clearCallbackBufferRequest"> + <wsdlsoap:body use="literal" /> + + </wsdl:input> + + <wsdl:output name="clearCallbackBufferResponse"> + <wsdlsoap:body use="literal" /> + + </wsdl:output> + + </wsdl:operation> + + </wsdl:binding> + + <wsdl:service name="SCATestToolService"> + <wsdl:port binding="tns:SCATestToolServiceSoapBinding" name="SCATestToolServiceSoapPort"> + <wsdlsoap:address location="http://localhost:8080/services/SCATestToolWSService" /> + + </wsdl:port> + + </wsdl:service> + +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsclient/src/main/webapp/SCATestTool.jsp b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsclient/src/main/webapp/SCATestTool.jsp new file mode 100644 index 0000000000..8c63a8b6eb --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsclient/src/main/webapp/SCATestTool.jsp @@ -0,0 +1,110 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<%--
+ * SCATestService.java
+ * written by Chris Ortiz
+ * interface class for basic test service
+ * version .1 9/22/2006
+ *
+ *
+ --%>
+
+
+<HTML>
+<HEAD>
+ <%@ page language="java" contentType="text/html; charset=ISO-8859-1"
+ pageEncoding="ISO-8859-1" session="true" autoFlush="true"
+ isThreadSafe="true" isErrorPage="false"
+ import="org.apache.tuscany.sca.itest.SCATestToolService"
+ import="java.io.PrintWriter"
+ import="java.io.StringWriter"
+ import="org.osoa.sca.CurrentCompositeContext"
+ import="org.osoa.sca.CompositeContext"
+ %>
+ <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <META name="GENERATOR" content="IBM Software Development Platform">
+ <TITLE>SCA FVT Test Service Driver</TITLE>
+</HEAD>
+
+<BODY bgcolor="#c8d8f8">
+<H2>SCA FVT Test Tool Client</H2>
+
+<form action="SCATestTool.jsp" method="get"><HR><BR>Choose Binding type:<BR><BR>
+ <INPUT type="radio" name="bind" value="WS"> WS Binding
+ <INPUT type="radio" name="bind" value="EJB"> EJB Binding
+ <INPUT type="radio" name="bind" value="SCA" checked> Default Binding<BR><BR><HR>
+ <BR>Check Tests to run:<BR><BR>
+ <INPUT type="checkbox" name="test" value="Ping First Composite" checked> Ping First Composite
+ <INPUT type="checkbox" name="test" value="Ping Second Composite"> Ping Second Composite<BR><BR>
+ <INPUT type="checkbox" name="test" value="Data Type Test"> Data Type Test<BR><BR>
+ <INPUT type="checkbox" name="test" value="Async One Way"> Async One Way
+ <INPUT type="checkbox" name="test" value="Async Callback"> Async Call Back<BR><BR>
+
+
+ <BR>
+ <INPUT type="submit" value="Run Test"></FORM>
+<BR>
+
+ <%
+
+ String bindingchoice = request.getParameter("bind");
+ String[] selected = request.getParameterValues("test");
+
+ try {
+ SCATestToolService scaTestTool;
+ if (bindingchoice.equals("WS")) {
+ CompositeContext compositeContext = CurrentCompositeContext.getContext();
+ scaTestTool = (SCATestToolService) compositeContext.locateService(SCATestToolService.class, "SCATestToolWSReference");
+ } else if (bindingchoice.equals("EJB")) {
+ CompositeContext compositeContext = CurrentCompositeContext.getContext();
+ scaTestTool = (SCATestToolService) compositeContext.locateService(SCATestToolService.class, "SCATestToolEJBReference");
+ } else {
+ // assume default binding
+ CompositeContext compositeContext = CurrentCompositeContext.getContext();
+ scaTestTool = (SCATestToolService) compositeContext.locateService(SCATestToolService.class, "SCATestToolSCAReference");
+ }
+ if (selected != null && selected.length != 0) {
+ for (int i = 0; i < selected.length; i++) {
+ String value = null;
+ if (null != selected[i] && selected[i].equals("Ping First Composite")) {
+ value = scaTestTool.doOneHopPing("brio");
+ } else if (null != selected[i] && selected[i].equals("Ping Second Composite")){
+ value = scaTestTool.doTwoHopPing("brio");
+ } else if (null != selected[i] && selected[i].equals("Data Type Test")){
+ value = scaTestTool.doDataTypeTest("brio");
+ } else if (null != selected[i] && selected[i].equals("Async One Way")){
+ value = "Ut Oh! Test tool not complete for oneway testing";
+ } else if (null != selected[i] && selected[i].equals("Async Callback")){
+ value = "Ut Oh! Test tool not complete for async testing";
+ } else {
+ value = "Ut Oh! unknown test";
+ }
+
+%>
+
+<HR>
+Results from <%=selected[i]%> test with <%=bindingchoice%> binding:
+<P><%=value%>
+ <%
+ } //for
+ } //if
+
+ }catch(Exception e){
+ e.printStackTrace();
+ StringWriter sw= new StringWriter();
+ PrintWriter pw= new PrintWriter(sw);
+
+ e.printStackTrace(pw);
+ pw.flush();
+
+%>
+ Whoops!<BR clear="all">
+<PRE>
+ Exception "<%=e.getClass().getName()%>" Exception message: "<%=e.getMessage()%>"<BR clear="all">
+ <%=sw.toString() %>
+</PRE>
+<% } //catch
+
+%>
+
+</BODY>
+</HTML>
\ No newline at end of file diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsclient/src/main/webapp/WEB-INF/web.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsclient/src/main/webapp/WEB-INF/web.xml new file mode 100644 index 0000000000..b25586f096 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsclient/src/main/webapp/WEB-INF/web.xml @@ -0,0 +1,10 @@ +<!DOCTYPE web-app PUBLIC + "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" + "http://java.sun.com/dtd/web-app_2_3.dtd" > + +<web-app> + <display-name>SCA Test Service Driver</display-name> + <welcome-file-list id="WelcomeFileList"> + <welcome-file>SCATestTool.jsp</welcome-file> + </welcome-file-list> +</web-app> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsclient/src/test/java/org/apache/tuscany/sca/itest/SCATestToolServerTest.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsclient/src/test/java/org/apache/tuscany/sca/itest/SCATestToolServerTest.java new file mode 100644 index 0000000000..7429b25dfc --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsclient/src/test/java/org/apache/tuscany/sca/itest/SCATestToolServerTest.java @@ -0,0 +1,27 @@ +package org.apache.tuscany.sca.itest; + + +import java.io.IOException; +import java.net.Socket; + +import junit.framework.TestCase; + +import org.apache.tuscany.api.SCARuntime; + +public class SCATestToolServerTest extends TestCase { + + @Override + protected void setUp() throws Exception { + SCARuntime.start("bindingscomposite-system.composite", "bindingscomposite.composite"); + } + + public void testPing() throws IOException { + new Socket("127.0.0.1", 8080); + } + + @Override + protected void tearDown() throws Exception { + SCARuntime.stop(); + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsclient/src/test/java/org/apache/tuscany/sca/itest/WSBindingsClientTestCase.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsclient/src/test/java/org/apache/tuscany/sca/itest/WSBindingsClientTestCase.java new file mode 100644 index 0000000000..d14a438ee4 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsclient/src/test/java/org/apache/tuscany/sca/itest/WSBindingsClientTestCase.java @@ -0,0 +1,80 @@ +/* + * 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.itest; + +import java.lang.reflect.UndeclaredThrowableException; + +import junit.framework.TestCase; + +import org.apache.tuscany.api.SCARuntime; +import org.apache.tuscany.core.test.SCATestCaseRunner; +import org.apache.tuscany.sca.util.SCATestUtilityServerTest; +import org.osoa.sca.CompositeContext; +import org.osoa.sca.CurrentCompositeContext; + +public class WSBindingsClientTestCase extends TestCase { + private SCATestToolService scaTestTool; + + private SCATestCaseRunner toolServer; + private SCATestCaseRunner utilityServer; + + // Hops over one composite + /*public void testOneHopPing() throws Throwable { + try { + assertTrue(scaTestTool.doOneHopPing("brio").contains("brio")); + } catch (UndeclaredThrowableException e) { + throw (e.getCause()); + } + }*/ + + // Hops over two composites + public void testTwoHopPing() { + assertTrue(scaTestTool.doTwoHopPing("brio").contains("brio")); + } + + protected void setUp() throws Exception { + SCARuntime.start("bindingsclient.composite"); + + toolServer = new SCATestCaseRunner(SCATestToolServerTest.class); + toolServer.setUp(); + utilityServer = new SCATestCaseRunner(SCATestUtilityServerTest.class); + utilityServer.setUp(); + + CompositeContext cc = CurrentCompositeContext.getContext(); + System.out.println("Composite Name = " + cc.getName()); + System.out.println(CurrentCompositeContext.getContext()); + scaTestTool = + (SCATestToolService)CurrentCompositeContext.getContext().locateService(SCATestToolService.class, + "SCATestToolWSReference"); + if (scaTestTool == null) { + System.out.println("Yo Yo It is null"); + } else { + System.out.println("Yo Yo It is not null: " + scaTestTool); + } + + } + + @Override + protected void tearDown() throws Exception { + SCARuntime.stop(); + toolServer.tearDown(); + utilityServer.tearDown(); + } +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsclient/src/test/java/org/apache/tuscany/sca/util/SCATestUtilityServerTest.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsclient/src/test/java/org/apache/tuscany/sca/util/SCATestUtilityServerTest.java new file mode 100644 index 0000000000..286ff0f4a1 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsclient/src/test/java/org/apache/tuscany/sca/util/SCATestUtilityServerTest.java @@ -0,0 +1,28 @@ +package org.apache.tuscany.sca.util; + + + +import java.io.IOException; +import java.net.Socket; + +import org.apache.tuscany.api.SCARuntime; + +import junit.framework.TestCase; + +public class SCATestUtilityServerTest extends TestCase { + + @Override + protected void setUp() throws Exception { + SCARuntime.start("bindingsutility-system.composite", "bindingsutility.composite"); + } + + public void testPing() throws IOException { + new Socket("127.0.0.1", 8081); + } + + @Override + protected void tearDown() throws Exception { + SCARuntime.stop(); + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingscomposite/pom.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingscomposite/pom.xml new file mode 100644 index 0000000000..3cde0a2f80 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingscomposite/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 xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <parent> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>sca-itest</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + <relativePath>../../pom.xml</relativePath> + </parent> + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.tuscany.testing.bindingstest</groupId> + <artifactId>tuscany-itest-bindings-bindingscomposite</artifactId> + <packaging>jar</packaging> + <name>SCA FVT Bindings Test Tool Service Composite</name> + + <dependencies> + <dependency> + <groupId>org.apache.tuscany.sca.services.databinding</groupId> + <artifactId>databinding-sdo</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + </dependency> + + <dependency> + <groupId>commonj</groupId> + <artifactId>sdo-api-r2.1</artifactId> + <version>1.0-incubator-SNAPSHOT</version> + <scope>runtime</scope> + </dependency> + + <!-- SDO's XXXHelper.INSTANCE pattern requires the implementation --> + <dependency> + <groupId>org.apache.tuscany.sdo</groupId> + <artifactId>tuscany-sdo-impl</artifactId> + <version>1.0-incubator-SNAPSHOT</version> + <scope>runtime</scope> + </dependency> + + </dependencies> + +</project> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingscomposite/src/main/java/org/apache/tuscany/sca/itest/SCADataTypeHelper.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingscomposite/src/main/java/org/apache/tuscany/sca/itest/SCADataTypeHelper.java new file mode 100644 index 0000000000..efe30c4f4e --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingscomposite/src/main/java/org/apache/tuscany/sca/itest/SCADataTypeHelper.java @@ -0,0 +1,341 @@ +/* + * 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.itest; + +import java.math.BigDecimal; +import java.math.BigInteger; +import java.util.Date; +import java.util.GregorianCalendar; +import java.util.Random; +import java.util.Vector; + +import org.apache.tuscany.sca.util.SCATestUtilityService; + +public class SCADataTypeHelper { + + Date date; + Random ran; + SCATestUtilityService scaUtil; // change this to be the service provider + + public SCADataTypeHelper(SCATestUtilityService util) { + date = new Date(); + ran = new Random(date.getTime()); + scaUtil = util; + } + + public StringBuffer test_char() throws SCADataTypeHelperException { + + char x = 'a'; + x += ran.nextInt(26); // get a char a-z + StringBuffer rc = new StringBuffer("\nchar datatype test sending ==> " + x); + try { + char y = scaUtil.echo_char(x); + if (x == y) { + rc.append("\nchar successfully received ==> " + y); + } else { + throw new SCADataTypeHelperException(rc + "\nDatatype exception: char ==> " + y); + } + } catch (Exception e) { + throw new SCADataTypeHelperException("\nRemote exception from scaUtil.echo_char\n" + e.toString()); + } + return rc; + } + + public StringBuffer test_String() throws SCADataTypeHelperException { + + String x = date.toString(); + StringBuffer rc = new StringBuffer("\nString datatype test sending ==> " + x); + try { + String y = scaUtil.echo_String(x); + if (x.equals(y)) { + rc.append("\nString successfully received ==> " + y); + } else { + throw new SCADataTypeHelperException(rc + "\nDatatype exception: String ==> " + y); + } + } catch (Exception e) { + throw new SCADataTypeHelperException("\nRemote exception from scaUtil.echo_String\n" + e.toString()); + } + return rc; + } + + public StringBuffer test_int() throws SCADataTypeHelperException { + + int x = ran.nextInt(); + StringBuffer rc = new StringBuffer("\nint datatype test sending ==> " + x); + try { + int y = scaUtil.echo_int(x); + if (x == y) { + rc.append("\nint successfully received ==> " + y); + } else { + throw new SCADataTypeHelperException(rc + "\nDatatype exception: int ==> " + y); + } + } catch (Exception e) { + throw new SCADataTypeHelperException("\nRemote exception from scaUtil.echo_int\n" + e.toString()); + } + return rc; + } + + public StringBuffer test_boolean() throws SCADataTypeHelperException { + + boolean x = ran.nextBoolean(); + StringBuffer rc = new StringBuffer("\nboolean datatype test sending ==> " + x); + try { + boolean y = scaUtil.echo_boolean(x); + if (x == y) { + rc.append("\nboolean successfully received ==> " + y); + } else { + throw new SCADataTypeHelperException(rc + "\nDatatype exception: boolean ==> " + y); + } + } catch (Exception e) { + throw new SCADataTypeHelperException("\nRemote exception from scaUtil.echo_boolean\n" + e.toString()); + } + return rc; + } + + public StringBuffer test_long() throws SCADataTypeHelperException { + + long x = ran.nextLong(); + StringBuffer rc = new StringBuffer("\nlong datatype test sending ==> " + x); + try { + long y = scaUtil.echo_long(x); + if (x == y) { + rc.append("\nlong successfully received ==> " + y); + } else { + throw new SCADataTypeHelperException(rc + "\nDatatype exception: long ==> " + y); + } + } catch (Exception e) { + throw new SCADataTypeHelperException("\nRemote exception from scaUtil.echo_long\n" + e.toString()); + } + return rc; + } + + public StringBuffer test_short() throws SCADataTypeHelperException { + + short x = (short)ran.nextInt(); + StringBuffer rc = new StringBuffer("\nshort datatype test sending ==> " + x); + try { + short y = scaUtil.echo_short(x); + if (x == y) { + rc.append("\nshort successfully received ==> " + y); + } else { + throw new SCADataTypeHelperException(rc + "\nDatatype exception: short ==> " + y); + } + } catch (Exception e) { + throw new SCADataTypeHelperException("\nRemote exception from scaUtil.echo_short\n" + e.toString()); + } + return rc; + } + + public StringBuffer test_float() throws SCADataTypeHelperException { + + float x = ran.nextFloat(); + StringBuffer rc = new StringBuffer("\nfloat datatype test sending ==> " + x); + try { + float y = scaUtil.echo_float(x); + if (x == y) { + rc.append("\nfloat successfully received ==> " + y); + } else { + throw new SCADataTypeHelperException(rc + "\nDatatype exception: float ==> " + y); + } + } catch (Exception e) { + throw new SCADataTypeHelperException("\nRemote exception from scaUtil.echo_float " + e.toString()); + } + return rc; + } + + public StringBuffer test_double() throws SCADataTypeHelperException { + + double x = ran.nextDouble(); + StringBuffer rc = new StringBuffer("\ndouble datatype test sending ==> " + x); + try { + double y = scaUtil.echo_double(x); + if (x == y) { + rc.append("\ndouble successfully received ==> " + y); + } else { + throw new SCADataTypeHelperException(rc + "\nDatatype exception: double ==> " + y); + } + } catch (Exception e) { + throw new SCADataTypeHelperException("\nRemote exception from scaUtil.echo_double\n" + e.toString()); + } + return rc; + } + + public StringBuffer test_BigInteger() throws SCADataTypeHelperException { + + BigInteger x = new BigInteger(ran.nextInt(32) + 32, ran); // between + // 32 - 64 + // bitLength + StringBuffer rc = new StringBuffer("\nBigInteger datatype test sending ==> " + x); + try { + BigInteger y = scaUtil.echo_BigInteger(x); + if (x.equals(y)) { + rc.append("\nBigInteger successfully received ==> " + y); + } else { + throw new SCADataTypeHelperException("\n" + rc + "\nDatatype exception: BigInteger ==> " + y); + } + } catch (Exception e) { + throw new SCADataTypeHelperException("\nRemote exception from scaUtil.echo_BigInteger\n" + e.toString()); + } + return rc; + } + + public StringBuffer test_BigDecimal() throws SCADataTypeHelperException { + + BigDecimal x = new BigDecimal(ran.nextDouble()); + StringBuffer rc = new StringBuffer("\nBigDecimal datatype test sending ==> " + x); + try { + BigDecimal y = scaUtil.echo_BigDecimal(x); + if (x.equals(y)) { + rc.append("\nBigDecimal successfully received ==> " + y); + } else { + throw new SCADataTypeHelperException("\n" + rc + "\nDatatype exception: BigDecimal ==> " + y); + } + } catch (Exception e) { + throw new SCADataTypeHelperException("\nRemote exception from scaUtil.echo_BigDecimal\n" + e.toString()); + } + return rc; + } + + private StringBuffer test_Vector() throws SCADataTypeHelperException { + + Vector vector = new Vector(); + vector.addElement("DanW"); + vector.addElement(new Float(2000F)); + vector.addElement(new Short((short)11)); + StringBuffer rc = new StringBuffer("\nVector datatype test sending ==> " + vector.toString()); + boolean passed = true; + try { + Vector y = scaUtil.echo_Vector(vector); + if (((String)y.elementAt(0)).equals("DanW")) { + rc.append("\nVector element 0 string " + y.elementAt(0) + " successfully recieved"); + } else { + passed = false; + } + if ((((Float)y.elementAt(1)).equals((Float)vector.elementAt(1)))) { + rc.append("\nVector element 1 Float " + y.elementAt(1) + " successfully recieved"); + } else { + passed = false; + } + if (y.elementAt(2).equals(vector.elementAt(2))) { + rc.append("\nVector element 2 (Short) " + y.elementAt(2) + " successfully received"); + } else { + passed = false; + } + if (!passed) { + // + // one of the tests failed + // + rc.append("\nVector element 0 (String) " + y.elementAt(0) + " should be \"DanW\""); + rc.append("\nVector element 1 (Float) " + y.elementAt(1) + " should be \"2000F\""); + rc.append("\nVector element 2 (Short) " + y.elementAt(2) + " should be \"11\""); + throw new SCADataTypeHelperException("\n" + rc + "\nDataType exception: Vector ==> " + y); + } + } catch (Exception e) { + throw new SCADataTypeHelperException("\nRemote exception from scaUtil.echo_Vector\n" + e.toString()); + } + return rc; + } + + public StringBuffer test_GregorianCalendar() throws SCADataTypeHelperException { + + GregorianCalendar x = new GregorianCalendar(); + StringBuffer rc = new StringBuffer("\nGregorianCalendar datatype test sending ==> " + x.toString()); + try { + GregorianCalendar y = scaUtil.echo_GregorianCalendar(x); + if (x.equals(y)) { + rc.append("\nGregorianCalendar successfully received ==> " + y); + } else { + throw new SCADataTypeHelperException("\n" + rc + "\nDatatype exception: GregorianCalendar ==> " + y); + } + } catch (Exception e) { + throw new SCADataTypeHelperException("\nRemote exception from scaUtil.echo_GregorianCalendar\n" + e + .toString()); + } + return rc; + } + + public StringBuffer doDataType() { + + StringBuffer rc = new StringBuffer(); + try { + rc.append(test_boolean()); + } catch (SCADataTypeHelperException e) { + rc.append("\n" + e.toString() + "\n"); + } + try { + rc.append(test_char()); + } catch (SCADataTypeHelperException e) { + rc.append("\n" + e.toString() + "\n"); + } + try { + rc.append(test_String()); + } catch (SCADataTypeHelperException e) { + rc.append("\n" + e.toString() + "\n"); + } + try { + rc.append(test_int()); + } catch (SCADataTypeHelperException e) { + rc.append("\n" + e.toString()); + } + try { + rc.append(test_long()); + } catch (SCADataTypeHelperException e) { + rc.append("\n" + e.toString() + "\n"); + } + try { + rc.append(test_short()); + } catch (SCADataTypeHelperException e) { + rc.append("\n" + e.toString() + "\n"); + } + try { + rc.append(test_float()); + } catch (SCADataTypeHelperException e) { + rc.append("\n" + e.toString() + "\n"); + } + try { + rc.append(test_double()); + } catch (SCADataTypeHelperException e) { + rc.append("\n" + e.toString() + "\n"); + } + try { + rc.append(test_BigInteger()); + } catch (SCADataTypeHelperException e) { + rc.append("\n" + e.toString() + "\n"); + } + try { + rc.append(test_BigDecimal()); + } catch (SCADataTypeHelperException e) { + rc.append("\n" + e.toString() + "\n"); + } + try { + rc.append(test_Vector()); + } catch (SCADataTypeHelperException e) { + rc.append("\n" + e.toString() + "\n"); + } + try { + rc.append(test_GregorianCalendar()); + } catch (SCADataTypeHelperException e) { + rc.append("\n" + e.toString() + "\n"); + } catch (Exception e) { + rc.append("\n" + e.toString() + "\n"); + } + + return rc; + } +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingscomposite/src/main/java/org/apache/tuscany/sca/itest/SCADataTypeHelperException.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingscomposite/src/main/java/org/apache/tuscany/sca/itest/SCADataTypeHelperException.java new file mode 100644 index 0000000000..074fba8057 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingscomposite/src/main/java/org/apache/tuscany/sca/itest/SCADataTypeHelperException.java @@ -0,0 +1,29 @@ +/* + * 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.itest; + +public class SCADataTypeHelperException extends Exception { + + public SCADataTypeHelperException() { + } + + public SCADataTypeHelperException(String msg) { + super(msg); + } +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingscomposite/src/main/java/org/apache/tuscany/sca/itest/SCATestToolCallbackService.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingscomposite/src/main/java/org/apache/tuscany/sca/itest/SCATestToolCallbackService.java new file mode 100644 index 0000000000..c55e22c905 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingscomposite/src/main/java/org/apache/tuscany/sca/itest/SCATestToolCallbackService.java @@ -0,0 +1,27 @@ +/* + * 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.itest; + +/** + * SCA Test Tool Callback Service + */ +public interface SCATestToolCallbackService { + + public void pingCallBack(String reply); +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingscomposite/src/main/java/org/apache/tuscany/sca/itest/SCATestToolServer.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingscomposite/src/main/java/org/apache/tuscany/sca/itest/SCATestToolServer.java new file mode 100644 index 0000000000..290d9a0897 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingscomposite/src/main/java/org/apache/tuscany/sca/itest/SCATestToolServer.java @@ -0,0 +1,28 @@ +package org.apache.tuscany.sca.itest; + + +import java.io.IOException; + +import org.apache.tuscany.api.SCARuntime; + +public class SCATestToolServer { + + /** + * @param args + */ + public static void main(String[] args) { + + SCARuntime.start("bindingscomposite-system.composite", "bindingscomposite.composite"); + + try { + System.out.println("SCATestTool server started"); + System.in.read(); + } catch (IOException e) { + e.printStackTrace(); + } + + SCARuntime.stop(); + System.out.println("SCATestTool server stopped"); + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingscomposite/src/main/java/org/apache/tuscany/sca/itest/SCATestToolService.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingscomposite/src/main/java/org/apache/tuscany/sca/itest/SCATestToolService.java new file mode 100644 index 0000000000..67b7e8eb64 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingscomposite/src/main/java/org/apache/tuscany/sca/itest/SCATestToolService.java @@ -0,0 +1,39 @@ +/* + * 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.itest; + +import org.osoa.sca.annotations.Remotable; + +/** + * SCA Test Tool Service + */ + +@Remotable +public interface SCATestToolService { + + public String doOneHopPing(String input); + + public String doTwoHopPing(String input); + + public String doDataTypeTest(String input); + + public String getCallbackBuffer(); + + public void clearCallbackBuffer(); +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingscomposite/src/main/java/org/apache/tuscany/sca/itest/SCATestToolServiceImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingscomposite/src/main/java/org/apache/tuscany/sca/itest/SCATestToolServiceImpl.java new file mode 100644 index 0000000000..e207a23927 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingscomposite/src/main/java/org/apache/tuscany/sca/itest/SCATestToolServiceImpl.java @@ -0,0 +1,76 @@ +/* + * 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.itest; + +import org.apache.tuscany.sca.util.SCATestUtilityService; +import org.osoa.sca.annotations.Reference; +import org.osoa.sca.annotations.Service; + +/** + * SCA Test Service Implementation + */ + +@Service(SCATestToolService.class) +public class SCATestToolServiceImpl implements SCATestToolService, SCATestToolCallbackService { + @Reference + public SCATestUtilityService scaTestUtil; + + private String callbackBuffer = null; + + public String doOneHopPing(String input) { + System.out.println("Invoking SCATestToolServiceImpl.doOneHopPing()"); + StringBuffer rc = new StringBuffer(); + rc.append("doOneHopPing(): "); + rc.append(input); + return rc.toString(); + } + + public String doTwoHopPing(String input) { + System.out.println("Invoking SCATestToolServiceImpl.doTwoHopPing()"); + StringBuffer rc = new StringBuffer(); + rc.append("doTwoHopPing(): "); + rc.append(input); + rc.append(" --> "); + rc.append(scaTestUtil.ping(input)); + return rc.toString(); + } + + public String doDataTypeTest(String input) { + StringBuffer rc = new StringBuffer(); + rc.append("doDataTypeTest(): "); + rc.append(input); + rc.append(" --> "); + SCADataTypeHelper dataHelper = new SCADataTypeHelper(scaTestUtil); + rc.append(dataHelper.doDataType()); + return rc.toString(); + } + + public void pingCallBack(String reply) { + callbackBuffer = reply; + } + + public String getCallbackBuffer() { + return callbackBuffer; + } + + public void clearCallbackBuffer() { + callbackBuffer = null; + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingscomposite/src/main/java/org/apache/tuscany/sca/util/SCATestUtilityService.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingscomposite/src/main/java/org/apache/tuscany/sca/util/SCATestUtilityService.java new file mode 100644 index 0000000000..0ceb553727 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingscomposite/src/main/java/org/apache/tuscany/sca/util/SCATestUtilityService.java @@ -0,0 +1,64 @@ +/* + * 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.util; + +import java.math.BigDecimal; +import java.math.BigInteger; +import java.util.Vector; +import java.util.GregorianCalendar; + +import org.apache.tuscany.sca.itest.SCATestToolCallbackService; +import org.osoa.sca.annotations.Callback; +import org.osoa.sca.annotations.Remotable; + +/** + * SCA Test Utility Service + */ + +@Remotable +public interface SCATestUtilityService { + public String ping(String input); + + @Callback(SCATestToolCallbackService.class) + public void asyncping(); + + public int echo_int(int input); + + public short echo_short(short input); + + public long echo_long(long input); + + public float echo_float(float input); + + public double echo_double(double input); + + public boolean echo_boolean(boolean input); + + public char echo_char(char input); + + public String echo_String(String input); + + public BigDecimal echo_BigDecimal(BigDecimal input); + + public BigInteger echo_BigInteger(BigInteger input); + + public Vector echo_Vector(Vector input); + + public GregorianCalendar echo_GregorianCalendar(GregorianCalendar input); +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingscomposite/src/main/resources/bindingscomposite-system.composite b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingscomposite/src/main/resources/bindingscomposite-system.composite new file mode 100644 index 0000000000..c288471c14 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingscomposite/src/main/resources/bindingscomposite-system.composite @@ -0,0 +1,36 @@ +<?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.
+-->
+<!--
+ Tuscany system configuration.
+
+ $Rev$ $Date$
+-->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" xmlns:t="http://tuscany.apache.org/xmlns/system/1.0-SNAPSHOT"
+ name="system">
+
+ <include name="default-system"
+ scdlResource="META-INF/tuscany/default-system.composite" />
+ + <component name="httpserver"> + <t:implementation.system class="org.apache.tuscany.service.jetty.JettyServiceImpl" /> + <property name="httpPort">8080</property> + </component> +
+</composite>
diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingscomposite/src/main/resources/bindingscomposite.composite b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingscomposite/src/main/resources/bindingscomposite.composite new file mode 100644 index 0000000000..b2f1e57e15 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingscomposite/src/main/resources/bindingscomposite.composite @@ -0,0 +1,49 @@ +<?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" xmlns:wsdli="http://www.w3.org/2006/01/wsdl-instance" + xmlns:v="http://www.osoa.org/xmlns/sca/values/1.0" xmlns:dbsdo="http://tuscany.apache.org/xmlns/sca/databinding/sdo/1.0" + name="bindingscomposite"> + + <dbsdo:import.sdo location="wsdl/testtool.wsdl" /> + <dbsdo:import.sdo location="wsdl/testutility.wsdl" /> + + <service name="SCATestToolWSService"> + <interface.wsdl interface="http://scatesttool.scabeta1fvt#wsdl.interface(SCATestToolService)" + wsdli:wsdlLocation="http://scatesttool.scabeta1fvt wsdl/testtool.wsdl" /> + <reference>SCATestToolWSServiceComponent</reference> + <binding.ws endpoint="http://scatesttool.scabeta1fvt#wsdl.endpoint(SCATestToolService/SCATestToolServiceSoapPort)" + location="wsdl/testtool.wsdl" uri="testtool" /> + </service> + + <component name="SCATestToolWSServiceComponent"> + <implementation.java class="org.apache.tuscany.sca.itest.SCATestToolServiceImpl" /> + <!--reference name="scaTestUtil">SCATestUtilityWSReference</reference--> + </component> + + <reference name="SCATestUtilityWSReference" promote="SCATestToolWSServiceComponent"> + <interface.java interface="org.apache.tuscany.sca.util.SCATestUtilityService" /> + <binding.ws endpoint="http://scatestutil.scabeta1fvt#wsdl.endpoint(SCATestUtilityService/SCATestUtilityServiceSoapPort)" + location="wsdl/testutility.wsdl" /> + </reference> + + +</composite> + diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingscomposite/src/main/resources/wsdl/testtool.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingscomposite/src/main/resources/wsdl/testtool.wsdl new file mode 100644 index 0000000000..729593518d --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingscomposite/src/main/resources/wsdl/testtool.wsdl @@ -0,0 +1,272 @@ +<?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 targetNamespace="http://scatesttool.scabeta1fvt" xmlns:impl="http://scatesttool.scabeta1fvt"
+ xmlns:tns="http://scatesttool.scabeta1fvt" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+ xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsi="http://ws-i.org/profiles/basic/1.1/xsd"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="testtool"> + <wsdl:types> + <schema targetNamespace="http://scatesttool.scabeta1fvt" xmlns="http://www.w3.org/2001/XMLSchema"
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> + <element name="doOneHopPingResponse"> + <complexType> + <sequence> + <element name="doOneHopPingReturn" minOccurs="0" type="xsd:string" /> + </sequence> + </complexType> + </element> + <element name="doTwoHopPing"> + <complexType> + <sequence> + <element name="input" minOccurs="0" type="xsd:string" /> + </sequence> + </complexType> + </element> + <element name="doTwoHopPingResponse"> + <complexType> + <sequence> + <element name="doTwoHopPingReturn" minOccurs="0" type="xsd:string" /> + </sequence> + </complexType> + </element> + <element name="doDataTypeTest"> + <complexType> + <sequence> + <element name="input" minOccurs="0" type="xsd:string" /> + </sequence> + </complexType> + </element> + <element name="doDataTypeTestResponse"> + <complexType> + <sequence> + <element name="doDataTypeTestReturn" minOccurs="0" type="xsd:string" /> + </sequence> + </complexType> + </element> + <element name="getCallbackBuffer"> + <complexType> + <sequence /> + </complexType> + </element> + <element name="getCallbackBufferResponse"> + <complexType> + <sequence> + <element name="getCallbackBufferReturn" minOccurs="0" type="xsd:string" /> + </sequence> + </complexType> + </element> + <element name="clearCallbackBuffer"> + <complexType> + <sequence /> + </complexType> + </element> + <element name="clearCallbackBufferResponse"> + <complexType> + <sequence /> + </complexType> + </element> + <element name="doOneHopPing"> + <complexType> + <sequence> + <element name="input" minOccurs="0" type="xsd:string" /> + </sequence> + </complexType> + </element> + </schema> + </wsdl:types> + + <wsdl:message name="doOneHopPingResponse"> + <wsdl:part element="tns:doOneHopPingResponse" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="doDataTypeTestResponse"> + <wsdl:part element="tns:doDataTypeTestResponse" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="clearCallbackBufferResponse"> + <wsdl:part element="tns:clearCallbackBufferResponse" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="getCallbackBufferRequest"> + <wsdl:part element="tns:getCallbackBuffer" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="doTwoHopPingRequest"> + <wsdl:part element="tns:doTwoHopPing" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="doTwoHopPingResponse"> + <wsdl:part element="tns:doTwoHopPingResponse" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="getCallbackBufferResponse"> + <wsdl:part element="tns:getCallbackBufferResponse" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="clearCallbackBufferRequest"> + <wsdl:part element="tns:clearCallbackBuffer" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="doDataTypeTestRequest"> + <wsdl:part element="tns:doDataTypeTest" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="doOneHopPingRequest"> + <wsdl:part element="tns:doOneHopPing" name="parameters" /> + + </wsdl:message> + + <wsdl:portType name="SCATestToolService"> + <wsdl:operation name="doOneHopPing"> + <wsdl:input message="tns:doOneHopPingRequest" name="doOneHopPingRequest" /> + + <wsdl:output message="tns:doOneHopPingResponse" name="doOneHopPingResponse" /> + + </wsdl:operation> + + <wsdl:operation name="doTwoHopPing"> + <wsdl:input message="tns:doTwoHopPingRequest" name="doTwoHopPingRequest" /> + + <wsdl:output message="tns:doTwoHopPingResponse" name="doTwoHopPingResponse" /> + + </wsdl:operation> + + <wsdl:operation name="doDataTypeTest"> + <wsdl:input message="tns:doDataTypeTestRequest" name="doDataTypeTestRequest" /> + + <wsdl:output message="tns:doDataTypeTestResponse" name="doDataTypeTestResponse" /> + + </wsdl:operation> + + <wsdl:operation name="getCallbackBuffer"> + <wsdl:input message="tns:getCallbackBufferRequest" name="getCallbackBufferRequest" /> + + <wsdl:output message="tns:getCallbackBufferResponse" name="getCallbackBufferResponse" /> + + </wsdl:operation> + + <wsdl:operation name="clearCallbackBuffer"> + <wsdl:input message="tns:clearCallbackBufferRequest" name="clearCallbackBufferRequest" /> + + <wsdl:output message="tns:clearCallbackBufferResponse" name="clearCallbackBufferResponse" /> + + </wsdl:operation> + + </wsdl:portType> + + <wsdl:binding name="SCATestToolServiceSoapBinding" type="tns:SCATestToolService"> + <!-- <wsaw:UsingAddressing wsdl:required="false" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"/> --> + + <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" /> + + <wsdl:operation name="doOneHopPing"> + <wsdlsoap:operation soapAction="" /> + + <wsdl:input name="doOneHopPingRequest"> + <wsdlsoap:body use="literal" /> + + </wsdl:input> + + <wsdl:output name="doOneHopPingResponse"> + <wsdlsoap:body use="literal" /> + + </wsdl:output> + + </wsdl:operation> + + <wsdl:operation name="doTwoHopPing"> + <wsdlsoap:operation soapAction="" /> + + <wsdl:input name="doTwoHopPingRequest"> + <wsdlsoap:body use="literal" /> + + </wsdl:input> + + <wsdl:output name="doTwoHopPingResponse"> + <wsdlsoap:body use="literal" /> + + </wsdl:output> + + </wsdl:operation> + + <wsdl:operation name="doDataTypeTest"> + <wsdlsoap:operation soapAction="" /> + + <wsdl:input name="doDataTypeTestRequest"> + <wsdlsoap:body use="literal" /> + + </wsdl:input> + + <wsdl:output name="doDataTypeTestResponse"> + <wsdlsoap:body use="literal" /> + + </wsdl:output> + + </wsdl:operation> + + <wsdl:operation name="getCallbackBuffer"> + <wsdlsoap:operation soapAction="" /> + + <wsdl:input name="getCallbackBufferRequest"> + <wsdlsoap:body use="literal" /> + + </wsdl:input> + + <wsdl:output name="getCallbackBufferResponse"> + <wsdlsoap:body use="literal" /> + + </wsdl:output> + + </wsdl:operation> + + <wsdl:operation name="clearCallbackBuffer"> + <wsdlsoap:operation soapAction="" /> + + <wsdl:input name="clearCallbackBufferRequest"> + <wsdlsoap:body use="literal" /> + + </wsdl:input> + + <wsdl:output name="clearCallbackBufferResponse"> + <wsdlsoap:body use="literal" /> + + </wsdl:output> + + </wsdl:operation> + + </wsdl:binding> + + <wsdl:service name="SCATestToolService"> + <wsdl:port binding="tns:SCATestToolServiceSoapBinding" name="SCATestToolServiceSoapPort"> + <wsdlsoap:address location="http://localhost:8080/services/SCATestToolWSService" /> + + </wsdl:port> + + </wsdl:service> + +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingscomposite/src/main/resources/wsdl/testutility.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingscomposite/src/main/resources/wsdl/testutility.wsdl new file mode 100644 index 0000000000..32d9050a61 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingscomposite/src/main/resources/wsdl/testutility.wsdl @@ -0,0 +1,704 @@ +<?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 targetNamespace="http://scatestutil.scabeta1fvt" xmlns:impl="http://scatestutil.scabeta1fvt"
+ xmlns:tns="http://scatestutil.scabeta1fvt" xmlns:tns2="http://xml.apache.org/xml-soap" xmlns:tns3="http://util.java"
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
+ xmlns:wsi="http://ws-i.org/profiles/basic/1.1/xsd" xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="testutility"> + <wsdl:types> + + <schema elementFormDefault="qualified" targetNamespace="http://scatestutil.scabeta1fvt"
+ xmlns="http://www.w3.org/2001/XMLSchema" xmlns:tns2="http://xml.apache.org/xml-soap"
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> + <import namespace="http://xml.apache.org/xml-soap" /> + <element name="pingResponse"> + <complexType> + <sequence> + <element name="pingReturn" minOccurs="0" type="xsd:string" /> + </sequence> + </complexType> + </element> + <element name="asyncping"> + <complexType> + <sequence /> + </complexType> + </element> + <element name="asyncpingResponse"> + <complexType> + <sequence /> + </complexType> + </element> + <element name="echo_int"> + <complexType> + <sequence> + <element name="input" type="xsd:int" /> + </sequence> + </complexType> + </element> + <element name="echo_intResponse"> + <complexType> + <sequence> + <element name="echo_intReturn" type="xsd:int" /> + </sequence> + </complexType> + </element> + <element name="echo_short"> + <complexType> + <sequence> + <element name="input" type="xsd:short" /> + </sequence> + </complexType> + </element> + <element name="echo_shortResponse"> + <complexType> + <sequence> + <element name="echo_shortReturn" type="xsd:short" /> + </sequence> + </complexType> + </element> + <element name="echo_long"> + <complexType> + <sequence> + <element name="input" type="xsd:long" /> + </sequence> + </complexType> + </element> + <element name="echo_longResponse"> + <complexType> + <sequence> + <element name="echo_longReturn" type="xsd:long" /> + </sequence> + </complexType> + </element> + <element name="echo_float"> + <complexType> + <sequence> + <element name="input" type="xsd:float" /> + </sequence> + </complexType> + </element> + <element name="echo_floatResponse"> + <complexType> + <sequence> + <element name="echo_floatReturn" type="xsd:float" /> + </sequence> + </complexType> + </element> + <element name="echo_double"> + <complexType> + <sequence> + <element name="input" type="xsd:double" /> + </sequence> + </complexType> + </element> + <element name="echo_doubleResponse"> + <complexType> + <sequence> + <element name="echo_doubleReturn" type="xsd:double" /> + </sequence> + </complexType> + </element> + <element name="echo_boolean"> + <complexType> + <sequence> + <element name="input" type="xsd:boolean" /> + </sequence> + </complexType> + </element> + <element name="echo_booleanResponse"> + <complexType> + <sequence> + <element name="echo_booleanReturn" type="xsd:boolean" /> + </sequence> + </complexType> + </element> + <element name="echo_char"> + <complexType> + <sequence> + <element name="input" type="tns2:char" /> + </sequence> + </complexType> + </element> + <element name="echo_charResponse"> + <complexType> + <sequence> + <element name="echo_charReturn" type="tns2:char" /> + </sequence> + </complexType> + </element> + <element name="echo_String"> + <complexType> + <sequence> + <element name="input" minOccurs="0" type="xsd:string" /> + </sequence> + </complexType> + </element> + <element name="echo_StringResponse"> + <complexType> + <sequence> + <element name="echo_StringReturn" minOccurs="0" type="xsd:string" /> + </sequence> + </complexType> + </element> + <element name="echo_BigDecimal"> + <complexType> + <sequence> + <element name="input" minOccurs="0" type="xsd:decimal" /> + </sequence> + </complexType> + </element> + <element name="echo_BigDecimalResponse"> + <complexType> + <sequence> + <element name="echo_BigDecimalReturn" minOccurs="0" type="xsd:decimal" /> + </sequence> + </complexType> + </element> + <element name="echo_BigInteger"> + <complexType> + <sequence> + <element name="input" minOccurs="0" type="xsd:integer" /> + </sequence> + </complexType> + </element> + <element name="echo_BigIntegerResponse"> + <complexType> + <sequence> + <element name="echo_BigIntegerReturn" minOccurs="0" type="xsd:integer" /> + </sequence> + </complexType> + </element> + <element name="echo_Vector"> + <complexType> + <sequence> + <element name="input" minOccurs="0" type="tns2:Vector" /> + </sequence> + </complexType> + </element> + <element name="echo_VectorResponse"> + <complexType> + <sequence> + <element name="echo_VectorReturn" minOccurs="0" type="tns2:Vector" /> + </sequence> + </complexType> + </element> + <element name="echo_GregorianCalendar"> + <complexType> + <sequence> + <element name="input" minOccurs="0" type="xsd:anyType" /> + </sequence> + </complexType> + </element> + <element name="echo_GregorianCalendarResponse"> + <complexType> + <sequence> + <element name="echo_GregorianCalendarReturn" minOccurs="0" type="xsd:anyType" /> + </sequence> + </complexType> + </element> + <element name="ping"> + <complexType> + <sequence> + <element name="input" minOccurs="0" type="xsd:string" /> + </sequence> + </complexType> + </element> + </schema> + <schema targetNamespace="http://xml.apache.org/xml-soap" xmlns="http://www.w3.org/2001/XMLSchema"
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> + <simpleType name="char"> + <restriction base="xsd:string"> + <length value="1" /> + </restriction> + </simpleType> + <complexType name="Vector"> + <sequence> + <element maxOccurs="unbounded" minOccurs="0" name="item" type="xsd:anyType" /> + </sequence> + </complexType> + </schema> + </wsdl:types> + + <wsdl:message name="echo_StringRequest"> + <wsdl:part element="tns:echo_String" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_shortResponse"> + <wsdl:part element="tns:echo_shortResponse" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="asyncpingRequest"> + <wsdl:part element="tns:asyncping" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="asyncpingResponse"> + <wsdl:part element="tns:asyncpingResponse" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_doubleResponse"> + <wsdl:part element="tns:echo_doubleResponse" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_BigDecimalResponse"> + <wsdl:part element="tns:echo_BigDecimalResponse" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_shortRequest"> + <wsdl:part element="tns:echo_short" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_BigIntegerRequest"> + <wsdl:part element="tns:echo_BigInteger" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_VectorRequest"> + <wsdl:part element="tns:echo_Vector" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="pingResponse"> + <wsdl:part element="tns:pingResponse" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_charResponse"> + <wsdl:part element="tns:echo_charResponse" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_VectorResponse"> + <wsdl:part element="tns:echo_VectorResponse" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_longRequest"> + <wsdl:part element="tns:echo_long" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_doubleRequest"> + <wsdl:part element="tns:echo_double" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_BigDecimalRequest"> + <wsdl:part element="tns:echo_BigDecimal" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_GregorianCalendarRequest"> + <wsdl:part element="tns:echo_GregorianCalendar" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_floatResponse"> + <wsdl:part element="tns:echo_floatResponse" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_booleanRequest"> + <wsdl:part element="tns:echo_boolean" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_booleanResponse"> + <wsdl:part element="tns:echo_booleanResponse" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_StringResponse"> + <wsdl:part element="tns:echo_StringResponse" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_floatRequest"> + <wsdl:part element="tns:echo_float" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_GregorianCalendarResponse"> + <wsdl:part element="tns:echo_GregorianCalendarResponse" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_intResponse"> + <wsdl:part element="tns:echo_intResponse" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_longResponse"> + <wsdl:part element="tns:echo_longResponse" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_charRequest"> + <wsdl:part element="tns:echo_char" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="pingRequest"> + <wsdl:part element="tns:ping" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_intRequest"> + <wsdl:part element="tns:echo_int" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_BigIntegerResponse"> + <wsdl:part element="tns:echo_BigIntegerResponse" name="parameters" /> + + </wsdl:message> + + <wsdl:portType name="SCATestUtilityService"> + <wsdl:operation name="ping"> + <wsdl:input message="tns:pingRequest" name="pingRequest" /> + + <wsdl:output message="tns:pingResponse" name="pingResponse" /> + + </wsdl:operation> + + <wsdl:operation name="asyncping"> + <wsdl:input message="tns:asyncpingRequest" name="asyncpingRequest" /> + + <wsdl:output message="tns:asyncpingResponse" name="asyncpingResponse" /> + + </wsdl:operation> + + <wsdl:operation name="echo_int"> + <wsdl:input message="tns:echo_intRequest" name="echo_intRequest" /> + + <wsdl:output message="tns:echo_intResponse" name="echo_intResponse" /> + + </wsdl:operation> + + <wsdl:operation name="echo_short"> + <wsdl:input message="tns:echo_shortRequest" name="echo_shortRequest" /> + + <wsdl:output message="tns:echo_shortResponse" name="echo_shortResponse" /> + + </wsdl:operation> + + <wsdl:operation name="echo_long"> + <wsdl:input message="tns:echo_longRequest" name="echo_longRequest" /> + + <wsdl:output message="tns:echo_longResponse" name="echo_longResponse" /> + + </wsdl:operation> + + <wsdl:operation name="echo_float"> + <wsdl:input message="tns:echo_floatRequest" name="echo_floatRequest" /> + + <wsdl:output message="tns:echo_floatResponse" name="echo_floatResponse" /> + + </wsdl:operation> + + <wsdl:operation name="echo_double"> + <wsdl:input message="tns:echo_doubleRequest" name="echo_doubleRequest" /> + + <wsdl:output message="tns:echo_doubleResponse" name="echo_doubleResponse" /> + + </wsdl:operation> + + <wsdl:operation name="echo_boolean"> + <wsdl:input message="tns:echo_booleanRequest" name="echo_booleanRequest" /> + + <wsdl:output message="tns:echo_booleanResponse" name="echo_booleanResponse" /> + + </wsdl:operation> + + <wsdl:operation name="echo_char"> + <wsdl:input message="tns:echo_charRequest" name="echo_charRequest" /> + + <wsdl:output message="tns:echo_charResponse" name="echo_charResponse" /> + + </wsdl:operation> + + <wsdl:operation name="echo_String"> + <wsdl:input message="tns:echo_StringRequest" name="echo_StringRequest" /> + + <wsdl:output message="tns:echo_StringResponse" name="echo_StringResponse" /> + + </wsdl:operation> + + <wsdl:operation name="echo_BigDecimal"> + <wsdl:input message="tns:echo_BigDecimalRequest" name="echo_BigDecimalRequest" /> + + <wsdl:output message="tns:echo_BigDecimalResponse" name="echo_BigDecimalResponse" /> + + </wsdl:operation> + + <wsdl:operation name="echo_BigInteger"> + <wsdl:input message="tns:echo_BigIntegerRequest" name="echo_BigIntegerRequest" /> + + <wsdl:output message="tns:echo_BigIntegerResponse" name="echo_BigIntegerResponse" /> + + </wsdl:operation> + + <wsdl:operation name="echo_Vector"> + <wsdl:input message="tns:echo_VectorRequest" name="echo_VectorRequest" /> + + <wsdl:output message="tns:echo_VectorResponse" name="echo_VectorResponse" /> + + </wsdl:operation> + + <wsdl:operation name="echo_GregorianCalendar"> + <wsdl:input message="tns:echo_GregorianCalendarRequest" name="echo_GregorianCalendarRequest" /> + + <wsdl:output message="tns:echo_GregorianCalendarResponse" name="echo_GregorianCalendarResponse" /> + + </wsdl:operation> + + </wsdl:portType> + + <wsdl:binding name="SCATestUtilityServiceSoapBinding" type="tns:SCATestUtilityService"> + <!-- <wsaw:UsingAddressing wsdl:required="false" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"/> --> + + <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" /> + + <wsdl:operation name="ping"> + <wsdlsoap:operation soapAction="" /> + + <wsdl:input name="pingRequest"> + <wsdlsoap:body use="literal" /> + + </wsdl:input> + + <wsdl:output name="pingResponse"> + <wsdlsoap:body use="literal" /> + + </wsdl:output> + + </wsdl:operation> + + <wsdl:operation name="asyncping"> + <wsdlsoap:operation soapAction="" /> + + <wsdl:input name="asyncpingRequest"> + <wsdlsoap:body use="literal" /> + + </wsdl:input> + + <wsdl:output name="asyncpingResponse"> + <wsdlsoap:body use="literal" /> + + </wsdl:output> + + </wsdl:operation> + + <wsdl:operation name="echo_int"> + <wsdlsoap:operation soapAction="" /> + + <wsdl:input name="echo_intRequest"> + <wsdlsoap:body use="literal" /> + + </wsdl:input> + + <wsdl:output name="echo_intResponse"> + <wsdlsoap:body use="literal" /> + + </wsdl:output> + + </wsdl:operation> + + <wsdl:operation name="echo_short"> + <wsdlsoap:operation soapAction="" /> + + <wsdl:input name="echo_shortRequest"> + <wsdlsoap:body use="literal" /> + + </wsdl:input> + + <wsdl:output name="echo_shortResponse"> + <wsdlsoap:body use="literal" /> + + </wsdl:output> + + </wsdl:operation> + + <wsdl:operation name="echo_long"> + <wsdlsoap:operation soapAction="" /> + + <wsdl:input name="echo_longRequest"> + <wsdlsoap:body use="literal" /> + + </wsdl:input> + + <wsdl:output name="echo_longResponse"> + <wsdlsoap:body use="literal" /> + + </wsdl:output> + + </wsdl:operation> + + <wsdl:operation name="echo_float"> + <wsdlsoap:operation soapAction="" /> + + <wsdl:input name="echo_floatRequest"> + <wsdlsoap:body use="literal" /> + + </wsdl:input> + + <wsdl:output name="echo_floatResponse"> + <wsdlsoap:body use="literal" /> + + </wsdl:output> + + </wsdl:operation> + + <wsdl:operation name="echo_double"> + <wsdlsoap:operation soapAction="" /> + + <wsdl:input name="echo_doubleRequest"> + <wsdlsoap:body use="literal" /> + + </wsdl:input> + + <wsdl:output name="echo_doubleResponse"> + <wsdlsoap:body use="literal" /> + + </wsdl:output> + + </wsdl:operation> + + <wsdl:operation name="echo_boolean"> + <wsdlsoap:operation soapAction="" /> + + <wsdl:input name="echo_booleanRequest"> + <wsdlsoap:body use="literal" /> + + </wsdl:input> + + <wsdl:output name="echo_booleanResponse"> + <wsdlsoap:body use="literal" /> + + </wsdl:output> + + </wsdl:operation> + + <wsdl:operation name="echo_char"> + <wsdlsoap:operation soapAction="" /> + + <wsdl:input name="echo_charRequest"> + <wsdlsoap:body use="literal" /> + + </wsdl:input> + + <wsdl:output name="echo_charResponse"> + <wsdlsoap:body use="literal" /> + + </wsdl:output> + + </wsdl:operation> + + <wsdl:operation name="echo_String"> + <wsdlsoap:operation soapAction="" /> + + <wsdl:input name="echo_StringRequest"> + <wsdlsoap:body use="literal" /> + + </wsdl:input> + + <wsdl:output name="echo_StringResponse"> + <wsdlsoap:body use="literal" /> + + </wsdl:output> + + </wsdl:operation> + + <wsdl:operation name="echo_BigDecimal"> + <wsdlsoap:operation soapAction="" /> + + <wsdl:input name="echo_BigDecimalRequest"> + <wsdlsoap:body use="literal" /> + + </wsdl:input> + + <wsdl:output name="echo_BigDecimalResponse"> + <wsdlsoap:body use="literal" /> + + </wsdl:output> + + </wsdl:operation> + + <wsdl:operation name="echo_BigInteger"> + <wsdlsoap:operation soapAction="" /> + + <wsdl:input name="echo_BigIntegerRequest"> + <wsdlsoap:body use="literal" /> + + </wsdl:input> + + <wsdl:output name="echo_BigIntegerResponse"> + <wsdlsoap:body use="literal" /> + + </wsdl:output> + + </wsdl:operation> + + <wsdl:operation name="echo_Vector"> + <wsdlsoap:operation soapAction="" /> + + <wsdl:input name="echo_VectorRequest"> + <wsdlsoap:body use="literal" /> + + </wsdl:input> + + <wsdl:output name="echo_VectorResponse"> + <wsdlsoap:body use="literal" /> + + </wsdl:output> + + </wsdl:operation> + + <wsdl:operation name="echo_GregorianCalendar"> + <wsdlsoap:operation soapAction="" /> + + <wsdl:input name="echo_GregorianCalendarRequest"> + <wsdlsoap:body use="literal" /> + + </wsdl:input> + + <wsdl:output name="echo_GregorianCalendarResponse"> + <wsdlsoap:body use="literal" /> + + </wsdl:output> + + </wsdl:operation> + + </wsdl:binding> + + <wsdl:service name="SCATestUtilityService"> + <wsdl:port binding="tns:SCATestUtilityServiceSoapBinding" name="SCATestUtilityServiceSoapPort"> + <wsdlsoap:address location="http://localhost:8081/services/SCATestUtilityWSService" /> + + </wsdl:port> + + </wsdl:service> + +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingscomposite/src/test/java/org/apache/tuscany/sca/itest/SCATestToolServerTestCase.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingscomposite/src/test/java/org/apache/tuscany/sca/itest/SCATestToolServerTestCase.java new file mode 100644 index 0000000000..53f6c04544 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingscomposite/src/test/java/org/apache/tuscany/sca/itest/SCATestToolServerTestCase.java @@ -0,0 +1,27 @@ +package org.apache.tuscany.sca.itest; + + +import java.io.IOException; +import java.net.Socket; + +import junit.framework.TestCase; + +import org.apache.tuscany.api.SCARuntime; + +public class SCATestToolServerTestCase extends TestCase { + + @Override + protected void setUp() throws Exception { + SCARuntime.start("bindingscomposite-system.composite", "bindingscomposite.composite"); + } + + public void testPing() throws IOException { + new Socket("127.0.0.1", 8080); + } + + @Override + protected void tearDown() throws Exception { + SCARuntime.stop(); + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsutility/pom.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsutility/pom.xml new file mode 100644 index 0000000000..567d90e8ae --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsutility/pom.xml @@ -0,0 +1,59 @@ +<?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 xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <parent> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>sca-itest</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + <relativePath>../../pom.xml</relativePath> + </parent> + + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.tuscany.testing.bindingstest</groupId> + <artifactId>tuscany-itest-bindings-bindingsutility</artifactId> + <packaging>jar</packaging> + <name>SCA FVT Bindings Test Tool Utility Composite</name> + + <dependencies> + <dependency> + <groupId>org.apache.tuscany.sca.services.databinding</groupId> + <artifactId>databinding-sdo</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + </dependency> + + <dependency> + <groupId>commonj</groupId> + <artifactId>sdo-api-r2.1</artifactId> + <version>1.0-incubator-SNAPSHOT</version> + <scope>runtime</scope> + </dependency> + + <!-- SDO's XXXHelper.INSTANCE pattern requires the implementation --> + <dependency> + <groupId>org.apache.tuscany.sdo</groupId> + <artifactId>tuscany-sdo-impl</artifactId> + <version>1.0-incubator-SNAPSHOT</version> + <scope>runtime</scope> + </dependency> + + </dependencies> + +</project> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsutility/src/main/java/org/apache/tuscany/sca/itest/SCATestToolCallbackService.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsutility/src/main/java/org/apache/tuscany/sca/itest/SCATestToolCallbackService.java new file mode 100644 index 0000000000..664fb06930 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsutility/src/main/java/org/apache/tuscany/sca/itest/SCATestToolCallbackService.java @@ -0,0 +1,28 @@ +/* + * 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.itest; + +/** + * SCA Test Tool Callback Service + */ + +public interface SCATestToolCallbackService { + + public void pingCallBack(String reply); +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsutility/src/main/java/org/apache/tuscany/sca/util/SCATestUtilityServer.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsutility/src/main/java/org/apache/tuscany/sca/util/SCATestUtilityServer.java new file mode 100644 index 0000000000..552454c968 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsutility/src/main/java/org/apache/tuscany/sca/util/SCATestUtilityServer.java @@ -0,0 +1,28 @@ +package org.apache.tuscany.sca.util; + + +import java.io.IOException; + +import org.apache.tuscany.api.SCARuntime; + +public class SCATestUtilityServer { + + /** + * @param args + */ + public static void main(String[] args) { + + SCARuntime.start("bindingsutility-system.composite", "bindingsutility.composite"); + + try { + System.out.println("SCATestUtility server started"); + System.in.read(); + } catch (IOException e) { + e.printStackTrace(); + } + + SCARuntime.stop(); + System.out.println("SCATestUtility server stopped"); + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsutility/src/main/java/org/apache/tuscany/sca/util/SCATestUtilityService.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsutility/src/main/java/org/apache/tuscany/sca/util/SCATestUtilityService.java new file mode 100644 index 0000000000..0ceb553727 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsutility/src/main/java/org/apache/tuscany/sca/util/SCATestUtilityService.java @@ -0,0 +1,64 @@ +/* + * 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.util; + +import java.math.BigDecimal; +import java.math.BigInteger; +import java.util.Vector; +import java.util.GregorianCalendar; + +import org.apache.tuscany.sca.itest.SCATestToolCallbackService; +import org.osoa.sca.annotations.Callback; +import org.osoa.sca.annotations.Remotable; + +/** + * SCA Test Utility Service + */ + +@Remotable +public interface SCATestUtilityService { + public String ping(String input); + + @Callback(SCATestToolCallbackService.class) + public void asyncping(); + + public int echo_int(int input); + + public short echo_short(short input); + + public long echo_long(long input); + + public float echo_float(float input); + + public double echo_double(double input); + + public boolean echo_boolean(boolean input); + + public char echo_char(char input); + + public String echo_String(String input); + + public BigDecimal echo_BigDecimal(BigDecimal input); + + public BigInteger echo_BigInteger(BigInteger input); + + public Vector echo_Vector(Vector input); + + public GregorianCalendar echo_GregorianCalendar(GregorianCalendar input); +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsutility/src/main/java/org/apache/tuscany/sca/util/SCATestUtilityServiceImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsutility/src/main/java/org/apache/tuscany/sca/util/SCATestUtilityServiceImpl.java new file mode 100644 index 0000000000..e752e4d6e6 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsutility/src/main/java/org/apache/tuscany/sca/util/SCATestUtilityServiceImpl.java @@ -0,0 +1,157 @@ +/* + * 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.util; + +import java.math.BigDecimal; +import java.math.BigInteger; +import java.net.InetAddress; +import java.util.GregorianCalendar; +import java.util.Properties; +import java.util.Vector; + +import org.osoa.sca.annotations.Service; + +@Service(SCATestUtilityService.class) +public class SCATestUtilityServiceImpl implements SCATestUtilityService { + + // private SCATestToolCallbackService utilCallBack; + + /** + * The setter used by the runtime to set the callback reference + * + * @param myServiceCallback + */ + + // @Callback + // public void setCallback(SCATestToolCallbackService utilCallBack) { + // this.utilCallBack = utilCallBack; + // } + public String ping(String input) { + System.out.println("Invoking SCATestUtilityServiceImpl.ping()"); + StringBuffer rc = new StringBuffer(); + + try { + // get a systems property object + Properties sp = System.getProperties(); + rc.append("Pinged SCA Test Utility Service on: "); + // get operating system info + rc.append(sp.getProperty("os.name")); + rc.append(", " + sp.getProperty("os.version")); + // get network info + rc.append(" - " + InetAddress.getLocalHost().toString()); + } catch (Exception e) { + System.out.println("\nException preparing system infomation for ping service reply\n" + e.toString()); + e.printStackTrace(); + } + return rc.toString(); + } + + public void asyncping() { + + StringBuffer rc = new StringBuffer(); + + try { + // get a systems property object + Properties sp = System.getProperties(); + rc.append("Pinged SCA Test Utility Service on: "); + // get operating system info + rc.append(sp.getProperty("os.name")); + rc.append(", " + sp.getProperty("os.version")); + // get network info + rc.append(" - " + InetAddress.getLocalHost().toString()); + } catch (Exception e) { + System.out.println("\nException preparing system infomation for ping service reply\n" + e.toString()); + e.printStackTrace(); + } + // utilCallBack.pingCallBack(rc.toString()); + } + + public int echo_int(int input) { + int local; + local = input; + return local; + } + + public short echo_short(short input) { + short local; + local = input; + return local; + } + + public long echo_long(long input) { + long local; + local = input; + return local; + } + + public float echo_float(float input) { + float local; + local = input; + return local; + } + + public double echo_double(double input) { + double local; + local = input; + return local; + } + + public boolean echo_boolean(boolean input) { + boolean local; + local = input; + return local; + } + + public char echo_char(char input) { + char local; + local = input; + return local; + } + + public String echo_String(String input) { + String local; + local = input; + return local; + } + + public BigDecimal echo_BigDecimal(BigDecimal input) { + BigDecimal local; + local = input; + return local; + } + + public BigInteger echo_BigInteger(BigInteger input) { + BigInteger local; + local = input; + return local; + } + + public Vector echo_Vector(Vector input) { + Vector local; + local = input; + return local; + } + + public GregorianCalendar echo_GregorianCalendar(GregorianCalendar input) { + GregorianCalendar local; + local = input; + return local; + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsutility/src/main/resources/bindingsutility-system.composite b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsutility/src/main/resources/bindingsutility-system.composite new file mode 100644 index 0000000000..7126b78572 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsutility/src/main/resources/bindingsutility-system.composite @@ -0,0 +1,36 @@ +<?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.
+-->
+<!--
+ Tuscany system configuration.
+
+ $Rev$ $Date$
+-->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" xmlns:t="http://tuscany.apache.org/xmlns/system/1.0-SNAPSHOT"
+ name="system">
+
+ <include name="default-system"
+ scdlResource="META-INF/tuscany/default-system.composite" />
+ + <component name="httpserver"> + <t:implementation.system class="org.apache.tuscany.service.jetty.JettyServiceImpl" /> + <property name="httpPort">8081</property> + </component> +
+</composite>
diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsutility/src/main/resources/bindingsutility.composite b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsutility/src/main/resources/bindingsutility.composite new file mode 100644 index 0000000000..6771b72442 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsutility/src/main/resources/bindingsutility.composite @@ -0,0 +1,39 @@ +<?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" xmlns:wsdli="http://www.w3.org/2006/01/wsdl-instance"
+ xmlns:v="http://www.osoa.org/xmlns/sca/values/1.0" + xmlns:dbsdo="http://tuscany.apache.org/xmlns/sca/databinding/sdo/1.0"
+ name="bindingsutility">
+
+ <dbsdo:import.sdo location="wsdl/testutility.wsdl" />
+
+ <service name="SCATestUtilityWSService">
+ <interface.wsdl interface="http://scatestutil.scabeta1fvt#wsdl.interface(SCATestUtilityService)"
+ wsdli:wsdlLocation="http://scatestutil.scabeta1fvt wsdl/testutility.wsdl" />
+ <reference>SCATestUtilityWSServiceComponent</reference>
+ <binding.ws endpoint="http://scatestutil.scabeta1fvt#wsdl.endpoint(SCATestUtilityService/SCATestUtilityServiceSoapPort)"
+ location="wsdl/testutility.wsdl" uri="testutil" />
+ </service>
+
+ <component name="SCATestUtilityWSServiceComponent">
+ <implementation.java class="org.apache.tuscany.sca.util.SCATestUtilityServiceImpl" />
+ </component>
+</composite>
+
diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsutility/src/main/resources/wsdl/testutility.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsutility/src/main/resources/wsdl/testutility.wsdl new file mode 100644 index 0000000000..32d9050a61 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsutility/src/main/resources/wsdl/testutility.wsdl @@ -0,0 +1,704 @@ +<?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 targetNamespace="http://scatestutil.scabeta1fvt" xmlns:impl="http://scatestutil.scabeta1fvt"
+ xmlns:tns="http://scatestutil.scabeta1fvt" xmlns:tns2="http://xml.apache.org/xml-soap" xmlns:tns3="http://util.java"
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
+ xmlns:wsi="http://ws-i.org/profiles/basic/1.1/xsd" xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="testutility"> + <wsdl:types> + + <schema elementFormDefault="qualified" targetNamespace="http://scatestutil.scabeta1fvt"
+ xmlns="http://www.w3.org/2001/XMLSchema" xmlns:tns2="http://xml.apache.org/xml-soap"
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> + <import namespace="http://xml.apache.org/xml-soap" /> + <element name="pingResponse"> + <complexType> + <sequence> + <element name="pingReturn" minOccurs="0" type="xsd:string" /> + </sequence> + </complexType> + </element> + <element name="asyncping"> + <complexType> + <sequence /> + </complexType> + </element> + <element name="asyncpingResponse"> + <complexType> + <sequence /> + </complexType> + </element> + <element name="echo_int"> + <complexType> + <sequence> + <element name="input" type="xsd:int" /> + </sequence> + </complexType> + </element> + <element name="echo_intResponse"> + <complexType> + <sequence> + <element name="echo_intReturn" type="xsd:int" /> + </sequence> + </complexType> + </element> + <element name="echo_short"> + <complexType> + <sequence> + <element name="input" type="xsd:short" /> + </sequence> + </complexType> + </element> + <element name="echo_shortResponse"> + <complexType> + <sequence> + <element name="echo_shortReturn" type="xsd:short" /> + </sequence> + </complexType> + </element> + <element name="echo_long"> + <complexType> + <sequence> + <element name="input" type="xsd:long" /> + </sequence> + </complexType> + </element> + <element name="echo_longResponse"> + <complexType> + <sequence> + <element name="echo_longReturn" type="xsd:long" /> + </sequence> + </complexType> + </element> + <element name="echo_float"> + <complexType> + <sequence> + <element name="input" type="xsd:float" /> + </sequence> + </complexType> + </element> + <element name="echo_floatResponse"> + <complexType> + <sequence> + <element name="echo_floatReturn" type="xsd:float" /> + </sequence> + </complexType> + </element> + <element name="echo_double"> + <complexType> + <sequence> + <element name="input" type="xsd:double" /> + </sequence> + </complexType> + </element> + <element name="echo_doubleResponse"> + <complexType> + <sequence> + <element name="echo_doubleReturn" type="xsd:double" /> + </sequence> + </complexType> + </element> + <element name="echo_boolean"> + <complexType> + <sequence> + <element name="input" type="xsd:boolean" /> + </sequence> + </complexType> + </element> + <element name="echo_booleanResponse"> + <complexType> + <sequence> + <element name="echo_booleanReturn" type="xsd:boolean" /> + </sequence> + </complexType> + </element> + <element name="echo_char"> + <complexType> + <sequence> + <element name="input" type="tns2:char" /> + </sequence> + </complexType> + </element> + <element name="echo_charResponse"> + <complexType> + <sequence> + <element name="echo_charReturn" type="tns2:char" /> + </sequence> + </complexType> + </element> + <element name="echo_String"> + <complexType> + <sequence> + <element name="input" minOccurs="0" type="xsd:string" /> + </sequence> + </complexType> + </element> + <element name="echo_StringResponse"> + <complexType> + <sequence> + <element name="echo_StringReturn" minOccurs="0" type="xsd:string" /> + </sequence> + </complexType> + </element> + <element name="echo_BigDecimal"> + <complexType> + <sequence> + <element name="input" minOccurs="0" type="xsd:decimal" /> + </sequence> + </complexType> + </element> + <element name="echo_BigDecimalResponse"> + <complexType> + <sequence> + <element name="echo_BigDecimalReturn" minOccurs="0" type="xsd:decimal" /> + </sequence> + </complexType> + </element> + <element name="echo_BigInteger"> + <complexType> + <sequence> + <element name="input" minOccurs="0" type="xsd:integer" /> + </sequence> + </complexType> + </element> + <element name="echo_BigIntegerResponse"> + <complexType> + <sequence> + <element name="echo_BigIntegerReturn" minOccurs="0" type="xsd:integer" /> + </sequence> + </complexType> + </element> + <element name="echo_Vector"> + <complexType> + <sequence> + <element name="input" minOccurs="0" type="tns2:Vector" /> + </sequence> + </complexType> + </element> + <element name="echo_VectorResponse"> + <complexType> + <sequence> + <element name="echo_VectorReturn" minOccurs="0" type="tns2:Vector" /> + </sequence> + </complexType> + </element> + <element name="echo_GregorianCalendar"> + <complexType> + <sequence> + <element name="input" minOccurs="0" type="xsd:anyType" /> + </sequence> + </complexType> + </element> + <element name="echo_GregorianCalendarResponse"> + <complexType> + <sequence> + <element name="echo_GregorianCalendarReturn" minOccurs="0" type="xsd:anyType" /> + </sequence> + </complexType> + </element> + <element name="ping"> + <complexType> + <sequence> + <element name="input" minOccurs="0" type="xsd:string" /> + </sequence> + </complexType> + </element> + </schema> + <schema targetNamespace="http://xml.apache.org/xml-soap" xmlns="http://www.w3.org/2001/XMLSchema"
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> + <simpleType name="char"> + <restriction base="xsd:string"> + <length value="1" /> + </restriction> + </simpleType> + <complexType name="Vector"> + <sequence> + <element maxOccurs="unbounded" minOccurs="0" name="item" type="xsd:anyType" /> + </sequence> + </complexType> + </schema> + </wsdl:types> + + <wsdl:message name="echo_StringRequest"> + <wsdl:part element="tns:echo_String" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_shortResponse"> + <wsdl:part element="tns:echo_shortResponse" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="asyncpingRequest"> + <wsdl:part element="tns:asyncping" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="asyncpingResponse"> + <wsdl:part element="tns:asyncpingResponse" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_doubleResponse"> + <wsdl:part element="tns:echo_doubleResponse" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_BigDecimalResponse"> + <wsdl:part element="tns:echo_BigDecimalResponse" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_shortRequest"> + <wsdl:part element="tns:echo_short" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_BigIntegerRequest"> + <wsdl:part element="tns:echo_BigInteger" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_VectorRequest"> + <wsdl:part element="tns:echo_Vector" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="pingResponse"> + <wsdl:part element="tns:pingResponse" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_charResponse"> + <wsdl:part element="tns:echo_charResponse" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_VectorResponse"> + <wsdl:part element="tns:echo_VectorResponse" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_longRequest"> + <wsdl:part element="tns:echo_long" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_doubleRequest"> + <wsdl:part element="tns:echo_double" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_BigDecimalRequest"> + <wsdl:part element="tns:echo_BigDecimal" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_GregorianCalendarRequest"> + <wsdl:part element="tns:echo_GregorianCalendar" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_floatResponse"> + <wsdl:part element="tns:echo_floatResponse" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_booleanRequest"> + <wsdl:part element="tns:echo_boolean" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_booleanResponse"> + <wsdl:part element="tns:echo_booleanResponse" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_StringResponse"> + <wsdl:part element="tns:echo_StringResponse" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_floatRequest"> + <wsdl:part element="tns:echo_float" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_GregorianCalendarResponse"> + <wsdl:part element="tns:echo_GregorianCalendarResponse" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_intResponse"> + <wsdl:part element="tns:echo_intResponse" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_longResponse"> + <wsdl:part element="tns:echo_longResponse" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_charRequest"> + <wsdl:part element="tns:echo_char" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="pingRequest"> + <wsdl:part element="tns:ping" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_intRequest"> + <wsdl:part element="tns:echo_int" name="parameters" /> + + </wsdl:message> + + <wsdl:message name="echo_BigIntegerResponse"> + <wsdl:part element="tns:echo_BigIntegerResponse" name="parameters" /> + + </wsdl:message> + + <wsdl:portType name="SCATestUtilityService"> + <wsdl:operation name="ping"> + <wsdl:input message="tns:pingRequest" name="pingRequest" /> + + <wsdl:output message="tns:pingResponse" name="pingResponse" /> + + </wsdl:operation> + + <wsdl:operation name="asyncping"> + <wsdl:input message="tns:asyncpingRequest" name="asyncpingRequest" /> + + <wsdl:output message="tns:asyncpingResponse" name="asyncpingResponse" /> + + </wsdl:operation> + + <wsdl:operation name="echo_int"> + <wsdl:input message="tns:echo_intRequest" name="echo_intRequest" /> + + <wsdl:output message="tns:echo_intResponse" name="echo_intResponse" /> + + </wsdl:operation> + + <wsdl:operation name="echo_short"> + <wsdl:input message="tns:echo_shortRequest" name="echo_shortRequest" /> + + <wsdl:output message="tns:echo_shortResponse" name="echo_shortResponse" /> + + </wsdl:operation> + + <wsdl:operation name="echo_long"> + <wsdl:input message="tns:echo_longRequest" name="echo_longRequest" /> + + <wsdl:output message="tns:echo_longResponse" name="echo_longResponse" /> + + </wsdl:operation> + + <wsdl:operation name="echo_float"> + <wsdl:input message="tns:echo_floatRequest" name="echo_floatRequest" /> + + <wsdl:output message="tns:echo_floatResponse" name="echo_floatResponse" /> + + </wsdl:operation> + + <wsdl:operation name="echo_double"> + <wsdl:input message="tns:echo_doubleRequest" name="echo_doubleRequest" /> + + <wsdl:output message="tns:echo_doubleResponse" name="echo_doubleResponse" /> + + </wsdl:operation> + + <wsdl:operation name="echo_boolean"> + <wsdl:input message="tns:echo_booleanRequest" name="echo_booleanRequest" /> + + <wsdl:output message="tns:echo_booleanResponse" name="echo_booleanResponse" /> + + </wsdl:operation> + + <wsdl:operation name="echo_char"> + <wsdl:input message="tns:echo_charRequest" name="echo_charRequest" /> + + <wsdl:output message="tns:echo_charResponse" name="echo_charResponse" /> + + </wsdl:operation> + + <wsdl:operation name="echo_String"> + <wsdl:input message="tns:echo_StringRequest" name="echo_StringRequest" /> + + <wsdl:output message="tns:echo_StringResponse" name="echo_StringResponse" /> + + </wsdl:operation> + + <wsdl:operation name="echo_BigDecimal"> + <wsdl:input message="tns:echo_BigDecimalRequest" name="echo_BigDecimalRequest" /> + + <wsdl:output message="tns:echo_BigDecimalResponse" name="echo_BigDecimalResponse" /> + + </wsdl:operation> + + <wsdl:operation name="echo_BigInteger"> + <wsdl:input message="tns:echo_BigIntegerRequest" name="echo_BigIntegerRequest" /> + + <wsdl:output message="tns:echo_BigIntegerResponse" name="echo_BigIntegerResponse" /> + + </wsdl:operation> + + <wsdl:operation name="echo_Vector"> + <wsdl:input message="tns:echo_VectorRequest" name="echo_VectorRequest" /> + + <wsdl:output message="tns:echo_VectorResponse" name="echo_VectorResponse" /> + + </wsdl:operation> + + <wsdl:operation name="echo_GregorianCalendar"> + <wsdl:input message="tns:echo_GregorianCalendarRequest" name="echo_GregorianCalendarRequest" /> + + <wsdl:output message="tns:echo_GregorianCalendarResponse" name="echo_GregorianCalendarResponse" /> + + </wsdl:operation> + + </wsdl:portType> + + <wsdl:binding name="SCATestUtilityServiceSoapBinding" type="tns:SCATestUtilityService"> + <!-- <wsaw:UsingAddressing wsdl:required="false" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"/> --> + + <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" /> + + <wsdl:operation name="ping"> + <wsdlsoap:operation soapAction="" /> + + <wsdl:input name="pingRequest"> + <wsdlsoap:body use="literal" /> + + </wsdl:input> + + <wsdl:output name="pingResponse"> + <wsdlsoap:body use="literal" /> + + </wsdl:output> + + </wsdl:operation> + + <wsdl:operation name="asyncping"> + <wsdlsoap:operation soapAction="" /> + + <wsdl:input name="asyncpingRequest"> + <wsdlsoap:body use="literal" /> + + </wsdl:input> + + <wsdl:output name="asyncpingResponse"> + <wsdlsoap:body use="literal" /> + + </wsdl:output> + + </wsdl:operation> + + <wsdl:operation name="echo_int"> + <wsdlsoap:operation soapAction="" /> + + <wsdl:input name="echo_intRequest"> + <wsdlsoap:body use="literal" /> + + </wsdl:input> + + <wsdl:output name="echo_intResponse"> + <wsdlsoap:body use="literal" /> + + </wsdl:output> + + </wsdl:operation> + + <wsdl:operation name="echo_short"> + <wsdlsoap:operation soapAction="" /> + + <wsdl:input name="echo_shortRequest"> + <wsdlsoap:body use="literal" /> + + </wsdl:input> + + <wsdl:output name="echo_shortResponse"> + <wsdlsoap:body use="literal" /> + + </wsdl:output> + + </wsdl:operation> + + <wsdl:operation name="echo_long"> + <wsdlsoap:operation soapAction="" /> + + <wsdl:input name="echo_longRequest"> + <wsdlsoap:body use="literal" /> + + </wsdl:input> + + <wsdl:output name="echo_longResponse"> + <wsdlsoap:body use="literal" /> + + </wsdl:output> + + </wsdl:operation> + + <wsdl:operation name="echo_float"> + <wsdlsoap:operation soapAction="" /> + + <wsdl:input name="echo_floatRequest"> + <wsdlsoap:body use="literal" /> + + </wsdl:input> + + <wsdl:output name="echo_floatResponse"> + <wsdlsoap:body use="literal" /> + + </wsdl:output> + + </wsdl:operation> + + <wsdl:operation name="echo_double"> + <wsdlsoap:operation soapAction="" /> + + <wsdl:input name="echo_doubleRequest"> + <wsdlsoap:body use="literal" /> + + </wsdl:input> + + <wsdl:output name="echo_doubleResponse"> + <wsdlsoap:body use="literal" /> + + </wsdl:output> + + </wsdl:operation> + + <wsdl:operation name="echo_boolean"> + <wsdlsoap:operation soapAction="" /> + + <wsdl:input name="echo_booleanRequest"> + <wsdlsoap:body use="literal" /> + + </wsdl:input> + + <wsdl:output name="echo_booleanResponse"> + <wsdlsoap:body use="literal" /> + + </wsdl:output> + + </wsdl:operation> + + <wsdl:operation name="echo_char"> + <wsdlsoap:operation soapAction="" /> + + <wsdl:input name="echo_charRequest"> + <wsdlsoap:body use="literal" /> + + </wsdl:input> + + <wsdl:output name="echo_charResponse"> + <wsdlsoap:body use="literal" /> + + </wsdl:output> + + </wsdl:operation> + + <wsdl:operation name="echo_String"> + <wsdlsoap:operation soapAction="" /> + + <wsdl:input name="echo_StringRequest"> + <wsdlsoap:body use="literal" /> + + </wsdl:input> + + <wsdl:output name="echo_StringResponse"> + <wsdlsoap:body use="literal" /> + + </wsdl:output> + + </wsdl:operation> + + <wsdl:operation name="echo_BigDecimal"> + <wsdlsoap:operation soapAction="" /> + + <wsdl:input name="echo_BigDecimalRequest"> + <wsdlsoap:body use="literal" /> + + </wsdl:input> + + <wsdl:output name="echo_BigDecimalResponse"> + <wsdlsoap:body use="literal" /> + + </wsdl:output> + + </wsdl:operation> + + <wsdl:operation name="echo_BigInteger"> + <wsdlsoap:operation soapAction="" /> + + <wsdl:input name="echo_BigIntegerRequest"> + <wsdlsoap:body use="literal" /> + + </wsdl:input> + + <wsdl:output name="echo_BigIntegerResponse"> + <wsdlsoap:body use="literal" /> + + </wsdl:output> + + </wsdl:operation> + + <wsdl:operation name="echo_Vector"> + <wsdlsoap:operation soapAction="" /> + + <wsdl:input name="echo_VectorRequest"> + <wsdlsoap:body use="literal" /> + + </wsdl:input> + + <wsdl:output name="echo_VectorResponse"> + <wsdlsoap:body use="literal" /> + + </wsdl:output> + + </wsdl:operation> + + <wsdl:operation name="echo_GregorianCalendar"> + <wsdlsoap:operation soapAction="" /> + + <wsdl:input name="echo_GregorianCalendarRequest"> + <wsdlsoap:body use="literal" /> + + </wsdl:input> + + <wsdl:output name="echo_GregorianCalendarResponse"> + <wsdlsoap:body use="literal" /> + + </wsdl:output> + + </wsdl:operation> + + </wsdl:binding> + + <wsdl:service name="SCATestUtilityService"> + <wsdl:port binding="tns:SCATestUtilityServiceSoapBinding" name="SCATestUtilityServiceSoapPort"> + <wsdlsoap:address location="http://localhost:8081/services/SCATestUtilityWSService" /> + + </wsdl:port> + + </wsdl:service> + +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsutility/src/test/java/org/apache/tuscany/sca/util/SCATestUtilityServerTestCase.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsutility/src/test/java/org/apache/tuscany/sca/util/SCATestUtilityServerTestCase.java new file mode 100644 index 0000000000..4f1b0bfc3b --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/bindingsutility/src/test/java/org/apache/tuscany/sca/util/SCATestUtilityServerTestCase.java @@ -0,0 +1,27 @@ +package org.apache.tuscany.sca.util; + + +import java.io.IOException; +import java.net.Socket; + +import org.apache.tuscany.api.SCARuntime; + +import junit.framework.TestCase; + +public class SCATestUtilityServerTestCase extends TestCase { + + @Override + protected void setUp() throws Exception { + SCARuntime.start("bindingsutility-system.composite", "bindingsutility.composite"); + } + + public void testPing() throws IOException { + new Socket("127.0.0.1", 8081); + } + + @Override + protected void tearDown() throws Exception { + SCARuntime.stop(); + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/pom.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/pom.xml new file mode 100644 index 0000000000..6d78f23c0d --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/bindings/pom.xml @@ -0,0 +1,42 @@ +<?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 xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <parent> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>sca-itest</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + <relativePath>../pom.xml</relativePath> + </parent> + + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.tuscany.testing</groupId> + <version>${testing.version}</version> + <artifactId>bindingstest</artifactId> + <packaging>pom</packaging> + <name>SCA FVT Test Tool Suite</name> + + + <modules> + <module>bindingscomposite</module> + <module>bindingsutility</module> + <module>bindingsclient</module> + </modules> +</project> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-api/pom.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-api/pom.xml new file mode 100644 index 0000000000..f556aec1e8 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-api/pom.xml @@ -0,0 +1,35 @@ +<?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> + <parent> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>sca-itest</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + <relativePath>../pom.xml</relativePath> + </parent> + + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>iTest-callback-api</artifactId> + <version>${testing.version}</version> + <packaging>jar</packaging> + <name>Test Suite for SCA Callback API</name> + +</project> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-api/src/main/java/org/apache/tuscany/sca/test/CallBackApiCallBack.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-api/src/main/java/org/apache/tuscany/sca/test/CallBackApiCallBack.java new file mode 100644 index 0000000000..56e7ba7b3f --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-api/src/main/java/org/apache/tuscany/sca/test/CallBackApiCallBack.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.test; + +import org.osoa.sca.annotations.Remotable; + +@Remotable +/** + * @author lamodeo + */ +public interface CallBackApiCallBack { + + public void callBackMessage(String aString); + + public void callBackIncrement(String aString); + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-api/src/main/java/org/apache/tuscany/sca/test/CallBackApiClient.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-api/src/main/java/org/apache/tuscany/sca/test/CallBackApiClient.java new file mode 100644 index 0000000000..3e7c840e15 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-api/src/main/java/org/apache/tuscany/sca/test/CallBackApiClient.java @@ -0,0 +1,28 @@ +/* + * 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.test; + +import org.osoa.sca.annotations.Remotable; + +@Remotable +public interface CallBackApiClient { + + public void run(); + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-api/src/main/java/org/apache/tuscany/sca/test/CallBackApiClientImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-api/src/main/java/org/apache/tuscany/sca/test/CallBackApiClientImpl.java new file mode 100644 index 0000000000..72b56bafea --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-api/src/main/java/org/apache/tuscany/sca/test/CallBackApiClientImpl.java @@ -0,0 +1,133 @@ +/* + * 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.test; + +import org.osoa.sca.annotations.Reference; +import org.osoa.sca.annotations.Service; +import junit.framework.Assert; + +@Service(CallBackApiClient.class) +public class CallBackApiClientImpl implements CallBackApiClient, CallBackApiCallBack { + + @Reference + protected CallBackApiService aCallBackService; + private static String returnMessage = null; + private static int callBackCount = 0; + private static Object monitor = new Object(); + + public void run() { + + // This tests basic callback patterns. + + // Test3a is the basic callback where the target calls back prior to + // returning to the client. + test3a(); + + // Test3b is where the target does not call back to the client. + test3b(); + + // Test3c is where the target calls back multiple times to the client. + test3c(); + + return; + } + + private void test3a() { + aCallBackService.knockKnock("Knock Knock"); + int count = 0; + + // + // If we cant get a response in 30 seconds consider this a failure + // + + synchronized (monitor) { + while (returnMessage == null && count++ < 30) { + try { + monitor.wait(1000L); + } catch (InterruptedException e) { + e.printStackTrace(); + } + } + } + + Assert.assertEquals("CallBackApiITest - test3a", "Who's There", this.getReturnMessage()); + + } + + private void test3b() { + aCallBackService.noCallBack("No Reply Desired"); + Assert.assertEquals("CallBackApiITest - test3b", 1, 1); + return; + } + + private void test3c() { + aCallBackService.multiCallBack("Call me back 3 times"); + int count = 0; + + // + // If we cant get a response in 30 seconds consider this a failure + // + + synchronized (monitor) { + while (this.getCallBackCount() < 3 && count++ < 30) { + try { + monitor.wait(1000L); + } catch (InterruptedException e) { + e.printStackTrace(); + } + } + } + + Assert.assertEquals("CallBackApiITest - test3c", 3, this.getCallBackCount()); + return; + } + + public String getReturnMessage() { + return returnMessage; + } + + public void setReturnMessage(String aReturnMessage) { + returnMessage = aReturnMessage; + } + + public int getCallBackCount() { + return callBackCount; + } + + public void incrementCallBackCount() { + callBackCount++; + } + + public void callBackMessage(String aString) { + System.out.println("Entering callback callBackMessage: " + aString); + synchronized (monitor) { + this.setReturnMessage(aString); + monitor.notify(); + } + } + + public void callBackIncrement(String aString) { + System.out.println("Entering callback increment: " + aString); + synchronized (monitor) { + this.incrementCallBackCount(); + monitor.notify(); + } + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-api/src/main/java/org/apache/tuscany/sca/test/CallBackApiService.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-api/src/main/java/org/apache/tuscany/sca/test/CallBackApiService.java new file mode 100644 index 0000000000..51d9f24723 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-api/src/main/java/org/apache/tuscany/sca/test/CallBackApiService.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.test; + +import org.osoa.sca.annotations.Callback; +import org.osoa.sca.annotations.Remotable; + +@Remotable +@Callback(CallBackApiCallBack.class) +/** + * + */ +public interface CallBackApiService { + + public void knockKnock(String aString); + + public void noCallBack(String aString); + + public void multiCallBack(String aString); + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-api/src/main/java/org/apache/tuscany/sca/test/CallBackApiServiceImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-api/src/main/java/org/apache/tuscany/sca/test/CallBackApiServiceImpl.java new file mode 100644 index 0000000000..7cb0f1553e --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-api/src/main/java/org/apache/tuscany/sca/test/CallBackApiServiceImpl.java @@ -0,0 +1,77 @@ +/* + * 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.test; + +import org.osoa.sca.annotations.Service; +import org.osoa.sca.annotations.Context; +import org.osoa.sca.CompositeContext; +import org.osoa.sca.RequestContext; +import org.osoa.sca.ServiceReference; + +@Service(CallBackApiService.class) +public class CallBackApiServiceImpl implements CallBackApiService { + + @Context + protected CompositeContext compositeContext; + protected CallBackApiCallBack callback; + + public void knockKnock(String aString) { + + System.out.println("CallBackApiServiceImpl message received: " + aString); + callback = this.getCallBackInterface(); + callback.callBackMessage("Who's There"); + System.out.println("CallBackApiServiceImpl response sent"); + return; + + } + + public void multiCallBack(String aString) { + + callback = this.getCallBackInterface(); + + System.out.println("CallBackApiServiceImpl message received: " + aString); + callback.callBackIncrement("Who's There 1"); + System.out.println("CallBackApiServiceImpl response sent"); + callback.callBackIncrement("Who's There 2"); + System.out.println("CallBackApiServiceImpl response sent"); + callback.callBackIncrement("Who's There 3"); + System.out.println("CallBackApiServiceImpl response sent"); + return; + + } + + public void noCallBack(String aString) { + + System.out.println("CallBackApiServiceImpl message received: " + aString); + + return; + + } + + private CallBackApiCallBack getCallBackInterface() { + System.out.println("CallBackApiServiceImpl getting request context"); + RequestContext rc = compositeContext.getRequestContext(); + System.out.println("CallBackApiServiceImpl getting callback from request context"); + callback = (CallBackApiCallBack) ((ServiceReference) rc.getServiceReference()).getCallback(); + System.out.println("CallBackApiServiceImpl returning callback"); + return callback; + + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-api/src/main/resources/CallBackApiTest.composite b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-api/src/main/resources/CallBackApiTest.composite new file mode 100644 index 0000000000..c6956eb860 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-api/src/main/resources/CallBackApiTest.composite @@ -0,0 +1,34 @@ +<?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" + name="CallBackApiTest"> + + <component name="CallBackApiClient"> + <implementation.java class="org.apache.tuscany.sca.test.CallBackApiClientImpl"/> + <reference target="CallBackApiService" name="aCallBackService"> + CallBackApiService + </reference> + </component> + + <component name="CallBackApiService"> + <implementation.java class="org.apache.tuscany.sca.test.CallBackApiServiceImpl"/> + </component> + +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-api/src/test/java/org/apache/tuscany/sca/test/CallBackApiTest.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-api/src/test/java/org/apache/tuscany/sca/test/CallBackApiTest.java new file mode 100644 index 0000000000..d28c67fcf2 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-api/src/test/java/org/apache/tuscany/sca/test/CallBackApiTest.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.test; + +import junit.framework.TestCase; + +import org.apache.tuscany.api.SCARuntime; +import org.osoa.sca.CurrentCompositeContext; + +public class CallBackApiTest extends TestCase { + + private CallBackApiClient aCallBackClient; + + public void testCallBackBasic() { + aCallBackClient.run(); + } + + protected void setUp() throws Exception { + SCARuntime.start("CallBackApiTest.composite"); + + aCallBackClient = + CurrentCompositeContext.getContext().locateService(CallBackApiClient.class, "CallBackApiClient"); + } + + protected void tearDown() throws Exception { + SCARuntime.stop(); + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-basic/pom.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-basic/pom.xml new file mode 100644 index 0000000000..70c6bf62ac --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-basic/pom.xml @@ -0,0 +1,35 @@ +<?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> + <parent> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>sca-itest</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + <relativePath>../pom.xml</relativePath> + </parent> + + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>iTest-Callback-Basic</artifactId> + <version>${testing.version}</version> + <packaging>jar</packaging> + <name>Test Suite for SCA Callback Basic</name> + +</project> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-basic/src/main/java/org/apache/tuscany/sca/test/CallBackBasicCallBack.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-basic/src/main/java/org/apache/tuscany/sca/test/CallBackBasicCallBack.java new file mode 100644 index 0000000000..ab1f39c057 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-basic/src/main/java/org/apache/tuscany/sca/test/CallBackBasicCallBack.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.test; + +import org.osoa.sca.annotations.Remotable; + +@Remotable +/** + * @author lamodeo + */ +public interface CallBackBasicCallBack { + + public void callBackMessage(String aString); + + public void callBackIncrement(String aString); + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-basic/src/main/java/org/apache/tuscany/sca/test/CallBackBasicClient.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-basic/src/main/java/org/apache/tuscany/sca/test/CallBackBasicClient.java new file mode 100644 index 0000000000..9f4019f28c --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-basic/src/main/java/org/apache/tuscany/sca/test/CallBackBasicClient.java @@ -0,0 +1,28 @@ +/* + * 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.test; + +import org.osoa.sca.annotations.Remotable; + +@Remotable +public interface CallBackBasicClient { + + public void run(); + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-basic/src/main/java/org/apache/tuscany/sca/test/CallBackBasicClientImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-basic/src/main/java/org/apache/tuscany/sca/test/CallBackBasicClientImpl.java new file mode 100644 index 0000000000..73a5320faa --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-basic/src/main/java/org/apache/tuscany/sca/test/CallBackBasicClientImpl.java @@ -0,0 +1,134 @@ +/* + * 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.test; + +import org.osoa.sca.annotations.Reference; +import org.osoa.sca.annotations.Service; +import junit.framework.Assert; + +@Service(CallBackBasicClient.class) +public class CallBackBasicClientImpl implements CallBackBasicClient, CallBackBasicCallBack { + + @Reference + protected CallBackBasicService aCallBackService; + private static String returnMessage = null; + private static int callBackCount = 0; + private static Object monitor = new Object(); + + public void run() { + + // This tests basic callback patterns. + + // Test1 is the basic callback where the target calls back prior to + // returning to the client. + test1a(); + + // Test2 is where the target does not call back to the client. + test1b(); + + // Test3 is where the target calls back multiple times to the client. + test1c(); + + return; + } + + private void test1a() { + aCallBackService.knockKnock("Knock Knock"); + int count = 0; + + // + // If we cant get a response in 30 seconds consider this a failure + // + + synchronized (monitor) { + while (returnMessage == null && count++ < 30) { + try { + monitor.wait(1000L); + } catch (InterruptedException e) { + e.printStackTrace(); + } + } + } + + Assert.assertEquals("CallBackBasicITest - test1a", "Who's There", this.getReturnMessage()); + + } + + private void test1b() { + aCallBackService.noCallBack("No Reply Desired"); + Assert.assertEquals("CallBackBasicITest - test1b", 1, 1); + + return; + } + + private void test1c() { + aCallBackService.multiCallBack("Call me back 3 times"); + int count = 0; + + // + // If we cant get a response in 30 seconds consider this a failure + // + + synchronized (monitor) { + while (this.getCallBackCount() < 3 && count++ < 30) { + try { + monitor.wait(1000L); + } catch (InterruptedException e) { + e.printStackTrace(); + } + } + } + + Assert.assertEquals("CallBackBasicITest - test1c", 3, this.getCallBackCount()); + return; + } + + public String getReturnMessage() { + return returnMessage; + } + + public void setReturnMessage(String aReturnMessage) { + returnMessage = aReturnMessage; + } + + public int getCallBackCount() { + return callBackCount; + } + + public void incrementCallBackCount() { + callBackCount++; + } + + public void callBackMessage(String aString) { + System.out.println("Entering callback callBackMessage: " + aString); + synchronized (monitor) { + this.setReturnMessage(aString); + monitor.notify(); + } + } + + public void callBackIncrement(String aString) { + System.out.println("Entering callback increment: " + aString); + synchronized (monitor) { + this.incrementCallBackCount(); + monitor.notify(); + } + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-basic/src/main/java/org/apache/tuscany/sca/test/CallBackBasicService.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-basic/src/main/java/org/apache/tuscany/sca/test/CallBackBasicService.java new file mode 100644 index 0000000000..bd41fa7037 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-basic/src/main/java/org/apache/tuscany/sca/test/CallBackBasicService.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.test; + +import org.osoa.sca.annotations.Callback; +import org.osoa.sca.annotations.Remotable; + +@Remotable +@Callback(CallBackBasicCallBack.class) +/** + * + */ +public interface CallBackBasicService { + + public void knockKnock(String aString); + + public void noCallBack(String aString); + + public void multiCallBack(String aString); + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-basic/src/main/java/org/apache/tuscany/sca/test/CallBackBasicServiceImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-basic/src/main/java/org/apache/tuscany/sca/test/CallBackBasicServiceImpl.java new file mode 100644 index 0000000000..4ca2dc9af9 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-basic/src/main/java/org/apache/tuscany/sca/test/CallBackBasicServiceImpl.java @@ -0,0 +1,59 @@ +/* + * 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.test; + +import org.osoa.sca.annotations.Callback; +import org.osoa.sca.annotations.Service; + +@Service(CallBackBasicService.class) +public class CallBackBasicServiceImpl implements CallBackBasicService { + + @Callback + protected CallBackBasicCallBack callback; + + public void knockKnock(String aString) { + + System.out.println("CallBackBasicServiceImpl message received: " + aString); + callback.callBackMessage("Who's There"); + System.out.println("CallBackBasicServiceImpl response sent"); + return; + + } + + public void multiCallBack(String aString) { + + System.out.println("CallBackBasicServiceImpl message received: " + aString); + callback.callBackIncrement("Who's There 1"); + System.out.println("CallBackBasicServiceImpl response sent"); + callback.callBackIncrement("Who's There 2"); + System.out.println("CallBackBasicServiceImpl response sent"); + callback.callBackIncrement("Who's There 3"); + System.out.println("CallBackBasicServiceImpl response sent"); + return; + + } + + public void noCallBack(String aString) { + + System.out.println("CallBackBasicServiceImpl message received: " + aString); + // System.out.println("CallBackBasicServiceImpl No response desired"); + return; + + } +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-basic/src/main/resources/CallBackBasicTest.composite b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-basic/src/main/resources/CallBackBasicTest.composite new file mode 100644 index 0000000000..19263b2dac --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-basic/src/main/resources/CallBackBasicTest.composite @@ -0,0 +1,34 @@ +<?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" + name="CallBackBasicTest"> + + <component name="CallBackBasicClient"> + <implementation.java class="org.apache.tuscany.sca.test.CallBackBasicClientImpl"/> + <reference name="aCallBackService" target="CallBackBasicService"> + CallBackBasicService + </reference> + </component> + + <component name="CallBackBasicService"> + <implementation.java class="org.apache.tuscany.sca.test.CallBackBasicServiceImpl"/> + </component> + +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-basic/src/test/java/org/apache/tuscany/sca/test/CallBackBasicTestCase.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-basic/src/test/java/org/apache/tuscany/sca/test/CallBackBasicTestCase.java new file mode 100644 index 0000000000..73da73b6d0 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-basic/src/test/java/org/apache/tuscany/sca/test/CallBackBasicTestCase.java @@ -0,0 +1,28 @@ +package org.apache.tuscany.sca.test; + +import junit.framework.TestCase; + +import org.apache.tuscany.api.SCARuntime; +import org.osoa.sca.CurrentCompositeContext; + +public class CallBackBasicTestCase extends TestCase { + + private CallBackBasicClient aCallBackClient; + + public void testCallBackBasic() { + aCallBackClient.run(); + } + + protected void setUp() throws Exception { + SCARuntime.start("CallBackBasicTest.composite"); + + aCallBackClient = CurrentCompositeContext.getContext().locateService(CallBackBasicClient.class, "CallBackBasicClient"); + } + + @Override + protected void tearDown() throws Exception { + SCARuntime.stop(); + } + + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-complexType/pom.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-complexType/pom.xml new file mode 100644 index 0000000000..d61a83a85c --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-complexType/pom.xml @@ -0,0 +1,35 @@ +<?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> + <parent> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>sca-itest</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + <relativePath>../pom.xml</relativePath> + </parent> + + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>iTest-callback-complexType</artifactId> + <version>${testing.version}</version> + <packaging>jar</packaging> + <name>Test Suite for SCA Callback CType</name> + +</project> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-complexType/src/main/java/org/apache/tuscany/sca/test/CallBackCTypeCallBack.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-complexType/src/main/java/org/apache/tuscany/sca/test/CallBackCTypeCallBack.java new file mode 100644 index 0000000000..70e22f4ef2 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-complexType/src/main/java/org/apache/tuscany/sca/test/CallBackCTypeCallBack.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.test; + +import org.osoa.sca.annotations.Remotable; + +@Remotable +/** + * @author lamodeo + */ +public interface CallBackCTypeCallBack { + + public void callBackMessage(String aString); + + public void callBackIncrement(String aString); + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-complexType/src/main/java/org/apache/tuscany/sca/test/CallBackCTypeClient.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-complexType/src/main/java/org/apache/tuscany/sca/test/CallBackCTypeClient.java new file mode 100644 index 0000000000..739983c277 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-complexType/src/main/java/org/apache/tuscany/sca/test/CallBackCTypeClient.java @@ -0,0 +1,28 @@ +/* + * 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.test; + +import org.osoa.sca.annotations.Remotable; + +@Remotable +public interface CallBackCTypeClient { + + public void run(); + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-complexType/src/main/java/org/apache/tuscany/sca/test/CallBackCTypeClientImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-complexType/src/main/java/org/apache/tuscany/sca/test/CallBackCTypeClientImpl.java new file mode 100644 index 0000000000..a9781a3bde --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-complexType/src/main/java/org/apache/tuscany/sca/test/CallBackCTypeClientImpl.java @@ -0,0 +1,142 @@ +/* + * 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.test; + +import org.osoa.sca.annotations.Reference; +import org.osoa.sca.annotations.Service; +import junit.framework.Assert; + +@Service(CallBackCTypeClient.class) +public class CallBackCTypeClientImpl implements CallBackCTypeClient, CallBackCTypeCallBack { + + @Reference + protected CallBackCTypeService aCallBackService; + private static String returnMessage = null; + private static int callBackCount = 0; + private static Object monitor = new Object(); + + public CallBackCTypeClientImpl() { + // TODO Auto-generated constructor stub + } + + public void run() { + + // This test is the same as the Basic Callback except it uses a + // componentType side file. + // This test currently fails because the integration test environment + // does not properly copy + // the componentType files to the target folder. This is documented in + // Tuscany-967. + + // Test12a is the basic callback where the target calls back prior to + // returning to the client. + test12a(); + + // Test12b is where the target does not call back to the client. + test12b(); + + // Test12c is where the target calls back multiple times to the client. + test12c(); + + return; + } + + private void test12a() { + aCallBackService.knockKnock("Knock Knock"); + int count = 0; + + // + // If we cant get a response in 30 seconds consider this a failure + // + + synchronized (monitor) { + while (returnMessage == null && count++ < 30) { + try { + monitor.wait(1000L); + } catch (InterruptedException e) { + e.printStackTrace(); + } + } + } + + Assert.assertEquals("CallBackBasicITest - test12a -", "Who's There", this.getReturnMessage()); + + } + + private void test12b() { + aCallBackService.noCallBack("No Reply Desired"); + Assert.assertEquals("CallBackBasicITest - test12b -", 1, 1); + return; + } + + private void test12c() { + aCallBackService.multiCallBack("Call me back 3 times"); + int count = 0; + + // + // If we cant get a response in 30 seconds consider this a failure + // + + synchronized (monitor) { + while (this.getCallBackCount() < 3 && count++ < 30) { + try { + monitor.wait(1000L); + } catch (InterruptedException e) { + e.printStackTrace(); + } + } + } + + Assert.assertEquals("CallBackBasicITest - test12c -", 3, this.getCallBackCount()); + return; + } + + public String getReturnMessage() { + return returnMessage; + } + + public void setReturnMessage(String aReturnMessage) { + returnMessage = aReturnMessage; + } + + public int getCallBackCount() { + return callBackCount; + } + + public void incrementCallBackCount() { + callBackCount++; + } + + public void callBackMessage(String aString) { + System.out.println("Entering callback callBackMessage: " + aString); + synchronized (monitor) { + this.setReturnMessage(aString); + monitor.notify(); + } + } + + public void callBackIncrement(String aString) { + System.out.println("Entering callback increment: " + aString); + synchronized (monitor) { + this.incrementCallBackCount(); + monitor.notify(); + } + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-complexType/src/main/java/org/apache/tuscany/sca/test/CallBackCTypeService.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-complexType/src/main/java/org/apache/tuscany/sca/test/CallBackCTypeService.java new file mode 100644 index 0000000000..ffbf4f35fa --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-complexType/src/main/java/org/apache/tuscany/sca/test/CallBackCTypeService.java @@ -0,0 +1,36 @@ +/* + * 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.test; + +import org.osoa.sca.annotations.Remotable; + +@Remotable +// @Callback(CallBackCTypeCallBack.class) +/** + * + */ +public interface CallBackCTypeService { + + public void knockKnock(String aString); + + public void noCallBack(String aString); + + public void multiCallBack(String aString); + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-complexType/src/main/java/org/apache/tuscany/sca/test/CallBackCTypeServiceImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-complexType/src/main/java/org/apache/tuscany/sca/test/CallBackCTypeServiceImpl.java new file mode 100644 index 0000000000..60abf841b1 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-complexType/src/main/java/org/apache/tuscany/sca/test/CallBackCTypeServiceImpl.java @@ -0,0 +1,63 @@ +/* + * 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.test; + +import org.osoa.sca.annotations.Callback; +import org.osoa.sca.annotations.Service; + +@Service(CallBackCTypeService.class) +public class CallBackCTypeServiceImpl implements CallBackCTypeService { + + @Callback + protected CallBackCTypeCallBack callback; + + public CallBackCTypeServiceImpl() { + // TODO Auto-generated constructor stub + } + + public void knockKnock(String aString) { + + System.out.println("CallBackCTypeServiceImpl message received: " + aString); + callback.callBackMessage("Who's There"); + System.out.println("CallBackCTypeServiceImpl response sent"); + return; + + } + + public void multiCallBack(String aString) { + + System.out.println("CallBackCTypeServiceImpl message received: " + aString); + callback.callBackIncrement("Who's There 1"); + System.out.println("CallBackCTypeServiceImpl response sent"); + callback.callBackIncrement("Who's There 2"); + System.out.println("CallBackCTypeServiceImpl response sent"); + callback.callBackIncrement("Who's There 3"); + System.out.println("CallBackCTypeServiceImpl response sent"); + return; + + } + + public void noCallBack(String aString) { + + System.out.println("CallBackCTypeServiceImpl message received: " + aString); + System.out.println("CallBackCTypeServiceImpl No response desired"); + return; + + } +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-complexType/src/main/resources/CallBackCTypeClient.composite b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-complexType/src/main/resources/CallBackCTypeClient.composite new file mode 100644 index 0000000000..0b771ae874 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-complexType/src/main/resources/CallBackCTypeClient.composite @@ -0,0 +1,34 @@ +<?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" + name="CallBackCTypeTest"> + + <component name="CallBackCTypeClient"> + <implementation.java class="org.apache.tuscany.sca.test.CallBackCTypeClientImpl"/> + <reference name="aCallBackService"> + CallBackCTypeService + </reference> + </component> + + <component name="CallBackCTypeService"> + <implementation.java class="org.apache.tuscany.sca.test.CallBackCTypeServiceImpl"/> + </component> + +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-complexType/src/main/resources/org/apache/tuscany/sca/test/CallBackCTypeServiceImpl.componentType b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-complexType/src/main/resources/org/apache/tuscany/sca/test/CallBackCTypeServiceImpl.componentType new file mode 100644 index 0000000000..aca84e8537 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-complexType/src/main/resources/org/apache/tuscany/sca/test/CallBackCTypeServiceImpl.componentType @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="ASCII"?>
+<componentType xmlns="http://www.osoa.org/xmlns/sca/1.0" >
+ <service name="CallBackCTypeService">
+ <interface.java interface="org.apache.tuscany.sca.test.CallBackCTypeService"
+ callbackInterface="org.apache.tuscany.sca.test.CallBackCTypeCallBack"/>
+ </service>
+</componentType>
+
\ No newline at end of file diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-complexType/src/test/java/org/apache/tuscany/sca/test/CallBackCTypeTest.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-complexType/src/test/java/org/apache/tuscany/sca/test/CallBackCTypeTest.java new file mode 100644 index 0000000000..d9e0dea7bb --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-complexType/src/test/java/org/apache/tuscany/sca/test/CallBackCTypeTest.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.test; + +import junit.framework.TestCase; + +import org.apache.tuscany.api.SCARuntime; +import org.osoa.sca.CurrentCompositeContext; + +public class CallBackCTypeTest extends TestCase { + + private CallBackCTypeClient aCallBackClient; + + public void testCallBackBasic() { + aCallBackClient.run(); + } + + protected void setUp() throws Exception { + SCARuntime.start("CallBackCTypeClient.composite"); + + aCallBackClient = + CurrentCompositeContext.getContext().locateService(CallBackCTypeClient.class, "CallBackCTypeClient"); + } + + protected void tearDown() throws Exception { + SCARuntime.stop(); + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-id/pom.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-id/pom.xml new file mode 100644 index 0000000000..e647136da8 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-id/pom.xml @@ -0,0 +1,35 @@ +<?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> + <parent> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>sca-itest</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + <relativePath>../pom.xml</relativePath> + </parent> + + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>iTest-Callback-ID</artifactId> + <version>${testing.version}</version> + <packaging>jar</packaging> + <name>Test Suite for SCA Callback ID</name> + +</project> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-id/src/main/java/org/apache/tuscany/sca/test/CallBackIdCallBack.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-id/src/main/java/org/apache/tuscany/sca/test/CallBackIdCallBack.java new file mode 100644 index 0000000000..e86c7e9ed7 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-id/src/main/java/org/apache/tuscany/sca/test/CallBackIdCallBack.java @@ -0,0 +1,31 @@ +/* + * 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.test; + +import org.osoa.sca.annotations.Remotable; + +@Remotable +/** + * @author lamodeo + */ +public interface CallBackIdCallBack { + + public void callBackMessage(String aString); + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-id/src/main/java/org/apache/tuscany/sca/test/CallBackIdClient.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-id/src/main/java/org/apache/tuscany/sca/test/CallBackIdClient.java new file mode 100644 index 0000000000..a9e551f8b4 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-id/src/main/java/org/apache/tuscany/sca/test/CallBackIdClient.java @@ -0,0 +1,28 @@ +/* + * 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.test; + +import org.osoa.sca.annotations.Remotable; + +@Remotable +public interface CallBackIdClient { + + public void run(); + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-id/src/main/java/org/apache/tuscany/sca/test/CallBackIdClientImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-id/src/main/java/org/apache/tuscany/sca/test/CallBackIdClientImpl.java new file mode 100644 index 0000000000..702e27775b --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-id/src/main/java/org/apache/tuscany/sca/test/CallBackIdClientImpl.java @@ -0,0 +1,145 @@ +/* + * 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.test; + +import org.osoa.sca.annotations.Reference; +import org.osoa.sca.annotations.Service; +import org.osoa.sca.annotations.Context; +import org.osoa.sca.CompositeContext; +import org.osoa.sca.RequestContext; +import org.osoa.sca.ServiceReference; +import junit.framework.Assert; + +@Service(CallBackIdClient.class) +public class CallBackIdClientImpl implements CallBackIdClient, CallBackIdCallBack { + + @Context + private CompositeContext compositeContext; + @Reference + protected CallBackIdService aCallBackService; + + private static String returnMessage = null; + private static Object monitor = new Object(); + private static Object callBackId; + + public void run() { + + // This tests the use of the set/get callbackId API both SCA generated + // and client specified. + + // Test1 uses a SCA generated callback ID and compare that with the + // callbackID returned during callback. + test11a(); + + // Test2 uses a Client specified callback ID and compare that with the + // callbackID returned during callback. + test11b(); + + return; + } + + private void test11a() { + + // Retrieve this services callback ID and save it. Once the callback is + // received the callback ID will be compared with the one + // returned. Equal is good. + + Object origCallBackId = ((ServiceReference)aCallBackService).getCallbackID(); + aCallBackService.knockKnock("Knock Knock - Test1"); + int count = 0; + + // + // If we cannot get a response in 30 seconds consider this a failure + // + + synchronized (monitor) { + while (returnMessage == null && count++ < 30) { + try { + monitor.wait(1000L); + } catch (InterruptedException e) { + e.printStackTrace(); + } + } + } + + Assert.assertEquals("CallBackIdITest - test11a - SCA Generated Id", origCallBackId, this.getCallBackId()); + + } + + private void test11b() { + + // Set the services callback ID and save it. Once the callback is + // received the callback ID will be compared with the one + // returned. Equal is good. + + String origCallBackId = "CallBackId1"; + ((ServiceReference)aCallBackService).setCallbackID(origCallBackId); + + aCallBackService.knockKnock("Knock Knock - Test2"); + int count = 0; + + // + // If we cant get a response in 30 seconds consider this a failure + // + + synchronized (monitor) { + while (returnMessage == null && count++ < 30) { + try { + monitor.wait(1000L); + } catch (InterruptedException e) { + e.printStackTrace(); + } + } + } + + Assert + .assertEquals("CallBackIdITest - 11b - Client Specified Id", origCallBackId, (String)this.getCallBackId()); + + } + + public String getReturnMessage() { + return returnMessage; + } + + public void setReturnMessage(String aReturnMessage) { + returnMessage = aReturnMessage; + } + + public void callBackMessage(String aString) { + + System.out.println("Entering callback callBackMessage: " + aString); + RequestContext rc = compositeContext.getRequestContext(); + Object callBackId = rc.getServiceReference().getCallbackID(); + + synchronized (monitor) { + this.setReturnMessage(aString); + this.setCallBackId(callBackId); + monitor.notify(); + } + } + + protected Object getCallBackId() { + return callBackId; + } + + protected void setCallBackId(Object aCallBackId) { + callBackId = aCallBackId; + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-id/src/main/java/org/apache/tuscany/sca/test/CallBackIdService.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-id/src/main/java/org/apache/tuscany/sca/test/CallBackIdService.java new file mode 100644 index 0000000000..18c592a1c1 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-id/src/main/java/org/apache/tuscany/sca/test/CallBackIdService.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.test; + +import org.osoa.sca.annotations.Callback; +import org.osoa.sca.annotations.Remotable; + +@Remotable +@Callback(CallBackIdCallBack.class) +/** + * + */ +public interface CallBackIdService { + + public void knockKnock(String aString); + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-id/src/main/java/org/apache/tuscany/sca/test/CallBackIdServiceImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-id/src/main/java/org/apache/tuscany/sca/test/CallBackIdServiceImpl.java new file mode 100644 index 0000000000..cf0270c407 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-id/src/main/java/org/apache/tuscany/sca/test/CallBackIdServiceImpl.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.test; + +import org.osoa.sca.CompositeContext; +import org.osoa.sca.RequestContext; +import org.osoa.sca.annotations.Callback; +import org.osoa.sca.annotations.Context; +import org.osoa.sca.annotations.Service; + +@Service(CallBackIdService.class) +public class CallBackIdServiceImpl implements CallBackIdService { + + @Callback + protected CallBackIdCallBack callback; + @Context + protected CompositeContext compositeContext; + + public void knockKnock(String aString) { + + System.out.println("CallBackIdServiceImpl message received: " + aString); + RequestContext rc = compositeContext.getRequestContext(); + Object callBackId = rc.getServiceReference().getCallbackID(); + System.out.println("CallBackIdServiceImpl callbackID: " + callBackId.toString()); + + callback.callBackMessage("Who's There"); + System.out.println("CallBackIdServiceImpl response sent"); + return; + + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-id/src/main/resources/CallBackIdClient.composite b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-id/src/main/resources/CallBackIdClient.composite new file mode 100644 index 0000000000..014a604003 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-id/src/main/resources/CallBackIdClient.composite @@ -0,0 +1,34 @@ +<?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" + name="CallBackIdTest"> + + <component name="CallBackIdClient"> + <implementation.java class="org.apache.tuscany.sca.test.CallBackIdClientImpl"/> + <reference name="aCallBackService"> + CallBackIdService + </reference> + </component> + + <component name="CallBackIdService"> + <implementation.java class="org.apache.tuscany.sca.test.CallBackIdServiceImpl"/> + </component> + +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-id/src/test/java/org/apache/tuscany/sca/test/CallBackIdTest.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-id/src/test/java/org/apache/tuscany/sca/test/CallBackIdTest.java new file mode 100644 index 0000000000..f7cf33fdca --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-id/src/test/java/org/apache/tuscany/sca/test/CallBackIdTest.java @@ -0,0 +1,25 @@ +package org.apache.tuscany.sca.test; + +import junit.framework.TestCase; + +import org.apache.tuscany.api.SCARuntime; +import org.osoa.sca.CurrentCompositeContext; + +public class CallBackIdTest extends TestCase { + + private CallBackIdClient aCallBackClient; + + public void testCallBackBasic() { + aCallBackClient.run(); + } + + protected void setUp() throws Exception { + SCARuntime.start("CallBackIdClient.composite"); + + aCallBackClient = CurrentCompositeContext.getContext().locateService(CallBackIdClient.class, "CallBackIdClient"); + } + + protected void tearDown() throws Exception { + SCARuntime.stop(); + } +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallback/pom.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallback/pom.xml new file mode 100644 index 0000000000..6daf2271e9 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallback/pom.xml @@ -0,0 +1,35 @@ +<?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> + <parent> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>sca-itest</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + <relativePath>../pom.xml</relativePath> + </parent> + + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>iTest-callback-setCallback</artifactId> + <version>${testing.version}</version> + <packaging>jar</packaging> + <name>Test Suite for SCA Callback SetCallback</name> + +</project> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallback/src/main/java/org/apache/tuscany/sca/test/CallBackSetCalbackService.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallback/src/main/java/org/apache/tuscany/sca/test/CallBackSetCalbackService.java new file mode 100644 index 0000000000..b352a2f1f7 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallback/src/main/java/org/apache/tuscany/sca/test/CallBackSetCalbackService.java @@ -0,0 +1,34 @@ +/* + * 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.test; + +import org.osoa.sca.annotations.Callback; + +// @Remotable +@Callback(CallBackSetCallbackCallback.class) +/** + * + */ +public interface CallBackSetCalbackService { + + public void knockKnock(String aString); + + public void setCallbackIllegally(String aString); + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallback/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackBadCallback.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallback/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackBadCallback.java new file mode 100644 index 0000000000..766d47c654 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallback/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackBadCallback.java @@ -0,0 +1,41 @@ +/* + * 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.test; + +import junit.framework.Assert; + +public class CallBackSetCallbackBadCallback { + + private String anAttribure = null; + private int anIntAttribute = 0; + + public CallBackSetCallbackBadCallback() { + super(); + } + + public void callback(String aString) { + // + // This callback method should never be called. + // + System.out.println("CallBackSetCallbackBadCallback: callback called"); + Assert.fail("CallBackSetCallbackBadCallback: callback called"); + return; + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallback/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackCallback.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallback/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackCallback.java new file mode 100644 index 0000000000..26a6ecc879 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallback/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackCallback.java @@ -0,0 +1,31 @@ +/* + * 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.test; + +// @Remotable +/** + * @author lamodeo + */ +public interface CallBackSetCallbackCallback { + + public void callBackMessage(String aString); + + public void callBackIncrement(String aString); + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallback/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackCallbackImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallback/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackCallbackImpl.java new file mode 100644 index 0000000000..0a22b0e01f --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallback/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackCallbackImpl.java @@ -0,0 +1,66 @@ +/* + * 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.test; + +import java.io.File; + +import org.osoa.sca.annotations.Service; + +@Service(CallBackSetCallbackCallback.class) +public class CallBackSetCallbackCallbackImpl implements CallBackSetCallbackCallback { + + private static String returnMessage = null; + private static int callBackCount = 0; + + public String getReturnMessage() { + return returnMessage; + } + + public void setReturnMessage(String aReturnMessage) { + returnMessage = aReturnMessage; + } + + public int getCallBackCount() { + return callBackCount; + } + + public void incrementCallBackCount() { + callBackCount++; + } + + public void callBackMessage(String aString) { + + System.out.println("Entering CallBackSetCallbackCallbackImpl callBackMessage: " + aString); + + File aFile = new File("target/test4_marker"); + try { + aFile.createNewFile(); + } catch (Exception ex) { + System.out.println("Error Creating target/test4_marker marker file"); + ex.printStackTrace(); + } + + } + + public void callBackIncrement(String aString) { + System.out.println("Entering callback increment: " + aString); + this.incrementCallBackCount(); + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallback/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackClient.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallback/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackClient.java new file mode 100644 index 0000000000..94cb6aa73b --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallback/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackClient.java @@ -0,0 +1,28 @@ +/* + * 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.test; + +import org.osoa.sca.annotations.Remotable; + +@Remotable +public interface CallBackSetCallbackClient { + + public void run(); + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallback/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackClientImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallback/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackClientImpl.java new file mode 100644 index 0000000000..9fafb05835 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallback/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackClientImpl.java @@ -0,0 +1,193 @@ +/* + * 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.test; + +import java.io.File; + +import junit.framework.Assert; + +import org.osoa.sca.NoRegisteredCallbackException; +import org.osoa.sca.ServiceReference; +import org.osoa.sca.annotations.Reference; +import org.osoa.sca.annotations.Service; + +@Service(CallBackSetCallbackClient.class) +public class CallBackSetCallbackClientImpl implements CallBackSetCallbackClient { + + @Reference + protected CallBackSetCalbackService aCallBackService; + @Reference + protected CallBackSetCallbackCallback callBack; + + public void run() { + + // This test various aspects of the setCallback() API in a stateless + // scope. + + /* + * test4 Client does not implement the callback interface but calls + * setCallback with a service reference before invoking the target, + * Verify successful executon. + */ + + test4(); + + /* + * test5 The client does not implement the callback interface and does + * not call setCallback() before invoking the target. Verify a + * NoRegisteredCallbackException is thrown. + */ + + test5(); + + /* + * test6() The client calls setCallback() with an object that is not a + * service reference and the callback interface is stateless. Verify + * that an appropriate exception is thrown. When calling setCallback + * with an object the interface must be stateful. Stateless interfaces + * require a service Reference. + */ + + test6(); + + /* + * test10 The target calls setCallback() on its own service reference, + * e.g. getRequestContext().getServiceReference().getCallback(). Verify + * an appropriate exeception occurs. + */ + + test10(); + + return; + } + + private void test4() { + + // + // Since callbacks do not synchronously return and this test results in + // a callback to a component other + // than this client I am using a marker file to determine the outcome. + // The presence of the marker + // file will be used for the Assertion test. If it exists then the + // callback occurred and all is good. + // + + // Make sure the marker file is not present before starting the test. + File aFile = new File("target/test4_marker"); + if (aFile.exists()) + aFile.delete(); + + ((ServiceReference)aCallBackService).setCallback(callBack); + + aCallBackService.knockKnock("Knock Knock"); + + // Lets give the callback a little time to complete.... + + int count = 0; + long timeout = 1000; + + while (count++ < 30 && (aFile.exists() == false)) { + try { + Thread.sleep(timeout); + } catch (InterruptedException ie) { + } + } + + Assert.assertEquals("CallBackSetCallback - Test4", true, aFile.exists()); + + } + + private void test5() { + + boolean correctException = false; + + // + // The backend service is expecting a callback reference to be set. This + // test will not + // set one so an exception is expected. According to the spec if a + // client calls a method on + // a service reference prior to calling setCallback() then a + // NoRegisteredCallbackException + // will be thrown on the client. + // + + try { + aCallBackService.knockKnock("Knock Knock"); + } catch (NoRegisteredCallbackException NotRegEx) { + correctException = true; + } catch (Exception ex) { + ex.printStackTrace(); + } + + Assert.assertEquals("CallBackSetCallback - Test5", true, correctException); + + } + + private void test6() { + + boolean correctException = false; + + // + // This test is to specify an Object that is not a service reference + // that does impliment + // the callback interface. However because this callback service is + // stateless the expected + // result is an appropriate exception. + // + + try { + ((ServiceReference)aCallBackService).setCallback(new CallBackSetCallbackObjectCallback()); + aCallBackService.knockKnock("Knock Knock"); + } + // + // This should catch an appropriate exception. + // + catch (NoRegisteredCallbackException NotRegEx) { + correctException = true; + } catch (Exception ex) { + ex.printStackTrace(); + } + + Assert.assertEquals("CallBackSetCallback - Test6", true, correctException); + + } + + private void test10() { + // + // Since callbacks do not synchronously return and this test results in + // a failure on the service + // side of the fence I am using a marker file to determine the outcome. + // The presence of the marker + // file will be used for the Assertion test. If it exists then all is + // good. + // + + // Make sure the marker file is not present before starting the test. + File aFile = new File("target/test10_marker"); + if (aFile.exists()) + aFile.delete(); + + aCallBackService.setCallbackIllegally("Try to set callback on your own service reference"); + + Assert.assertEquals("CallBackSetCallback - Test10", true, aFile.exists()); + + return; + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallback/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackObjectCallback.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallback/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackObjectCallback.java new file mode 100644 index 0000000000..afedcdf7f1 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallback/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackObjectCallback.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.test; + +public class CallBackSetCallbackObjectCallback implements CallBackSetCallbackCallback { + + private int callBackCount = 0; + + public CallBackSetCallbackObjectCallback() { + super(); + } + + public void incrementCallBackCount() { + callBackCount++; + } + + public void callBackMessage(String aString) { + + System.out.println("Entering CallBackSetCallbackObjectCallback callBackMessage: " + aString); + + } + + public void callBackIncrement(String aString) { + System.out.println("Entering callback increment: " + aString); + this.incrementCallBackCount(); + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallback/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackServiceImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallback/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackServiceImpl.java new file mode 100644 index 0000000000..6fb13f81b2 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallback/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackServiceImpl.java @@ -0,0 +1,103 @@ +/* + * 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.test; + +import java.io.File; + +import org.osoa.sca.CompositeContext; +import org.osoa.sca.RequestContext; +import org.osoa.sca.ServiceReference; +import org.osoa.sca.annotations.Callback; +import org.osoa.sca.annotations.Context; +import org.osoa.sca.annotations.Service; + +@Service(CallBackSetCalbackService.class) +public class CallBackSetCallbackServiceImpl implements CallBackSetCalbackService { + + @Callback + private CallBackSetCallbackCallback callback; + @Context + private CompositeContext context; + + public void knockKnock(String aString) { + + try { + System.out.println("CallBackBasicServiceImpl message received: " + aString); + callback.callBackMessage("Who's There"); + System.out.println("CallBackBasicServiceImpl response sent"); + return; + } catch (Exception ex) { + ex.printStackTrace(); + } + + } + + public void setCallbackIllegally(String aString) { + + System.out.println("CallBackBasicServiceImpl.setCallbackIllegally() message received: " + aString); + + boolean exceptionProduced = false; + RequestContext requestContext = null; + ServiceReference serviceRef = null; + + // Context is not working properly so we can't trust that this is + // working..... + try { + requestContext = context.getRequestContext(); + serviceRef = (ServiceReference) requestContext.getServiceReference(); + } catch (Exception ex) { + System.out.println("CallBackBasicServiceImpl.setCallbackIllegally() " + ex.toString()); + ex.printStackTrace(); + return; + } + + // Ok, call setCallback with my own service reference. + try { + serviceRef.setCallback(serviceRef); + } catch (NullPointerException npe) // This needs to be removed once + // appropriate exception is + // identified. + { + // This is not an appropriate exception. + System.out.println("Test10 NPE exception during setCallback to own service reference"); + npe.printStackTrace(); + return; + } + // This needs to catch the appropriate exception, once we figure out + // what is needs to be! + catch (Exception ex) { + exceptionProduced = true; + System.out.println("Test10 appropriate exception caught during setCallback to own service reference"); + } + ; + + // If we get the exception we are looking for then create the marker + // file. + if (exceptionProduced == true) { + File aFile = new File("target/test10_marker"); + try { + aFile.createNewFile(); + } catch (Exception ex) { + System.out.println("Error Creating target/test10_marker marker file"); + ex.printStackTrace(); + } + } + + } +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallback/src/main/resources/CallBackSetCallbackTest.composite b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallback/src/main/resources/CallBackSetCallbackTest.composite new file mode 100644 index 0000000000..06910dba27 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallback/src/main/resources/CallBackSetCallbackTest.composite @@ -0,0 +1,40 @@ +<?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" + name="CallBackSetCallbackTest"> + + <component name="CallBackSetCallbackClient"> + <implementation.java class="org.apache.tuscany.sca.test.CallBackSetCallbackClientImpl"/> + <reference name="aCallBackService"> + CallBackSetCallbackService + </reference> + <reference name="callBack"> + CallBackSetCallbackCallback + </reference> + </component> + + <component name="CallBackSetCallbackCallback"> + <implementation.java class="org.apache.tuscany.sca.test.CallBackSetCallbackCallbackImpl"/> + </component> + + <component name="CallBackSetCallbackService"> + <implementation.java class="org.apache.tuscany.sca.test.CallBackSetCallbackServiceImpl"/> + </component> +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallback/src/test/java/org/apache/tuscany/sca/test/CallBackSetCallbackTest.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallback/src/test/java/org/apache/tuscany/sca/test/CallBackSetCallbackTest.java new file mode 100644 index 0000000000..1df80b5d34 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallback/src/test/java/org/apache/tuscany/sca/test/CallBackSetCallbackTest.java @@ -0,0 +1,46 @@ +/* + * 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.test; + +import junit.framework.TestCase; + +import org.apache.tuscany.api.SCARuntime; +import org.osoa.sca.CurrentCompositeContext; + +public class CallBackSetCallbackTest extends TestCase { + + private CallBackSetCallbackClient aCallBackClient; + + public void testCallBackSetCallback() { + aCallBackClient.run(); + } + + protected void setUp() throws Exception { + SCARuntime.start("CallBackSetCallbackTest.composite"); + + aCallBackClient = + CurrentCompositeContext.getContext().locateService(CallBackSetCallbackClient.class, + "CallBackSetCallbackClient"); + } + + protected void tearDown() throws Exception { + SCARuntime.stop(); + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallbackConversation/pom.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallbackConversation/pom.xml new file mode 100644 index 0000000000..453c70aa3d --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallbackConversation/pom.xml @@ -0,0 +1,35 @@ +<?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> + <parent> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>sca-itest</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + <relativePath>../pom.xml</relativePath> + </parent> + + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>iTest-callback-setCallbackConversation</artifactId> + <version>${testing.version}</version> + <packaging>jar</packaging> + <name>Test Suite for SCA Callback SetCallback Conversation</name> + +</project> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallbackConversation/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackConvBadCallback.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallbackConversation/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackConvBadCallback.java new file mode 100644 index 0000000000..685dd83c62 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallbackConversation/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackConvBadCallback.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.test; + +import java.io.Serializable; + +import junit.framework.Assert; + +public class CallBackSetCallbackConvBadCallback implements Serializable { + + public CallBackSetCallbackConvBadCallback() { + super(); + } + + public void callback(String aString) { + // + // This callback method should never be called. + // + System.out.println("CallBackSetCallbackBadCallback: callback called"); + Assert.fail("CallBackSetCallbackConvBadCallback: callback called"); + return; + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallbackConversation/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackConvCallback.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallbackConversation/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackConvCallback.java new file mode 100644 index 0000000000..7483e834b4 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallbackConversation/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackConvCallback.java @@ -0,0 +1,31 @@ +/* + * 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.test; + +// @Remotable +/** + * @author lamodeo + */ +public interface CallBackSetCallbackConvCallback { + + public void callBackMessage(String aString); + + public void callBackIncrement(String aString); + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallbackConversation/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackConvClient.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallbackConversation/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackConvClient.java new file mode 100644 index 0000000000..013424bf5e --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallbackConversation/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackConvClient.java @@ -0,0 +1,28 @@ +/* + * 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.test; + +import org.osoa.sca.annotations.Remotable; + +@Remotable +public interface CallBackSetCallbackConvClient { + + public void run(); + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallbackConversation/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackConvClientImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallbackConversation/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackConvClientImpl.java new file mode 100644 index 0000000000..a62ed43c91 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallbackConversation/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackConvClientImpl.java @@ -0,0 +1,175 @@ +/* + * 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.test; + +import junit.framework.Assert; + +import org.osoa.sca.NoRegisteredCallbackException; +import org.osoa.sca.ServiceReference; +import org.osoa.sca.annotations.Reference; +import org.osoa.sca.annotations.Scope; +import org.osoa.sca.annotations.Service; + +@Service(CallBackSetCallbackConvClient.class) +@Scope("CONVERSATION") +public class CallBackSetCallbackConvClientImpl implements CallBackSetCallbackConvClient { + + @Reference + protected CallBackSetCallbackConvService aCallBackService; + @Reference + protected CallBackSetCallbackConvCallback callBack; + private CallBackSetCallbackConvObjectCallback aCallbackObject = null; + private Object monitor = new Object(); + + public void run() { + + // This tests aspects of the setCallback() API within a conversational + // scope. + + /* + * test7 The client calls setCallback() with an object that is not a + * service reference and the callback interface is stateful. Verify + * successful execution. + */ + test7(); + + /* + * test8() The client calls setCallback() with an object that does not + * implement the callback interface. Verify an appropriate exception is + * thrown. This requires a STATEFUL interface. + */ + test8(); + + /* + * test9 The client calls setCallback() with an object that is not + * serializable. Verify an appropriate exception is thrown. This + * requires a STATEFUL callback interface. Move from the stateless test + * case. + */ + test9(); + + return; + } + + private void test7() { + + // + // This test is to specify an Object that is not a service reference + // that does implement + // the callback interface and is Serializeable. Verify successful + // execution. + // + + aCallbackObject = new CallBackSetCallbackConvObjectCallback(); + aCallbackObject.incrementCallBackCount(); + aCallbackObject.setMonitor(monitor); + + ((ServiceReference)aCallBackService).setCallback(aCallbackObject); + aCallBackService.knockKnock("Knock Knock"); + + // Lets give the callback a little time to complete.... + + int count = 0; + + synchronized (monitor) { + while (aCallbackObject.getCount() != 2 && count++ < 30) { + try { + monitor.wait(1000L); + } catch (InterruptedException e) { + e.printStackTrace(); + } + } + } + + Assert.assertEquals("CallBackSetCallbackConv - Test7", 2, aCallbackObject.getCount()); + + } + + private void test8() { + + boolean correctException = false; + + // + // This test is to specify an Object that is not a service reference + // that does not impliment + // the callback interface. The expected result is an appropriate + // exception. + // + + try { + ((ServiceReference)aCallBackService).setCallback(new CallBackSetCallbackConvBadCallback()); + aCallBackService.knockKnock("Knock Knock"); + } + + // + // This should catch an appropriate exception. + // + + catch (NoRegisteredCallbackException NotRegEx) // This needs to be + // changed to proper + // exception once we + // know what it is ;-) + { + correctException = true; + } + + catch (Exception ex) { + // This means an inappropriate exception occurred + ex.printStackTrace(); + } + + Assert.assertEquals("CallBackSetCallbackConv - Test8", true, correctException); + + } + + private void test9() { + + boolean correctException = false; + + // + // This test is to specify an Object that is not a service reference + // that does impliment + // the callback interface but does not implement Serializeable. Verify + // an appropriate exception + // is thrown. + // + + try { + ((ServiceReference)aCallBackService).setCallback(new CallBackSetCallbackConvNonSerCallback()); + aCallBackService.knockKnock("Knock Knock"); + } + // + // This should catch an appropriate exception. + // + catch (NoRegisteredCallbackException NotRegEx) // This needs to be + // changed to + // appropriate exception + // when we know what it + // is ;-) + { + correctException = true; + } catch (Exception ex) { + ex.printStackTrace(); + } + + Assert.assertEquals("CallBackSetCallbackConv - Test9", true, correctException); + + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallbackConversation/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackConvNonSerCallback.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallbackConversation/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackConvNonSerCallback.java new file mode 100644 index 0000000000..789e04e907 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallbackConversation/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackConvNonSerCallback.java @@ -0,0 +1,58 @@ +/* + * 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.test; + +public class CallBackSetCallbackConvNonSerCallback implements CallBackSetCallbackConvCallback { + + private int callBackCount = 0; + private Object monitor; + + public CallBackSetCallbackConvNonSerCallback() { + super(); + } + + public synchronized void incrementCallBackCount() { + callBackCount++; + } + + public synchronized int getCount() { + return callBackCount; + } + + public void setMonitor(Object anObject) { + monitor = anObject; + } + + public void callBackMessage(String aString) { + + System.out.println("Entering CallBackSetCallbackConvNonSerCallback callBackMessage: " + aString); + + } + + public void callBackIncrement(String aString) { + + System.out.println("Entering callback increment: " + aString); + + synchronized (monitor) { + this.incrementCallBackCount(); + monitor.notify(); + } + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallbackConversation/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackConvObjectCallback.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallbackConversation/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackConvObjectCallback.java new file mode 100644 index 0000000000..fead6705fd --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallbackConversation/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackConvObjectCallback.java @@ -0,0 +1,60 @@ +/* + * 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.test; + +import java.io.Serializable; + +public class CallBackSetCallbackConvObjectCallback implements CallBackSetCallbackConvCallback, Serializable { + + private int callBackCount = 0; + private Object monitor; + + public CallBackSetCallbackConvObjectCallback() { + super(); + } + + public synchronized void incrementCallBackCount() { + callBackCount++; + } + + public synchronized int getCount() { + return callBackCount; + } + + public void setMonitor(Object anObject) { + monitor = anObject; + } + + public void callBackMessage(String aString) { + + System.out.println("Entering CallBackSetCallbackObjectCallback callBackMessage: " + aString); + + } + + public void callBackIncrement(String aString) { + + System.out.println("Entering callback increment: " + aString); + + synchronized (monitor) { + this.incrementCallBackCount(); + monitor.notify(); + } + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallbackConversation/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackConvService.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallbackConversation/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackConvService.java new file mode 100644 index 0000000000..d8e8b8ccb6 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallbackConversation/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackConvService.java @@ -0,0 +1,36 @@ +/* + * 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.test; + +import org.osoa.sca.annotations.Callback; +import org.osoa.sca.annotations.Remotable; +import org.osoa.sca.annotations.Scope; + +// @Remotable +@Callback(CallBackSetCallbackConvCallback.class) +/** + * + */ +public interface CallBackSetCallbackConvService { + + public void knockKnock(String aString); + + public void setCallbackIllegally(String aString); + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallbackConversation/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackConvServiceImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallbackConversation/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackConvServiceImpl.java new file mode 100644 index 0000000000..a051277b2a --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallbackConversation/src/main/java/org/apache/tuscany/sca/test/CallBackSetCallbackConvServiceImpl.java @@ -0,0 +1,102 @@ +/* + * 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.test; + +import java.io.File; + +import org.osoa.sca.CompositeContext; +import org.osoa.sca.RequestContext; +import org.osoa.sca.ServiceReference; +import org.osoa.sca.annotations.Callback; +import org.osoa.sca.annotations.Context; +import org.osoa.sca.annotations.Scope; +import org.osoa.sca.annotations.Service; + +@Service(CallBackSetCallbackConvService.class) +@Scope("CONVERSATION") +public class CallBackSetCallbackConvServiceImpl implements CallBackSetCallbackConvService { + + @Callback + private CallBackSetCallbackConvCallback callback; + @Context + private CompositeContext context; + + public void knockKnock(String aString) { + + try { + System.out.println("CallBackBasicServiceImpl message received: " + aString); + callback.callBackMessage("Who's There"); + System.out.println("CallBackBasicServiceImpl response sent"); + return; + } catch (Exception ex) { + ex.printStackTrace(); + } + + } + + public void setCallbackIllegally(String aString) { + + System.out.println("CallBackBasicServiceImpl.setCallbackIllegally() message received: " + aString); + + boolean exceptionProduced = false; + RequestContext requestContext = null; + ServiceReference serviceRef = null; + + // Context is not working properly so we can't trust that this is + // working..... + try { + requestContext = context.getRequestContext(); + serviceRef = (ServiceReference) requestContext.getServiceReference(); + } catch (Exception ex) { + System.out.println("CallBackBasicServiceImpl.setCallbackIllegally() " + ex.toString()); + ex.printStackTrace(); + return; + } + + // Ok, call setCallback with my own service reference. + try { + serviceRef.setCallback(serviceRef); + } catch (NullPointerException npe) { + // This is not an appropriate exception. + System.out.println("Test10 NPE exception during setCallback to own service reference"); + npe.printStackTrace(); + return; + } + // This needs to catch the appropriate exception, once we figure out + // what is needs to be! + catch (Exception ex) { + exceptionProduced = true; + System.out.println("Test10 appropriate exception caught during setCallback to own service reference"); + } + ; + + // If we get the exception we are looking for then create the marker + // file. + if (exceptionProduced == true) { + File aFile = new File("target/test10_marker"); + try { + aFile.createNewFile(); + } catch (Exception ex) { + System.out.println("Error Creating target/test10_marker marker file"); + ex.printStackTrace(); + } + } + + } +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallbackConversation/src/main/resources/CallBackSetCallbackConvTest.composite b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallbackConversation/src/main/resources/CallBackSetCallbackConvTest.composite new file mode 100644 index 0000000000..cfac7d11d7 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallbackConversation/src/main/resources/CallBackSetCallbackConvTest.composite @@ -0,0 +1,34 @@ +<?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" + name="CallBackSetCallbackConvTest"> + + <component name="CallBackSetCallbackConvClient"> + <implementation.java class="org.apache.tuscany.sca.test.CallBackSetCallbackConvClientImpl"/> + <reference name="aCallBackService"> + CallBackSetCallbackConvService + </reference> + </component> + + + <component name="CallBackSetCallbackConvService"> + <implementation.java class="org.apache.tuscany.sca.test.CallBackSetCallbackConvServiceImpl"/> + </component> +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallbackConversation/src/test/java/org/apache/tuscany/sca/test/CallBackSetCallbackConvTest.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallbackConversation/src/test/java/org/apache/tuscany/sca/test/CallBackSetCallbackConvTest.java new file mode 100644 index 0000000000..3e62ea5e8d --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/callback-setCallbackConversation/src/test/java/org/apache/tuscany/sca/test/CallBackSetCallbackConvTest.java @@ -0,0 +1,46 @@ +/* + * 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.test; + +import junit.framework.TestCase; + +import org.apache.tuscany.api.SCARuntime; +import org.osoa.sca.CurrentCompositeContext; + +public class CallBackSetCallbackConvTest extends TestCase { + + private CallBackSetCallbackConvClient aCallBackClient; + + public void testCallBackSetCallback() { + aCallBackClient.run(); + } + + protected void setUp() throws Exception { + SCARuntime.start("CallBackSetCallbackConvTest.composite"); + + aCallBackClient = + CurrentCompositeContext.getContext().locateService(CallBackSetCallbackConvClient.class, + "CallBackSetCallbackConvClient"); + } + + protected void tearDown() throws Exception { + SCARuntime.stop(); + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/contribution/pom.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/contribution/pom.xml new file mode 100644 index 0000000000..5da30f99d8 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/contribution/pom.xml @@ -0,0 +1,33 @@ +<?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>
+ <parent>
+ <groupId>org.apache.tuscany.testing</groupId>
+ <artifactId>sca-itest</artifactId>
+ <version>0.1-integration-incubating-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>iTest-Contribution</artifactId>
+ <version>SNAPSHOT</version>
+ <packaging>jar</packaging>
+ <name>Test Suite for SCA Contribution</name>
+
+</project>
diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/contribution/src/main/resources/META-INF/sca/application.composite b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/contribution/src/main/resources/META-INF/sca/application.composite new file mode 100644 index 0000000000..2b5153a28a --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/contribution/src/main/resources/META-INF/sca/application.composite @@ -0,0 +1,24 @@ +<?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"
+ xmlns:foo="http://foo"
+ name="ContributionTest">
+
+</composite>
diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/contribution/src/test/java/org/apache/tuscany/sca/test/contribution/ContributionDirectoryWatcherTestCase.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/contribution/src/test/java/org/apache/tuscany/sca/test/contribution/ContributionDirectoryWatcherTestCase.java new file mode 100644 index 0000000000..466ba18c78 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/contribution/src/test/java/org/apache/tuscany/sca/test/contribution/ContributionDirectoryWatcherTestCase.java @@ -0,0 +1,41 @@ +/*
+ * 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.test.contribution;
+
+import org.apache.tuscany.core.services.deployment.ContributionDirectoryWatcher;
+import org.apache.tuscany.spi.annotation.Autowire;
+import org.apache.tuscany.test.SCATestCase;
+
+/**
+ * This is more intended to be a integration test then a unit test. *
+ */
+public class ContributionDirectoryWatcherTestCase extends SCATestCase {
+ @Autowire
+ private ContributionDirectoryWatcher contributionDirectoryWatcher; // NOPMD
+
+ protected void setUp() throws Exception {
+ super.setUp();
+ }
+
+ public void testContributeURL() throws Exception {
+
+ }
+
+}
diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/contribution/src/test/java/org/apache/tuscany/sca/test/contribution/ContributionServiceTestCase.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/contribution/src/test/java/org/apache/tuscany/sca/test/contribution/ContributionServiceTestCase.java new file mode 100644 index 0000000000..2bd9de672a --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/contribution/src/test/java/org/apache/tuscany/sca/test/contribution/ContributionServiceTestCase.java @@ -0,0 +1,83 @@ +/*
+ * 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.test.contribution;
+
+import java.io.File;
+import java.net.URI;
+import java.net.URL;
+
+import org.apache.tuscany.api.SCARuntime;
+import org.apache.tuscany.core.bootstrap.DefaultSCARuntime;
+import org.apache.tuscany.core.util.FileHelper;
+import org.apache.tuscany.host.deployment.ContributionService;
+import org.apache.tuscany.spi.bootstrap.ComponentNames;
+import org.apache.tuscany.spi.model.Contribution;
+import org.apache.tuscany.test.SCATestCase;
+
+/**
+ * This is more intended to be a integration test then a unit test. *
+ */
+public class ContributionServiceTestCase extends SCATestCase {
+ private static final String JAR_CONTRIBUTION = "/repository/sample-calculator.jar";
+ private static final String FOLDER_CONTRIBUTION = "/repository/calculator/";
+
+ private ContributionService contributionService;
+
+ protected void setUp() throws Exception {
+ super.setUp();
+
+ this.contributionService = (ContributionService) ((DefaultSCARuntime)SCARuntime.getInstance()).getSystemService(ComponentNames.TUSCANY_CONTRIBUTION_SERVICE);
+ }
+
+ public void testContributeJAR() throws Exception {
+ URL contributionLocation = getClass().getResource(JAR_CONTRIBUTION);
+ URI contributionId = contributionService.contribute(contributionLocation, false);
+ assertNotNull(contributionId);
+ }
+
+ public void testStoreContributionInRepository() throws Exception {
+ URL contributionLocation = getClass().getResource(JAR_CONTRIBUTION);
+ URI contributionId = contributionService.contribute(contributionLocation, true);
+
+ assertNotNull(contributionId);
+
+ Contribution contributionModel = (Contribution) contributionService.getContribution(contributionId);
+
+ File contributionFile = FileHelper.toFile(contributionModel.getLocation());
+ assertTrue(contributionFile.exists());
+ }
+
+ public void testStoreDuplicatedContributionInRepository() throws Exception {
+ URL contributionLocation = getClass().getResource(JAR_CONTRIBUTION);
+ URI contributionId1 = contributionService.contribute(contributionLocation, true);
+ assertNotNull(contributionId1);
+ URI contributionId2 = contributionService.contribute(contributionLocation, true);
+ assertNotNull(contributionId2);
+ }
+
+
+// public void testContributeFolder() throws Exception {
+// File rootContributionFolder = new File(FOLDER_CONTRIBUTION);
+//
+// URI contributionURI = contributionService.contribute(rootContributionFolder.toURL(), false);
+// assertNotNull(contributionURI);
+// }
+
+}
diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/contribution/src/test/resources/deployables/sample-calculator.jar b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/contribution/src/test/resources/deployables/sample-calculator.jar Binary files differnew file mode 100644 index 0000000000..0ca3a1b781 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/contribution/src/test/resources/deployables/sample-calculator.jar diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/contribution/src/test/resources/repository/sample-calculator.jar b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/contribution/src/test/resources/repository/sample-calculator.jar Binary files differnew file mode 100644 index 0000000000..0ca3a1b781 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/contribution/src/test/resources/repository/sample-calculator.jar diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/conversations/pom.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/conversations/pom.xml new file mode 100644 index 0000000000..0fa482dcae --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/conversations/pom.xml @@ -0,0 +1,35 @@ +<?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> + <parent> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>sca-itest</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + <relativePath>../pom.xml</relativePath> + </parent> + + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>iTest-conversations</artifactId> + <version>${testing.version}</version> + <packaging>jar</packaging> + <name>Test Suite for SCA conversations</name> + +</project> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/conversations/src/main/java/org/apache/tuscany/sca/test/AnotherService.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/conversations/src/main/java/org/apache/tuscany/sca/test/AnotherService.java new file mode 100644 index 0000000000..f8256e6446 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/conversations/src/main/java/org/apache/tuscany/sca/test/AnotherService.java @@ -0,0 +1,18 @@ +package org.apache.tuscany.sca.test; + +import org.osoa.sca.annotations.Remotable; +import org.osoa.sca.annotations.Scope; +import org.osoa.sca.ServiceReference; + +@Remotable + +/** + * + */ +public interface AnotherService { + + public void setService(ServiceReference aServiceReference); + public void add(int anInt); + public int getCount(); + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/conversations/src/main/java/org/apache/tuscany/sca/test/AnotherServiceImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/conversations/src/main/java/org/apache/tuscany/sca/test/AnotherServiceImpl.java new file mode 100644 index 0000000000..184ff20727 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/conversations/src/main/java/org/apache/tuscany/sca/test/AnotherServiceImpl.java @@ -0,0 +1,59 @@ +package org.apache.tuscany.sca.test; + +import junit.framework.Assert; + +import org.osoa.sca.CompositeContext; +import org.osoa.sca.CurrentCompositeContext; +import org.osoa.sca.RequestContext; +import org.osoa.sca.ServiceReference; +import org.osoa.sca.annotations.Callback; +import org.osoa.sca.annotations.Remotable; +import org.osoa.sca.annotations.Service; +import org.osoa.sca.annotations.Context; +import org.osoa.sca.annotations.Scope; +import java.io.File; +import org.apache.tuscany.sca.test.ConversationsClient; + +@Service(AnotherService.class) +@Scope("CONVERSATION") + +public class AnotherServiceImpl implements AnotherService { + + // This is a simple pass-thru service used to test propogation + // of ServiceReference and maintenance of Session state. + + private ServiceReference aServiceReference; + + public void add(int anInt) { + + Assert.assertNotNull("AnotherServiceImpl - add ", aServiceReference); + ((ConversationsService) aServiceReference).add(anInt); + + } + + + public void initializeCount() { + + Assert.assertNotNull("AnotherServiceImpl - initializeCount ", aServiceReference); + ((ConversationsService) aServiceReference).initializeCount(); + + } + + + public void setService(ServiceReference aRef) { + + Assert.assertNotNull("AnotherServiceImpl - setService ", aRef); + aServiceReference = aRef; + + } + + + public int getCount() { + + Assert.assertNotNull("AnotherServiceImpl - getCount ", aServiceReference); + return ((ConversationsService) aServiceReference).getLocalCount(); + } + + +} + diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/conversations/src/main/java/org/apache/tuscany/sca/test/ConversationsCallback.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/conversations/src/main/java/org/apache/tuscany/sca/test/ConversationsCallback.java new file mode 100644 index 0000000000..1aa4089805 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/conversations/src/main/java/org/apache/tuscany/sca/test/ConversationsCallback.java @@ -0,0 +1,18 @@ +/** + * + */ +package org.apache.tuscany.sca.test; + +import org.osoa.sca.annotations.Remotable; + +/** + * @author lamodeo + * + */ +public interface ConversationsCallback { + + public void callBackMessage(String aString); + public void callBackIncrement(String aString); + public void callBackEndSession(); + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/conversations/src/main/java/org/apache/tuscany/sca/test/ConversationsClient.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/conversations/src/main/java/org/apache/tuscany/sca/test/ConversationsClient.java new file mode 100644 index 0000000000..1d2ecb4903 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/conversations/src/main/java/org/apache/tuscany/sca/test/ConversationsClient.java @@ -0,0 +1,12 @@ +package org.apache.tuscany.sca.test; + +import org.osoa.sca.annotations.Remotable; +import org.osoa.sca.annotations.Scope; + +@Remotable +public interface ConversationsClient { + + public void run(); + public int count(); + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/conversations/src/main/java/org/apache/tuscany/sca/test/ConversationsClient2.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/conversations/src/main/java/org/apache/tuscany/sca/test/ConversationsClient2.java new file mode 100644 index 0000000000..b464899922 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/conversations/src/main/java/org/apache/tuscany/sca/test/ConversationsClient2.java @@ -0,0 +1,11 @@ +package org.apache.tuscany.sca.test; + +import org.osoa.sca.annotations.Remotable; +import org.osoa.sca.annotations.Scope; + +@Remotable +public interface ConversationsClient2 { + public String getDateTime(); + + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/conversations/src/main/java/org/apache/tuscany/sca/test/ConversationsClientImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/conversations/src/main/java/org/apache/tuscany/sca/test/ConversationsClientImpl.java new file mode 100644 index 0000000000..5b7165de34 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/conversations/src/main/java/org/apache/tuscany/sca/test/ConversationsClientImpl.java @@ -0,0 +1,466 @@ +package org.apache.tuscany.sca.test; + +import java.io.File; +import java.text.DateFormat; + +import junit.framework.Assert; + +import org.osoa.sca.CompositeContext; +import org.osoa.sca.ConversationEndedException; +import org.osoa.sca.CurrentCompositeContext; +import org.osoa.sca.ServiceReference; +import org.osoa.sca.annotations.Context; +import org.osoa.sca.annotations.ConversationAttributes; +import org.osoa.sca.annotations.ConversationID; +import org.osoa.sca.annotations.Reference; +import org.osoa.sca.annotations.Scope; +import org.osoa.sca.annotations.Service; + +@Service(interfaces={ConversationsClient.class,ConversationsClient2.class}) + + +@Scope("CONVERSATION") +@ConversationAttributes(maxIdleTime="10 minutes", + singlePrincipal=false) + + +public class ConversationsClientImpl implements ConversationsClient, ConversationsClient2, ConversationsCallback { + + @Reference + protected ConversationsService aService; + @Reference + protected AnotherService anotherService; + @Reference + protected ConversationsLifeCycleService aLifeCycleService; + @Context + protected CompositeContext myContext; // This is broken Tuscany-965 defect has been opened. + @ConversationID + protected String conversationID; + + private Object monitor = new Object(); + private int count=0; + private String message; + private String initialState; + private int initialCount = 56; + private String dateTime; + private final static String markerFileName = "target/testConversations_test3_marker"; + + public void run() { + + // This tests various aspects of session lifecycle and maintenance of session state. + // None of these test are working due to various issues. + + /* test0() + This test verifies annotations and API's for ConversationID. + */ + test0(); // - Tuscany-1001. + + /* test1() + Test stateful callbacks. Verify that the client�s state is maintained throughout the execution of + all callback methods. + */ + test1(); // This test is working for MODULE scope. Cant claim succcess because it needs Conversation scope. + + /* test2() + Test each method of starting a session. Test @Init. + */ + test2(); // Tuscany-965, Tuscany-1001 + + /* test3() + Test each method of ending a session. Test @Destroy. + */ + test3(); // Tuscany-965, Tuscany-1001 + + /* test4() + Pass an existing service reference with an active session to another service. Verify the session is maintained + */ + test4(); // Tuscany-964, Tuscant-1001 + + /* test5() + Call the createServiceReferenceForSession() API to get a service reference for the active session. + Pass the service reference to another service. Verify the session is maintained. + */ + test5(); + + /* test6() + * Allow a session to timeout. + */ + test6(); // Tuscany-965, Tuscany-1001 + + + return; + } + + private void test0() + { + + // Verify that conversationID was injected. + Assert.assertNotNull("test0 - conversationID injected", conversationID); + System.out.println("ConversationID: " + conversationID); + + // + // The client may access the ConversationID by calling getConversationID on a Service Reference. + // This also verifies a session was created during injection of this Service Reference. + // + //FIXME Port to the 1.0 spec API + //Object aServicesSessionID =((ServiceReference)aService).getSessionID(); + //Assert.assertNotNull("test0 - ConversationID from service reference", aServicesSessionID); + + //FIXME Port to the 1.0 spec API + //Object aLifeCycleServicesSessionID =((ServiceReference)aLifeCycleService).getSessionID(); + //Assert.assertNotNull("test0 - ConversationID from LifeCycleService service reference", aLifeCycleServicesSessionID); + + // This will verify the @Init() is working for a session created during injection. See test2(). + aLifeCycleService.knockKnock("Hello"); + + } + + private void test1() + { + + // + // This test verifies that the state of the client is preserved across method calls. Each + // call to the service results in 2 callbacks. One to increment a count and the other to set a string. + // At the end of the test the count should equal 5 and the string should be set. Also the original strings + // values should be preserved. + // + // + initialState = "Initial State"; + + int numCalls = 0; + + for(int i=0; i < 10; i++) + { + aService.knockKnock("Knock Knock " + ++numCalls); + } + + // I want to drive multiple callbacks and then give them time to complete. Don't want to + // force serialization. After 20 seconds check the assertions. + + synchronized(monitor) + { + try + { + monitor.wait(20000L); + } + catch (Exception ex) + {ex.printStackTrace();} + } + + // Here we test for the expected state of several different variables. State needs to be maintained + // across method calls to the service. If the same client instance is used then the state should match + // the following assertions. + + // instance variable count should equal the number of calls to the backend service. count is incremented + // during callback processing. + Assert.assertEquals("Conversations - Test1 count", numCalls, count); + // The returned message should be like the following. + Assert.assertEquals("Conversations - Test1 message", true, message.startsWith("Who's There")); + // any initial state set prior to running the callbacks should be maintained. + Assert.assertEquals("Conversations - Test1 initialState", "Initial State", initialState); + Assert.assertEquals("Conversations - Test1 initialCount", 56, initialCount); + + return; + + } + + private void test2() + { + + // Verify the various methods to create a new Session. + // Sesssions can be started: + // + // 1) When a service reference is injected into a client. This is verified in test0(). + // 2) By the client calling newSession() API with and without a ConversationID. + // + // Verify init() is called prior to any business methods. This is performed in the Service when any + // business methos is called. + + myContext = CurrentCompositeContext.getContext(); + Assert.assertNotNull("current composite context",myContext); + + // This tests creating a conversational session. And that @Init is run prior to business method. + ServiceReference aServRef; + aServRef = myContext.newSession("ConversationsLifeCycleService"); + Assert.assertNotNull("Conversations - Test2 Service Reference 1 not returned", aServRef); + + //FIXME Port to the 1.0 spec API + //Get the session ID. + //Object aConversationID = aServRef.getSessionID(); + ConversationsLifeCycleService aConversationsLifeCycleService = (ConversationsLifeCycleService) aServRef; + aConversationsLifeCycleService.knockKnock("Hello"); + + //Create a new session this time specifying a session ID. Verify the seesion id is what was specified. + aServRef = myContext.newSession("ConversationsLifeCycleService","Test2-12345"); + Assert.assertNotNull("Conversations - Test2 Service Reference 2 not returned", aServRef); + //FIXME Port to the 1.0 spec API + //Get the session ID. + //Object aConversationID2 = aServRef.getSessionID(); + //Assert.assertEquals("Conversations - Test2 Session not created with specified ConversationID", "Test2-12345", aConversationID2); + aConversationsLifeCycleService = (ConversationsLifeCycleService) aServRef; + aConversationsLifeCycleService.knockKnock("Hello"); + + //FIXME Port to the 1.0 spec API + //Assert.assertNotSame("Conversations - Test2 sessions are not different", aConversationID, aConversationID2); + + } + + private void test3() + { + + // Note: The @EndSesion and @EndsConversation anotations are not implemented. + // So #1 an #2 cannot be done. + + // + // Verify the various methods to end a session. + // Sesssions can be ended: + // + // 1) Server operation annotated with @EndsConversation. + // 2) Server operation calls an @EndSession annotated callback method. + // 3) Servers conversation lifetime times out. This is test6() so its not implimented in the test3 method. + // 4) The client calls ServiceReference.endSession(); + // + // Verify @Destroy annotated method get called after completion of the business + // method that called the endSession. + // + + ConversationsLifeCycleService aConversationsLifeCycleService; + Object aConversationID; + myContext = CurrentCompositeContext.getContext(); + Assert.assertNotNull("current composite context",myContext); + ServiceReference aServRef; + this.removeMarkerFile(); + + // + // test3 variation #1 - Cannot be done annotation not implimented yet. 12/15/2006 + // + + aServRef = myContext.newSession("ConversationsLifeCycleService"); + Assert.assertNotNull("Conversations - Test3-1 Service Reference not returned", aServRef); + + aConversationsLifeCycleService = (ConversationsLifeCycleService) aServRef; + aConversationsLifeCycleService.knockKnock("Hello"); + //FIXME Port to the 1.0 spec API + //aConversationID = aServRef.getSessionID(); + //Assert.assertNotNull("Conversations - Test3-1 ConversationID not found", aConversationID); + + //Call the business method annotated with @EndsConversation. + aConversationsLifeCycleService.endThisSession(); // This should also drive @Destroy method. + + // Verify session has ended. The ConversationID should be null; + //FIXME Port to the 1.0 spec API + //aConversationID = aServRef.getSessionID(); + //Assert.assertNull("Conversations - Test3-1 session not null after endSession()", aConversationID); + + // Verify Destroy was run. The baxckend service creates a marker file when @Destroy annotated method is run. + Assert.assertEquals("Conversations - Test3-1 @Destroy method not invoked", true, this.isMarkerFilePresent()); + this.removeMarkerFile(); + + // + // test3 variation #2 - Cannot be done annotation not implimented yet. 12/15/2006 + // + + aServRef = myContext.newSession("ConversationsLifeCycleService"); + Assert.assertNotNull("Conversations - Test3-2 Service Reference not returned", aServRef); + + aConversationsLifeCycleService = (ConversationsLifeCycleService) aServRef; + aConversationsLifeCycleService.knockKnock("Hello"); + //FIXME Port to the 1.0 spec API + //aConversationID = aServRef.getSessionID(); + //Assert.assertNotNull("Conversations - Test3-2 ConversationID not found", aConversationID); + + //Call the business method that will invoke my @EndSession callback method. + aConversationsLifeCycleService.endThisSessionUsingCallback(); // This should also drive @Destroy method. + + // Verify session has ended. The ConversationID should be null; + //FIXME Port to the 1.0 spec API + //aConversationID = aServRef.getSessionID(); + //Assert.assertNull("Conversations - Test3-2 session not null after endSession()", aConversationID); + + // Verify Destroy was run. The baxckend service creates a marker file when @Destroy annotated method is run. + Assert.assertEquals("Conversations - Test3-2 @Destroy method not invoked", true, this.isMarkerFilePresent()); + this.removeMarkerFile(); + + // + // test3 variation #4 - Client calls endSession() + // + + aServRef = myContext.newSession("ConversationsLifeCycleService"); + Assert.assertNotNull("Conversations - Test3-4 Service Reference not returned", aServRef); + + aConversationsLifeCycleService = (ConversationsLifeCycleService) aServRef; + aConversationsLifeCycleService.knockKnock("Hello"); + //FIXME Port to the 1.0 spec API + //aConversationID = aServRef.getSessionID(); + //Assert.assertNotNull("Conversations - Test3-4 ConversationID not found", aConversationID); + + //Call the endSession() API on the Service Reference. + //FIXME Port to the 1.0 spec API + //aServRef.endSession(); // This should also drive @Destroy method. + + // Verify session has ended. The ConversationID should be null; + //FIXME Port to the 1.0 spec API + //aConversationID = aServRef.getSessionID(); + //Assert.assertNull("Conversations - Test3-4 session not null after endSession()", aConversationID); + + // Verify Destroy was run. The baxckend service creates a marker file when @Destroy annotated method is run. + Assert.assertEquals("Conversations - Test3-4 @Destroy method not invoked", true, this.isMarkerFilePresent()); + this.removeMarkerFile(); + } + + public void test4() + { + + // + // This test uses the injected active session for the ConversationsService. It starts a conversation + // in this method building up state with a counter. It then passes this reference to another backend service adding + // additional state. It then returns and adds more state using original service and then performs the Assertions. + // + + aService.initializeCount(); + aService.add(1); + anotherService.setService((ServiceReference)aService); + anotherService.add(1); + anotherService.add(1); + aService.add(1); + aService.add(1); + int count = anotherService.getCount(); + + Assert.assertEquals("test4 - ConversationsClientImpl ", 5, count); + + return; + } + + + public void test5() + { + + // The first test verifies that the createServiceReferenceForSession(this) API is functioning. + // This is done in the backend serviced as it needs a single interface defined. The 2nd test + // uses the variant of this API when > 1 interfaces are implemented. + // + // The 2nd test obtains a service reference for myself and passes that reference to a backend service. + // The backend service then invokes the count() method on my service reference. It then returns + // the count that it retrieved. The test then asserts that the count returned from the backend + // service matches the client services internal state. + // + + myContext = CurrentCompositeContext.getContext(); + Assert.assertNotNull("current composite context",myContext); + + boolean result = aService.createServiceReferenceForSelf(); + System.out.println("Laa: returned from createServiceReferenceForSelf() " + result); + Assert.assertEquals("test5 - createServiceReferenceForSelf",true,result); + + count = 6; + int returnCount = 0; + ServiceReference myServiceReference = myContext.createServiceReferenceForSession(this,"ConversationsClient2"); + Assert.assertNotNull("test5 - createServiceReferenceForSession - myContext.createServiceReferenceForSession(this,ConversationsClient);", myServiceReference); + returnCount = aService.getCount(myServiceReference); + + Assert.assertEquals("test5 - createServiceReferenceForSession(this,ConversationsClient2)",count,returnCount); + String aRemoteDateTime = aService.getDateTime(myServiceReference); + Assert.assertEquals("test5 - createServiceReferenceForSession(this,ConversationsClient2 - dateTime)", dateTime, aRemoteDateTime); + + return; + } + + public void test6() + { + + // + // Create a session and allow it to timeout and verify that it did. + // Invoking a business method on a service that has timed out should result in + // a SessionEndedException. + // + + myContext = CurrentCompositeContext.getContext(); + Assert.assertNotNull("current composite context",myContext); + + // This tests creating a conversational session. This service has a maxAge="5 seconds". + ServiceReference aServRef; + aServRef = myContext.newSession("ConversationsLifeCycleService"); + Assert.assertNotNull("Conversations - Test6 Service Reference not returned", aServRef); + + // Run a business method. + ConversationsLifeCycleService aConversationsLifeCycleService = (ConversationsLifeCycleService) aServRef; + aConversationsLifeCycleService.knockKnock("Hello"); + + // + // wait 10 seconds so session will time out. + // + try { + Thread.sleep(10000L); + } + catch (InterruptedException ex) + { + ex.printStackTrace(); + } + + // Run a busineess method after timeout period has elapsed. + boolean sessionEnded = false; + try + { + aConversationsLifeCycleService.knockKnock("Hello"); + } + catch (ConversationEndedException sex) + { + sessionEnded = true; + } + + Assert.assertEquals("Conversations - Test6 Session did not timeout ", true, sessionEnded); + + return; + } + + + public synchronized void callBackIncrement(String aString) { + + count++; + System.out.println("Laa: callBackIncrement invoked on client. count = " + count); + + } + + public synchronized void callBackMessage(String aString) { + + message = aString; + System.out.println("Laa: callBackIMessage invoked on client. message = " + message); + + } + + // @EndSession - This is for test3() variation #2. + public void callBackEndSession() { + + System.out.println("Laa: callBackEndSession method invoked on client."); + + } + + public int count() + { + return this.count; + } + + public String getDateTime() { + + dateTime = DateFormat.getDateTimeInstance().toString(); + return dateTime; + + } + + private void removeMarkerFile() + { + // Make sure the marker file is not present before starting the test. + File aFile = new File(markerFileName); + if (aFile.exists()) + aFile.delete(); + } + + private boolean isMarkerFilePresent() + { + File aFile = new File(markerFileName); + return aFile.exists(); + } + + + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/conversations/src/main/java/org/apache/tuscany/sca/test/ConversationsLifeCycleService.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/conversations/src/main/java/org/apache/tuscany/sca/test/ConversationsLifeCycleService.java new file mode 100644 index 0000000000..744737dacd --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/conversations/src/main/java/org/apache/tuscany/sca/test/ConversationsLifeCycleService.java @@ -0,0 +1,20 @@ +package org.apache.tuscany.sca.test; + +import org.osoa.sca.annotations.Callback; +import org.osoa.sca.annotations.Remotable; +import org.osoa.sca.annotations.Scope; +import org.osoa.sca.ServiceReference; + +@Remotable +@Callback(ConversationsCallback.class) + +/** + * + */ +public interface ConversationsLifeCycleService { + + public String knockKnock(String aString); + public void endThisSession(); + public void endThisSessionUsingCallback(); + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/conversations/src/main/java/org/apache/tuscany/sca/test/ConversationsLifeCycleServiceImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/conversations/src/main/java/org/apache/tuscany/sca/test/ConversationsLifeCycleServiceImpl.java new file mode 100644 index 0000000000..61e349abed --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/conversations/src/main/java/org/apache/tuscany/sca/test/ConversationsLifeCycleServiceImpl.java @@ -0,0 +1,79 @@ +package org.apache.tuscany.sca.test; + +import java.io.File; + +import junit.framework.Assert; + +import org.osoa.sca.annotations.Callback; +import org.osoa.sca.annotations.ConversationAttributes; +import org.osoa.sca.annotations.Destroy; +import org.osoa.sca.annotations.Init; +import org.osoa.sca.annotations.Scope; +import org.osoa.sca.annotations.Service; + +@Service(ConversationsLifeCycleService.class) +@Scope("CONVERSATION") +@ConversationAttributes(maxAge="5 seconds") + +// This is a short-lived conversational service. + +public class ConversationsLifeCycleServiceImpl implements ConversationsLifeCycleService { + + @Callback + protected ConversationsCallback callback; + + private String state = "NOT READY"; + private final static String markerFileName = "target/testConversations_test3_marker"; + + + public String knockKnock(String aString) { + + // Prior to any business methods being invoked the state must have been set to READY using the @Init. + System.out.println("ConversationsLifeCycleServiceImpl.knockKnock - State = " + state); + Assert.assertEquals("ConversationsLifeCycleServiceImpl.knockKnock - not in READY state ", "READY", state); + + return "Who's There!"; + } + + @Init + public void init() + { + state = "READY"; + System.out.println("ConversationsLifeCycleServiceImpl.init()"); + } + + + @Destroy + public void destroy() + { + state = "DESTROYED"; + + File aFile = new File(markerFileName); + try + { + aFile.createNewFile(); + } + catch (Exception ex) + { + System.out.println("Error Creating " + markerFileName); + ex.printStackTrace(); + } + System.out.println("ConversationsLifeCycleServiceImpl.destroy()"); + } + +// @EndsConversation + public void endThisSession() { + //This method will end the current session by annotation. + System.out.println("ConversationsLifeCycleServiceImpl.endThisSession()"); + + } + + public void endThisSessionUsingCallback() { + + //This method will end the current session by a callback method annotated with @EndSession. + callback.callBackEndSession(); + System.out.println("ConversationsLifeCycleServiceImpl.endThisSessionUsingCallback()"); + } + +} + diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/conversations/src/main/java/org/apache/tuscany/sca/test/ConversationsService.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/conversations/src/main/java/org/apache/tuscany/sca/test/ConversationsService.java new file mode 100644 index 0000000000..d631cf91b4 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/conversations/src/main/java/org/apache/tuscany/sca/test/ConversationsService.java @@ -0,0 +1,24 @@ +package org.apache.tuscany.sca.test; + +import org.osoa.sca.annotations.Callback; +import org.osoa.sca.annotations.Remotable; +import org.osoa.sca.annotations.Scope; +import org.osoa.sca.ServiceReference; + +@Remotable +@Callback(ConversationsCallback.class) + +/** + * + */ +public interface ConversationsService { + + public void knockKnock(String aString); + public void add(int anInt); + public void initializeCount(); + public int getCount(ServiceReference aServiceReference); + public int getLocalCount(); + public String getDateTime(ServiceReference aServiceReference); + public boolean createServiceReferenceForSelf(); + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/conversations/src/main/java/org/apache/tuscany/sca/test/ConversationsServiceImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/conversations/src/main/java/org/apache/tuscany/sca/test/ConversationsServiceImpl.java new file mode 100644 index 0000000000..d764e79330 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/conversations/src/main/java/org/apache/tuscany/sca/test/ConversationsServiceImpl.java @@ -0,0 +1,134 @@ +package org.apache.tuscany.sca.test; + +import junit.framework.Assert; + +import org.osoa.sca.CompositeContext; +import org.osoa.sca.CurrentCompositeContext; +import org.osoa.sca.RequestContext; +import org.osoa.sca.ServiceReference; +import org.osoa.sca.annotations.Callback; +import org.osoa.sca.annotations.Remotable; +import org.osoa.sca.annotations.Service; +import org.osoa.sca.annotations.Context; +import org.osoa.sca.annotations.Scope; +import java.io.File; +import org.apache.tuscany.sca.test.ConversationsClient; + +@Service(ConversationsService.class) +@Scope("CONVERSATION") + +public class ConversationsServiceImpl implements ConversationsService { + + @Callback + // Note injection is not working with a private access modifier. + protected ConversationsCallback callback; + private int count=0; + + public void knockKnock(String aString) { + + try + { + count++; + //System.out.println("ConversationsServiceImpl message received: " + aString); + callback.callBackMessage("Who's There " + count); + callback.callBackIncrement("Add one please"); + //System.out.println("ConversationsServiceImpl responses sent"); + return; + } + catch (Exception ex) + { + ex.printStackTrace(); + } + + } + + public int getCount(ServiceReference aServiceReference) + { + + // + // Invoke a method on the service reference and return back the result. + // + + int count=0; + try + { + count = ((ConversationsClient) aServiceReference).count(); + } + catch (Exception ex) + { + ex.printStackTrace(); + } + return count; + + } + + public int getLocalCount() + { + + // + // Return my localc instance count. This is used for test4. + // + + return count; + + } + + public String getDateTime(ServiceReference aServiceReference) + { + + // + // Invoke a method on the service reference and return back the result. + // + + String dateTime; + dateTime = ((ConversationsClient2) aServiceReference).getDateTime(); + return dateTime; + + } + + public void add(int anInt) { + + count +=anInt; + + } + + public void initializeCount() { + + count =0; + + } + + public boolean createServiceReferenceForSelf() { + + // This is done here because we need to test getting a ServiceReference + // from a component that implements a single interface. The client in this test + // impliments 2 interfaces to test the variant of this that takes interface name as an argumnet. + + boolean aBoolean = false; + + ServiceReference myServiceReference = null; + CompositeContext ctx = CurrentCompositeContext.getContext(); + + try + { + myServiceReference = ctx.createServiceReferenceForSession(this); + System.out.println("Laa: Created Service Reference for Session:" + myServiceReference); + } + catch (Exception ex) + { + ex.printStackTrace(); + } + + + if (myServiceReference != null) + { + aBoolean = true; + System.out.println("Laa: Service Reference is not null"); + } + + return aBoolean; + } + + +} + diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/conversations/src/main/resources/ConversationsTest.composite b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/conversations/src/main/resources/ConversationsTest.composite new file mode 100644 index 0000000000..266cd8b386 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/conversations/src/main/resources/ConversationsTest.composite @@ -0,0 +1,48 @@ +<?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" + name="ConversationsTest"> + + <component name="ConversationsClient"> + <implementation.java class="org.apache.tuscany.sca.test.ConversationsClientImpl"/> + <reference name="aService"> + ConversationsService + </reference> + <reference name="anotherService"> + AnotherService + </reference> + <reference name="aLifeCycleService"> + ConversationLifeCycleService + </reference> + </component> + + <component name="ConversationsService"> + <implementation.java class="org.apache.tuscany.sca.test.ConversationsServiceImpl"/> + </component> + + <component name="AnotherService"> + <implementation.java class="org.apache.tuscany.sca.test.AnotherServiceImpl"/> + </component> + + <component name="ConversationLifeCycleService"> + <implementation.java class="org.apache.tuscany.sca.test.ConversationsLifeCycleServiceImpl"/> + </component> + +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/conversations/src/test/java/org/apache/tuscany/sca/test/ConversationsTest.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/conversations/src/test/java/org/apache/tuscany/sca/test/ConversationsTest.java new file mode 100644 index 0000000000..3fb753cbf7 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/conversations/src/test/java/org/apache/tuscany/sca/test/ConversationsTest.java @@ -0,0 +1,27 @@ +package org.apache.tuscany.sca.test; + +import junit.framework.TestCase; + +import org.apache.tuscany.api.SCARuntime; +import org.osoa.sca.CurrentCompositeContext; + +public class ConversationsTest extends TestCase { + + private ConversationsClient aConversationsClient; + + public void testConversations() { + aConversationsClient.run(); + } + + protected void setUp() throws Exception { + SCARuntime.start("ConversationsTest.composite"); + + aConversationsClient = CurrentCompositeContext.getContext().locateService(ConversationsClient.class, "ConversationsClient/org.apache.tuscany.sca.test.ConversationsClient"); + + } + + protected void tearDown() throws Exception { + SCARuntime.stop(); + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/LICENSE.txt b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/LICENSE.txt new file mode 100644 index 0000000000..d645695673 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/LICENSE.txt @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed 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. diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/NOTICE.txt b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/NOTICE.txt new file mode 100644 index 0000000000..d83ebbe236 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/NOTICE.txt @@ -0,0 +1,14 @@ +${pom.name} +Copyright (c) 2005 - 2006 The Apache Software Foundation + +Apache Tuscany is an effort undergoing incubation at The Apache Software +Foundation (ASF), sponsored by the Apache Web Services PMC. Incubation is +required of all newly accepted projects until a further review indicates that +the infrastructure, communications, and decision making process have stabilized +in a manner consistent with other successful ASF projects. While incubation +status is not necessarily a reflection of the completeness or stability of the +code, it does indicate that the project has yet to be fully endorsed by the ASF. + +This product includes software developed by +The Apache Software Foundation (http://www.apache.org/). + diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/LICENSE.txt b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/LICENSE.txt new file mode 100644 index 0000000000..d645695673 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/LICENSE.txt @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed 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. diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/NOTICE.txt b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/NOTICE.txt new file mode 100644 index 0000000000..92ca715fbe --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/NOTICE.txt @@ -0,0 +1,14 @@ +${pom.name} +Copyright (c) 2005 - 2007 The Apache Software Foundation + +Apache Tuscany is an effort undergoing incubation at The Apache Software +Foundation (ASF), sponsored by the Apache Web Services PMC. Incubation is +required of all newly accepted projects until a further review indicates that +the infrastructure, communications, and decision making process have stabilized +in a manner consistent with other successful ASF projects. While incubation +status is not necessarily a reflection of the completeness or stability of the +code, it does indicate that the project has yet to be fully endorsed by the ASF. + +This product includes software developed by +The Apache Software Foundation (http://www.apache.org/). + diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/pom.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/pom.xml new file mode 100644 index 0000000000..6680aafb2b --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/pom.xml @@ -0,0 +1,120 @@ +<?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> + <parent> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>databindings</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + </parent> + + <modelVersion>4.0.0</modelVersion> + + <artifactId>iTest-common</artifactId> + <version>${testing.version}</version> + <packaging>jar</packaging> + <name>Common elements of Databindings Integration Tests</name> + + <repositories> + <repository> + <snapshots> + <enabled>true</enabled> + </snapshots> + <id>java.net</id> + <name>java.net Maven 1.x Repository</name> + <url>https://maven-repository.dev.java.net/nonav/repository</url> + <layout>legacy</layout> + </repository> + </repositories> + + <pluginRepositories> + <pluginRepository> + <snapshots> + <enabled>true</enabled> + </snapshots> + <id>java.net</id> + <name>java.net Maven 1.x Repository</name> + <url>https://maven-repository.dev.java.net/repository</url> + <layout>legacy</layout> + </pluginRepository> + </pluginRepositories> + + <dependencies> + <dependency> + <groupId>org.apache.tuscany.sca.services.databinding</groupId> + <artifactId>databinding-sdo</artifactId> + <version>${pom.version}</version> + <scope>compile</scope> + </dependency> + <dependency> + <groupId>velocity</groupId> + <artifactId>velocity</artifactId> + <version>1.4</version> + <scope>compile</scope> + </dependency> + </dependencies> + + <build> + <plugins> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>build-helper-maven-plugin</artifactId> + <version>1.0</version> + <executions> + <execution> + <id>add-test-source</id> + <phase>generate-sources</phase> + <goals> + <goal>add-test-source</goal> + </goals> + <configuration> + <sources> + <source>target/sdo-source</source> + </sources> + </configuration> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.apache.tuscany.sdo</groupId> + <artifactId>tuscany-sdo-plugin</artifactId> + <version>1.0-incubator-SNAPSHOT</version> + <executions> + <execution> + <id>generate-sdo</id> + <phase>generate-sources</phase> + <configuration> + <schemaFiles> + <configuration> + <fileName>${basedir}/src/main/resources/generate/generate.xsd</fileName> + </configuration> + </schemaFiles> + <noNotification>true</noNotification> + <noContainment>true</noContainment> + <noUnsettable>true</noUnsettable> + </configuration> + <goals> + <goal>generate</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> +</project> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/java/org/apache/tuscany/sca/itest/generate/Generate.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/java/org/apache/tuscany/sca/itest/generate/Generate.java new file mode 100644 index 0000000000..31dfdcfebb --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/java/org/apache/tuscany/sca/itest/generate/Generate.java @@ -0,0 +1,130 @@ +/* + * 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.itest.generate; + +import java.io.FileInputStream; +import java.io.FileWriter; +import java.io.InputStream; +import java.io.StringWriter; +import java.util.Iterator; +import java.util.List; +import java.util.Properties; + +import org.apache.tuscany.generate.GenerateFactory; +import org.apache.tuscany.generate.GenerateType; +import org.apache.tuscany.generate.InputFileType; +import org.apache.tuscany.generate.TemplateType; +import org.apache.tuscany.sdo.util.SDOUtil; +import org.apache.velocity.VelocityContext; +import org.apache.velocity.app.Velocity; + +import commonj.sdo.DataObject; +import commonj.sdo.helper.HelperContext; +import commonj.sdo.helper.XMLDocument; +import commonj.sdo.helper.XMLHelper; +import commonj.sdo.helper.XSDHelper; + +/** + * Generates test files based on the information in a configuration files (generate.xml) + * and a set of velocity templates. The process is + * + * for each template + * for each file + * add a line to pom for code gen + * include the factory into the composite + * for each type + * add client iface method + * add client impl method + * add service iface method + * add service impl method + * add test method + * add wsdl type and method + * + * @version $Rev$ $Date$ + */ +public class Generate { + + /** + * Does all the hard work of running the velocity templates against the + * the list of types to test. Both the list of templates and the list of + * XSD files is held in the configuration file (generate.xsd) which lives in the + * resources/generate directory of the project being generated. + * + * @param projectBuildDir the path to the target dir of the project being generated. + */ + public static void generate(String projectBuildDir) { + System.out.println(">> Building project from dir: " + projectBuildDir); + FileInputStream fis = null; + + try { + // Load the config file into a stream + fis = new FileInputStream(projectBuildDir + "/classes/generate/generate.xml"); + + // Load the stream into SDO + // We are just using SDO as a conveniet way to parse the XML config file + HelperContext scope = SDOUtil.createHelperContext(); + GenerateFactory.INSTANCE.register(scope); + XMLDocument xmlDoc = scope.getXMLHelper().load(fis); + GenerateType generateType = (GenerateType)xmlDoc.getRootObject(); + + // Get the file list. This is the list of XSD that is passed into the + // the velocity templates. Each confiured file holds a list of types + // that the velocity templates expand into appropriate methods and method calls + List fileList = generateType.getInputFile(); + + //Intialise velocity ready to generate the various files + Properties p = new Properties(); + p.setProperty("file.resource.loader.path", projectBuildDir + "/classes/generate"); + Velocity.init(p); + VelocityContext context = new VelocityContext(); + context.put("fileList", fileList); + + List templateList = generateType.getTemplate(); + + // For each velocity template in the template list pass in the XSD file list + for ( Object item: templateList){ + TemplateType template = (TemplateType)item; + context.put("template", template); + String tmp = template.getTemplateName(); + String filename = projectBuildDir + "/" + template.getTemplateTargetDir() + "/" + tmp.substring(0,tmp.length() - 3); + FileWriter fw = new FileWriter(filename); + System.out.println(">> Processing " + template.getTemplateName() + " to " + filename); + Velocity.mergeTemplate(template.getTemplateName(), context, fw ); + fw.flush(); + fw.close(); + } + + } catch (Exception e) { + System.out.println("Exception : " + e.toString()); + e.printStackTrace(); + return; + } + } + + /** + * The mainline + * + * @param args the target directory where project in which files are being generated + */ + public static void main(String[] args) { + Generate gen = new Generate(); + gen.generate(args[0]); + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/generate/DatabindingTestCase.java.vm b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/generate/DatabindingTestCase.java.vm new file mode 100644 index 0000000000..742929ec86 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/generate/DatabindingTestCase.java.vm @@ -0,0 +1,116 @@ +/* + * 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 $template.getJavaPackage(); + +import junit.framework.TestCase; + +import org.osoa.sca.CompositeContext; +import org.osoa.sca.CurrentCompositeContext; + +import org.apache.tuscany.api.SCARuntime; +import ${template.getJavaPackage()}.GreeterService; + +// Data types +#foreach($file in $fileList) +#set($typeList = $file.getType_()) +#foreach($typeInstance in $typeList) +import $file.getJavaPackage().$typeInstance.getTypeName(); +import $file.getJavaPackage().$file.getFactory(); +#end +#end + +/** + * Automatically generated test case. Calls the greeter client for a number of + * bindings and a number of data types. + * + * @version $Rev: 511417 $ $Date: 2007-02-25 03:06:42 +0000 (Sun, 25 Feb 2007) $ + */ +public class DatabindingTestCase extends TestCase { + + private static boolean initalised = false; + private GreeterService greeterClient; + + /** + * Runs before each test method + */ + protected void setUp() throws Exception { + if (!initalised) { + SCARuntime.start("greeter.composite"); + super.setUp(); + initalised = true; + } + } + + /** + * Runs after each test method + */ + protected void tearDown() { + + } + + /** + * Finds the SCA component that relates to the protocol being tested. This test + * always connects locally to the client component but the client component will + * connect to the back end component using the appropriate protocol + * + * @param ext the protcol required + */ + private void setUpClient(String ext) throws Exception { + CompositeContext ctx = CurrentCompositeContext.getContext(); + greeterClient = ctx.locateService(GreeterService.class, ext + "GreeterServiceClient"); + } + + /** + * Invokes the SDO Greet service using web service bindings with SDO payload + */ + public void testWSGreet() throws Exception { + setUpClient("WS"); + greet(); + } + + /** + * Invokes the SDO Greet service using default bindings with SDO payload + */ + public void testDefaultGreet() throws Exception { + setUpClient("Default"); + greet(); + } + + /** + * A generic method which, regarless of which client is connected, sends out a + * series of requrests passing different data types. + */ + public void greet() { +#foreach($file in $fileList) +#set($typeList = $file.getType_()) +#foreach($typeInstance in $typeList) + + // test $typeInstance.getTypeName() + { + $typeInstance.getTypeName() param = null; + $typeInstance.getCreateTypeCode() + $typeInstance.getTypeName() result = greeterClient.greet$typeInstance.getTypeName()(param); + $typeInstance.getResultComparison() + } +#end +#end + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/generate/Greeter.wsdl.vm b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/generate/Greeter.wsdl.vm new file mode 100644 index 0000000000..f08d56c55a --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/generate/Greeter.wsdl.vm @@ -0,0 +1,103 @@ +<?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 targetNamespace="http://apache.org/tuscany/sca/itest/databinding/services" + xmlns:tns="http://apache.org/tuscany/sca/itest/databinding/services" + xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" + xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + name="Greeter"> + + <wsdl:types> + <xsd:schema xmlns="http://www.w3.org/2001/XMLSchema" +#foreach($file in $fileList) + xmlns:$file.getPrefix()="$file.getNamespace()" +#end + targetNamespace="http://apache.org/tuscany/sca/itest/databinding/services" + elementFormDefault="qualified"> + +#foreach($file in $fileList) + <xsd:import namespace="$file.getNamespace()" + schemaLocation="../xsd/$file.getFileName()" /> +#end + +#foreach($file in $fileList) +#set($typeList = $file.getType_()) +#foreach($typeInstance in $typeList) + <element name="greet$typeInstance.getTypeName()"> + <complexType> + <sequence> + <element name="parm" type="$file.getPrefix():$typeInstance.getTypeName()" /> + </sequence> + </complexType> + </element> +#end +#end + </xsd:schema> + </wsdl:types> +#foreach($file in $fileList) +#set($typeList = $file.getType_()) +#foreach($typeInstance in $typeList) + + <wsdl:message name="$typeInstance.getTypeName()Request"> + <wsdl:part element="tns:greet$typeInstance.getTypeName()" name="parameters" /> + </wsdl:message> + <wsdl:message name="$typeInstance.getTypeName()Response"> + <wsdl:part element="tns:greet$typeInstance.getTypeName()" name="parameters" /> + </wsdl:message> +#end +#end + + <wsdl:portType name="GreeterPortType"> +#foreach($file in $fileList) +#set($typeList = $file.getType_()) +#foreach($typeInstance in $typeList) + <wsdl:operation name="greet$typeInstance.getTypeName()"> + <wsdl:input message="tns:$typeInstance.getTypeName()Request" name="$typeInstance.getTypeName()RequestMsg" /> + <wsdl:output message="tns:$typeInstance.getTypeName()Response" name="$typeInstance.getTypeName()ResponseMsg" /> + </wsdl:operation> +#end +#end + </wsdl:portType> + + <wsdl:binding name="GreeterBinding" type="tns:GreeterPortType"> + <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" /> +#foreach($file in $fileList) +#set($typeList = $file.getType_()) +#foreach($typeInstance in $typeList) + <wsdl:operation name="greet$typeInstance.getTypeName()"> + <wsdlsoap:operation soapAction="" /> + <wsdl:input name="$typeInstance.getTypeName()RequestMsg"> + <wsdlsoap:body use="literal" /> + </wsdl:input> + <wsdl:output name="$typeInstance.getTypeName()ResponseMsg"> + <wsdlsoap:body use="literal" /> + </wsdl:output> + </wsdl:operation> +#end +#end + </wsdl:binding> + + <wsdl:service name="GreeterService"> + <wsdl:port name="GreeterPort" binding="tns:GreeterBinding"> + <wsdlsoap:address location="http://localhost:8080/services/GreeterServiceWebServiceBinding" /> + </wsdl:port> + </wsdl:service> + +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/generate/GreeterService.java.vm b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/generate/GreeterService.java.vm new file mode 100644 index 0000000000..b0e298b823 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/generate/GreeterService.java.vm @@ -0,0 +1,53 @@ +/* + * 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 $template.getJavaPackage(); + +#foreach($file in $fileList) +#set($typeList = $file.getType_()) +#foreach($typeInstance in $typeList) +import $file.getJavaPackage().$typeInstance.getTypeName(); +#end +#end + +import org.osoa.sca.annotations.Remotable; + +/** + * The automcatically generated interface to the service that reflects data objects + * that are sent to it + * + * @version $Rev: 511417 $ $Date: 2007-02-25 03:06:42 +0000 (Sun, 25 Feb 2007) $ + */ +@Remotable +public interface GreeterService { + +#foreach($file in $fileList) +#set($typeList = $file.getType_()) +#foreach($typeInstance in $typeList) + /** + * Take the provided data object, change it slightly and return it + * + * @param param the data object to be changed and returned + * @return the change data object + */ + $typeInstance.getTypeName() greet$typeInstance.getTypeName()($typeInstance.getTypeName() param); +#end +#end + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/generate/GreeterServiceClient.java.vm b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/generate/GreeterServiceClient.java.vm new file mode 100644 index 0000000000..ee73db6152 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/generate/GreeterServiceClient.java.vm @@ -0,0 +1,42 @@ +/* + * 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 $template.getJavaPackage(); + +#foreach($file in $fileList) +#set($typeList = $file.getType_()) +#foreach($typeInstance in $typeList) +import $file.getJavaPackage().$typeInstance.getTypeName(); +#end +#end + +import org.osoa.sca.annotations.AllowsPassByReference; + +/** + * GreeterServiceClient + */ +@AllowsPassByReference +public interface GreeterServiceClient { +#foreach($file in $fileList) +#set($typeList = $file.getType_()) +#foreach($typeInstance in $typeList) + $typeInstance.getTypeName() greet$typeInstance.getTypeName()($typeInstance.getTypeName() param); +#end +#end +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/generate/GreeterServiceClientImpl.java.vm b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/generate/GreeterServiceClientImpl.java.vm new file mode 100644 index 0000000000..57827d27b9 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/generate/GreeterServiceClientImpl.java.vm @@ -0,0 +1,65 @@ +/* + * 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 $template.getJavaPackage(); + +import org.osoa.sca.annotations.Reference; +import org.osoa.sca.annotations.Service; + +#foreach($file in $fileList) +#set($typeList = $file.getType_()) +#foreach($typeInstance in $typeList) +import $file.getJavaPackage().$typeInstance.getTypeName(); +#end +#end + +/** + * The automcatically generated service that simply forwards data objects on to + * the GreeterService and passes back the responses + * + * @version $Rev: 508831 $ $Date: 2007-02-18 00:12:31 +0000 (Sun, 18 Feb 2007) $ + */ +@Service(GreeterService.class) +public class GreeterServiceClientImpl implements GreeterService { + + /** + * the reference the the GreeterService that will + * change each data object slightly and return it + */ + private GreeterService service; + + @Reference + public void setGreeterService(GreeterService service) { + this.service = service; + } +#foreach($file in $fileList) +#set($typeList = $file.getType_()) +#foreach($typeInstance in $typeList) + + /* + * (non-Javadoc) + * + * @see org.apache.tuscany.sca.itest.sdodatabinding.GreeterService#greet$typeInstance.getTypeName()($typeInstance.getTypeName() param) + */ + public $typeInstance.getTypeName() greet$typeInstance.getTypeName()($typeInstance.getTypeName() param) { + return service.greet$typeInstance.getTypeName()(param); + } +#end +#end +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/generate/GreeterServiceImpl.java.vm b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/generate/GreeterServiceImpl.java.vm new file mode 100644 index 0000000000..1fd7509667 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/generate/GreeterServiceImpl.java.vm @@ -0,0 +1,55 @@ +/* + * 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 $template.getJavaPackage(); + +#foreach($file in $fileList) +#set($typeList = $file.getType_()) +#foreach($typeInstance in $typeList) +import $file.getJavaPackage().$typeInstance.getTypeName(); +#end +#end + +import org.osoa.sca.annotations.Service; + +/** + * The automcatically generated service implementation that reflects data objects + * that are sent to it + * + * @version $Rev: 511417 $ $Date: 2007-02-25 03:06:42 +0000 (Sun, 25 Feb 2007) $ + */ +@Service(GreeterService.class) +public class GreeterServiceImpl implements GreeterService { +#foreach($file in $fileList) +#set($typeList = $file.getType_()) +#foreach($typeInstance in $typeList) + + /** + * Take the provided data object, change it slightly and return it + * + * @param param the data object to be changed and returned + * @return the change data object + */ + public $typeInstance.getTypeName() greet$typeInstance.getTypeName()($typeInstance.getTypeName() param) { + $typeInstance.getModifyTypeCode() + return param; + } +#end +#end +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/generate/generate.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/generate/generate.xsd new file mode 100644 index 0000000000..1fabedf55f --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/generate/generate.xsd @@ -0,0 +1,61 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/generate" + xmlns:tns="http://www.apache.org/tuscany/generate"> + + <complexType name="TypeType"> + <sequence> + <element name="TypeName" type="string"/> + <element name="CreateTypeCode" type="string"/> + <element name="ModifyTypeCode" type="string"/> + <element name="ResultComparison" type="string"/> + </sequence> + </complexType> + + <complexType name="InputFileType"> + <sequence> + <element name="FileName" type="string"/> + <element name="FilePath" type="string"/> + <element name="JavaPackage" type="string"/> + <element name="Factory" type="string"/> + <element name="Namespace" type="string"/> + <element name="Prefix" type="string"/> + <element name="Type" type="tns:TypeType" maxOccurs="unbounded"/> + </sequence> + </complexType> + + <complexType name="TemplateType"> + <sequence> + <element name="TemplateName" type="string"/> + <element name="TemplateTargetDir" type="string"/> + <element name="JavaPackage" type="string"/> + </sequence> + </complexType> + + <complexType name="GenerateType"> + <sequence> + <element name="Template" type="tns:TemplateType" maxOccurs="unbounded"/> + <element name="InputFile" type="tns:InputFileType" maxOccurs="unbounded"/> + </sequence> + </complexType> + + <element name="Generate" type="tns:GenerateType"/> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/generate/pom.xml.vm b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/generate/pom.xml.vm new file mode 100644 index 0000000000..01267a1d38 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/generate/pom.xml.vm @@ -0,0 +1,181 @@ +<?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> + <parent> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>databindings</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + </parent> + + <modelVersion>4.0.0</modelVersion> + + <artifactId>iTest-sdoDatabinding</artifactId> + <version>${testing.version}</version> + <packaging>jar</packaging> + <name>Test Suite for SDO Databindings</name> + + <repositories> + <repository> + <snapshots> + <enabled>true</enabled> + </snapshots> + <id>java.net</id> + <name>java.net Maven 1.x Repository</name> + <url>https://maven-repository.dev.java.net/nonav/repository</url> + <layout>legacy</layout> + </repository> + </repositories> + + <pluginRepositories> + <pluginRepository> + <snapshots> + <enabled>true</enabled> + </snapshots> + <id>java.net</id> + <name>java.net Maven 1.x Repository</name> + <url>https://maven-repository.dev.java.net/repository</url> + <layout>legacy</layout> + </pluginRepository> + </pluginRepositories> + + <dependencies> + <dependency> + <groupId>org.apache.tuscany.sca.services.databinding</groupId> + <artifactId>databinding-jaxb</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + <scope>runtime</scope> + </dependency> + <dependency> + <groupId>org.apache.tuscany.sca.services.databinding</groupId> + <artifactId>databinding-sdo</artifactId> + <version>${pom.version}</version> + <scope>compile</scope> + </dependency> + <dependency> + <groupId>org.apache.tuscany.sca.extensions.axis2</groupId> + <artifactId>databinding-axiom</artifactId> + <version>${pom.version}</version> + <scope>compile</scope> + </dependency> + <dependency> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>itest-common</artifactId> + <version>${pom.version}</version> + <scope>compile</scope> + </dependency> + </dependencies> + + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-dependency-plugin</artifactId> + <executions> + <execution> + <phase>generate-sources</phase> + <goals> + <goal>unpack</goal> + </goals> + <configuration> + <artifactItems> + <artifactItem> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>itest-common</artifactId> + <version>${project.version}</version> + <overWrite>true</overWrite> + <outputDirectory>${project.build.directory}/classes</outputDirectory> + </artifactItem> + </artifactItems> + </configuration> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>build-helper-maven-plugin</artifactId> + <version>1.0</version> + <executions> + <execution> + <id>add-test-source</id> + <phase>generate-sources</phase> + <goals> + <goal>add-test-source</goal> + </goals> + <configuration> + <sources> + <source>target/sdo-source</source> + </sources> + </configuration> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>exec-maven-plugin</artifactId> + <executions> + <execution> + <id>generate-test-source</id> + <phase>process-resources</phase> + <goals> + <goal>java</goal> + </goals> + </execution> + </executions> + <configuration> + <mainClass>org.apache.tuscany.sca.itest.generate.Generate</mainClass> + <arguments> + <argument>${project.build.directory}</argument> + </arguments> + </configuration> + </plugin> + <plugin> + <groupId>org.apache.tuscany.sdo</groupId> + <artifactId>tuscany-sdo-plugin</artifactId> + <version>1.0-incubator-SNAPSHOT</version> + <executions> + <execution> + <id>generate-sdo</id> + <phase>process-resources</phase> + <configuration> + <schemaFiles> + <configuration> + <fileName>${project.build.directory}/classes/wsdl/Greeter.wsdl</fileName> + <javaPackage>org.apache.tuscany.sca.itest.databinding.services</javaPackage> + </configuration> + #foreach( $file in $fileList ) + <configuration> + <fileName>${project.build.directory}/classes/$file.getFilePath()/$file.getFileName()</fileName> + <javaPackage>$file.getJavaPackage()</javaPackage> + </configuration> + #end + </schemaFiles> + <noNotification>true</noNotification> + <noContainment>true</noContainment> + <noUnsettable>true</noUnsettable> + </configuration> + <goals> + <goal>generate</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> +</project> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/wsdl/Dummy.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/wsdl/Dummy.wsdl new file mode 100644 index 0000000000..5aa7faaa16 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/wsdl/Dummy.wsdl @@ -0,0 +1,4 @@ +A dummy WSDL file that causes the target/classes/wsdl dir to be created in the generated test project. This is +required because the test generator must run in the process-resource phase, after generate.xml has been copied +into target. The generator needs to write out target/classes/wsdl and will fail the directory isn't there. So +this file just gets unpacked and overwritten. diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/Annotation.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/Annotation.xml new file mode 100644 index 0000000000..fd84119c93 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/Annotation.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:Annotation xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop Annotation.xsd"> + <SimpleTypeWithName>SimpleTypeWithName</SimpleTypeWithName> +</tns:Annotation> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/Annotation.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/Annotation.xsd new file mode 100644 index 0000000000..911e386f68 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/Annotation.xsd @@ -0,0 +1,38 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <annotation> + <appinfo>SDO 2.0.1</appinfo> + <documentation> + A schema that tests the presence of annotations in schema read by SDO + </documentation> + </annotation> + + <complexType name="AnnotationComplexType"> + <sequence> + <element name="SimpleTypeWithName" type="string"/> + </sequence> + </complexType> + + <element name="Annotation" type="tns:AnnotationComplexType"/> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/Attribute.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/Attribute.xml new file mode 100644 index 0000000000..c20c80b658 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/Attribute.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:Attribute xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop Attribute.xsd "> + <AttributeElement Attribute="Attribute"/> +</tns:Attribute> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/Attribute.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/Attribute.xsd new file mode 100644 index 0000000000..458b38647f --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/Attribute.xsd @@ -0,0 +1,38 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:sdo="commonj.sdo"> + + <complexType name="AttributeType"> + <sequence> + </sequence> + <attribute name="Attribute" type="string"/> + </complexType> + + <element name="Attribute"> + <complexType> + <sequence> + <element name="AttributeElement" type="tns:AttributeType"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeReference.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeReference.xml new file mode 100644 index 0000000000..30e4979dca --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeReference.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:AttributeReference xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop AttributeReference.xsd "> + <AttributeReferenceElement tns:ReferencedAttribute="AttributeReference"/> +</tns:AttributeReference> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeReference.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeReference.xsd new file mode 100644 index 0000000000..5842a8d629 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeReference.xsd @@ -0,0 +1,40 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:sdo="commonj.sdo"> + + <attribute name="ReferencedAttribute" type="string"/> + + <complexType name="AttributeReferenceType"> + <sequence> + </sequence> + <attribute ref="tns:ReferencedAttribute"/> + </complexType> + + <element name="AttributeReference"> + <complexType> + <sequence> + <element name="AttributeReferenceElement" type="tns:AttributeReferenceType"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithDefaultValue.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithDefaultValue.xml new file mode 100644 index 0000000000..9552421e2d --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithDefaultValue.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:AttributeWithDefaultValueElement xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop AttributeWithDefaultValue.xsd "> + <AttributeWithDefaultValueElement AttributeWithDefaultValue="AttributeWithDefaultValueDefaultValue"/> +</tns:AttributeWithDefaultValueElement> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithDefaultValue.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithDefaultValue.xsd new file mode 100644 index 0000000000..c7b9655749 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithDefaultValue.xsd @@ -0,0 +1,38 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:sdo="commonj.sdo"> + + <complexType name="AttributeWithDefaultValueType"> + <sequence> + </sequence> + <attribute name="AttributeWithDefaultValue" type="string" default="AttributeWithDefaultValueDefaultValue"/> + </complexType> + + <element name="AttributeWithDefaultValueElement"> + <complexType> + <sequence> + <element name="AttributeWithDefaultValueElement" type="tns:AttributeWithDefaultValueType"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithFixedValue.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithFixedValue.xml new file mode 100644 index 0000000000..5e5e7fbd55 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithFixedValue.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:AttributeWithFixedValueType xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop AttributeWithFixedValue.xsd "> + <AttributeWithFixedValueElement AttributeWithFixedValue="AttributeWithFixedValueFixedValue"/> +</tns:AttributeWithFixedValueType> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithFixedValue.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithFixedValue.xsd new file mode 100644 index 0000000000..5c455c2ab5 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithFixedValue.xsd @@ -0,0 +1,38 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:sdo="commonj.sdo"> + + <complexType name="AttributeWithFixedValueType"> + <sequence> + </sequence> + <attribute name="AttributeWithFixedValue" type="string" fixed="AttributeWithFixedValueFixedValue"/> + </complexType> + + <element name="AttributeWithFixedValueType"> + <complexType> + <sequence> + <element name="AttributeWithFixedValueElement" type="tns:AttributeWithFixedValueType"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithSDOAliasName.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithSDOAliasName.xml new file mode 100644 index 0000000000..635e851632 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithSDOAliasName.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:AttributeWithSDOAliasName xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop AttributeWithSDOAliasName.xsd "> + <AttributeWithSDOAliasNameElement AttributeWithSDOAliasName="AttributeWithSDOAliasName"/> +</tns:AttributeWithSDOAliasName> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithSDOAliasName.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithSDOAliasName.xsd new file mode 100644 index 0000000000..004dab4fbb --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithSDOAliasName.xsd @@ -0,0 +1,38 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:sdo="commonj.sdo"> + + <complexType name="AttributeWithSDOAliasNameType"> + <sequence> + </sequence> + <attribute name="AttributeWithSDOAliasName" sdo:aliasName="AttributeWithSDOAliasNameSDOAliasName" type="string"/> + </complexType> + + <element name="AttributeWithSDOAliasName"> + <complexType> + <sequence> + <element name="AttributeWithSDOAliasNameElement" type="tns:AttributeWithSDOAliasNameType"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithSDODataType.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithSDODataType.xml new file mode 100644 index 0000000000..136092951b --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithSDODataType.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:AttributeWithSDODataType xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop AttributeWithSDODataType.xsd "> + <AttributeWithSDODataTypeTypeElement AttributeWithSDODataType="AttributeWithSDODataType"/> +</tns:AttributeWithSDODataType> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithSDODataType.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithSDODataType.xsd new file mode 100644 index 0000000000..796f08e1cf --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithSDODataType.xsd @@ -0,0 +1,38 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:sdo="commonj.sdo"> + + <complexType name="AttributeWithSDODataTypeType"> + <sequence> + </sequence> + <attribute name="AttributeWithSDODataType" sdo:dataType="string" type="string"/> + </complexType> + + <element name="AttributeWithSDODataType"> + <complexType> + <sequence> + <element name="AttributeWithSDODataTypeTypeElement" type="tns:AttributeWithSDODataTypeType"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithSDOName.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithSDOName.xml new file mode 100644 index 0000000000..927b94885c --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithSDOName.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:AttributeWithSDOName xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop AttributeWithSDOName.xsd "> + <AttributeWithSDONameElement AttributeWithSDOName="AttributeWithSDOName"/> +</tns:AttributeWithSDOName> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithSDOName.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithSDOName.xsd new file mode 100644 index 0000000000..93f83cd0a1 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithSDOName.xsd @@ -0,0 +1,38 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:sdo="commonj.sdo"> + + <complexType name="AttributeWithSDONameType"> + <sequence> + </sequence> + <attribute name="AttributeWithSDOName" sdo:name="AttributeWithSDONameSDOName" type="string"/> + </complexType> + + <element name="AttributeWithSDOName"> + <complexType> + <sequence> + <element name="AttributeWithSDONameElement" type="tns:AttributeWithSDONameType"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithSDOPropertySDOOppositePropertyType.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithSDOPropertySDOOppositePropertyType.xml new file mode 100644 index 0000000000..ea7db70595 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithSDOPropertySDOOppositePropertyType.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:AttributeWithSDOPropertySDOOppositePropertyType xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop AttributeWithSDOPropertySDOOppositePropertyType.xsd "> + <AttributeWithSDOPropertySDOOppositePropertyTypeElement AttributeWithSDOPropertySDOOppositePropertyType="idvalue0"/> +</tns:AttributeWithSDOPropertySDOOppositePropertyType> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithSDOPropertySDOOppositePropertyType.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithSDOPropertySDOOppositePropertyType.xsd new file mode 100644 index 0000000000..c64323e7e1 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithSDOPropertySDOOppositePropertyType.xsd @@ -0,0 +1,38 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:sdo="commonj.sdo"> + + <complexType name="AttributeWithSDOPropertySDOOppositePropertyTypeType"> + <sequence> + </sequence> + <attribute name="AttributeWithSDOPropertySDOOppositePropertyType" type="IDREF" sdo:propertyType="tns:SimpleTypeWithNameType" sdo:oppositeProperty="tns:AttributeWithSDOPropertyType"/> + </complexType> + + <element name="AttributeWithSDOPropertySDOOppositePropertyType"> + <complexType> + <sequence> + <element name="AttributeWithSDOPropertySDOOppositePropertyTypeElement" type="tns:AttributeWithSDOPropertySDOOppositePropertyTypeType"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithSDOPropertyType.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithSDOPropertyType.xml new file mode 100644 index 0000000000..85c7d85fd4 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithSDOPropertyType.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:AttributeWithSDOPropertyType xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop AttributeWithSDOPropertyType.xsd "> + <AttributeWithSDOPropertyTypeElement AttributeWithSDOPropertyType="idvalue0"/> +</tns:AttributeWithSDOPropertyType> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithSDOPropertyType.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithSDOPropertyType.xsd new file mode 100644 index 0000000000..543f276c50 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithSDOPropertyType.xsd @@ -0,0 +1,38 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:sdo="commonj.sdo"> + + <complexType name="AttributeWithSDOPropertyTypeType"> + <sequence> + </sequence> + <attribute name="AttributeWithSDOPropertyType" type="IDREF" sdo:propertyType="tns:SimpleTypeWithNameType"/> + </complexType> + + <element name="AttributeWithSDOPropertyType"> + <complexType> + <sequence> + <element name="AttributeWithSDOPropertyTypeElement" type="tns:AttributeWithSDOPropertyTypeType"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithSDOString.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithSDOString.xml new file mode 100644 index 0000000000..fcd281539b --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithSDOString.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:AttributeWithSDOString xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop AttributeWithSDOString.xsd "> + <AttributeWithSDOStringElement AttributeWithSDOString="AttributeWithSDOString"/> +</tns:AttributeWithSDOString> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithSDOString.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithSDOString.xsd new file mode 100644 index 0000000000..1610c2b861 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/AttributeWithSDOString.xsd @@ -0,0 +1,38 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:sdo="commonj.sdo"> + + <complexType name="AttributeWithSDOStringType"> + <sequence> + </sequence> + <attribute name="AttributeWithSDOString" type="string" sdo:string="true"/> + </complexType> + + <element name="AttributeWithSDOString"> + <complexType> + <sequence> + <element name="AttributeWithSDOStringElement" type="tns:AttributeWithSDOStringType"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInAnySimpleType.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInAnySimpleType.xml new file mode 100644 index 0000000000..36a0760a61 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInAnySimpleType.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:BuiltInAnySimpleType xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInAnySimpleType.xsd "> + <anySimpleType>anySimpleType</anySimpleType> +</tns:BuiltInAnySimpleType> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInAnySimpleType.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInAnySimpleType.xsd new file mode 100644 index 0000000000..999b72bb35 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInAnySimpleType.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuiltInAnySimpleType"> + <complexType> + <sequence> + <element name="anySimpleType" type="anySimpleType" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInAnyType.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInAnyType.xml new file mode 100644 index 0000000000..5849165fe0 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInAnyType.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:BuiltInAnyType xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInAnyType.xsd "> + <anyType xsi:type="anyType"/> +</tns:BuiltInAnyType> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInAnyType.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInAnyType.xsd new file mode 100644 index 0000000000..71dad561ca --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInAnyType.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuiltInAnyType"> + <complexType> + <sequence> + <element name="anyType" type="anyType" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInAnyURI.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInAnyURI.xml new file mode 100644 index 0000000000..8acf9376d7 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInAnyURI.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:BuiltInAnyURI xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInAnyURI.xsd "> + <anyURI>http://tempuri.org</anyURI> +</tns:BuiltInAnyURI> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInAnyURI.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInAnyURI.xsd new file mode 100644 index 0000000000..a49987c352 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInAnyURI.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuiltInAnyURI"> + <complexType> + <sequence> + <element name="anyURI" type="anyURI" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInBase64Binary.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInBase64Binary.xml new file mode 100644 index 0000000000..a35b6e174a --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInBase64Binary.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:BuildInBase64Binary xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInBase64Binary.xsd "> + <base64Binary>ABCDEF</base64Binary> +</tns:BuildInBase64Binary> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInBase64Binary.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInBase64Binary.xsd new file mode 100644 index 0000000000..e1995890f9 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInBase64Binary.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuildInBase64Binary"> + <complexType> + <sequence> + <element name="base64Binary" type="base64Binary" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInBoolean.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInBoolean.xml new file mode 100644 index 0000000000..91cfce51b8 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInBoolean.xml @@ -0,0 +1,27 @@ +<?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. +--> +<tns:BuiltInBoolean xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInBoolean.xsd "> + <boolean>true</boolean> + <boolean>false</boolean> + <boolean>1</boolean> + <boolean>0</boolean> +</tns:BuiltInBoolean> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInBoolean.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInBoolean.xsd new file mode 100644 index 0000000000..a2f86ba8c5 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInBoolean.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuiltInBoolean"> + <complexType> + <sequence> + <element name="boolean" type="boolean" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInByte.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInByte.xml new file mode 100644 index 0000000000..907474cd1b --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInByte.xml @@ -0,0 +1,25 @@ +<?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. +--> +<tns:BuiltInByte xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInByte.xsd "> + <byte>127</byte> + <byte>-127</byte> +</tns:BuiltInByte> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInByte.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInByte.xsd new file mode 100644 index 0000000000..a2f6bcfa77 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInByte.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuiltInByte"> + <complexType> + <sequence> + <element name="byte" type="byte" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInDate.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInDate.xml new file mode 100644 index 0000000000..c5820e1a2e --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInDate.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:BuiltInDate xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInDate.xsd "> + <date>2001-01-01</date> +</tns:BuiltInDate> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInDate.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInDate.xsd new file mode 100644 index 0000000000..f4d596bfe3 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInDate.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuiltInDate"> + <complexType> + <sequence> + <element name="date" type="date" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInDateTime.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInDateTime.xml new file mode 100644 index 0000000000..0debe2fec5 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInDateTime.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:BuiltInDateTime xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInDateTime.xsd "> + <dateTime>2001-12-31T12:00:00</dateTime> +</tns:BuiltInDateTime> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInDateTime.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInDateTime.xsd new file mode 100644 index 0000000000..b5bcfdcfd4 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInDateTime.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuiltInDateTime"> + <complexType> + <sequence> + <element name="dateTime" type="dateTime" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInDecimal.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInDecimal.xml new file mode 100644 index 0000000000..7f001254cc --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInDecimal.xml @@ -0,0 +1,23 @@ +<?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. +--> +<tns:BuiltInDecimal xmlns:tns="http://www.apache.org/tuscany/interop" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInDecimal.xsd "> + <decimal>-1.23456789</decimal> + <decimal>1.23456789</decimal> +</tns:BuiltInDecimal> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInDecimal.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInDecimal.xsd new file mode 100644 index 0000000000..8d4d106f59 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInDecimal.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuiltInDecimal"> + <complexType> + <sequence> + <element name="decimal" type="decimal" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInDouble.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInDouble.xml new file mode 100644 index 0000000000..f875b9f94d --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInDouble.xml @@ -0,0 +1,25 @@ +<?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. +--> +<tns:BuiltInDouble xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInDouble.xsd "> + <double>0.0</double> + <double>12.3E-4</double> +</tns:BuiltInDouble> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInDouble.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInDouble.xsd new file mode 100644 index 0000000000..4c8a39b06c --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInDouble.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuiltInDouble"> + <complexType> + <sequence> + <element name="double" type="double" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInDuration.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInDuration.xml new file mode 100644 index 0000000000..7d343d6dda --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInDuration.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:BuiltInDuration xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInDuration.xsd "> + <duration>P1D</duration> +</tns:BuiltInDuration> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInDuration.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInDuration.xsd new file mode 100644 index 0000000000..bb12bc04a9 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInDuration.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuiltInDuration"> + <complexType> + <sequence> + <element name="duration" type="duration" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInFloat.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInFloat.xml new file mode 100644 index 0000000000..7a81f3b0dd --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInFloat.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:BuiltInFloat xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInFloat.xsd "> + <float>0.0</float> +</tns:BuiltInFloat> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInFloat.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInFloat.xsd new file mode 100644 index 0000000000..f0e1c21233 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInFloat.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuiltInFloat"> + <complexType> + <sequence> + <element name="float" type="float" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInGDay.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInGDay.xml new file mode 100644 index 0000000000..d35568b3c9 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInGDay.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:BuiltInGDay xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInGDay.xsd "> + <gDay>---01</gDay> +</tns:BuiltInGDay> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInGDay.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInGDay.xsd new file mode 100644 index 0000000000..92bd9a4b66 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInGDay.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuiltInGDay"> + <complexType> + <sequence> + <element name="gDay" type="gDay" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInGMonth.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInGMonth.xml new file mode 100644 index 0000000000..52cdfa8c4e --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInGMonth.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:BuiltInGMonth xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInGMonth.xsd "> + <gMonth>--01--</gMonth> +</tns:BuiltInGMonth> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInGMonth.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInGMonth.xsd new file mode 100644 index 0000000000..78d001a585 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInGMonth.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuiltInGMonth"> + <complexType> + <sequence> + <element name="gMonth" type="gMonth" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInGMonthDay.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInGMonthDay.xml new file mode 100644 index 0000000000..2609a858f7 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInGMonthDay.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:BuiltInGMonthDay xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInGMonthDay.xsd "> + <gMonthDay>--01-01</gMonthDay> +</tns:BuiltInGMonthDay> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInGMonthDay.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInGMonthDay.xsd new file mode 100644 index 0000000000..38f6c55059 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInGMonthDay.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuiltInGMonthDay"> + <complexType> + <sequence> + <element name="gMonthDay" type="gMonthDay" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInGYear.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInGYear.xml new file mode 100644 index 0000000000..7868a47ca3 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInGYear.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:BuiltInGYear xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInGYear.xsd "> + <gYear>2001</gYear> +</tns:BuiltInGYear> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInGYear.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInGYear.xsd new file mode 100644 index 0000000000..0d65b124ff --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInGYear.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuiltInGYear"> + <complexType> + <sequence> + <element name="gYear" type="gYear" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInGYearMonth.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInGYearMonth.xml new file mode 100644 index 0000000000..3f5080d49f --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInGYearMonth.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:BuiltInGYearMonth xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInGYearMonth.xsd "> + <gYearMonth>2001-01</gYearMonth> +</tns:BuiltInGYearMonth> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInGYearMonth.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInGYearMonth.xsd new file mode 100644 index 0000000000..340555dc5f --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInGYearMonth.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuiltInGYearMonth"> + <complexType> + <sequence> + <element name="gYearMonth" type="gYearMonth" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInHexBinary.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInHexBinary.xml new file mode 100644 index 0000000000..0deb7af980 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInHexBinary.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:BuiltInHexBinary xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInHexBinary.xsd "> + <hexBinary>0F00</hexBinary> +</tns:BuiltInHexBinary> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInHexBinary.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInHexBinary.xsd new file mode 100644 index 0000000000..8059fe6da0 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInHexBinary.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuiltInHexBinary"> + <complexType> + <sequence> + <element name="hexBinary" type="hexBinary" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInID.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInID.xml new file mode 100644 index 0000000000..06c92ce19b --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInID.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:BuiltInID xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInID.xsd "> + <ID>idvalue0</ID> +</tns:BuiltInID> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInID.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInID.xsd new file mode 100644 index 0000000000..7b1f02d1d4 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInID.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuiltInID"> + <complexType> + <sequence> + <element name="ID" type="ID" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInIDREF.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInIDREF.xml new file mode 100644 index 0000000000..9bc0cefd0f --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInIDREF.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:BuiltInIDREF xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInIDREF.xsd "> + <IDREF>idvalue0</IDREF> +</tns:BuiltInIDREF> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInIDREF.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInIDREF.xsd new file mode 100644 index 0000000000..0c207983bc --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInIDREF.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuiltInIDREF"> + <complexType> + <sequence> + <element name="IDREF" type="IDREF" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInIDREFS.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInIDREFS.xml new file mode 100644 index 0000000000..f91b602f99 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInIDREFS.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:BuiltInIDREFS xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInIDREFS.xsd "> + <IDREFS>idvalue0</IDREFS> +</tns:BuiltInIDREFS> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInIDREFS.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInIDREFS.xsd new file mode 100644 index 0000000000..b99bf01b73 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInIDREFS.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuiltInIDREFS"> + <complexType> + <sequence> + <element name="IDREFS" type="IDREFS" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInInt.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInInt.xml new file mode 100644 index 0000000000..c99698e175 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInInt.xml @@ -0,0 +1,25 @@ +<?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. +--> +<tns:BuiltInInt xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInInt.xsd "> + <int>-2147483648</int> + <int>2147483647</int> +</tns:BuiltInInt> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInInt.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInInt.xsd new file mode 100644 index 0000000000..b5b9b0d1eb --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInInt.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuiltInInt"> + <complexType> + <sequence> + <element name="int" type="int" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInInteger.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInInteger.xml new file mode 100644 index 0000000000..80d22ce057 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInInteger.xml @@ -0,0 +1,25 @@ +<?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. +--> +<tns:BuiltInInteger xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInInteger.xsd "> + <integer>-2147483648</integer> + <integer>2147483647</integer> +</tns:BuiltInInteger> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInInteger.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInInteger.xsd new file mode 100644 index 0000000000..4902935db5 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInInteger.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuiltInInteger"> + <complexType> + <sequence> + <element name="integer" type="integer" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInLanguage.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInLanguage.xml new file mode 100644 index 0000000000..664bf824b4 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInLanguage.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:BuiltInLanguage xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInLanguage.xsd "> + <language>EN</language> +</tns:BuiltInLanguage> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInLanguage.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInLanguage.xsd new file mode 100644 index 0000000000..5d3658d224 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInLanguage.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuiltInLanguage"> + <complexType> + <sequence> + <element name="language" type="language" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInLong.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInLong.xml new file mode 100644 index 0000000000..c5861fa92a --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInLong.xml @@ -0,0 +1,25 @@ +<?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. +--> +<tns:BuiltInLong xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInLong.xsd "> + <long>-9223372036854775808</long> + <long>9223372036854775807</long> +</tns:BuiltInLong> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInLong.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInLong.xsd new file mode 100644 index 0000000000..0aa4710057 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInLong.xsd @@ -0,0 +1,33 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + +<notation name="interop50" public="commonj.sdo"/> + + <element name="BuiltInLong"> + <complexType> + <sequence> + <element name="long" type="long" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNCName.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNCName.xml new file mode 100644 index 0000000000..1f95950394 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNCName.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:BuiltInNCName xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInNCName.xsd "> + <NCName>NCName</NCName> +</tns:BuiltInNCName> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNCName.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNCName.xsd new file mode 100644 index 0000000000..6ee9c435db --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNCName.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuiltInNCName"> + <complexType> + <sequence> + <element name="NCName" type="NCName" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNMTOKEN.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNMTOKEN.xml new file mode 100644 index 0000000000..0297f1aeb4 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNMTOKEN.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:BuildInNMTOKEN xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInNMTOKEN.xsd "> + <NMTOKEN>NMTOKEN</NMTOKEN> +</tns:BuildInNMTOKEN> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNMTOKEN.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNMTOKEN.xsd new file mode 100644 index 0000000000..56d027bdbb --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNMTOKEN.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuildInNMTOKEN"> + <complexType> + <sequence> + <element name="NMTOKEN" type="NMTOKEN" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNMTOKENS.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNMTOKENS.xml new file mode 100644 index 0000000000..81ba1069bd --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNMTOKENS.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:BuiltInNMTOKENS xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInNMTOKENS.xsd "> + <NMTOKENS>NMTOKENS</NMTOKENS> +</tns:BuiltInNMTOKENS> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNMTOKENS.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNMTOKENS.xsd new file mode 100644 index 0000000000..866ab73024 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNMTOKENS.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuiltInNMTOKENS"> + <complexType> + <sequence> + <element name="NMTOKENS" type="NMTOKENS" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNOTATION.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNOTATION.xml new file mode 100644 index 0000000000..8bb3a08b94 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNOTATION.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:BuiltInNOTATION xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInNOTATION.xsd "> + <NOTATION>tns:BuiltInNotationNotation</NOTATION> +</tns:BuiltInNOTATION> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNOTATION.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNOTATION.xsd new file mode 100644 index 0000000000..c7c62f812b --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNOTATION.xsd @@ -0,0 +1,39 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <notation name="BuiltInNotationNotation" public="http://cwiki.apache.org/confluence/display/TUSCANY/Home"/> + + <element name="BuiltInNOTATION"> + <complexType> + <sequence> + <element name="NOTATION" maxOccurs="unbounded"> + <simpleType > + <restriction base="NOTATION"> + <enumeration value="tns:BuiltInNotationNotation"/> + </restriction> + </simpleType> + </element> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInName.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInName.xml new file mode 100644 index 0000000000..8235718c5e --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInName.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:BuiltInName xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInName.xsd "> + <Name>Name</Name> +</tns:BuiltInName> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInName.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInName.xsd new file mode 100644 index 0000000000..36caba2f16 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInName.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuiltInName"> + <complexType> + <sequence> + <element name="Name" type="Name" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNegativeInteger.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNegativeInteger.xml new file mode 100644 index 0000000000..599c428a44 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNegativeInteger.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:BuiltInNegativeInteger xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInNegativeInteger.xsd "> + <negativeInteger>-1</negativeInteger> +</tns:BuiltInNegativeInteger> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNegativeInteger.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNegativeInteger.xsd new file mode 100644 index 0000000000..389d5a99f0 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNegativeInteger.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuiltInNegativeInteger"> + <complexType> + <sequence> + <element name="negativeInteger" type="negativeInteger" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNonNegativeInteger.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNonNegativeInteger.xml new file mode 100644 index 0000000000..919c4a20ee --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNonNegativeInteger.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:BuiltInNonNegativeInteger xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInNonNegativeInteger.xsd "> + <nonNegativeInteger>0</nonNegativeInteger> +</tns:BuiltInNonNegativeInteger> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNonNegativeInteger.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNonNegativeInteger.xsd new file mode 100644 index 0000000000..59887078b5 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNonNegativeInteger.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuiltInNonNegativeInteger"> + <complexType> + <sequence> + <element name="nonNegativeInteger" type="nonNegativeInteger" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNonPositiveInteger.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNonPositiveInteger.xml new file mode 100644 index 0000000000..79011f26ab --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNonPositiveInteger.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:BuiltInNonPositiveInteger xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInNonPositiveInteger.xsd "> + <nonPositiveInteger>-1</nonPositiveInteger> +</tns:BuiltInNonPositiveInteger> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNonPositiveInteger.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNonPositiveInteger.xsd new file mode 100644 index 0000000000..5de7d64d7b --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNonPositiveInteger.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuiltInNonPositiveInteger"> + <complexType> + <sequence> + <element name="nonPositiveInteger" type="nonPositiveInteger" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNormalizedString.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNormalizedString.xml new file mode 100644 index 0000000000..c40be9e18b --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNormalizedString.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:BuiltInNormalizedString xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInNormalizedString.xsd "> + <normalizedString>normalizedString</normalizedString> +</tns:BuiltInNormalizedString> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNormalizedString.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNormalizedString.xsd new file mode 100644 index 0000000000..d4a78787b8 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInNormalizedString.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuiltInNormalizedString"> + <complexType> + <sequence> + <element name="normalizedString" type="normalizedString" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInPositiveInteger.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInPositiveInteger.xml new file mode 100644 index 0000000000..c30434de66 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInPositiveInteger.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:BuiltInPositiveInteger xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInPositiveInteger.xsd "> + <positiveInteger>1</positiveInteger> +</tns:BuiltInPositiveInteger> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInPositiveInteger.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInPositiveInteger.xsd new file mode 100644 index 0000000000..5381590cd1 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInPositiveInteger.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuiltInPositiveInteger"> + <complexType> + <sequence> + <element name="positiveInteger" type="positiveInteger" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInQName.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInQName.xml new file mode 100644 index 0000000000..4cd6ea7e72 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInQName.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:BuiltInQName xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInQName.xsd "> + <QName>QName</QName> +</tns:BuiltInQName> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInQName.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInQName.xsd new file mode 100644 index 0000000000..e8faf6225b --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInQName.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuiltInQName"> + <complexType> + <sequence> + <element name="QName" type="QName" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInShort.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInShort.xml new file mode 100644 index 0000000000..b4375467c4 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInShort.xml @@ -0,0 +1,25 @@ +<?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. +--> +<tns:BuiltInShort xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInShort.xsd "> + <short>-32768</short> + <short>32767</short> +</tns:BuiltInShort> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInShort.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInShort.xsd new file mode 100644 index 0000000000..a4f564d9b7 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInShort.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuiltInShort"> + <complexType> + <sequence> + <element name="short" type="short" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInString.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInString.xml new file mode 100644 index 0000000000..d30ab85530 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInString.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:BuiltInString xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInString.xsd "> + <string>string</string> +</tns:BuiltInString> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInString.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInString.xsd new file mode 100644 index 0000000000..8abb34b5a5 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInString.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuiltInString"> + <complexType> + <sequence> + <element name="string" type="string" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInTime.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInTime.xml new file mode 100644 index 0000000000..7fd9a061ae --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInTime.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:BuiltInTime xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInTime.xsd "> + <time>12:00:00</time> +</tns:BuiltInTime> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInTime.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInTime.xsd new file mode 100644 index 0000000000..1615976813 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInTime.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuiltInTime"> + <complexType> + <sequence> + <element name="time" type="time" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInToken.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInToken.xml new file mode 100644 index 0000000000..cd567ba528 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInToken.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:BuiltInToken xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInToken.xsd "> + <token>token</token> +</tns:BuiltInToken> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInToken.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInToken.xsd new file mode 100644 index 0000000000..0beaac571f --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInToken.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuiltInToken"> + <complexType> + <sequence> + <element name="token" type="token" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInUnsignedByte.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInUnsignedByte.xml new file mode 100644 index 0000000000..025362defb --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInUnsignedByte.xml @@ -0,0 +1,25 @@ +<?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. +--> +<tns:BuiltInUnsignedByte xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInUnsignedByte.xsd "> + <unsignedByte>0</unsignedByte> + <unsignedByte>255</unsignedByte> +</tns:BuiltInUnsignedByte> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInUnsignedByte.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInUnsignedByte.xsd new file mode 100644 index 0000000000..d6d951fe5d --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInUnsignedByte.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuiltInUnsignedByte"> + <complexType> + <sequence> + <element name="unsignedByte" type="unsignedByte" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInUnsignedInt.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInUnsignedInt.xml new file mode 100644 index 0000000000..5736a8c121 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInUnsignedInt.xml @@ -0,0 +1,25 @@ +<?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. +--> +<tns:BuiltInUnsignedInt xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInUnsignedInt.xsd "> + <unsignedInt>0</unsignedInt> + <unsignedInt>4294967295</unsignedInt> +</tns:BuiltInUnsignedInt> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInUnsignedInt.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInUnsignedInt.xsd new file mode 100644 index 0000000000..242be1d53b --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInUnsignedInt.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuiltInUnsignedInt"> + <complexType> + <sequence> + <element name="unsignedInt" type="unsignedInt" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInUnsignedLong.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInUnsignedLong.xml new file mode 100644 index 0000000000..d728115a77 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInUnsignedLong.xml @@ -0,0 +1,25 @@ +<?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. +--> +<tns:BuiltInUnsignedLong xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInUnsignedLong.xsd "> + <unsignedLong>0</unsignedLong> + <unsignedLong>18446744073709551615</unsignedLong> +</tns:BuiltInUnsignedLong> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInUnsignedLong.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInUnsignedLong.xsd new file mode 100644 index 0000000000..108e3a8619 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInUnsignedLong.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuiltInUnsignedLong"> + <complexType> + <sequence> + <element name="unsignedLong" type="unsignedLong" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInUnsignedShort.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInUnsignedShort.xml new file mode 100644 index 0000000000..d4ffae5e17 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInUnsignedShort.xml @@ -0,0 +1,25 @@ +<?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. +--> +<tns:BuiltInUnsignedShort xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop BuiltInUnsignedShort.xsd "> + <unsignedShort>0</unsignedShort> + <unsignedShort>65535</unsignedShort> +</tns:BuiltInUnsignedShort> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInUnsignedShort.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInUnsignedShort.xsd new file mode 100644 index 0000000000..5ee5e0229e --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/BuiltInUnsignedShort.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="BuiltInUnsignedShort"> + <complexType> + <sequence> + <element name="unsignedShort" type="unsignedShort" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeComplexContentRestrictingComplexType.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeComplexContentRestrictingComplexType.xml new file mode 100644 index 0000000000..3d5aed5aa8 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeComplexContentRestrictingComplexType.xml @@ -0,0 +1,26 @@ +<?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. +--> +<tns:ComplexTypeComplexContentRestrictingComplexType xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop ComplexTypeComplexContentRestrictingComplexType.xsd "> + <ComplexTypeComplexContentRestrictingComplexTypeElement> + <SimpleTypeWithName>SimpleTypeWithName</SimpleTypeWithName> + </ComplexTypeComplexContentRestrictingComplexTypeElement> +</tns:ComplexTypeComplexContentRestrictingComplexType> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeComplexContentRestrictingComplexType.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeComplexContentRestrictingComplexType.xsd new file mode 100644 index 0000000000..e7b80ab11c --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeComplexContentRestrictingComplexType.xsd @@ -0,0 +1,44 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <include schemaLocation="SimpleTypeWithName.xsd"/> + <include schemaLocation="ComplexTypeExtendingComplexType.xsd"/> + + <complexType name="ComplexTypeComplexContentRestrictingComplexTypeType"> + <complexContent> + <restriction base="tns:ComplexTypeExtendingComplexTypeType"> + <sequence> + <element name="SimpleTypeWithName" type="tns:SimpleTypeWithNameType"/> + </sequence> + </restriction> + </complexContent> + </complexType> + + <element name="ComplexTypeComplexContentRestrictingComplexType"> + <complexType> + <sequence> + <element name="ComplexTypeComplexContentRestrictingComplexTypeElement" type="tns:ComplexTypeComplexContentRestrictingComplexTypeType"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeExtendingComplexType.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeExtendingComplexType.xml new file mode 100644 index 0000000000..2b4fe5594e --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeExtendingComplexType.xml @@ -0,0 +1,27 @@ +<?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. +--> +<tns:ComplexTypeExtendingComplexType xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop ComplexTypeExtendingComplexType.xsd "> + <ComplexTypeExtendingComplexTypeElement> + <SimpleTypeWithName>SimpleTypeWithName</SimpleTypeWithName> + <SimpleTypeWithNameExtended>SimpleTypeWithNameExtended</SimpleTypeWithNameExtended> + </ComplexTypeExtendingComplexTypeElement> +</tns:ComplexTypeExtendingComplexType> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeExtendingComplexType.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeExtendingComplexType.xsd new file mode 100644 index 0000000000..fc4deb63c2 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeExtendingComplexType.xsd @@ -0,0 +1,43 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <include schemaLocation="ComplexTypeWithContent.xsd"/> + + <complexType name="ComplexTypeExtendingComplexTypeType"> + <complexContent> + <extension base="tns:ComplexTypeWithContentType"> + <sequence> + <element name="SimpleTypeWithNameExtended" type="string"/> + </sequence> + </extension> + </complexContent> + </complexType> + + <element name="ComplexTypeExtendingComplexType"> + <complexType> + <sequence> + <element name="ComplexTypeExtendingComplexTypeElement" type="tns:ComplexTypeExtendingComplexTypeType"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeExtendingSimpleType.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeExtendingSimpleType.xml new file mode 100644 index 0000000000..03570f41d9 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeExtendingSimpleType.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:ComplexTypeExtendingSimpeType xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop ComplexTypeExtendingSimpleType.xsd "> + <ComplexTypeExtendingSimpeTypeElement AddedByExtension="">ComplexTypeExtendingSimpeTypeElement</ComplexTypeExtendingSimpeTypeElement> +</tns:ComplexTypeExtendingSimpeType> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeExtendingSimpleType.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeExtendingSimpleType.xsd new file mode 100644 index 0000000000..c754502645 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeExtendingSimpleType.xsd @@ -0,0 +1,41 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <include schemaLocation="SimpleTypeWithName.xsd"/> + + <complexType name="ComplexTypeExtendingSimpleTypeType"> + <simpleContent> + <extension base="tns:SimpleTypeWithNameType"> + <attribute name="AddedByExtension" type="string"/> + </extension> + </simpleContent> + </complexType> + + <element name="ComplexTypeExtendingSimpeType"> + <complexType> + <sequence> + <element name="ComplexTypeExtendingSimpeTypeElement" type="tns:ComplexTypeExtendingSimpleTypeType"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeSimpleContentRestrictingComplexType.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeSimpleContentRestrictingComplexType.xml new file mode 100644 index 0000000000..4603793bfc --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeSimpleContentRestrictingComplexType.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:ComplexTypeSimpleContentRestrictingComplexType xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop ComplexTypeSimpleContentRestrictingComplexType.xsd "> + <ComplexTypeSimpleContentRestrictingComplexTypeElement AddedByExtension="NCName">ComplexTypeSimpleContentRestrictingComplexTypeElement</ComplexTypeSimpleContentRestrictingComplexTypeElement> +</tns:ComplexTypeSimpleContentRestrictingComplexType> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeSimpleContentRestrictingComplexType.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeSimpleContentRestrictingComplexType.xsd new file mode 100644 index 0000000000..4bcd2f8c46 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeSimpleContentRestrictingComplexType.xsd @@ -0,0 +1,41 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <include schemaLocation="ComplexTypeExtendingSimpleType.xsd"/> + + <complexType name="ComplexTypeSimpleContentRestrictingComplexTypeType"> + <simpleContent> + <restriction base="tns:ComplexTypeExtendingSimpleTypeType"> + <attribute name="AddedByExtension" type="NCName" /> + </restriction> + </simpleContent> + </complexType> + + <element name="ComplexTypeSimpleContentRestrictingComplexType"> + <complexType> + <sequence> + <element name="ComplexTypeSimpleContentRestrictingComplexTypeElement" type="tns:ComplexTypeSimpleContentRestrictingComplexTypeType"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithAbstract.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithAbstract.xml new file mode 100644 index 0000000000..a6861f803a --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithAbstract.xml @@ -0,0 +1,27 @@ +<?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. +--> +<tns:ComplexTypeWithAbstract xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop ComplexTypeWithAbstract.xsd "> + <ComplexTypeWithAbstractExtensionElement> + <BaseElement>BaseElement</BaseElement> + <ExtensionElement>ExtensionElement</ExtensionElement> + </ComplexTypeWithAbstractExtensionElement> +</tns:ComplexTypeWithAbstract> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithAbstract.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithAbstract.xsd new file mode 100644 index 0000000000..8bb251cab2 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithAbstract.xsd @@ -0,0 +1,47 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <complexType name="ComplexTypeWithAbstractType" abstract="true"> + <sequence> + <element name="BaseElement" type="string"/> + </sequence> + </complexType> + + <complexType name="ComplexTypeWithAbstractExtensionType"> + <complexContent> + <extension base="tns:ComplexTypeWithAbstractType"> + <sequence> + <element name="ExtensionElement" type="string"/> + </sequence> + </extension> + </complexContent> + </complexType> + + <element name="ComplexTypeWithAbstract"> + <complexType> + <sequence> + <element name="ComplexTypeWithAbstractExtensionElement" type="tns:ComplexTypeWithAbstractExtensionType"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithCDATA.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithCDATA.xml new file mode 100644 index 0000000000..467ec007ed --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithCDATA.xml @@ -0,0 +1,30 @@ +<?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. +--> +<tns:ComplexTypeWithCDATA xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop ComplexTypeWithCDATA.xsd "> + <ComplexTypeWithCDATAElement> + Some + <![CDATA[some data and some <MoreXML></MoreXML>]]> + Mixed + <SimpleTypeWithName>SimpleType<![CDATA[some data and some <MoreXML></MoreXML>]]>WithName</SimpleTypeWithName> + Content + </ComplexTypeWithCDATAElement> +</tns:ComplexTypeWithCDATA> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithCDATA.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithCDATA.xsd new file mode 100644 index 0000000000..8d00646678 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithCDATA.xsd @@ -0,0 +1,39 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <include schemaLocation="SimpleTypeWithName.xsd"/> + + <complexType name="ComplexTypeWithCDATAType" mixed="true"> + <sequence> + <element name="SimpleTypeWithName" type="tns:SimpleTypeWithNameType"/> + </sequence> + </complexType> + + <element name="ComplexTypeWithCDATA"> + <complexType> + <sequence> + <element name="ComplexTypeWithCDATAElement" type="tns:ComplexTypeWithCDATAType"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithContent.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithContent.xml new file mode 100644 index 0000000000..7deafd798a --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithContent.xml @@ -0,0 +1,26 @@ +<?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. +--> +<tns:ComplexTypeWithContent xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop ComplexTypeWithContent.xsd "> + <ComplexTypeWithContentElement> + <SimpleTypeWithName>SimpleTypeWithName</SimpleTypeWithName> + </ComplexTypeWithContentElement> +</tns:ComplexTypeWithContent> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithContent.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithContent.xsd new file mode 100644 index 0000000000..72ac75fee0 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithContent.xsd @@ -0,0 +1,37 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <complexType name="ComplexTypeWithContentType"> + <sequence> + <element name="SimpleTypeWithName" type="string"/> + </sequence> + </complexType> + + <element name="ComplexTypeWithContent"> + <complexType> + <sequence> + <element name="ComplexTypeWithContentElement" type="tns:ComplexTypeWithContentType"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithMixed.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithMixed.xml new file mode 100644 index 0000000000..f6208f81b3 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithMixed.xml @@ -0,0 +1,29 @@ +<?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. +--> +<tns:ComplexTypeWithMixed xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop ComplexTypeWithMixed.xsd "> + <ComplexTypeWithMixedElement> + Some + Mixed + <SimpleTypeWithName>SimpleTypeWithName</SimpleTypeWithName> + Content + </ComplexTypeWithMixedElement> +</tns:ComplexTypeWithMixed> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithMixed.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithMixed.xsd new file mode 100644 index 0000000000..1f26e13673 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithMixed.xsd @@ -0,0 +1,39 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <include schemaLocation="SimpleTypeWithName.xsd"/> + + <complexType name="ComplexTypeWithMixedType" mixed="true"> + <sequence> + <element name="SimpleTypeWithName" type="tns:SimpleTypeWithNameType"/> + </sequence> + </complexType> + + <element name="ComplexTypeWithMixed"> + <complexType> + <sequence> + <element name="ComplexTypeWithMixedElement" type="tns:ComplexTypeWithMixedType"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithOpenAttributes.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithOpenAttributes.xml new file mode 100644 index 0000000000..97de7b98eb --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithOpenAttributes.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:ComplexTypeWithOpenAttributes xmlns:tns="http://www.apache.org/tuscany/interop" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.apache.org/tuscany/interop ComplexTypeWithOpenAttributes.xsd "> + <ComplexTypeWithOpenAttributesElement SomeOpenAttribute="Some Open Attribute"> + <SimpleTypeWithName>SimpleTypeWithName</SimpleTypeWithName> + </ComplexTypeWithOpenAttributesElement> +</tns:ComplexTypeWithOpenAttributes> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithOpenAttributes.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithOpenAttributes.xsd new file mode 100644 index 0000000000..67716553d8 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithOpenAttributes.xsd @@ -0,0 +1,42 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <include schemaLocation="SimpleTypeWithName.xsd"/> + + <attribute name="SomeOpenAttribute" type="string"/> + + <complexType name="ComplexTypeWithOpenAttributesType"> + <sequence> + <element name="SimpleTypeWithName" type="tns:SimpleTypeWithNameType"/> + </sequence> + <anyAttribute namespace="##any"/> + </complexType> + + <element name="ComplexTypeWithOpenAttributes"> + <complexType> + <sequence> + <element name="ComplexTypeWithOpenAttributesElement" type="tns:ComplexTypeWithOpenAttributesType"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithOpenContent.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithOpenContent.xml new file mode 100644 index 0000000000..5941348921 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithOpenContent.xml @@ -0,0 +1,31 @@ +<?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. +--> +<tns:ComplexTypeWithOpenContent xmlns:tns="http://www.apache.org/tuscany/interop" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.apache.org/tuscany/interop ComplexTypeWithOpenContent.xsd "> + <ComplexTypeWithOpenContentElement> + <tns:ComplexTypeWithMixed> + <ComplexTypeWithMixedElement> + Some + Mixed + <SimpleTypeWithName>SimpleTypeWithName</SimpleTypeWithName> + Content + </ComplexTypeWithMixedElement> + </tns:ComplexTypeWithMixed> + </ComplexTypeWithOpenContentElement> +</tns:ComplexTypeWithOpenContent> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithOpenContent.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithOpenContent.xsd new file mode 100644 index 0000000000..24d5d09054 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithOpenContent.xsd @@ -0,0 +1,39 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <include schemaLocation="ComplexTypeWithMixed.xsd"/> + + <complexType name="ComplexTypeWithOpenContentType"> + <sequence> + <any namespace="##any"/> + </sequence> + </complexType> + + <element name="ComplexTypeWithOpenContent"> + <complexType> + <sequence> + <element name="ComplexTypeWithOpenContentElement" type="tns:ComplexTypeWithOpenContentType"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithOppositeProperty.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithOppositeProperty.xml new file mode 100644 index 0000000000..f684d06a4d --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithOppositeProperty.xml @@ -0,0 +1,30 @@ +<?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. +--> +<tns:ComplexTypeWithOppositeProperty xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop ComplexTypeWithOppositeProperty.xsd "> + <ComplexTypeReferencedDataObject DataObjectId="idvalue0"> + <SomeData>SomeData</SomeData> + </ComplexTypeReferencedDataObject> + <ComplexTypeReferencingDataObject AttributeWithSDOPropertyType="idvalue0" DataObjectId="idvalue1"> + <OppositeProperty>idvalue2</OppositeProperty> + </ComplexTypeReferencingDataObject> + <ComplexTypeWithOppositePropertyElement AttributeWithSDOPropertyType="idvalue1" DataObjectId="idvalue2"/> +</tns:ComplexTypeWithOppositeProperty> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithOppositeProperty.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithOppositeProperty.xsd new file mode 100644 index 0000000000..de4a8a666d --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithOppositeProperty.xsd @@ -0,0 +1,59 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:sdo="commonj.sdo"> + + <complexType name="ComplexTypeReferencedDataObjectType"> + <sequence> + <element name="SomeData" type="string"/> + </sequence> + <attribute name="DataObjectId" type="ID"/> + </complexType> + + <complexType name="ComplexTypeReferencingDataObjectType"> + <sequence> + <element name="OppositeProperty" type="IDREF"/> + </sequence> + <attribute name="AttributeWithSDOPropertyType" type="IDREF" + sdo:propertyType="tns:ComplexTypeReferencedDataObjectType"/> + <attribute name="DataObjectId" type="ID"/> + </complexType> + + <complexType name="ComplexTypeWithOppositePropertyType"> + <sequence> + </sequence> + <attribute name="AttributeWithSDOPropertyType" type="IDREF" + sdo:propertyType="tns:ComplexTypeReferencingDataObjectType" + sdo:oppositeProperty="OppositeProperty"/> + <attribute name="DataObjectId" type="ID"/> + </complexType> + + <element name="ComplexTypeWithOppositeProperty"> + <complexType> + <sequence> + <element name="ComplexTypeReferencedDataObject" type="tns:ComplexTypeReferencedDataObjectType"/> + <element name="ComplexTypeReferencingDataObject" type="tns:ComplexTypeReferencingDataObjectType"/> + <element name="ComplexTypeWithOppositePropertyElement" type="tns:ComplexTypeWithOppositePropertyType"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithSDOAliasName.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithSDOAliasName.xml new file mode 100644 index 0000000000..242908bd27 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithSDOAliasName.xml @@ -0,0 +1,26 @@ +<?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. +--> +<tns:ComplexTypeWithSDOAliasName xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop ComplexTypeWithSDOAliasName.xsd "> + <ComplexTypeWithSDOAliasNameElement> + <SimpleTypeWithName>SimpleTypeWithName</SimpleTypeWithName> + </ComplexTypeWithSDOAliasNameElement> +</tns:ComplexTypeWithSDOAliasName> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithSDOAliasName.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithSDOAliasName.xsd new file mode 100644 index 0000000000..4c00fbe295 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithSDOAliasName.xsd @@ -0,0 +1,38 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:sdo="commonj.sdo"> + + <complexType name="ComplexTypeWithSDOAliasNameType" sdo:aliasName="ComplexTypeWithSDOAliasNameTypeSDOAliasName"> + <sequence> + <element name="SimpleTypeWithName" type="string"/> + </sequence> + </complexType> + + <element name="ComplexTypeWithSDOAliasName"> + <complexType> + <sequence> + <element name="ComplexTypeWithSDOAliasNameElement" type="tns:ComplexTypeWithSDOAliasNameType"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithSDOName.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithSDOName.xml new file mode 100644 index 0000000000..925e8625d5 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithSDOName.xml @@ -0,0 +1,26 @@ +<?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. +--> +<tns:ComplexTypeWithSDOName xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop ComplexTypeWithSDOName.xsd "> + <ComplexTypeWithSDONameElement> + <SimpleTypeWithName>SimpleTypeWithName</SimpleTypeWithName> + </ComplexTypeWithSDONameElement> +</tns:ComplexTypeWithSDOName> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithSDOName.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithSDOName.xsd new file mode 100644 index 0000000000..b12bec040b --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithSDOName.xsd @@ -0,0 +1,38 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:sdo="commonj.sdo"> + + <complexType name="ComplexTypeWithSDONameType" sdo:name="ComplexTypeWithSDONameTypeSDOName"> + <sequence> + <element name="SimpleTypeWithName" type="string"/> + </sequence> + </complexType> + + <element name="ComplexTypeWithSDOName"> + <complexType> + <sequence> + <element name="ComplexTypeWithSDONameElement" type="tns:ComplexTypeWithSDONameType"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithSDOSequence.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithSDOSequence.xml new file mode 100644 index 0000000000..c73708ce46 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithSDOSequence.xml @@ -0,0 +1,26 @@ +<?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. +--> +<tns:ComplexTypeWithSDOSequence xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop ComplexTypeWithSDOSequence.xsd "> + <ComplexTypeWithSDOSequenceElement> + <SimpleTypeWithName>SimpleTypeWithName</SimpleTypeWithName> + </ComplexTypeWithSDOSequenceElement> +</tns:ComplexTypeWithSDOSequence> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithSDOSequence.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithSDOSequence.xsd new file mode 100644 index 0000000000..795c3ea7d9 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithSDOSequence.xsd @@ -0,0 +1,40 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:sdo="commonj.sdo"> + + <include schemaLocation="SimpleTypeWithName.xsd"/> + + <complexType name="ComplexTypeWithSDOSequenceType" sdo:sequence="true"> + <sequence> + <element name="SimpleTypeWithName" type="tns:SimpleTypeWithNameType" /> + </sequence> + </complexType> + + <element name="ComplexTypeWithSDOSequence"> + <complexType> + <sequence> + <element name="ComplexTypeWithSDOSequenceElement" type="tns:ComplexTypeWithSDOSequenceType"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithoutContent.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithoutContent.xml new file mode 100644 index 0000000000..3ebdc89ae0 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithoutContent.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:ComplexTypeWithoutContent xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop ComplexTypeWithoutContent.xsd "> + <ComplexTypeWithoutContentElement/> +</tns:ComplexTypeWithoutContent> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithoutContent.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithoutContent.xsd new file mode 100644 index 0000000000..21546d0f67 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithoutContent.xsd @@ -0,0 +1,33 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <complexType name="ComplexTypeWithoutContentType"/> + + <element name="ComplexTypeWithoutContent"> + <complexType> + <sequence> + <element name="ComplexTypeWithoutContentElement" type="tns:ComplexTypeWithoutContentType"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithoutName.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithoutName.xml new file mode 100644 index 0000000000..89657e42ca --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithoutName.xml @@ -0,0 +1,26 @@ +<?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. +--> +<tns:ComplexTypeWithoutName xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop ComplexTypeWithoutName.xsd "> + <tns:ComplexTypeWithoutNameType> + <SimpleTypeWithName>SimpleTypeWithName</SimpleTypeWithName> + </tns:ComplexTypeWithoutNameType> +</tns:ComplexTypeWithoutName> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithoutName.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithoutName.xsd new file mode 100644 index 0000000000..d01b4172e4 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ComplexTypeWithoutName.xsd @@ -0,0 +1,39 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="ComplexTypeWithoutNameType"> + <complexType> + <sequence> + <element name="SimpleTypeWithName" type="string"/> + </sequence> + </complexType> + </element> + + <element name="ComplexTypeWithoutName"> + <complexType> + <sequence> + <element ref="tns:ComplexTypeWithoutNameType"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/DefaultNamespace.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/DefaultNamespace.xml new file mode 100644 index 0000000000..82fd1eedaf --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/DefaultNamespace.xml @@ -0,0 +1,23 @@ +<?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. +--> +<DefaultNamespace xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:noNamespaceSchemaLocation="DefaultNamespace.xsd"> + <SimpleTypeWithName>SimpleTypeWithName</SimpleTypeWithName> +</DefaultNamespace> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/DefaultNamespace.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/DefaultNamespace.xsd new file mode 100644 index 0000000000..e1dcf06194 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/DefaultNamespace.xsd @@ -0,0 +1,32 @@ +<?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. +--> +<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" > + + <!-- top level test type --> + <xsd:complexType name="DefaultNamespaceComplexType"> + <xsd:sequence> + <!-- simple types --> + <xsd:element name="SimpleTypeWithName" type="xsd:string"/> + + </xsd:sequence> + </xsd:complexType> + + <xsd:element name="Default" type="DefaultNamespaceComplexType"/> +</xsd:schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementInAll.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementInAll.xml new file mode 100644 index 0000000000..ebf03c9d5d --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementInAll.xml @@ -0,0 +1,27 @@ +<?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. +--> +<tns:ElementInAll xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop ElementInAll.xsd "> + <ElementInAllElement> + <ElementInAllOne>ElementInAllOne</ElementInAllOne> + <ElementInAllTwo>ElementInAllTwo</ElementInAllTwo> + </ElementInAllElement> +</tns:ElementInAll> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementInAll.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementInAll.xsd new file mode 100644 index 0000000000..8b9ba5b4b8 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementInAll.xsd @@ -0,0 +1,40 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <complexType name="ComplexTypeElementInAllTestType"> + <all> + <element name="ElementInAllOne" type="string"/> + <element name="ElementInAllTwo" type="string"/> + </all> + </complexType> + + <element name="ElementInAll"> + <complexType> + <sequence> + <choice maxOccurs="3"> + <element name="ElementInAllElement" type="tns:ComplexTypeElementInAllTestType"/> + </choice> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementInChoice.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementInChoice.xml new file mode 100644 index 0000000000..26466b1b39 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementInChoice.xml @@ -0,0 +1,25 @@ +<?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. +--> +<tns:ElementInChoice xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop ElementInChoice.xsd "> + <Element1InChoice>Element1InChoice</Element1InChoice> + <Element2InChoice>Element2InChoice</Element2InChoice> +</tns:ElementInChoice> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementInChoice.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementInChoice.xsd new file mode 100644 index 0000000000..ff418c56ab --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementInChoice.xsd @@ -0,0 +1,48 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <group name="Group1"> + <sequence> + <element name="Element1InChoice" type="string" maxOccurs="2"/> + <element name="Element2InChoice" type="string" /> + </sequence> + </group> + + <group name="Group2"> + <sequence> + <element name="Element2InChoice" type="string" /> + <element name="Element1InChoice" type="string" maxOccurs="2"/> + </sequence> + </group> + + <element name="ElementInChoice"> + <complexType> + <sequence> + <choice maxOccurs="3"> + <group ref="tns:Group1"/> + <group ref="tns:Group2"/> + </choice> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSDOChangeSummaryType.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSDOChangeSummaryType.xml new file mode 100644 index 0000000000..27bb1ce9cc --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSDOChangeSummaryType.xml @@ -0,0 +1,29 @@ +<?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. +--> +<tns:ElementOfSDOChangeSummaryType xmlns:sdo="commonj.sdo" + xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop ElementOfSDOChangeSummaryType.xsd commonj.sdo datagraph.xsd "> + <ElementOfSDOChangeSummaryTypeElement> + <ChangeSummaryElement> + ChangeSummaryText + </ChangeSummaryElement> + </ElementOfSDOChangeSummaryTypeElement> +</tns:ElementOfSDOChangeSummaryType> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSDOChangeSummaryType.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSDOChangeSummaryType.xsd new file mode 100644 index 0000000000..2bf1df8c99 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSDOChangeSummaryType.xsd @@ -0,0 +1,34 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:sdo="commonj.sdo"> + + <import schemaLocation="datagraph.xsd" namespace="commonj.sdo"/> + + <element name="ElementOfSDOChangeSummaryType"> + <complexType> + <sequence> + <element name="ElementOfSDOChangeSummaryTypeElement" type="sdo:ChangeSummaryType"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSimpleTypeWithDefault.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSimpleTypeWithDefault.xml new file mode 100644 index 0000000000..9b5561ed43 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSimpleTypeWithDefault.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:ElementOfSimpleTypeWithDefault xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop ElementOfSimpleTypeWithDefault.xsd "> + <ElementOfSimpleTypeWithDefaultElement>ElementOfSimpleTypeWithDefaultDefault</ElementOfSimpleTypeWithDefaultElement> +</tns:ElementOfSimpleTypeWithDefault> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSimpleTypeWithDefault.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSimpleTypeWithDefault.xsd new file mode 100644 index 0000000000..0b4e7bdf45 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSimpleTypeWithDefault.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="ElementOfSimpleTypeWithDefault"> + <complexType> + <sequence> + <element name="ElementOfSimpleTypeWithDefaultElement" type="string" default="ElementOfSimpleTypeWithDefaultDefault" /> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSimpleTypeWithFixed.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSimpleTypeWithFixed.xml new file mode 100644 index 0000000000..f1b7cd264c --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSimpleTypeWithFixed.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:ElementOfSimpleTypeWithFixed xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop ElementOfSimpleTypeWithFixed.xsd "> + <ElementOfSimpleTypeWithFixedElement>ElementOfSimpleTypeWithFixedFixed</ElementOfSimpleTypeWithFixedElement> +</tns:ElementOfSimpleTypeWithFixed> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSimpleTypeWithFixed.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSimpleTypeWithFixed.xsd new file mode 100644 index 0000000000..a2c8456257 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSimpleTypeWithFixed.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="ElementOfSimpleTypeWithFixed"> + <complexType> + <sequence> + <element name="ElementOfSimpleTypeWithFixedElement" type="string" fixed="ElementOfSimpleTypeWithFixedFixed" /> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSimpleTypeWithSDODataType.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSimpleTypeWithSDODataType.xml new file mode 100644 index 0000000000..1f60b0423f --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSimpleTypeWithSDODataType.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:ElementOfSimpleTypeWithSDODataType xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop ElementOfSimpleTypeWithSDODataType.xsd "> + <ElementOfSimpleTypeWithSDODataTypeElement>ElementOfSimpleTypeWithSDODataTypeElement</ElementOfSimpleTypeWithSDODataTypeElement> +</tns:ElementOfSimpleTypeWithSDODataType> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSimpleTypeWithSDODataType.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSimpleTypeWithSDODataType.xsd new file mode 100644 index 0000000000..21e55ab8c1 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSimpleTypeWithSDODataType.xsd @@ -0,0 +1,33 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:sdo="commonj.sdo"> + + + <element name="ElementOfSimpleTypeWithSDODataType"> + <complexType> + <sequence> + <element name="ElementOfSimpleTypeWithSDODataTypeElement" type="string" sdo:dataType="string"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSimpleTypeWithSDOOppositePropertyType.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSimpleTypeWithSDOOppositePropertyType.xml new file mode 100644 index 0000000000..30762f4912 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSimpleTypeWithSDOOppositePropertyType.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:ElementOfSimpleTypeWithSDOOppositePropertyType xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop ElementOfSimpleTypeWithSDOOppositePropertyType.xsd "> + <ElementOfSimpleTypeWithSDOOppositePropertyTypeElement>idvalue0</ElementOfSimpleTypeWithSDOOppositePropertyTypeElement> +</tns:ElementOfSimpleTypeWithSDOOppositePropertyType> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSimpleTypeWithSDOOppositePropertyType.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSimpleTypeWithSDOOppositePropertyType.xsd new file mode 100644 index 0000000000..5bf35d0d70 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSimpleTypeWithSDOOppositePropertyType.xsd @@ -0,0 +1,33 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:sdo="commonj.sdo"> + + + <element name="ElementOfSimpleTypeWithSDOOppositePropertyType"> + <complexType> + <sequence> + <element name="ElementOfSimpleTypeWithSDOOppositePropertyTypeElement" type="IDREF" sdo:propertyType="tns:SimpleTypeWithNameType" sdo:oppositeProperty="tns:ElementOfSimpleTypeWithSDOPropertyType"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSimpleTypeWithSDOPropertyType.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSimpleTypeWithSDOPropertyType.xml new file mode 100644 index 0000000000..2dd01e4090 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSimpleTypeWithSDOPropertyType.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:ElementOfSimpleTypeWithSDOPropertyType xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop ElementOfSimpleTypeWithSDOPropertyType.xsd "> + <ElementOfSimpleTypeWithSDOPropertyTypeElement>idvalue0</ElementOfSimpleTypeWithSDOPropertyTypeElement> +</tns:ElementOfSimpleTypeWithSDOPropertyType> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSimpleTypeWithSDOPropertyType.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSimpleTypeWithSDOPropertyType.xsd new file mode 100644 index 0000000000..6920cd8dd0 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSimpleTypeWithSDOPropertyType.xsd @@ -0,0 +1,32 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:sdo="commonj.sdo"> + + <element name="ElementOfSimpleTypeWithSDOPropertyType"> + <complexType> + <sequence> + <element name="ElementOfSimpleTypeWithSDOPropertyTypeElement" type="IDREF" sdo:propertyType="tns:SimpleTypeWithNameType"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSimpleTypeWithSDOString.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSimpleTypeWithSDOString.xml new file mode 100644 index 0000000000..6a526bdc47 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSimpleTypeWithSDOString.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:ElementOfSimpleTypeWithSDOString xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop ElementOfSimpleTypeWithSDOString.xsd "> + <ElementOfSimpleTypeWithSDOStringElement>ElementOfSimpleTypeWithSDOStringElement</ElementOfSimpleTypeWithSDOStringElement> +</tns:ElementOfSimpleTypeWithSDOString> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSimpleTypeWithSDOString.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSimpleTypeWithSDOString.xsd new file mode 100644 index 0000000000..1117a95eb8 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementOfSimpleTypeWithSDOString.xsd @@ -0,0 +1,32 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:sdo="commonj.sdo"> + + <element name="ElementOfSimpleTypeWithSDOString"> + <complexType> + <sequence> + <element name="ElementOfSimpleTypeWithSDOStringElement" type="string" sdo:string="true"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementSubstitutionGroupBase.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementSubstitutionGroupBase.xml new file mode 100644 index 0000000000..ab91458bff --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementSubstitutionGroupBase.xml @@ -0,0 +1,40 @@ +<?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. +--> +<tns:ElementSubstitutionGroupBase xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop ElementSubstitutionGroupBase.xsd "> + <ElementSubstitutionGroupBaseElement> + <ElementInSubstitutionGroupBase> + ElementInSubstitutionGroupBase + </ElementInSubstitutionGroupBase> + </ElementSubstitutionGroupBaseElement> + + <ElementSubstitutionUnrelated>Some Data</ElementSubstitutionUnrelated> + + <ElementSubstitutionGroupExtends> + <ElementInSubstitutionGroupBase> + ElementInSubstitutionGroupBase + </ElementInSubstitutionGroupBase> + <ElementInSubstitutionGroupExtends> + ElementInSubstitutionGroupExtends + </ElementInSubstitutionGroupExtends> + </ElementSubstitutionGroupExtends> + +</tns:ElementSubstitutionGroupBase> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementSubstitutionGroupBase.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementSubstitutionGroupBase.xsd new file mode 100644 index 0000000000..3e015843b5 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementSubstitutionGroupBase.xsd @@ -0,0 +1,52 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <complexType name="ComplexTypeSubstitutionGroupBaseType"> + <sequence> + <element name="ElementInSubstitutionGroupBase" type="string"/> + </sequence> + </complexType> + <element name="ElementSubstitutionGroupBaseElement" type="tns:ComplexTypeSubstitutionGroupBaseType"/> + + <element name="ElementSubstitutionGroupUnrelated" type="string" substitutionGroup="tns:ElementSubstitutionGroupBaseElement"/> + + <complexType name="ComplexTypeSubstitutionGroupExtendsType"> + <complexContent> + <extension base="tns:ComplexTypeSubstitutionGroupBaseType"> + <sequence> + <element name="ElementInSubstitutionGroupExtends" type="string"/> + </sequence> + </extension> + </complexContent> + </complexType> + + <element name="ElementSubstitutionGroupExtends" type="tns:ComplexTypeSubstitutionGroupExtendsType" substitutionGroup="tns:ElementSubstitutionGroupBaseElement"/> + + <element name="ElementSubstitutionGroupBase"> + <complexType> + <sequence> + <element ref="tns:ElementSubstitutionGroupBaseElement" maxOccurs="unbounded" /> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementWithMaxOccurs.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementWithMaxOccurs.xml new file mode 100644 index 0000000000..b6d68fd08a --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementWithMaxOccurs.xml @@ -0,0 +1,25 @@ +<?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. +--> +<tns:ElementWithMaxOccurs xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop ElementWithMaxOccurs.xsd "> + <ElementWithMaxOccursElement>ElementWithMaxOccursElement1</ElementWithMaxOccursElement> + <ElementWithMaxOccursElement>ElementWithMaxOccursElement2</ElementWithMaxOccursElement> +</tns:ElementWithMaxOccurs> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementWithMaxOccurs.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementWithMaxOccurs.xsd new file mode 100644 index 0000000000..d4453a4477 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementWithMaxOccurs.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="ElementWithMaxOccurs"> + <complexType> + <sequence> + <element name="ElementWithMaxOccursElement" type="string" maxOccurs="2"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementWithNillable.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementWithNillable.xml new file mode 100644 index 0000000000..6de3adc937 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementWithNillable.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:ElementWithNillable xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop ElementWithNillable.xsd "> + <ElementWithNillableElement>ElementWithNillableElement</ElementWithNillableElement> +</tns:ElementWithNillable> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementWithNillable.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementWithNillable.xsd new file mode 100644 index 0000000000..786ab226da --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementWithNillable.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="ElementWithNillable"> + <complexType> + <sequence> + <element name="ElementWithNillableElement" type="string" nillable="true" maxOccurs="unbounded"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementWithSDOAliasName.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementWithSDOAliasName.xml new file mode 100644 index 0000000000..64093aa803 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementWithSDOAliasName.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:ElementWithSDOAliasName xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop ElementWithSDOAliasName.xsd "> + <ElementWithSDOAliasName>ElementWithSDOAliasName</ElementWithSDOAliasName> +</tns:ElementWithSDOAliasName> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementWithSDOAliasName.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementWithSDOAliasName.xsd new file mode 100644 index 0000000000..01f4c2b1ef --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementWithSDOAliasName.xsd @@ -0,0 +1,32 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:sdo="commonj.sdo"> + + <element name="ElementWithSDOAliasName"> + <complexType> + <sequence> + <element name="ElementWithSDOAliasName" sdo:aliasName="ElementWithSDOAliasNameSDOAliasName" type="string"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementWithSDOName.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementWithSDOName.xml new file mode 100644 index 0000000000..774646f682 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementWithSDOName.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:ElementWithSDOName xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop ElementWithSDOName.xsd "> + <ElementWithSDONameElement>ElementWithSDONameElement</ElementWithSDONameElement> +</tns:ElementWithSDOName> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementWithSDOName.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementWithSDOName.xsd new file mode 100644 index 0000000000..34da37564c --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ElementWithSDOName.xsd @@ -0,0 +1,32 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:sdo="commonj.sdo"> + + <element name="ElementWithSDOName"> + <complexType> + <sequence> + <element name="ElementWithSDONameElement" sdo:name="ElementWithSDONameSDOName" type="string"/> + </sequence> + </complexType> + </element> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/GlobalElementComplexType.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/GlobalElementComplexType.xml new file mode 100644 index 0000000000..a1fb3aa803 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/GlobalElementComplexType.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:GlobalElementComplexType xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop GlobalElementComplexType.xsd"> + <SimpleTypeWithName>SimpleTypeWithName</SimpleTypeWithName> +</tns:GlobalElementComplexType> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/GlobalElementComplexType.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/GlobalElementComplexType.xsd new file mode 100644 index 0000000000..8eb7a4fce4 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/GlobalElementComplexType.xsd @@ -0,0 +1,31 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <complexType name="GlobalElementComplexTypeComplexType"> + <sequence> + <element name="SimpleTypeWithName" type="string"/> + </sequence> + </complexType> + + <element name="GlobalElementComplexType" type="tns:GlobalElementComplexTypeComplexType"/> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/GlobalElementSimpleType.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/GlobalElementSimpleType.xml new file mode 100644 index 0000000000..f68eb1939d --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/GlobalElementSimpleType.xml @@ -0,0 +1,24 @@ +<?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. +--> +<GlobalElementSimpleType xmlns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop GlobalElementSimpleType.xsd"> + GlobalElementSimpleType +</GlobalElementSimpleType> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/GlobalElementSimpleType.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/GlobalElementSimpleType.xsd new file mode 100644 index 0000000000..b9f77e6658 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/GlobalElementSimpleType.xsd @@ -0,0 +1,26 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + + <element name="GlobalElementSimpleType" type="string"/> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/Import.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/Import.xml new file mode 100644 index 0000000000..fd28850050 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/Import.xml @@ -0,0 +1,30 @@ +<?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. +--> +<tns:Import xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:imp="http://www.apache.org/tuscany/interop/import" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop Import.xsd"> + + <SimpleTypeWithName>SimpleTypeWithName</SimpleTypeWithName> + <Imported> + <AnElement>SomeString</AnElement> + <AnotherElement>SomeString</AnotherElement> + </Imported> +</tns:Import> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/Import.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/Import.xsd new file mode 100644 index 0000000000..eae93fd44a --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/Import.xsd @@ -0,0 +1,40 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:imp="http://www.apache.org/tuscany/interop/import" + xmlns:sdo="commonj.sdo" + xmlns:sdoJava="commonj.sdo"> + + <include schemaLocation="SimpleTypeWithName.xsd"/> + <import schemaLocation="ImportedSchema.xsd" + namespace="http://www.apache.org/tuscany/interop/import"/> + + <!-- top level test type --> + <complexType name="ImportComplexType"> + <sequence> + <element name="SimpleTypeWithName" type="tns:SimpleTypeWithNameType"/> + <element name="Imported" type="imp:ImportedComplexType"/> + </sequence> + </complexType> + + <element name="Import" type="tns:ImportComplexType"/> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ImportedSchema.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ImportedSchema.xsd new file mode 100644 index 0000000000..a7e568decf --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/ImportedSchema.xsd @@ -0,0 +1,33 @@ +<?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. +--> + +<xsd:schema + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:imp="http://www.apache.org/tuscany/interop/import" + targetNamespace="http://www.apache.org/tuscany/interop/import"> + + <xsd:complexType name="ImportedComplexType"> + <xsd:sequence> + <xsd:element name="AnElement" type="xsd:string"/> + <xsd:element name="AnotherElement" type="xsd:string"/> + </xsd:sequence> + </xsd:complexType> + +</xsd:schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/Include.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/Include.xml new file mode 100644 index 0000000000..d4b9e24fa6 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/Include.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:Include xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop Include.xsd"> + <SimpleTypeWithName>SimpleTypeWithName</SimpleTypeWithName> +</tns:Include> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/Include.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/Include.xsd new file mode 100644 index 0000000000..9087ebc74d --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/Include.xsd @@ -0,0 +1,36 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <include schemaLocation="SimpleTypeWithName.xsd"/> + + <!-- top level test type --> + <complexType name="IncludeComplexType"> + <sequence> + <!-- simple types --> + <element name="SimpleTypeWithName" type="tns:SimpleTypeWithNameType"/> + + </sequence> + </complexType> + + <element name="IncludeElement" type="tns:IncludeComplexType"/> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/Interop.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/Interop.xsd new file mode 100644 index 0000000000..8138413b9a --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/Interop.xsd @@ -0,0 +1,133 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> +<!-- + <include schemaLocation="Annotation.xsd"/> + <include schemaLocation="Attribute.xsd"/> + <include schemaLocation="AttributeReference.xsd"/> + <include schemaLocation="AttributeWithDefaultValue.xsd"/> + <include schemaLocation="AttributeWithFixedValue.xsd"/> + <include schemaLocation="AttributeWithSDOAliasName.xsd"/> + <include schemaLocation="AttributeWithSDODataType.xsd"/> + <include schemaLocation="AttributeWithSDOName.xsd"/> + <include schemaLocation="AttributeWithSDOPropertySDOOppositePropertyType.xsd"/> + <include schemaLocation="AttributeWithSDOPropertyType.xsd"/> + <include schemaLocation="AttributeWithSDOString.xsd"/> + <include schemaLocation="BuiltInAnySimpleType.xsd"/> + <include schemaLocation="BuiltInAnyType.xsd"/> + <include schemaLocation="BuiltInAnyURI.xsd"/> + <include schemaLocation="BuiltInBase64Binary.xsd"/> + <include schemaLocation="BuiltInBoolean.xsd"/> + <include schemaLocation="BuiltInByte.xsd"/> + <include schemaLocation="BuiltInDate.xsd"/> + <include schemaLocation="BuiltInDateTime.xsd"/> + <include schemaLocation="BuiltInDecimal.xsd"/> + <include schemaLocation="BuiltInDouble.xsd"/> + <include schemaLocation="BuiltInDuration.xsd"/> + <include schemaLocation="BuiltInFloat.xsd"/> + <include schemaLocation="BuiltInGDay.xsd"/> + <include schemaLocation="BuiltInGMonth.xsd"/> + <include schemaLocation="BuiltInGMonthDay.xsd"/> + <include schemaLocation="BuiltInGYear.xsd"/> + <include schemaLocation="BuiltInGYearMonth.xsd"/> + <include schemaLocation="BuiltInHexBinary.xsd"/> + <include schemaLocation="BuiltInID.xsd"/> + <include schemaLocation="BuiltInIDREF.xsd"/> + <include schemaLocation="BuiltInIDREFS.xsd"/> + <include schemaLocation="BuiltInInt.xsd"/> + <include schemaLocation="BuiltInInteger.xsd"/> + <include schemaLocation="BuiltInLanguage.xsd"/> + <include schemaLocation="BuiltInLong.xsd"/> + <include schemaLocation="BuiltInNCName.xsd"/> + <include schemaLocation="BuiltInNMTOKEN.xsd"/> + <include schemaLocation="BuiltInNMTOKENS.xsd"/> + <include schemaLocation="BuiltInNOTATION.xsd"/> + <include schemaLocation="BuiltInName.xsd"/> + <include schemaLocation="BuiltInNegativeInteger.xsd"/> + <include schemaLocation="BuiltInNonNegativeInteger.xsd"/> + <include schemaLocation="BuiltInNonPositiveInteger.xsd"/> + <include schemaLocation="BuiltInNormalizedString.xsd"/> + <include schemaLocation="BuiltInPositiveInteger.xsd"/> + <include schemaLocation="BuiltInQName.xsd"/> + <include schemaLocation="BuiltInShort.xsd"/> + <include schemaLocation="BuiltInString.xsd"/> + <include schemaLocation="BuiltInTime.xsd"/> + <include schemaLocation="BuiltInToken.xsd"/> + <include schemaLocation="BuiltInUnsignedByte.xsd"/> + <include schemaLocation="BuiltInUnsignedInt.xsd"/> + <include schemaLocation="BuiltInUnsignedLong.xsd"/> + <include schemaLocation="BuiltInUnsignedShort.xsd"/> + <include schemaLocation="ComplexTypeComplexContentRestrictingComplexType.xsd"/> + <include schemaLocation="ComplexTypeExtendingComplexType.xsd"/> + <include schemaLocation="ComplexTypeExtendingSimpleType.xsd"/> + <include schemaLocation="ComplexTypeSimpleContentRestrictingComplexType.xsd"/> + <include schemaLocation="ComplexTypeWithAbstract.xsd"/> + <include schemaLocation="ComplexTypeWithCDATA.xsd"/> +--> + <include schemaLocation="ComplexTypeWithContent.xsd"/> +<!-- + <include schemaLocation="ComplexTypeWithMixed.xsd"/> + <include schemaLocation="ComplexTypeWithOpenAttributes.xsd"/> + <include schemaLocation="ComplexTypeWithOpenContent.xsd"/> + <include schemaLocation="ComplexTypeWithOppositeProperty.xsd"/> + <include schemaLocation="ComplexTypeWithSDOAliasName.xsd"/> + <include schemaLocation="ComplexTypeWithSDOName.xsd"/> + <include schemaLocation="ComplexTypeWithSDOSequence.xsd"/> + <include schemaLocation="ComplexTypeWithoutContent.xsd"/> + <include schemaLocation="ComplexTypeWithoutName.xsd"/> + <include schemaLocation="DefaultNamespace.xsd"/> + <include schemaLocation="ElementInAll.xsd"/> + <include schemaLocation="ElementInChoice.xsd"/> + <include schemaLocation="ElementOfSDOChangeSummaryType.xsd"/> + <include schemaLocation="ElementOfSimpleTypeWithDefault.xsd"/> + <include schemaLocation="ElementOfSimpleTypeWithFixed.xsd"/> + <include schemaLocation="ElementOfSimpleTypeWithSDODataType.xsd"/> + <include schemaLocation="ElementOfSimpleTypeWithSDOOppositePropertyType.xsd"/> + <include schemaLocation="ElementOfSimpleTypeWithSDOPropertyType.xsd"/> + <include schemaLocation="ElementOfSimpleTypeWithSDOString.xsd"/> + <include schemaLocation="ElementSubstitutionGroupBase.xsd"/> + <include schemaLocation="ElementWithMaxOccurs.xsd"/> + <include schemaLocation="ElementWithNillable.xsd"/> + <include schemaLocation="ElementWithSDOAliasName.xsd"/> + <include schemaLocation="ElementWithSDOName.xsd"/> + <include schemaLocation="GlobalElementComplexType.xsd"/> + <include schemaLocation="GlobalElementSimpleType.xsd"/> + <include schemaLocation="Import.xsd"/> + <include schemaLocation="ImportedSchema.xsd"/> + --> + <include schemaLocation="Include.xsd"/> +<!-- + <include schemaLocation="Notation.xsd"/> + <include schemaLocation="SDOJavaPackage.xsd"/> + <include schemaLocation="SimpleTypeWithAbstract.xsd"/> + <include schemaLocation="SimpleTypeWithExtendedInstanceClass.xsd"/> + <include schemaLocation="SimpleTypeWithInstanceClass.xsd"/> + <include schemaLocation="SimpleTypeWithList.xsd"/> +--> + <include schemaLocation="SimpleTypeWithName.xsd"/> +<!-- + <include schemaLocation="SimpleTypeWithSDOName.xsd"/> + <include schemaLocation="SimpleTypeWithUnion.xsd"/> + <include schemaLocation="SimpleTypeWithoutName.xsd"/> + <include schemaLocation="TargetNamespace.xsd"/> +--> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/Notation.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/Notation.xml new file mode 100644 index 0000000000..b75ac6500a --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/Notation.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:Notation xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop Notation.xsd "> +tns:Tuscany +</tns:Notation> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/Notation.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/Notation.xsd new file mode 100644 index 0000000000..6ad019cb81 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/Notation.xsd @@ -0,0 +1,35 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <notation name="Tuscany" public="http://cwiki.apache.org/TUSCANY/"/> + <notation name="PHP_SCA_SDO" public="http://pecl.php.net/package/sca_sdo/"/> + + <simpleType name="NotationSimpleType"> + <restriction base="NOTATION"> + <enumeration value="tns:Tuscany"/> + <enumeration value="tns:PHP_SCA_SDO"/> + </restriction> + </simpleType> + + <element name="Notation" type="tns:NotationSimpleType"/> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/Person.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/Person.xsd new file mode 100644 index 0000000000..5f5021b15e --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/Person.xsd @@ -0,0 +1,30 @@ +<?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. +--> +<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://apache.org/tuscany/sca/itest/databinding/types"> + + <xsd:complexType name="PersonType"> + <xsd:sequence> + <xsd:element name="firstName" type="xsd:string" /> + <xsd:element name="lastName" type="xsd:string" /> + <xsd:element name="greeting" type="xsd:string" /> + </xsd:sequence> + </xsd:complexType> +</xsd:schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SDOJavaPackage.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SDOJavaPackage.xml new file mode 100644 index 0000000000..6c5ad88ff4 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SDOJavaPackage.xml @@ -0,0 +1,25 @@ +<?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. +--> +<tns:SDOJavaPackage xmlns:p="commonj.sdo" + xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop interop05.xsd"> + <SimpleTypeWithName>SimpleTypeWithName</SimpleTypeWithName> +</tns:SDOJavaPackage> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SDOJavaPackage.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SDOJavaPackage.xsd new file mode 100644 index 0000000000..6b7e39b334 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SDOJavaPackage.xsd @@ -0,0 +1,39 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:sdoJava="commonj.sdo/java" + sdoJava:package="org.apache.tuscany"> + + <!-- should be a reference to the real schema wherever that is going to be --> + <import schemaLocation="sdoJava.xsd" namespace="commonj.sdo/java"/> + + <!-- top level test type --> + <complexType name="SDOJavaPackageComplexType"> + <sequence> + <!-- simple types --> + <element name="SimpleTypeWithName" type="string"/> + + </sequence> + </complexType> + + <element name="SDOJavaPackage" type="tns:SDOJavaPackageComplexType"/> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithAbstract.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithAbstract.xml new file mode 100644 index 0000000000..f9d4a24a49 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithAbstract.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:SimpleTypeWithAbstract xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop SimpleTypeWithAbstract.xsd "> + <SimpleTypeWithAbstractExtensionElement>SimpleTypeWithAbstractExtensionElement</SimpleTypeWithAbstractExtensionElement> +</tns:SimpleTypeWithAbstract> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithAbstract.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithAbstract.xsd new file mode 100644 index 0000000000..4bf0f0f4af --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithAbstract.xsd @@ -0,0 +1,40 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <simpleType name="SimpleTypeWithAbstractType" abstract="true"> + <restriction base="string"/> + </simpleType> + + <simpleType name="SimpleTypeWithAbstractExtensionType"> + <restriction base="tns:SimpleTypeWithAbstractType"/> + </simpleType> + + + <complexType name="SimpleTypeWithAbstractComplexType"> + <sequence> + <element name="SimpleTypeWithAbstractExtensionElement" type="tns:SimpleTypeWithAbstractExtensionType"/> + </sequence> + </complexType> + + <element name="SimpleTypeWithAbstract" type="SimpleTypeWithAbstractComplexType"> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithExtendedInstanceClass.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithExtendedInstanceClass.xml new file mode 100644 index 0000000000..410df4b7e4 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithExtendedInstanceClass.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:SimpleTypeWithExtendedInstanceClass xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop SimpleTypeWithExtendedInstanceClass.xsd "> + <SimpleTypeWithExtendedInstanceClassElement>SimpleTypeWithExtendedInstanceClassElement</SimpleTypeWithExtendedInstanceClassElement> +</tns:SimpleTypeWithExtendedInstanceClass> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithExtendedInstanceClass.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithExtendedInstanceClass.xsd new file mode 100644 index 0000000000..36629e8295 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithExtendedInstanceClass.xsd @@ -0,0 +1,36 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:sdoJava="commonj.sdo"> + + <simpleType name="SimpleTypeWithExtendedInstanceClassType" sdoJava:extendedInstanceClass="String"> + <restriction base="string"/> + </simpleType> + + <complexType name="SimpleTypeWithExtendedInstanceClassComplexType"> + <sequence> + <element name="SimpleTypeWithExtendedInstanceClassElement" type="tns:SimpleTypeWithExtendedInstanceClassType"/> + </sequence> + </complexType> + + <element name="SimpleTypeWithExtendedInstanceClass" type="SimpleTypeWithExtendedInstanceClassComplexType"> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithInstanceClass.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithInstanceClass.xml new file mode 100644 index 0000000000..7b74867c03 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithInstanceClass.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:SimpleTypeWithInstanceClass xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop SimpleTypeWithInstanceClass.xsd "> + <SimpleTypeWithInstanceClassElement>SimpleTypeWithInstanceClassElement</SimpleTypeWithInstanceClassElement> +</tns:SimpleTypeWithInstanceClass> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithInstanceClass.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithInstanceClass.xsd new file mode 100644 index 0000000000..7a08de84be --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithInstanceClass.xsd @@ -0,0 +1,37 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:sdoJava="commonj.sdo"> + + <simpleType name="SimpleTypeWithInstanceClassType" sdoJava:instanceClass="String"> + <restriction base="string"/> + </simpleType> + + + <complexType name="SimpleTypeWithInstanceClassComplexType"> + <sequence> + <element name="SimpleTypeWithInstanceClassElement" type="tns:SimpleTypeWithInstanceClassType"/> + </sequence> + </complexType> + + <element name="SimpleTypeWithInstanceClass" type="SimpleTypeWithInstanceClassComplexType"> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithList.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithList.xml new file mode 100644 index 0000000000..708d526f44 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithList.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:SimpleTypeWithList xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop SimpleTypeWithList.xsd "> + <SimpleTypeWithListElement>listmember1 listmember2</SimpleTypeWithListElement> +</tns:SimpleTypeWithList> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithList.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithList.xsd new file mode 100644 index 0000000000..681cf7d5af --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithList.xsd @@ -0,0 +1,37 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:sdoJava="commonj.sdo"> + + <simpleType name="SimpleTypeWithListType"> + <list itemType="string"/> + </simpleType> + + + <complexType name="SimpleTypeWithListComplexType"> + <sequence> + <element name="SimpleTypeWithListElement" type="tns:SimpleTypeWithListType"/> + </sequence> + </complexType> + + <element name="SimpleTypeWithList" type="SimpleTypeWithListComplexType"> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithName.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithName.xml new file mode 100644 index 0000000000..e404ac86b7 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithName.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:SimpleTypeWithName xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop SimpleTypeWithName.xsd "> + <SimpleTypeWithNameElement>SimpleTypeWithNameElement</SimpleTypeWithNameElement> +</tns:SimpleTypeWithName> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithName.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithName.xsd new file mode 100644 index 0000000000..af0431f048 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithName.xsd @@ -0,0 +1,36 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <simpleType name="SimpleTypeWithNameType"> + <restriction base="string"/> + </simpleType> + + <complexType name="SimpleTypeWithNameComplexType"> + <sequence> + <element name="SimpleTypeWithNameElement" type="tns:SimpleTypeWithNameType"/> + </sequence> + </complexType> + + <element name="SimpleTypeWithName" type="tns:SimpleTypeWithNameComplexType"/> + +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithSDOName.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithSDOName.xml new file mode 100644 index 0000000000..c86a0f6bcb --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithSDOName.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:SimpleTypeWithSDOName xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop SimpleTypeWithSDOName.xsd "> + <SimpleTypeWithSDONameElement>SimpleTypeWithSDONameElement</SimpleTypeWithSDONameElement> +</tns:SimpleTypeWithSDOName> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithSDOName.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithSDOName.xsd new file mode 100644 index 0000000000..889b819e3c --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithSDOName.xsd @@ -0,0 +1,37 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:sdo="commonj.sdo"> + + <simpleType name="SimpleTypeWithSDONameType" sdo:name="SimpleTypeWithSDONameTypeSDOName"> + <restriction base="string"/> + </simpleType> + + + <complexType name="SimpleTypeWithSDONameComplexType"> + <sequence> + <element name="SimpleTypeWithSDONameElement" type="tns:SimpleTypeWithSDONameType"/> + </sequence> + </complexType> + + <element name="SimpleTypeWithSDOName" type="SimpleTypeWithSDONameComplexType"> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithUnion.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithUnion.xml new file mode 100644 index 0000000000..399b0d8175 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithUnion.xml @@ -0,0 +1,25 @@ +<?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. +--> +<tns:SimpleTypeWithUnion xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop SimpleTypeWithUnion.xsd "> + <SimpleTypeWithUnionElement>EN</SimpleTypeWithUnionElement> + <SimpleTypeWithUnionElement>01:02:03</SimpleTypeWithUnionElement> +</tns:SimpleTypeWithUnion> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithUnion.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithUnion.xsd new file mode 100644 index 0000000000..fee04b9f24 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithUnion.xsd @@ -0,0 +1,46 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:sdoJava="commonj.sdo"> + + <simpleType name="SimpleTypeWithUnionType"> + <union> + <simpleType> + <restriction base="language"> + </restriction> + </simpleType> + <simpleType> + <restriction base="time"> + </restriction> + </simpleType> + </union> + </simpleType> + + + <complexType name="SimpleTypeWithUnionComplexType"> + <sequence> + <element name="SimpleTypeWithUnionElement" type="tns:SimpleTypeWithUnionType" minOccurs="2" maxOccurs="2"/> + </sequence> + </complexType> + + <element name="SimpleTypeWithUnion" type="SimpleTypeWithUnionComplexType"> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithoutName.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithoutName.xml new file mode 100644 index 0000000000..bc8cf35368 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithoutName.xml @@ -0,0 +1,26 @@ +<?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. +--> + <SimpleTypeWithoutName xmlns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop SimpleTypeWithoutName.xsd"> + <SimpleTypeWithoutNameElement> + SimpleTypeWithoutName + </SimpleTypeWithoutNameElement> +</SimpleTypeWithoutName> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithoutName.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithoutName.xsd new file mode 100644 index 0000000000..536aa822de --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/SimpleTypeWithoutName.xsd @@ -0,0 +1,38 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <element name="SimpleTypeWithoutNameElement"> + <simpleType> + <restriction base="string"/> + </simpleType> + </element> + + + <complexType name="SimpleTypeWithoutNameComplexType"> + <sequence> + <element ref="tns:SimpleTypeWithoutNameElement"/> + </sequence> + </complexType> + + <element name="SimpleTypeWithoutName" type="SimpleTypeWithoutNameComplexType"> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/TargetNamespace.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/TargetNamespace.xml new file mode 100644 index 0000000000..da2929776e --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/TargetNamespace.xml @@ -0,0 +1,24 @@ +<?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. +--> +<tns:TargetNamespace xmlns:tns="http://www.apache.org/tuscany/interop" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.apache.org/tuscany/interop TargetNamespace.xsd"> + <SimpleTypeWithName>SimpleTypeWithName</SimpleTypeWithName> +</tns:TargetNamespace> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/TargetNamespace.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/TargetNamespace.xsd new file mode 100644 index 0000000000..ace5427786 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/TargetNamespace.xsd @@ -0,0 +1,34 @@ +<?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. +--> +<schema xmlns="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://www.apache.org/tuscany/interop" + xmlns:tns="http://www.apache.org/tuscany/interop"> + + <!-- top level test type --> + <complexType name="TargetNamespaceComplexType"> + <sequence> + <!-- simple types --> + <element name="SimpleTypeWithName" type="string"/> + + </sequence> + </complexType> + + <element name="TargetNamespace" type="tns:TargetNamespaceComplexType"/> +</schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/datagraph.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/datagraph.xsd new file mode 100644 index 0000000000..e6b9697a8d --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/datagraph.xsd @@ -0,0 +1,88 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- +/** + * <copyright> + * + * Service Data Objects + * Version 2.1.0 + * Licensed Materials + * + * (c) Copyright BEA Systems, Inc., International Business Machines Corporation, + * Oracle Corporation, Primeton Technologies Ltd., Rogue Wave Software, SAP AG., + * Software AG., Sun Microsystems, Sybase Inc., Xcalia, Zend Technologies, + * 2005, 2006. All rights reserved. + * + * </copyright> + * + */ +--> + +<xsd:schema + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:sdo="commonj.sdo" + xmlns:sdoJava="commonj.sdo/java" + targetNamespace="commonj.sdo"> + + <xsd:element name="datagraph" type="sdo:DataGraphType"/> + + <xsd:complexType name="DataGraphType"> + <xsd:complexContent> + <xsd:extension base="sdo:BaseDataGraphType"> + <xsd:sequence> + <xsd:any minOccurs="0" maxOccurs="1" namespace="##other" processContents="lax"/> + </xsd:sequence> + </xsd:extension> + </xsd:complexContent> + </xsd:complexType> + + <xsd:complexType name="BaseDataGraphType" abstract="true"> + <xsd:sequence> + <xsd:element name="models" type="sdo:ModelsType" minOccurs="0"/> + <xsd:element name="xsd" type="sdo:XSDType" minOccurs="0"/> + <xsd:element name="changeSummary" type="sdo:ChangeSummaryType" minOccurs="0"/> + </xsd:sequence> + <xsd:anyAttribute namespace="##other" processContents="lax"/> + </xsd:complexType> + + <xsd:complexType name="ModelsType"> + <xsd:annotation> + <xsd:documentation> + Expected type is emof:Package. + </xsd:documentation> + </xsd:annotation> + <xsd:sequence> + <xsd:any minOccurs="0" maxOccurs="unbounded" namespace="##other" processContents="lax"/> + </xsd:sequence> + </xsd:complexType> + + <xsd:complexType name="XSDType"> + <xsd:annotation> + <xsd:documentation> + Expected type is xsd:schema. + </xsd:documentation> + </xsd:annotation> + <xsd:sequence> + <xsd:any minOccurs="0" maxOccurs="unbounded" namespace="http://www.w3.org/2001/XMLSchema" processContents="lax"/> + </xsd:sequence> + </xsd:complexType> + +<!-- FB TEMP --> + <xsd:simpleType name="ChangeSummaryType" sdoJava:instanceClass="commonj.sdo.ChangeSummary"> + <xsd:restriction base="xsd:string"/> + </xsd:simpleType> +<!-- + <xsd:complexType name="ChangeSummaryType"> + <xsd:sequence> + <xsd:any minOccurs="0" maxOccurs="unbounded" namespace="##any" processContents="lax"/> + </xsd:sequence> + <xsd:attribute name="create" type="xsd:string"/> + <xsd:attribute name="delete" type="xsd:string"/> + <xsd:attribute name="logging" type="xsd:boolean"/> + </xsd:complexType> +--> + + <xsd:attribute name="ref" type="xsd:string"/> + <xsd:attribute name="unset" type="xsd:string"/> + +</xsd:schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/sdoJava.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/sdoJava.xsd new file mode 100644 index 0000000000..7387568942 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/sdoJava.xsd @@ -0,0 +1,88 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- +/** + * <copyright> + * + * Service Data Objects + * Version 2.1.0 + * Licensed Materials + * + * (c) Copyright BEA Systems, Inc., International Business Machines Corporation, + * Oracle Corporation, Primeton Technologies Ltd., Rogue Wave Software, SAP AG., + * Software AG., Sun Microsystems, Sybase Inc., Xcalia, Zend Technologies, + * 2005, 2006. All rights reserved. + * + * </copyright> + * + */ +--> + +<xsd:schema + targetNamespace="commonj.sdo/java" + xmlns:sdoJava="commonj.sdo/java" + xmlns:sdo="commonj.sdo" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:xsd="http://www.w3.org/2001/XMLSchema"> + +<xsd:import namespace="commonj.sdo" schemaLocation="sdoModel.xsd"/> + +<!-- + These attributes are used to customize the Java mapping of + XSD to SDO Types and Properties. +--> + +<xsd:attribute name="package" type="xsd:string" /> +<xsd:attribute name="instanceClass" type="xsd:string" /> +<xsd:attribute name="extendedInstanceClass" type="xsd:string" /> +<xsd:attribute name="nestedInterfaces" type="xsd:boolean" /> + +<!-- + Global properties used in open content for + the Java binding of SDO Types and Properties. +--> + +<xsd:attribute name="javaClass" type="sdo:String"/> + +<!-- JavaInfo deprecated in 2.1.0 --> +<xsd:complexType name="JavaInfo"> + <xsd:attribute name="javaClass" type="sdo:String"/> +</xsd:complexType> + +<!-- + The Java object data types. +--> + +<xsd:simpleType name="BooleanObject" sdoJava:instanceClass="java.lang.Boolean"> + <xsd:restriction base="xsd:boolean"/> +</xsd:simpleType> + +<xsd:simpleType name="ByteObject" sdoJava:instanceClass="java.lang.Byte"> + <xsd:restriction base="xsd:byte"/> +</xsd:simpleType> + +<xsd:simpleType name="CharacterObject" sdoJava:instanceClass="java.lang.Character"> + <xsd:restriction base="xsd:string"/> +</xsd:simpleType> + +<xsd:simpleType name="DoubleObject" sdoJava:instanceClass="java.lang.Double"> + <xsd:restriction base="xsd:double"/> +</xsd:simpleType> + +<xsd:simpleType name="FloatObject" sdoJava:instanceClass="java.lang.Float"> + <xsd:restriction base="xsd:float"/> +</xsd:simpleType> + +<xsd:simpleType name="IntObject" sdoJava:instanceClass="java.lang.Integer"> + <xsd:restriction base="xsd:int"/> +</xsd:simpleType> + +<xsd:simpleType name="LongObject" sdoJava:instanceClass="java.lang.Long"> + <xsd:restriction base="xsd:long"/> +</xsd:simpleType> + +<xsd:simpleType name="ShortObject" sdoJava:instanceClass="java.lang.Short"> + <xsd:restriction base="xsd:short"/> +</xsd:simpleType> + +</xsd:schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/sdoModel.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/sdoModel.xsd new file mode 100644 index 0000000000..c5aabc9cc8 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/main/resources/xsd/sdoModel.xsd @@ -0,0 +1,221 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- +/** + * <copyright> + * + * Service Data Objects + * Version 2.1.0 + * Licensed Materials + * + * (c) Copyright BEA Systems, Inc., International Business Machines Corporation, + * Oracle Corporation, Primeton Technologies Ltd., Rogue Wave Software, SAP AG., + * Software AG., Sun Microsystems, Sybase Inc., Xcalia, Zend Technologies, + * 2005, 2006. All rights reserved. + * + * </copyright> + * + */ + +--> + +<xsd:schema + targetNamespace="commonj.sdo" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:sdo="commonj.sdo" + xmlns:sdoXML="commonj.sdo/xml" + xmlns:sdoJava="commonj.sdo/java" + elementFormDefault="qualified" + xsi:schemaLocation="commonj.sdo/xml sdoXML.xsd + commonj.sdo/java sdoJava.xsd"> + +<xsd:include schemaLocation="datagraph.xsd"/> + +<!-- Root element for defining several Types in one document. + Is not part of the model. +--> +<xsd:element name="types" type="sdo:Types"/> +<xsd:complexType name="Types"> + <xsd:sequence> + <xsd:element name="type" type="sdo:Type" minOccurs="0" maxOccurs="unbounded"/> + </xsd:sequence> +</xsd:complexType> + +<!-- Any data object may be serialized with this element, + with xsi:type to declare the + actual type of the DataObject serialized. +--> +<xsd:element name="dataObject" type="xsd:anyType"/> + +<!-- Model Types + SDO Type and Property are defined in terms of themselves. +--> +<xsd:element name="type" type="sdo:Type"/> +<xsd:complexType name="Type"> + <xsd:sequence> + <xsd:element name="baseType" type="sdo:URI" + minOccurs="0" maxOccurs="unbounded" + sdoXML:propertyType="sdo:Type" /> + <xsd:element name="property" type="sdo:Property" + minOccurs="0" maxOccurs="unbounded" /> + <xsd:element name="aliasName" type="sdo:String" + minOccurs="0" maxOccurs="unbounded" /> + <xsd:any namespace="##other" processContents="lax" + minOccurs="0" maxOccurs="unbounded" /> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:ID" sdoXML:dataType="sdo:String"/> + <xsd:attribute name="uri" type="sdo:URI"/> + <xsd:attribute name="dataType" type="sdo:Boolean"/> + <xsd:attribute name="open" type="sdo:Boolean"/> + <xsd:attribute name="sequenced" type="sdo:Boolean"/> + <xsd:attribute name="abstract" type="sdo:Boolean"/> + <xsd:anyAttribute namespace="##any" processContents="lax"/> +</xsd:complexType> + +<xsd:complexType name="Property"> + <xsd:sequence> + <xsd:element name="aliasName" type="sdo:String" + minOccurs="0" maxOccurs="unbounded" /> + <xsd:any namespace="##other" processContents="lax" + minOccurs="0" maxOccurs="unbounded" /> + </xsd:sequence> + <xsd:attribute name="name" type="sdo:String"/> + <xsd:attribute name="many" type="sdo:Boolean"/> + <xsd:attribute name="containment" type="sdo:Boolean"/> + <xsd:attribute name="default" type="sdo:String"/> + <xsd:attribute name="readOnly" type="sdo:Boolean"/> + <xsd:attribute name="type" type="sdo:URI" sdoXML:propertyType="sdo:Type"/> + <xsd:attribute name="opposite" type="sdo:URI" sdoXML:propertyType="sdo:Property"/> + <xsd:attribute name="nullable" type="sdo:Boolean"/> + <xsd:anyAttribute namespace="##any" processContents="lax"/> +</xsd:complexType> + +<!-- Special Types --> +<xsd:complexType name="DataObject" abstract="true"/> + +<!-- TextType deprecated in 2.1.0 --> + <xsd:complexType name="TextType" abstract="true"> + <xsd:sequence> + <xsd:element name="text" minOccurs="0" maxOccurs="unbounded" type="xsd:string"/> + </xsd:sequence> + </xsd:complexType> + +<!-- ChangeSummaryType is defined in datagraph.xsd. + Although declared there as a ComplexType, + at the model level it is treated as a SimpleType + with a special XML serialization. +--> + +<!-- Data Types --> +<xsd:simpleType name="Boolean" sdoJava:instanceClass="boolean"> + <xsd:restriction base="xsd:boolean"/> +</xsd:simpleType> + +<xsd:simpleType name="Byte" sdoJava:instanceClass="byte"> + <xsd:restriction base="xsd:byte"/> +</xsd:simpleType> + +<xsd:simpleType name="Bytes" sdoJava:instanceClass="byte[]"> + <xsd:restriction base="xsd:hexBinary"/> +</xsd:simpleType> + +<xsd:simpleType name="Character" sdoJava:instanceClass="char"> + <xsd:restriction base="xsd:string"/> +</xsd:simpleType> + +<xsd:simpleType name="Date" sdoJava:instanceClass="java.util.Date"> + <xsd:restriction base="xsd:dateTime"/> +</xsd:simpleType> + +<xsd:simpleType name="DateTime" sdoJava:instanceClass="java.lang.String"> + <xsd:restriction base="xsd:dateTime"/> +</xsd:simpleType> + +<xsd:simpleType name="Day" sdoJava:instanceClass="java.lang.String"> + <xsd:restriction base="xsd:gDay"/> +</xsd:simpleType> + +<xsd:simpleType name="Decimal" sdoJava:instanceClass="java.math.BigDecimal"> + <xsd:restriction base="xsd:decimal"/> +</xsd:simpleType> + +<xsd:simpleType name="Double" sdoJava:instanceClass="double"> + <xsd:restriction base="xsd:double"/> +</xsd:simpleType> + +<xsd:simpleType name="Duration" sdoJava:instanceClass="java.lang.String"> + <xsd:restriction base="xsd:duration"/> +</xsd:simpleType> + +<xsd:simpleType name="Float" sdoJava:instanceClass="float"> + <xsd:restriction base="xsd:float"/> +</xsd:simpleType> + +<xsd:simpleType name="Int" sdoJava:instanceClass="int"> + <xsd:restriction base="xsd:int"/> +</xsd:simpleType> + +<xsd:simpleType name="Integer" sdoJava:instanceClass="java.math.BigInteger"> + <xsd:restriction base="xsd:integer"/> +</xsd:simpleType> + +<xsd:simpleType name="Long" sdoJava:instanceClass="long"> + <xsd:restriction base="xsd:long"/> +</xsd:simpleType> + +<xsd:simpleType name="Month" sdoJava:instanceClass="java.lang.String"> + <xsd:restriction base="xsd:gMonth"/> +</xsd:simpleType> + +<xsd:simpleType name="MonthDay" sdoJava:instanceClass="java.lang.String"> + <xsd:restriction base="xsd:gMonthDay"/> +</xsd:simpleType> + +<xsd:simpleType name="Object" sdoJava:instanceClass="java.lang.Object"> + <!-- Only the schema for schemas is allowed to restrict anySimpleType. + <xsd:restriction base="xsd:anySimpleType"/> + The equivalent declaration is a union of the predefined XSD data types. + --> + <xsd:union memberTypes="xsd:anyURI xsd:base64Binary xsd:boolean xsd:byte + xsd:date xsd:dateTime xsd:decimal xsd:double xsd:duration xsd:ENTITIES xsd:ENTITY xsd:float + xsd:gDay xsd:gMonth xsd:gMonthDay xsd:gYear xsd:gYearMonth xsd:hexBinary xsd:ID xsd:IDREF xsd:IDREFS + xsd:int xsd:integer xsd:language xsd:long xsd:Name xsd:NCName xsd:negativeInteger + xsd:NMTOKEN xsd:NMTOKENS xsd:nonNegativeInteger xsd:nonPositiveInteger + xsd:normalizedString xsd:NOTATION xsd:positiveInteger xsd:QName xsd:short xsd:string + xsd:time xsd:token xsd:unsignedByte xsd:unsignedInt xsd:unsignedLong xsd:unsignedShort"/> +</xsd:simpleType> + +<xsd:simpleType name="Short" sdoJava:instanceClass="short"> + <xsd:restriction base="xsd:short"/> +</xsd:simpleType> + +<xsd:simpleType name="String" sdoJava:instanceClass="java.lang.String"> + <xsd:restriction base="xsd:string"/> +</xsd:simpleType> + +<xsd:simpleType name="Strings" sdoJava:instanceClass="java.util.List"> + <xsd:restriction base="xsd:string"/> +</xsd:simpleType> + +<xsd:simpleType name="Time" sdoJava:instanceClass="java.lang.String"> + <xsd:restriction base="xsd:time"/> +</xsd:simpleType> + +<xsd:simpleType name="Year" sdoJava:instanceClass="java.lang.String"> + <xsd:restriction base="xsd:gYear"/> +</xsd:simpleType> + +<xsd:simpleType name="YearMonth" sdoJava:instanceClass="java.lang.String"> + <xsd:restriction base="xsd:gYearMonth"/> +</xsd:simpleType> + +<xsd:simpleType name="YearMonthDay" sdoJava:instanceClass="java.lang.String"> + <xsd:restriction base="xsd:date"/> +</xsd:simpleType> + +<xsd:simpleType name="URI" sdoJava:instanceClass="java.lang.String"> + <xsd:restriction base="xsd:anyURI"/> +</xsd:simpleType> + +</xsd:schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/test/java/org/apache/tuscany/sca/itest/generate/GenerateTestCase.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/test/java/org/apache/tuscany/sca/itest/generate/GenerateTestCase.java new file mode 100644 index 0000000000..131e11012a --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/common/src/test/java/org/apache/tuscany/sca/itest/generate/GenerateTestCase.java @@ -0,0 +1,52 @@ +/* + * 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.itest.generate; + +import junit.framework.TestCase; + + +/** + * + */ +public class GenerateTestCase extends TestCase { + + private Generate generator = null; + private static boolean initalised = false; + + protected void setUp() throws Exception { + if (!initalised) { + generator = new Generate(); + initalised = true; + } + } + + protected void tearDown() { + + } + + /** + * Invokes the Generate class to generate databinding test classes and resources. + * + * @throws Exception + */ + public void testGenerate() throws Exception { + // generator.generate(); + } +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/interop/LICENSE.txt b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/interop/LICENSE.txt new file mode 100644 index 0000000000..d645695673 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/interop/LICENSE.txt @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed 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. diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/interop/NOTICE.txt b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/interop/NOTICE.txt new file mode 100644 index 0000000000..92ca715fbe --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/interop/NOTICE.txt @@ -0,0 +1,14 @@ +${pom.name} +Copyright (c) 2005 - 2007 The Apache Software Foundation + +Apache Tuscany is an effort undergoing incubation at The Apache Software +Foundation (ASF), sponsored by the Apache Web Services PMC. Incubation is +required of all newly accepted projects until a further review indicates that +the infrastructure, communications, and decision making process have stabilized +in a manner consistent with other successful ASF projects. While incubation +status is not necessarily a reflection of the completeness or stability of the +code, it does indicate that the project has yet to be fully endorsed by the ASF. + +This product includes software developed by +The Apache Software Foundation (http://www.apache.org/). + diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/interop/pom.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/interop/pom.xml new file mode 100644 index 0000000000..fd3796fa36 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/interop/pom.xml @@ -0,0 +1,200 @@ +<?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> + <parent> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>databindings</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + </parent> + + <modelVersion>4.0.0</modelVersion> + + <artifactId>iTest-interopDatabinding</artifactId> + <version>${testing.version}</version> + <packaging>jar</packaging> + <name>Interoperability Databindings Integration Test</name> + + <repositories> + <repository> + <snapshots> + <enabled>true</enabled> + </snapshots> + <id>java.net</id> + <name>java.net Maven 1.x Repository</name> + <url>https://maven-repository.dev.java.net/nonav/repository</url> + <layout>legacy</layout> + </repository> + </repositories> + + <pluginRepositories> + <pluginRepository> + <snapshots> + <enabled>true</enabled> + </snapshots> + <id>java.net</id> + <name>java.net Maven 1.x Repository</name> + <url>https://maven-repository.dev.java.net/repository</url> + <layout>legacy</layout> + </pluginRepository> + </pluginRepositories> + + <dependencies> + <dependency> + <groupId>org.apache.tuscany.sca.services.databinding</groupId> + <artifactId>databinding-jaxb</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + <scope>runtime</scope> + </dependency> + <dependency> + <groupId>org.apache.tuscany.sca.services.databinding</groupId> + <artifactId>databinding-sdo</artifactId> + <version>${pom.version}</version> + <scope>compile</scope> + </dependency> + <dependency> + <groupId>org.apache.tuscany.sca.extensions.axis2</groupId> + <artifactId>databinding-axiom</artifactId> + <version>${pom.version}</version> + <scope>compile</scope> + </dependency> + <dependency> + <groupId>javax.xml.bind</groupId> + <artifactId>jaxb-api</artifactId> + <version>2.1</version> + <scope>compile</scope> + </dependency> + <dependency> + <groupId>com.sun.xml.bind</groupId> + <artifactId>jaxb-impl</artifactId> + <version>2.1</version> + <scope>runtime</scope> + </dependency> + <dependency> + <groupId>com.sun.xml.ws</groupId> + <artifactId>jaxws-rt</artifactId> + <version>2.1</version> + </dependency> + <dependency> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>itest-common</artifactId> + <version>${pom.version}</version> + <scope>compile</scope> + </dependency> + <dependency> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>iTest-sdoDatabinding</artifactId> + <version>${pom.version}</version> + <scope>compile</scope> + </dependency> + <dependency> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>iTest-jaxbDatabinding</artifactId> + <version>${pom.version}</version> + <scope>compile</scope> + </dependency> + </dependencies> + + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-dependency-plugin</artifactId> + <executions> + <execution> + <phase>generate-sources</phase> + <goals> + <goal>unpack</goal> + </goals> + <configuration> + <artifactItems> + <artifactItem> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>itest-common</artifactId> + <version>${project.version}</version> + <overWrite>true</overWrite> + <outputDirectory>${project.build.directory}/classes</outputDirectory> + </artifactItem> + </artifactItems> + </configuration> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>build-helper-maven-plugin</artifactId> + <version>1.0</version> + <executions> + <execution> + <id>add-test-source</id> + <phase>generate-sources</phase> + <goals> + <goal>add-test-source</goal> + </goals> + <configuration> + <sources> + <source>target/jaxb-source</source> + </sources> + </configuration> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>exec-maven-plugin</artifactId> + <executions> + <execution> + <id>generate-test-source</id> + <phase>process-resources</phase> + <goals> + <goal>java</goal> + </goals> + </execution> + </executions> + <configuration> + <mainClass>org.apache.tuscany.sca.itest.generate.Generate</mainClass> + <arguments> + <argument>${project.build.directory}</argument> + </arguments> + </configuration> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>jaxws-maven-plugin</artifactId> + <executions> + <execution> + <phase>process-resources</phase> + <goals> + <goal>wsimport</goal> + </goals> + </execution> + </executions> + <configuration> + <packageName>org.apache.tuscany.sca.itest.jaxbdatabinding.generated</packageName> + <wsdlDirectory>${project.build.directory}/classes/wsdl</wsdlDirectory> + <wsdlFiles> + <wsdlFile>JAXBGreeter.wsdl</wsdlFile> + </wsdlFiles> + <sourceDestDir>${project.build.directory}/jaxws-source</sourceDestDir> + <verbose>true</verbose> + </configuration> + </plugin> + </plugins> + </build> +</project> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/interop/src/main/resources/generate/InteropDatabindingTestCase.java.vm b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/interop/src/main/resources/generate/InteropDatabindingTestCase.java.vm new file mode 100644 index 0000000000..e6c2cd0f94 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/interop/src/main/resources/generate/InteropDatabindingTestCase.java.vm @@ -0,0 +1,119 @@ +/* + * 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 $template.getJavaPackage(); + +import junit.framework.TestCase; + +import org.osoa.sca.CompositeContext; +import org.osoa.sca.CurrentCompositeContext; + +import org.apache.tuscany.api.SCARuntime; +import ${template.getJavaPackage()}.GreeterService; + +// Data types +#foreach($file in $fileList) +#set($typeList = $file.getType_()) +#foreach($typeInstance in $typeList) +import $file.getJavaPackage().$typeInstance.getTypeName(); +import $file.getJavaPackage().$file.getFactory(); +#end +#end + +/** + * Automatically generated test case. Calls the greeter client for a number of + * bindings and a number of data types. + * + * @version $Rev: 511417 $ $Date: 2007-02-25 03:06:42 +0000 (Sun, 25 Feb 2007) $ + */ +public class InteropDatabindingTestCase extends TestCase { + + private static boolean initalised = false; + private GreeterService greeterClient; + + /** + * Runs before each test method + */ + protected void setUp() throws Exception { + if (!initalised) { + SCARuntime.start("interopgreeter.composite"); + super.setUp(); + initalised = true; + } + } + + /** + * Runs after each test method + */ + protected void tearDown() { + + } + + /** + * Finds the SCA component that relates to the protocol being tested. This test + * always connects locally to the client component but the client component will + * connect to the back end component using the appropriate protocol + * + * @param ext the protcol required + */ + private void setUpClient(String ext) throws Exception { + CompositeContext ctx = CurrentCompositeContext.getContext(); + greeterClient = ctx.locateService(GreeterService.class, ext + "GreeterServiceClient"); + } + + /** + * Invokes the SDO Greet service using web service bindings with SDO payload + */ + public void testWSGreet() throws Exception { + setUpClient("WS"); + greet(); + } + + /** + * Invokes the SDO Greet service using default bindings with SDO payload + */ +// Not sure that transformations should work with +// local connections because the interface type will +// be incorrect when specified in the SCDL +// public void testDefaultGreet() throws Exception { +// setUpClient("Default"); +// greet(); +// } + + /** + * A generic method which, regarless of which client is connected, sends out a + * series of requrests passing different data types. + */ + public void greet() { +#foreach($file in $fileList) +#set($typeList = $file.getType_()) +#foreach($typeInstance in $typeList) + + // test $typeInstance.getTypeName() + { + $typeInstance.getTypeName() param = null; + $typeInstance.getCreateTypeCode() + $typeInstance.getTypeName() result = greeterClient.greet$typeInstance.getTypeName()(param); + $typeInstance.getResultComparison() + } +#end +#end + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/interop/src/main/resources/generate/JAXBGreeter.wsdl.vm b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/interop/src/main/resources/generate/JAXBGreeter.wsdl.vm new file mode 100644 index 0000000000..00cfea5e9f --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/interop/src/main/resources/generate/JAXBGreeter.wsdl.vm @@ -0,0 +1,103 @@ +<?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 targetNamespace="http://apache.org/tuscany/sca/itest/databinding/services" + xmlns:tns="http://apache.org/tuscany/sca/itest/databinding/services" + xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" + xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + name="Greeter"> + + <wsdl:types> + <xsd:schema xmlns="http://www.w3.org/2001/XMLSchema" +#foreach($file in $fileList) + xmlns:$file.getPrefix()="$file.getNamespace()" +#end + targetNamespace="http://apache.org/tuscany/sca/itest/databinding/services" + elementFormDefault="qualified"> + +#foreach($file in $fileList) + <xsd:import namespace="$file.getNamespace()" + schemaLocation="../xsd/$file.getFileName()" /> +#end + +#foreach($file in $fileList) +#set($typeList = $file.getType_()) +#foreach($typeInstance in $typeList) + <element name="greet$typeInstance.getTypeName()"> + <complexType> + <sequence> + <element name="parm" type="$file.getPrefix():$typeInstance.getTypeName()" /> + </sequence> + </complexType> + </element> +#end +#end + </xsd:schema> + </wsdl:types> +#foreach($file in $fileList) +#set($typeList = $file.getType_()) +#foreach($typeInstance in $typeList) + + <wsdl:message name="$typeInstance.getTypeName()Request"> + <wsdl:part element="tns:greet$typeInstance.getTypeName()" name="parameters" /> + </wsdl:message> + <wsdl:message name="$typeInstance.getTypeName()Response"> + <wsdl:part element="tns:greet$typeInstance.getTypeName()" name="parameters" /> + </wsdl:message> +#end +#end + + <wsdl:portType name="GreeterPortType"> +#foreach($file in $fileList) +#set($typeList = $file.getType_()) +#foreach($typeInstance in $typeList) + <wsdl:operation name="greet$typeInstance.getTypeName()"> + <wsdl:input message="tns:$typeInstance.getTypeName()Request" name="$typeInstance.getTypeName()RequestMsg" /> + <wsdl:output message="tns:$typeInstance.getTypeName()Response" name="$typeInstance.getTypeName()ResponseMsg" /> + </wsdl:operation> +#end +#end + </wsdl:portType> + + <wsdl:binding name="GreeterBinding" type="tns:GreeterPortType"> + <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" /> +#foreach($file in $fileList) +#set($typeList = $file.getType_()) +#foreach($typeInstance in $typeList) + <wsdl:operation name="greet$typeInstance.getTypeName()"> + <wsdlsoap:operation soapAction="" /> + <wsdl:input name="$typeInstance.getTypeName()RequestMsg"> + <wsdlsoap:body use="literal" /> + </wsdl:input> + <wsdl:output name="$typeInstance.getTypeName()ResponseMsg"> + <wsdlsoap:body use="literal" /> + </wsdl:output> + </wsdl:operation> +#end +#end + </wsdl:binding> + + <wsdl:service name="GreeterService"> + <wsdl:port name="GreeterPort" binding="tns:GreeterBinding"> + <wsdlsoap:address location="http://localhost:8080/services/JAXBGreeterServiceWebServiceBinding" /> + </wsdl:port> + </wsdl:service> + +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/interop/src/main/resources/generate/SDOGreeter.wsdl.vm b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/interop/src/main/resources/generate/SDOGreeter.wsdl.vm new file mode 100644 index 0000000000..00cfea5e9f --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/interop/src/main/resources/generate/SDOGreeter.wsdl.vm @@ -0,0 +1,103 @@ +<?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 targetNamespace="http://apache.org/tuscany/sca/itest/databinding/services" + xmlns:tns="http://apache.org/tuscany/sca/itest/databinding/services" + xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" + xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + name="Greeter"> + + <wsdl:types> + <xsd:schema xmlns="http://www.w3.org/2001/XMLSchema" +#foreach($file in $fileList) + xmlns:$file.getPrefix()="$file.getNamespace()" +#end + targetNamespace="http://apache.org/tuscany/sca/itest/databinding/services" + elementFormDefault="qualified"> + +#foreach($file in $fileList) + <xsd:import namespace="$file.getNamespace()" + schemaLocation="../xsd/$file.getFileName()" /> +#end + +#foreach($file in $fileList) +#set($typeList = $file.getType_()) +#foreach($typeInstance in $typeList) + <element name="greet$typeInstance.getTypeName()"> + <complexType> + <sequence> + <element name="parm" type="$file.getPrefix():$typeInstance.getTypeName()" /> + </sequence> + </complexType> + </element> +#end +#end + </xsd:schema> + </wsdl:types> +#foreach($file in $fileList) +#set($typeList = $file.getType_()) +#foreach($typeInstance in $typeList) + + <wsdl:message name="$typeInstance.getTypeName()Request"> + <wsdl:part element="tns:greet$typeInstance.getTypeName()" name="parameters" /> + </wsdl:message> + <wsdl:message name="$typeInstance.getTypeName()Response"> + <wsdl:part element="tns:greet$typeInstance.getTypeName()" name="parameters" /> + </wsdl:message> +#end +#end + + <wsdl:portType name="GreeterPortType"> +#foreach($file in $fileList) +#set($typeList = $file.getType_()) +#foreach($typeInstance in $typeList) + <wsdl:operation name="greet$typeInstance.getTypeName()"> + <wsdl:input message="tns:$typeInstance.getTypeName()Request" name="$typeInstance.getTypeName()RequestMsg" /> + <wsdl:output message="tns:$typeInstance.getTypeName()Response" name="$typeInstance.getTypeName()ResponseMsg" /> + </wsdl:operation> +#end +#end + </wsdl:portType> + + <wsdl:binding name="GreeterBinding" type="tns:GreeterPortType"> + <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" /> +#foreach($file in $fileList) +#set($typeList = $file.getType_()) +#foreach($typeInstance in $typeList) + <wsdl:operation name="greet$typeInstance.getTypeName()"> + <wsdlsoap:operation soapAction="" /> + <wsdl:input name="$typeInstance.getTypeName()RequestMsg"> + <wsdlsoap:body use="literal" /> + </wsdl:input> + <wsdl:output name="$typeInstance.getTypeName()ResponseMsg"> + <wsdlsoap:body use="literal" /> + </wsdl:output> + </wsdl:operation> +#end +#end + </wsdl:binding> + + <wsdl:service name="GreeterService"> + <wsdl:port name="GreeterPort" binding="tns:GreeterBinding"> + <wsdlsoap:address location="http://localhost:8080/services/JAXBGreeterServiceWebServiceBinding" /> + </wsdl:port> + </wsdl:service> + +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/interop/src/main/resources/generate/generate.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/interop/src/main/resources/generate/generate.xml new file mode 100644 index 0000000000..6d6da4d366 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/interop/src/main/resources/generate/generate.xml @@ -0,0 +1,100 @@ +<?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. +--> +<tns:Generate xmlns:tns="http://www.apache.org/tuscany/generate" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.example.org/generate generate.xsd "> + + <Template> + <TemplateName>InteropDatabindingTestCase.java.vm</TemplateName> + <TemplateTargetDir>../src/test/java/org/apache/tuscany/sca/itest/jaxbdatabinding</TemplateTargetDir> + <JavaPackage>org.apache.tuscany.sca.itest.jaxbdatabinding</JavaPackage> + </Template> + <Template> + <TemplateName>interopgreeter.composite.vm</TemplateName> + <TemplateTargetDir>classes</TemplateTargetDir> + </Template> + <Template> + <TemplateName>SDOGreeter.wsdl.vm</TemplateName> + <TemplateTargetDir>classes/wsdl</TemplateTargetDir> + </Template> + <Template> + <TemplateName>JAXBGreeter.wsdl.vm</TemplateName> + <TemplateTargetDir>classes/wsdl</TemplateTargetDir> + </Template> + <InputFile> + <FileName>Person.xsd</FileName> + <FilePath>xsd</FilePath> + <JavaPackage>org.apache.tuscany.sca.itest.jaxbdatabinding.generated</JavaPackage> + <Factory>ObjectFactory</Factory> + <Namespace>http://apache.org/tuscany/sca/itest/databinding/types</Namespace> + <Prefix>p</Prefix> + <Type> + <TypeName>PersonType</TypeName> + <CreateTypeCode> + ObjectFactory factory = new ObjectFactory(); + param = factory.createPersonType(); + param.setFirstName("George"); + param.setLastName("Doors"); + </CreateTypeCode> + <ModifyTypeCode> + param.setGreeting("Hello"); + </ModifyTypeCode> + <ResultComparison> + assertNotSame("greetedPerson.getGreeting() not set", "", result.getGreeting()); + </ResultComparison> + </Type> + </InputFile> + <InputFile> + <FileName>Interop.xsd</FileName> + <FilePath>xsd</FilePath> + <JavaPackage>org.apache.tuscany.sca.itest.jaxbdatabinding.generated</JavaPackage> + <Factory>ObjectFactory</Factory> + <Namespace>http://www.apache.org/tuscany/interop</Namespace> + <Prefix>i</Prefix> + <Type> + <TypeName>SimpleTypeWithNameComplexType</TypeName> + <CreateTypeCode> + ObjectFactory factory = new ObjectFactory(); + param = factory.createSimpleTypeWithNameComplexType(); + param.setSimpleTypeWithNameElement("SomeText"); + </CreateTypeCode> + <ModifyTypeCode> + param.setSimpleTypeWithNameElement("SomeChangedText");; + </ModifyTypeCode> + <ResultComparison> + assertEquals("data not changed corretly", "SomeChangedText", result.getSimpleTypeWithNameElement()); + </ResultComparison> + </Type> + <Type> + <TypeName>ComplexTypeWithContentType</TypeName> + <CreateTypeCode> + ObjectFactory factory = new ObjectFactory(); + param = factory.createComplexTypeWithContentType(); + param.setSimpleTypeWithName("SomeText"); + </CreateTypeCode> + <ModifyTypeCode> + param.setSimpleTypeWithName("SomeChangedText");; + </ModifyTypeCode> + <ResultComparison> + assertEquals("data not changed corretly", "SomeChangedText", result.getSimpleTypeWithName()); + </ResultComparison> + </Type> + </InputFile> +</tns:Generate> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/interop/src/main/resources/generate/interopgreeter.composite.vm b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/interop/src/main/resources/generate/interopgreeter.composite.vm new file mode 100644 index 0000000000..4d41e3de19 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/interop/src/main/resources/generate/interopgreeter.composite.vm @@ -0,0 +1,104 @@ +<?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" + xmlns:wsdli="http://www.w3.org/2006/01/wsdl-instance" + xmlns:dbsdo="http://tuscany.apache.org/xmlns/sca/databinding/sdo/1.0" + name="SDOGreeterService"> + + <!-- SDO factory classes --> +<!-- + #foreach( $file in $fileList ) + <dbsdo:import.sdo factory="$file.getJavaPackage().$file.getFactory()"/> + #end +--> + <!-- + manually inserted bcause the generator for interop + is set to generate JAXB methods not SDO methods. Need + to switch this round so the client is SDO based + --> + <dbsdo:import.sdo factory="org.apache.tuscany.sca.itest.databinding.types.TypesFactory"/> + <dbsdo:import.sdo factory="org.apache.tuscany.interop.InteropFactory"/> + + + <!-- Default binding test --> + <component name="DefaultGreeterServiceClient"> + <implementation.java class="org.apache.tuscany.sca.itest.jaxbdatabinding.GreeterServiceClientImpl" /> + <reference name="greeterService">SDODefaultGreeterServiceClient</reference> + </component> + + <component name="SDODefaultGreeterServiceClient"> + <implementation.java class="org.apache.tuscany.sca.itest.sdodatabinding.GreeterServiceClientImpl" /> + <reference name="greeterService">JAXBGreeterService</reference> + </component> + + <component name="JAXBGreeterService"> + <implementation.java class="org.apache.tuscany.sca.itest.jaxbdatabinding.GreeterServiceImpl" /> + </component> + + <!-- WS binding test --> + <component name="WSGreeterServiceClient"> + <implementation.java class="org.apache.tuscany.sca.itest.jaxbdatabinding.GreeterServiceClientImpl" /> + <reference name="greeterService">SDOGreeterServiceWSRef</reference> + </component> + + <reference name="SDOGreeterServiceWSRef"> + <interface.wsdl interface="http://apache.org/tuscany/sca/itest/databinding/services#wsdl.interface(GreeterPortType)" + wsdli:wsdlLocation="http://apache.org/tuscany/sca/itest/databinding/services wsdl/SDOGreeter.wsdl" /> + <binding.ws + endpoint="http://apache.org/tuscany/sca/itest/databinding/services#wsdl.endpoint(GreeterService/GreeterPort)" + location="wsdl/SDOGreeter.wsdl" /> + </reference> + + <service name="SDOGreeterServiceWebServiceBinding"> + <interface.wsdl interface="http://apache.org/tuscany/sca/itest/databinding/services#wsdl.interface(GreeterPortType)" + wsdli:wsdlLocation="http://apache.org/tuscany/sca/itest/databinding/services wsdl/SDOGreeter.wsdl" /> + <binding.ws + endpoint="http://apache.org/tuscany/sca/itest/databinding/services#wsdl.endpoint(GreeterService/GreeterPort)" + location="wsdl/SDOGreeter.wsdl" /> + <reference>SDOWSGreeterServiceClient</reference> + </service> + + <component name="SDOWSGreeterServiceClient"> + <implementation.java class="org.apache.tuscany.sca.itest.sdodatabinding.GreeterServiceClientImpl" /> + <reference name="greeterService">JAXBGreeterServiceWSRef</reference> + </component> + + <reference name="JAXBGreeterServiceWSRef"> + <interface.wsdl interface="http://apache.org/tuscany/sca/itest/databinding/services#wsdl.interface(GreeterPortType)" + wsdli:wsdlLocation="http://apache.org/tuscany/sca/itest/databinding/services wsdl/JAXBGreeter.wsdl" /> + <binding.ws + endpoint="http://apache.org/tuscany/sca/itest/databinding/services#wsdl.endpoint(GreeterService/GreeterPort)" + location="wsdl/JAXBGreeter.wsdl" /> + </reference> + + <service name="JAXBGreeterServiceWebServiceBinding"> + <interface.wsdl interface="http://apache.org/tuscany/sca/itest/databinding/services#wsdl.interface(GreeterPortType)" + wsdli:wsdlLocation="http://apache.org/tuscany/sca/itest/databinding/services wsdl/JAXBGreeter.wsdl" /> + <binding.ws + endpoint="http://apache.org/tuscany/sca/itest/databinding/services#wsdl.endpoint(GreeterService/GreeterPort)" + location="wsdl/JAXBGreeter.wsdl" /> + <reference>JAXBWSGreeterService</reference> + </service> + + <component name="JAXBWSGreeterService"> + <implementation.java class="org.apache.tuscany.sca.itest.jaxbdatabinding.GreeterServiceImpl" /> + </component> + +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxb/pom.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxb/pom.xml new file mode 100644 index 0000000000..3f8eeaed17 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxb/pom.xml @@ -0,0 +1,152 @@ +<?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> + <parent> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>databindings</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + </parent> + + <modelVersion>4.0.0</modelVersion> + + <artifactId>iTest-jaxbDatabinding</artifactId> + <version>${testing.version}</version> + <packaging>jar</packaging> + <name>Test Suite for JAXB Databindings</name> + + <repositories> + <repository> + <snapshots> + <enabled>true</enabled> + </snapshots> + <id>java.net</id> + <name>java.net Maven 1.x Repository</name> + <url>https://maven-repository.dev.java.net/nonav/repository</url> + <layout>legacy</layout> + </repository> + </repositories> + + <pluginRepositories> + <pluginRepository> + <snapshots> + <enabled>true</enabled> + </snapshots> + <id>java.net</id> + <name>java.net Maven 1.x Repository</name> + <url>https://maven-repository.dev.java.net/repository</url> + <layout>legacy</layout> + </pluginRepository> + </pluginRepositories> + + <dependencies> + <dependency> + <groupId>org.apache.tuscany.sca.services.databinding</groupId> + <artifactId>databinding-jaxb</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + <scope>runtime</scope> + </dependency> + <dependency> + <groupId>org.apache.tuscany.sca.extensions.axis2</groupId> + <artifactId>databinding-axiom</artifactId> + <version>${pom.version}</version> + <scope>compile</scope> + </dependency> + <dependency> + <groupId>javax.xml.bind</groupId> + <artifactId>jaxb-api</artifactId> + <version>2.1</version> + <scope>compile</scope> + </dependency> + <dependency> + <groupId>com.sun.xml.bind</groupId> + <artifactId>jaxb-impl</artifactId> + <version>2.1</version> + <scope>runtime</scope> + </dependency> + <dependency> + <groupId>com.sun.xml.ws</groupId> + <artifactId>jaxws-rt</artifactId> + <version>2.1</version> + </dependency> + </dependencies> + + <build> + <plugins> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>build-helper-maven-plugin</artifactId> + <version>1.0</version> + <executions> + <execution> + <id>add-test-source</id> + <phase>generate-sources</phase> + <goals> + <goal>add-test-source</goal> + </goals> + <configuration> + <sources> + <source>target/jaxb-source</source> + </sources> + </configuration> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>jaxws-maven-plugin</artifactId> + <executions> + <execution> + <goals> + <goal>wsimport</goal> + </goals> + </execution> + </executions> + <configuration> + <packageName>org.apache.tuscany.sca.itest.jaxbdatabinding.generated</packageName> + <wsdlDirectory>${basedir}/src/main/resources/wsdl</wsdlDirectory> + <sourceDestDir>${project.build.directory}/jaxws-source</sourceDestDir> + <verbose>true</verbose> + </configuration> + </plugin> + + <!-- plugin ## Now using jaxws wsimport ## > + <groupId>com.sun.tools.xjc.maven2</groupId> + <artifactId>maven-jaxb-plugin</artifactId> + <version>1.1</version> + <executions> + <execution> + <id>generate-jaxb</id> + <phase>generate-sources</phase> + <goals> + <goal>generate</goal> + </goals> + </execution> + </executions> + <configuration> + <generateDirectory>${project.build.directory}/jaxb-source</generateDirectory> + <schemaDirectory>${basedir}/src/main/resources</schemaDirectory> + <includeSchemas> + <includeSchema>Person.xsd</includeSchema> + </includeSchemas> + </configuration> + </plugin --> + </plugins> +</build> +</project> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxb/src/main/java/org/apache/tuscany/sca/itest/jaxbdatabinding/GreeterService.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxb/src/main/java/org/apache/tuscany/sca/itest/jaxbdatabinding/GreeterService.java new file mode 100644 index 0000000000..cb508dd109 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxb/src/main/java/org/apache/tuscany/sca/itest/jaxbdatabinding/GreeterService.java @@ -0,0 +1,34 @@ +/* + * 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.itest.jaxbdatabinding; + +import org.apache.tuscany.sca.itest.jaxbdatabinding.generated.PersonType; +import org.osoa.sca.annotations.Remotable; + +/** + * + */ +@Remotable +public interface GreeterService { + + // @DataType(name = "javax.xml.bind.JAXBElement") + PersonType greet(PersonType who); + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxb/src/main/java/org/apache/tuscany/sca/itest/jaxbdatabinding/GreeterServiceClient.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxb/src/main/java/org/apache/tuscany/sca/itest/jaxbdatabinding/GreeterServiceClient.java new file mode 100644 index 0000000000..c47d5143ba --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxb/src/main/java/org/apache/tuscany/sca/itest/jaxbdatabinding/GreeterServiceClient.java @@ -0,0 +1,34 @@ +/* + * 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.itest.jaxbdatabinding; + +import org.apache.tuscany.sca.itest.jaxbdatabinding.generated.PersonType; +import org.osoa.sca.annotations.AllowsPassByReference; + +/** + * + */ +@AllowsPassByReference +public interface GreeterServiceClient { + + // @DataType(name = "javax.xml.bind.JAXBElement") + PersonType greet(PersonType who); + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxb/src/main/java/org/apache/tuscany/sca/itest/jaxbdatabinding/GreeterServiceClientImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxb/src/main/java/org/apache/tuscany/sca/itest/jaxbdatabinding/GreeterServiceClientImpl.java new file mode 100644 index 0000000000..fbad08f5ac --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxb/src/main/java/org/apache/tuscany/sca/itest/jaxbdatabinding/GreeterServiceClientImpl.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.itest.jaxbdatabinding; + +import org.apache.tuscany.sca.itest.jaxbdatabinding.generated.PersonType; +import org.osoa.sca.annotations.Reference; +import org.osoa.sca.annotations.Service; + +/** + * + */ +@Service(GreeterServiceClient.class) +public class GreeterServiceClientImpl implements GreeterServiceClient { + + private GreeterService service; + + @Reference + public void setGreeterService(GreeterService service) { + this.service = service; + } + + /* + * (non-Javadoc) + * + * @see org.apache.tuscany.sca.itest.jaxbdatabinding.GreeterServiceClient#greet(org.apache.tuscany.sca.itest.jaxbdatabinding.generated.PersonType) + */ + public PersonType greet(PersonType who) { + return service.greet(who); + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxb/src/main/java/org/apache/tuscany/sca/itest/jaxbdatabinding/GreeterServiceImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxb/src/main/java/org/apache/tuscany/sca/itest/jaxbdatabinding/GreeterServiceImpl.java new file mode 100644 index 0000000000..0d6c0f01e1 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxb/src/main/java/org/apache/tuscany/sca/itest/jaxbdatabinding/GreeterServiceImpl.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.itest.jaxbdatabinding; + +import org.osoa.sca.annotations.Service; + +import org.apache.tuscany.sca.itest.jaxbdatabinding.generated.PersonType; + +/** + * + */ +@Service(GreeterService.class) +public class GreeterServiceImpl implements GreeterService { + + /* + * (non-Javadoc) + * + * @see org.apache.tuscany.sca.itest.jaxbdatabinding.GreeterService#greet(javax.xml.bind.JAXBElement) + */ + public PersonType greet(PersonType who) { + // System.out.println(who.toString()); + who.setGreeting("Hello"); + // System.out.println(who.toString()); + return who; + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxb/src/main/resources/greeterws.composite b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxb/src/main/resources/greeterws.composite new file mode 100644 index 0000000000..4a27a8ba5d --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxb/src/main/resources/greeterws.composite @@ -0,0 +1,67 @@ +<?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" xmlns:wsdli="http://www.w3.org/2006/01/wsdl-instance"
+ name="JAXBGreeterService">
+
+ <!-- Services Exposed via different bindings -->
+ <service name="JAXBGreeterServiceDefaultBinding">
+ <interface.java class="org.apache.tuscany.sca.itest.jaxbdatabinding.GreeterService" />
+ <reference>JAXBGreeterServiceComponent</reference>
+ </service>
+
+ <service name="JAXBGreeterServiceWebServiceBinding">
+ <interface.wsdl interface="http://apache.org/tuscany/sca/itest/databinding/services#wsdl.interface(GreeterPortType)"
+ wsdli:wsdlLocation="http://apache.org/tuscany/sca/itest/databinding/services wsdl/Greeter.wsdl" />
+ <binding.ws
+ endpoint="http://apache.org/tuscany/sca/itest/databinding/services#wsdl.endpoint(GreeterService/GreeterPort)"
+ location="wsdl/Greeter.wsdl" />
+ <reference>JAXBGreeterServiceComponent</reference>
+ </service>
+
+ <!-- Components used to implement the services -->
+ <component name="JAXBGreeterServiceComponent">
+ <implementation.java class="org.apache.tuscany.sca.itest.jaxbdatabinding.GreeterServiceImpl" />
+ </component>
+
+
+ <!-- Clients to test the services -->
+ <component name="DefaultJAXBGreeterServiceClient">
+ <implementation.java class="org.apache.tuscany.sca.itest.jaxbdatabinding.GreeterServiceClientImpl" />
+ <reference name="greeterService">JAXBGreeterServiceDefaultRef</reference>
+ </component>
+
+ <component name="JAXBGreeterServiceDefaultRef">
+ <implementation.java class="org.apache.tuscany.sca.itest.jaxbdatabinding.GreeterServiceImpl" />
+ </component>
+
+ <component name="WSJAXBGreeterServiceClient">
+ <implementation.java class="org.apache.tuscany.sca.itest.jaxbdatabinding.GreeterServiceClientImpl" />
+ <reference name="greeterService">JAXBGreeterServiceWSRef</reference>
+ </component>
+
+ <reference name="JAXBGreeterServiceWSRef">
+ <interface.wsdl interface="http://apache.org/tuscany/sca/itest/databinding/services#wsdl.interface(GreeterPortType)"
+ wsdli:wsdlLocation="http://apache.org/tuscany/sca/itest/databinding/services wsdl/Greeter.wsdl" />
+ <binding.ws
+ endpoint="http://apache.org/tuscany/sca/itest/databinding/services#wsdl.endpoint(GreeterService/GreeterPort)"
+ location="wsdl/Greeter.wsdl" />
+ </reference>
+
+</composite>
diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxb/src/main/resources/wsdl/Greeter.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxb/src/main/resources/wsdl/Greeter.wsdl new file mode 100644 index 0000000000..4977cfc274 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxb/src/main/resources/wsdl/Greeter.wsdl @@ -0,0 +1,88 @@ +<?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 targetNamespace="http://apache.org/tuscany/sca/itest/databinding/services"
+ xmlns:tns="http://apache.org/tuscany/sca/itest/databinding/services" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+ xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="Greeter">
+
+ <wsdl:types>
+ <xsd:schema xmlns="http://www.w3.org/2001/XMLSchema"
+ xmlns:dataTypes="http://apache.org/tuscany/sca/itest/databinding/types"
+ targetNamespace="http://apache.org/tuscany/sca/itest/databinding/services" elementFormDefault="qualified">
+
+ <xsd:import namespace="http://apache.org/tuscany/sca/itest/databinding/types" schemaLocation="../xsd/Person.xsd" />
+
+ <xsd:element name="Person" type="dataTypes:PersonType" />
+
+ <element name="greet">
+ <complexType>
+ <sequence>
+ <element name="person" type="dataTypes:PersonType" />
+ </sequence>
+ </complexType>
+ </element>
+
+ <element name="greetResponse">
+ <complexType>
+ <sequence>
+ <element name="person" type="dataTypes:PersonType" />
+ </sequence>
+ </complexType>
+ </element>
+
+
+ </xsd:schema>
+ </wsdl:types>
+
+ <wsdl:message name="request">
+ <wsdl:part element="tns:greet" name="parameters" />
+ </wsdl:message>
+
+ <wsdl:message name="response">
+ <wsdl:part element="tns:greetResponse" name="parameters" />
+ </wsdl:message>
+
+ <wsdl:portType name="GreeterPortType">
+ <wsdl:operation name="greet">
+ <wsdl:input message="tns:request" name="requestMsg" />
+ <wsdl:output message="tns:response" name="responseMsg" />
+ </wsdl:operation>
+ </wsdl:portType>
+
+
+ <wsdl:binding name="GreeterBinding" type="tns:GreeterPortType">
+ <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />
+ <wsdl:operation name="greet">
+ <wsdlsoap:operation soapAction="" />
+ <wsdl:input name="requestMsg">
+ <wsdlsoap:body use="literal" />
+ </wsdl:input>
+ <wsdl:output name="responseMsg">
+ <wsdlsoap:body use="literal" />
+ </wsdl:output>
+ </wsdl:operation>
+ </wsdl:binding>
+
+ <wsdl:service name="GreeterService">
+ <wsdl:port name="GreeterPort" binding="tns:GreeterBinding">
+ <wsdlsoap:address location="http://localhost:8080/services/JAXBGreeterServiceWebServiceBinding" />
+ </wsdl:port>
+ </wsdl:service>
+
+</wsdl:definitions>
diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxb/src/main/resources/xsd/Person.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxb/src/main/resources/xsd/Person.xsd new file mode 100644 index 0000000000..5f5021b15e --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxb/src/main/resources/xsd/Person.xsd @@ -0,0 +1,30 @@ +<?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. +--> +<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://apache.org/tuscany/sca/itest/databinding/types"> + + <xsd:complexType name="PersonType"> + <xsd:sequence> + <xsd:element name="firstName" type="xsd:string" /> + <xsd:element name="lastName" type="xsd:string" /> + <xsd:element name="greeting" type="xsd:string" /> + </xsd:sequence> + </xsd:complexType> +</xsd:schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxb/src/test/java/org/apache/tuscany/sca/itest/JaxbDatabindingTestCase.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxb/src/test/java/org/apache/tuscany/sca/itest/JaxbDatabindingTestCase.java new file mode 100644 index 0000000000..da65bea4b3 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxb/src/test/java/org/apache/tuscany/sca/itest/JaxbDatabindingTestCase.java @@ -0,0 +1,85 @@ +/* + * 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.itest; + +import junit.framework.Assert; +import junit.framework.TestCase; + +import org.apache.tuscany.api.SCARuntime; +import org.apache.tuscany.sca.itest.jaxbdatabinding.GreeterServiceClient; +import org.apache.tuscany.sca.itest.jaxbdatabinding.generated.ObjectFactory; +import org.apache.tuscany.sca.itest.jaxbdatabinding.generated.PersonType; +import org.junit.BeforeClass; +import org.junit.Test; +import org.osoa.sca.CompositeContext; +import org.osoa.sca.CurrentCompositeContext; + +/** + * + */ +public class JaxbDatabindingTestCase { + private GreeterServiceClient greeterClient; + + @BeforeClass + public static void init() { + SCARuntime.start("greeterws.composite"); + } + + private void setUpClient(String binding) throws Exception { + CompositeContext ctx = CurrentCompositeContext.getContext(); + greeterClient = ctx.locateService(GreeterServiceClient.class, binding + "JAXBGreeterServiceClient"); + } + + /** + * Invokes the JAXB Greet service using web service bindings with JAXB payload + * + * @throws Exception + */ + @Test + public void testWSGreet() throws Exception { + setUpClient("WS"); + greet(); + } + + /** + * Invokes the JAXB Greet service using default with JAXB payload + * + * @throws Exception + */ + @Test + public void testDefaultGreet() throws Exception { + setUpClient("Default"); + greet(); + } + + public void greet() { + ObjectFactory factory = new ObjectFactory(); + PersonType person = factory.createPersonType(); + person.setFirstName("George"); + person.setLastName("Doors"); + // System.out.println("Client side: " + person.getFirstName() + " " + person.getLastName() + " " + + // person.getGreeting()); + PersonType greetedPerson = greeterClient.greet(person); + // System.out.println("Client side: " + greetedPerson.getFirstName() + " " + greetedPerson.getLastName() + " " + + // greetedPerson.getGreeting()); + Assert.assertNotSame("greetedPerson.getGreeting() not set", "", greetedPerson.getGreeting()); + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxbgen/LICENSE.txt b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxbgen/LICENSE.txt new file mode 100644 index 0000000000..d645695673 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxbgen/LICENSE.txt @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed 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. diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxbgen/NOTICE.txt b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxbgen/NOTICE.txt new file mode 100644 index 0000000000..d83ebbe236 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxbgen/NOTICE.txt @@ -0,0 +1,14 @@ +${pom.name} +Copyright (c) 2005 - 2006 The Apache Software Foundation + +Apache Tuscany is an effort undergoing incubation at The Apache Software +Foundation (ASF), sponsored by the Apache Web Services PMC. Incubation is +required of all newly accepted projects until a further review indicates that +the infrastructure, communications, and decision making process have stabilized +in a manner consistent with other successful ASF projects. While incubation +status is not necessarily a reflection of the completeness or stability of the +code, it does indicate that the project has yet to be fully endorsed by the ASF. + +This product includes software developed by +The Apache Software Foundation (http://www.apache.org/). + diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxbgen/pom.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxbgen/pom.xml new file mode 100644 index 0000000000..13a65b7961 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxbgen/pom.xml @@ -0,0 +1,188 @@ +<?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> + <parent> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>databindings</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + </parent> + + <modelVersion>4.0.0</modelVersion> + + <artifactId>iTest-jaxbDatabinding</artifactId> + <version>${testing.version}</version> + <packaging>jar</packaging> + <name>JAXB Databinding Integration Test</name> + + <repositories> + <repository> + <snapshots> + <enabled>true</enabled> + </snapshots> + <id>java.net</id> + <name>java.net Maven 1.x Repository</name> + <url>https://maven-repository.dev.java.net/nonav/repository</url> + <layout>legacy</layout> + </repository> + </repositories> + + <pluginRepositories> + <pluginRepository> + <snapshots> + <enabled>true</enabled> + </snapshots> + <id>java.net</id> + <name>java.net Maven 1.x Repository</name> + <url>https://maven-repository.dev.java.net/repository</url> + <layout>legacy</layout> + </pluginRepository> + </pluginRepositories> + + <dependencies> + <dependency> + <groupId>org.apache.tuscany.sca.services.databinding</groupId> + <artifactId>databinding-jaxb</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + <scope>runtime</scope> + </dependency> + <dependency> + <groupId>org.apache.tuscany.sca.services.databinding</groupId> + <artifactId>databinding-sdo</artifactId> + <version>${pom.version}</version> + <scope>compile</scope> + </dependency> + <dependency> + <groupId>org.apache.tuscany.sca.extensions.axis2</groupId> + <artifactId>databinding-axiom</artifactId> + <version>${pom.version}</version> + <scope>compile</scope> + </dependency> + <dependency> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>itest-common</artifactId> + <version>${pom.version}</version> + <scope>compile</scope> + </dependency> + <dependency> + <groupId>javax.xml.bind</groupId> + <artifactId>jaxb-api</artifactId> + <version>2.1</version> + <scope>compile</scope> + </dependency> + <dependency> + <groupId>com.sun.xml.bind</groupId> + <artifactId>jaxb-impl</artifactId> + <version>2.1</version> + <scope>runtime</scope> + </dependency> + <dependency> + <groupId>com.sun.xml.ws</groupId> + <artifactId>jaxws-rt</artifactId> + <version>2.1</version> + </dependency> + </dependencies> + + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-dependency-plugin</artifactId> + <executions> + <execution> + <phase>generate-sources</phase> + <goals> + <goal>unpack</goal> + </goals> + <configuration> + <artifactItems> + <artifactItem> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>itest-common</artifactId> + <version>${project.version}</version> + <overWrite>true</overWrite> + <outputDirectory>${project.build.directory}/classes</outputDirectory> + </artifactItem> + </artifactItems> + </configuration> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>build-helper-maven-plugin</artifactId> + <version>1.0</version> + <executions> + <execution> + <id>add-test-source</id> + <phase>generate-sources</phase> + <goals> + <goal>add-test-source</goal> + </goals> + <configuration> + <sources> + <source>target/jaxb-source</source> + </sources> + </configuration> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>exec-maven-plugin</artifactId> + <executions> + <execution> + <id>generate-test-source</id> + <phase>process-resources</phase> + <goals> + <goal>java</goal> + </goals> + </execution> + </executions> + <configuration> + <mainClass>org.apache.tuscany.sca.itest.generate.Generate</mainClass> + <arguments> + <argument>${project.build.directory}</argument> + </arguments> + </configuration> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>jaxws-maven-plugin</artifactId> + <executions> + <execution> + <phase>process-resources</phase> + <goals> + <goal>wsimport</goal> + </goals> + </execution> + </executions> + <configuration> + <packageName>org.apache.tuscany.sca.itest.jaxbdatabinding.generated</packageName> + <wsdlDirectory>${project.build.directory}/classes/wsdl</wsdlDirectory> + <wsdlFiles> + <wsdlFile>Greeter.wsdl</wsdlFile> + </wsdlFiles> + <sourceDestDir>${project.build.directory}/jaxws-source</sourceDestDir> + <verbose>true</verbose> + </configuration> + </plugin> + </plugins> + </build> +</project> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxbgen/src/main/resources/generate/generate.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxbgen/src/main/resources/generate/generate.xml new file mode 100644 index 0000000000..0a148a40c8 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxbgen/src/main/resources/generate/generate.xml @@ -0,0 +1,113 @@ +<?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. +--> +<tns:Generate xmlns:tns="http://www.apache.org/tuscany/generate" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.example.org/generate generate.xsd "> + + + <Template> + <TemplateName>GreeterService.java.vm</TemplateName> + <TemplateTargetDir>../src/main/java/org/apache/tuscany/sca/itest/jaxbdatabinding</TemplateTargetDir> + <JavaPackage>org.apache.tuscany.sca.itest.jaxbdatabinding</JavaPackage> + </Template> + <Template> + <TemplateName>GreeterServiceImpl.java.vm</TemplateName> + <TemplateTargetDir>../src/main/java/org/apache/tuscany/sca/itest/jaxbdatabinding</TemplateTargetDir> + <JavaPackage>org.apache.tuscany.sca.itest.jaxbdatabinding</JavaPackage> + </Template> + <Template> + <TemplateName>GreeterServiceClient.java.vm</TemplateName> + <TemplateTargetDir>../src/main/java/org/apache/tuscany/sca/itest/jaxbdatabinding</TemplateTargetDir> + <JavaPackage>org.apache.tuscany.sca.itest.jaxbdatabinding</JavaPackage> + </Template> + <Template> + <TemplateName>GreeterServiceClientImpl.java.vm</TemplateName> + <TemplateTargetDir>../src/main/java/org/apache/tuscany/sca/itest/jaxbdatabinding</TemplateTargetDir> + <JavaPackage>org.apache.tuscany.sca.itest.jaxbdatabinding</JavaPackage> + </Template> + <Template> + <TemplateName>DatabindingTestCase.java.vm</TemplateName> + <TemplateTargetDir>../src/test/java/org/apache/tuscany/sca/itest/jaxbdatabinding</TemplateTargetDir> + <JavaPackage>org.apache.tuscany.sca.itest.jaxbdatabinding</JavaPackage> + </Template> + <Template> + <TemplateName>Greeter.wsdl.vm</TemplateName> + <TemplateTargetDir>classes/wsdl</TemplateTargetDir> + </Template> + <InputFile> + <FileName>Person.xsd</FileName> + <FilePath>xsd</FilePath> + <JavaPackage>org.apache.tuscany.sca.itest.jaxbdatabinding.generated</JavaPackage> + <Factory>ObjectFactory</Factory> + <Namespace>http://apache.org/tuscany/sca/itest/databinding/types</Namespace> + <Prefix>p</Prefix> + <Type> + <TypeName>PersonType</TypeName> + <CreateTypeCode> + ObjectFactory factory = new ObjectFactory(); + param = factory.createPersonType(); + param.setFirstName("George"); + param.setLastName("Doors"); + </CreateTypeCode> + <ModifyTypeCode> + param.setGreeting("Hello"); + </ModifyTypeCode> + <ResultComparison> + assertNotSame("greetedPerson.getGreeting() not set", "", result.getGreeting()); + </ResultComparison> + </Type> + </InputFile> + <InputFile> + <FileName>Interop.xsd</FileName> + <FilePath>xsd</FilePath> + <JavaPackage>org.apache.tuscany.sca.itest.jaxbdatabinding.generated</JavaPackage> + <Factory>ObjectFactory</Factory> + <Namespace>http://www.apache.org/tuscany/interop</Namespace> + <Prefix>i</Prefix> + <Type> + <TypeName>SimpleTypeWithNameComplexType</TypeName> + <CreateTypeCode> + ObjectFactory factory = new ObjectFactory(); + param = factory.createSimpleTypeWithNameComplexType(); + param.setSimpleTypeWithNameElement("SomeText"); + </CreateTypeCode> + <ModifyTypeCode> + param.setSimpleTypeWithNameElement("SomeChangedText");; + </ModifyTypeCode> + <ResultComparison> + assertEquals("data not changed corretly", "SomeChangedText", result.getSimpleTypeWithNameElement()); + </ResultComparison> + </Type> + <Type> + <TypeName>ComplexTypeWithContentType</TypeName> + <CreateTypeCode> + ObjectFactory factory = new ObjectFactory(); + param = factory.createComplexTypeWithContentType(); + param.setSimpleTypeWithName("SomeText"); + </CreateTypeCode> + <ModifyTypeCode> + param.setSimpleTypeWithName("SomeChangedText");; + </ModifyTypeCode> + <ResultComparison> + assertEquals("data not changed corretly", "SomeChangedText", result.getSimpleTypeWithName()); + </ResultComparison> + </Type> + </InputFile> +</tns:Generate> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxbgen/src/main/resources/greeter.composite b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxbgen/src/main/resources/greeter.composite new file mode 100644 index 0000000000..867829c1b6 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/jaxbgen/src/main/resources/greeter.composite @@ -0,0 +1,68 @@ +<?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" xmlns:wsdli="http://www.w3.org/2006/01/wsdl-instance"
+ name="JAXBGreeterService">
+
+ <!-- Services Exposed via different bindings -->
+ <service name="JAXBGreeterServiceDefaultBinding">
+ <interface.java class="org.apache.tuscany.sca.itest.jaxbdatabinding.GreeterService" />
+ <reference>JAXBGreeterServiceComponent</reference>
+ </service>
+
+ <service name="GreeterServiceWebServiceBinding">
+ <interface.wsdl interface="http://apache.org/tuscany/sca/itest/databinding/services#wsdl.interface(GreeterPortType)"
+ wsdli:wsdlLocation="http://apache.org/tuscany/sca/itest/databinding/services wsdl/Greeter.wsdl" />
+ <binding.ws
+ endpoint="http://apache.org/tuscany/sca/itest/databinding/services#wsdl.endpoint(GreeterService/GreeterPort)"
+ location="wsdl/Greeter.wsdl" />
+ <reference>JAXBGreeterServiceComponent</reference>
+ </service>
+
+ <!-- Components used to implement the services -->
+ <component name="JAXBGreeterServiceComponent">
+ <implementation.java class="org.apache.tuscany.sca.itest.jaxbdatabinding.GreeterServiceImpl" />
+ </component>
+
+
+ <!-- Clients to test the services -->
+ <component name="DefaultGreeterServiceClient">
+ <implementation.java class="org.apache.tuscany.sca.itest.jaxbdatabinding.GreeterServiceClientImpl" />
+ <!--reference name="greeterService">JAXBGreeterServiceDefaultRef</reference-->
+ <reference name="greeterService">JAXBGreeterServiceComponent</reference>
+ </component>
+
+ <reference name="JAXBGreeterServiceDefaultRef">
+ <interface.java class="org.apache.tuscany.sca.itest.jaxbdatabinding.GreeterService" />
+ </reference>
+
+ <component name="WSGreeterServiceClient">
+ <implementation.java class="org.apache.tuscany.sca.itest.jaxbdatabinding.GreeterServiceClientImpl" />
+ <reference name="greeterService">JAXBGreeterServiceWSRef</reference>
+ </component>
+
+ <reference name="JAXBGreeterServiceWSRef">
+ <interface.wsdl interface="http://apache.org/tuscany/sca/itest/databinding/services#wsdl.interface(GreeterPortType)"
+ wsdli:wsdlLocation="http://apache.org/tuscany/sca/itest/databinding/services wsdl/Greeter.wsdl" />
+ <binding.ws
+ endpoint="http://apache.org/tuscany/sca/itest/databinding/services#wsdl.endpoint(GreeterService/GreeterPort)"
+ location="wsdl/Greeter.wsdl" />
+ </reference>
+
+</composite>
diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/pom.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/pom.xml new file mode 100644 index 0000000000..f1be232286 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/pom.xml @@ -0,0 +1,47 @@ +<?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> + <parent> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>sca-itest</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + <relativePath>../pom.xml</relativePath> + </parent> + <modelVersion>4.0.0</modelVersion> + + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>databindings</artifactId> + <name>SCA Databindings Integration Tests</name> + <version>0.1-integration-incubating-SNAPSHOT</version> + + + <packaging>pom</packaging> + <build> + <defaultGoal>install</defaultGoal> + </build> + <modules> + <module>jaxb</module> + <module>sdo</module> + <module>transformers</module> + <!-- module>xmlbeans</module --> + <!-- module>interComposite</module --> + <!-- module>intraNestedComposite</module --> + </modules> +</project> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdo/pom.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdo/pom.xml new file mode 100644 index 0000000000..25de0f25d6 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdo/pom.xml @@ -0,0 +1,148 @@ +<?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> + <parent> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>databindings</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + </parent> + + <modelVersion>4.0.0</modelVersion> + + <artifactId>iTest-sdoDatabinding</artifactId> + <version>${testing.version}</version> + <packaging>jar</packaging> + <name>Test Suite for SDO Databindings</name> + + <repositories> + <repository> + <snapshots> + <enabled>true</enabled> + </snapshots> + <id>java.net</id> + <name>java.net Maven 1.x Repository</name> + <url>https://maven-repository.dev.java.net/nonav/repository</url> + <layout>legacy</layout> + </repository> + </repositories> + + <pluginRepositories> + <pluginRepository> + <snapshots> + <enabled>true</enabled> + </snapshots> + <id>java.net</id> + <name>java.net Maven 1.x Repository</name> + <url>https://maven-repository.dev.java.net/repository</url> + <layout>legacy</layout> + </pluginRepository> + </pluginRepositories> + + <dependencies> + <dependency> + <groupId>org.apache.tuscany.sca.services.databinding</groupId> + <artifactId>databinding-jaxb</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + <scope>runtime</scope> + </dependency> + <dependency> + <groupId>org.apache.tuscany.sca.services.databinding</groupId> + <artifactId>databinding-sdo</artifactId> + <version>${pom.version}</version> + <scope>compile</scope> + </dependency> + <dependency> + <groupId>org.apache.tuscany.sca.extensions.axis2</groupId> + <artifactId>databinding-axiom</artifactId> + <version>${pom.version}</version> + <scope>compile</scope> + </dependency> + <!-- dependency> + <groupId>javax.xml.bind</groupId> + <artifactId>jaxb-api</artifactId> + <version>2.1</version> + <scope>compile</scope> + </dependency --> + <!-- dependency> + <groupId>com.sun.xml.bind</groupId> + <artifactId>jaxb-impl</artifactId> + <version>2.1</version> + <scope>runtime</scope> + </dependency --> + <!-- dependency> + <groupId>com.sun.xml.ws</groupId> + <artifactId>jaxws-rt</artifactId> + <version>2.1</version> + </dependency --> + </dependencies> + + <build> + <plugins> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>build-helper-maven-plugin</artifactId> + <version>1.0</version> + <executions> + <execution> + <id>add-test-source</id> + <phase>generate-sources</phase> + <goals> + <goal>add-test-source</goal> + </goals> + <configuration> + <sources> + <source>target/sdo-source</source> + </sources> + </configuration> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.apache.tuscany.sdo</groupId> + <artifactId>tuscany-sdo-plugin</artifactId> + <version>1.0-incubator-SNAPSHOT</version> + <executions> + <execution> + <id>generate-sdo</id> + <phase>generate-sources</phase> + <configuration> + <schemaFiles> + <configuration> + <fileName>${basedir}/src/main/resources/wsdl/Greeter.wsdl</fileName> + <javaPackage>org.apache.tuscany.sca.itest.databinding.services</javaPackage> + </configuration> + <configuration> + <fileName>${basedir}/src/main/resources/xsd/Person.xsd</fileName> + <javaPackage>org.apache.tuscany.sca.itest.databinding.types</javaPackage> + </configuration> + </schemaFiles> + <noNotification>true</noNotification> + <noContainment>true</noContainment> + <noUnsettable>true</noUnsettable> + </configuration> + <goals> + <goal>generate</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> +</project> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdo/src/main/java/org/apache/tuscany/sca/itest/sdodatabinding/GreeterService.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdo/src/main/java/org/apache/tuscany/sca/itest/sdodatabinding/GreeterService.java new file mode 100644 index 0000000000..61def7f9f6 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdo/src/main/java/org/apache/tuscany/sca/itest/sdodatabinding/GreeterService.java @@ -0,0 +1,34 @@ +/* + * 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.itest.sdodatabinding; + +import org.apache.tuscany.sca.itest.databinding.types.PersonType; +import org.osoa.sca.annotations.Remotable; + +/** + * + */ +@Remotable +public interface GreeterService { + + // @DataType(name = "commonj.sdo.DataObject") + PersonType greet(PersonType who); + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdo/src/main/java/org/apache/tuscany/sca/itest/sdodatabinding/GreeterServiceClient.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdo/src/main/java/org/apache/tuscany/sca/itest/sdodatabinding/GreeterServiceClient.java new file mode 100644 index 0000000000..87de5f5d3b --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdo/src/main/java/org/apache/tuscany/sca/itest/sdodatabinding/GreeterServiceClient.java @@ -0,0 +1,34 @@ +/* + * 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.itest.sdodatabinding; + +import org.apache.tuscany.sca.itest.databinding.types.PersonType; +import org.osoa.sca.annotations.AllowsPassByReference; + +/** + * + */ +@AllowsPassByReference +public interface GreeterServiceClient { + + // @DataType(name = "commonj.sdo.DataObject") + PersonType greet(PersonType who); + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdo/src/main/java/org/apache/tuscany/sca/itest/sdodatabinding/GreeterServiceClientImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdo/src/main/java/org/apache/tuscany/sca/itest/sdodatabinding/GreeterServiceClientImpl.java new file mode 100644 index 0000000000..3dcf34bb59 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdo/src/main/java/org/apache/tuscany/sca/itest/sdodatabinding/GreeterServiceClientImpl.java @@ -0,0 +1,47 @@ +/* + * 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.itest.sdodatabinding; + +import org.apache.tuscany.sca.itest.databinding.types.PersonType; +import org.osoa.sca.annotations.Reference; +import org.osoa.sca.annotations.Service; + +/** + * + */ +@Service(GreeterServiceClient.class) +public class GreeterServiceClientImpl implements GreeterServiceClient { + private GreeterService service; + + @Reference + public void setGreeterService(GreeterService service) { + this.service = service; + } + + /* + * (non-Javadoc) + * + * @see org.apache.tuscany.sca.itest.sdodatabinding.GreeterServiceClient#greet(org.apache.tuscany.sca.itest.sdodatabinding.generated.PersonType) + */ + public PersonType greet(PersonType who) { + return service.greet(who); + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdo/src/main/java/org/apache/tuscany/sca/itest/sdodatabinding/GreeterServiceImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdo/src/main/java/org/apache/tuscany/sca/itest/sdodatabinding/GreeterServiceImpl.java new file mode 100644 index 0000000000..6bbc957a0b --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdo/src/main/java/org/apache/tuscany/sca/itest/sdodatabinding/GreeterServiceImpl.java @@ -0,0 +1,52 @@ +/* + * 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.itest.sdodatabinding; + +import org.apache.tuscany.sca.itest.databinding.types.PersonType; +import org.apache.tuscany.spi.annotation.Autowire; +import org.osoa.sca.annotations.Service; + +import commonj.sdo.DataObject; +import commonj.sdo.helper.HelperContext; + +/** + * + */ +@Service(GreeterService.class) +public class GreeterServiceImpl implements GreeterService { + /** + * It will be injected with a HelperContext for the composite + */ + @Autowire + protected HelperContext helperContext; + /* + * (non-Javadoc) + * + * @see org.apache.tuscany.sca.itest.sdodatabinding.GreeterService#greet(org.apache.tuscany.sca.itest.sdodatabinding.generated.PersonType) + */ + public PersonType greet(PersonType who) { + System.out.println(helperContext.getXMLHelper().save((DataObject) who, "http://person/", "person")); + PersonType copy = (PersonType) helperContext.getCopyHelper().copy((DataObject) who); + copy.setGreeting("Hello"); + System.out.println(who.toString()); + return copy; + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdo/src/main/resources/greetersdo.composite b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdo/src/main/resources/greetersdo.composite new file mode 100644 index 0000000000..e419e1487a --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdo/src/main/resources/greetersdo.composite @@ -0,0 +1,70 @@ +<?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"
+ xmlns:wsdli="http://www.w3.org/2006/01/wsdl-instance"
+ xmlns:dbsdo="http://tuscany.apache.org/xmlns/sca/databinding/sdo/1.0"
+ name="SDOGreeterService">
+
+ <!-- SDO factory classes -->
+ <dbsdo:import.sdo factory="org.apache.tuscany.sca.itest.databinding.services.ServicesFactory"/>
+ <dbsdo:import.sdo factory="org.apache.tuscany.sca.itest.databinding.types.TypesFactory"/>
+
+ <!-- Services Exposed via different bindings -->
+ <service name="SDOGreeterServiceDefaultBinding">
+ <interface.java class="org.apache.tuscany.sca.itest.sdodatabinding.GreeterService" />
+ <reference>SDOGreeterServiceComponent</reference>
+ </service>
+
+ <service name="SDOGreeterServiceWebServiceBinding">
+ <interface.wsdl interface="http://apache.org/tuscany/sca/itest/databinding/services#wsdl.interface(GreeterPortType)"
+ wsdli:wsdlLocation="http://apache.org/tuscany/sca/itest/databinding/services wsdl/Greeter.wsdl" />
+ <binding.ws
+ endpoint="http://apache.org/tuscany/sca/itest/databinding/services#wsdl.endpoint(GreeterService/GreeterPort)"
+ location="wsdl/Greeter.wsdl" />
+ <reference>SDOGreeterServiceComponent</reference>
+ </service>
+
+ <!-- Components used to implement the services -->
+ <component name="SDOGreeterServiceComponent">
+ <implementation.java class="org.apache.tuscany.sca.itest.sdodatabinding.GreeterServiceImpl" />
+ </component>
+
+
+ <!-- Clients to test the services -->
+ <component name="DefaultSDOGreeterServiceClient">
+ <implementation.java class="org.apache.tuscany.sca.itest.sdodatabinding.GreeterServiceClientImpl" />
+ <reference name="greeterService">SDOGreeterServiceComponent</reference>
+ </component>
+
+
+ <component name="WSSDOGreeterServiceClient">
+ <implementation.java class="org.apache.tuscany.sca.itest.sdodatabinding.GreeterServiceClientImpl" />
+ <reference name="greeterService">SDOGreeterServiceWSRef</reference>
+ </component>
+
+ <reference name="SDOGreeterServiceWSRef">
+ <interface.wsdl interface="http://apache.org/tuscany/sca/itest/databinding/services#wsdl.interface(GreeterPortType)"
+ wsdli:wsdlLocation="http://apache.org/tuscany/sca/itest/databinding/services wsdl/Greeter.wsdl" />
+ <binding.ws
+ endpoint="http://apache.org/tuscany/sca/itest/databinding/services#wsdl.endpoint(GreeterService/GreeterPort)"
+ location="wsdl/Greeter.wsdl" />
+ </reference>
+
+</composite>
diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdo/src/main/resources/wsdl/Greeter.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdo/src/main/resources/wsdl/Greeter.wsdl new file mode 100644 index 0000000000..6960178f2a --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdo/src/main/resources/wsdl/Greeter.wsdl @@ -0,0 +1,80 @@ +<?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 targetNamespace="http://apache.org/tuscany/sca/itest/databinding/services"
+ xmlns:tns="http://apache.org/tuscany/sca/itest/databinding/services" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+ xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="Greeter">
+
+ <wsdl:types>
+ <xsd:schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:p="http://apache.org/tuscany/sca/itest/databinding/types"
+ targetNamespace="http://apache.org/tuscany/sca/itest/databinding/services" elementFormDefault="qualified">
+
+ <xsd:import namespace="http://apache.org/tuscany/sca/itest/databinding/types" schemaLocation="../xsd/Person.xsd" />
+ <!--
+ <xsd:element name="Person" type="p:PersonType" />
+ -->
+
+ <element name="greet">
+ <complexType>
+ <sequence>
+ <element name="parm" type="p:PersonType" />
+ </sequence>
+ </complexType>
+ </element>
+
+
+ </xsd:schema>
+ </wsdl:types>
+
+ <wsdl:message name="request">
+ <wsdl:part element="tns:greet" name="parameters" />
+ </wsdl:message>
+
+ <wsdl:message name="response">
+ <wsdl:part element="tns:greet" name="parameters" />
+ </wsdl:message>
+
+ <wsdl:portType name="GreeterPortType">
+ <wsdl:operation name="greet">
+ <wsdl:input message="tns:request" name="requestMsg" />
+ <wsdl:output message="tns:response" name="responseMsg" />
+ </wsdl:operation>
+ </wsdl:portType>
+
+
+ <wsdl:binding name="GreeterBinding" type="tns:GreeterPortType">
+ <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />
+ <wsdl:operation name="greet">
+ <wsdlsoap:operation soapAction="" />
+ <wsdl:input name="requestMsg">
+ <wsdlsoap:body use="literal" />
+ </wsdl:input>
+ <wsdl:output name="responseMsg">
+ <wsdlsoap:body use="literal" />
+ </wsdl:output>
+ </wsdl:operation>
+ </wsdl:binding>
+
+ <wsdl:service name="GreeterService">
+ <wsdl:port name="GreeterPort" binding="tns:GreeterBinding">
+ <wsdlsoap:address location="http://localhost:8080/services/SDOGreeterServiceWebServiceBinding" />
+ </wsdl:port>
+ </wsdl:service>
+
+</wsdl:definitions>
diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdo/src/main/resources/xsd/Person.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdo/src/main/resources/xsd/Person.xsd new file mode 100644 index 0000000000..5f5021b15e --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdo/src/main/resources/xsd/Person.xsd @@ -0,0 +1,30 @@ +<?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. +--> +<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" + targetNamespace="http://apache.org/tuscany/sca/itest/databinding/types"> + + <xsd:complexType name="PersonType"> + <xsd:sequence> + <xsd:element name="firstName" type="xsd:string" /> + <xsd:element name="lastName" type="xsd:string" /> + <xsd:element name="greeting" type="xsd:string" /> + </xsd:sequence> + </xsd:complexType> +</xsd:schema> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdo/src/test/java/org/apache/tuscany/sca/itest/SdoDatabindingTestCase.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdo/src/test/java/org/apache/tuscany/sca/itest/SdoDatabindingTestCase.java new file mode 100644 index 0000000000..c2df998f4b --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdo/src/test/java/org/apache/tuscany/sca/itest/SdoDatabindingTestCase.java @@ -0,0 +1,88 @@ +/* + * 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.itest; + +import junit.framework.TestCase; + +import org.apache.tuscany.api.SCARuntime; +import org.apache.tuscany.sca.itest.databinding.types.PersonType; +import org.apache.tuscany.sca.itest.databinding.types.TypesFactory; +import org.apache.tuscany.sca.itest.sdodatabinding.GreeterServiceClient; +import org.osoa.sca.CompositeContext; +import org.osoa.sca.CurrentCompositeContext; + +/** + * + */ +public class SdoDatabindingTestCase extends TestCase { + + GreeterServiceClient greeterClient; + private static boolean initalised = false; + + protected void setUp() throws Exception { + if (!initalised) { + SCARuntime.start("greetersdo.composite"); + initalised = true; + } + } + + protected void tearDown() { + + } + + private void setUpClient(String ext) throws Exception { + CompositeContext ctx = CurrentCompositeContext.getContext(); + greeterClient = ctx.locateService(GreeterServiceClient.class, ext + "SDOGreeterServiceClient"); + } + + /** + * Invokes the SDO Greet service using web service bindings with SDO payload + * + * @throws Exception + */ + public void testWSGreet() throws Exception { + setUpClient("WS"); + greet(); + } + + /** + * Invokes the SDO Greet service using default bindings with SDO payload + * + * @throws Exception + */ + public void testDefaultGreet() throws Exception { + setUpClient("Default"); + greet(); + } + + public void greet() { + TypesFactory factory = TypesFactory.INSTANCE; + PersonType person = factory.createPersonType(); + person.setFirstName("George"); + person.setLastName("Doors"); + // System.out.println("Client side: " + person.getFirstName() + " " + + // person.getLastName() + " " + person.getGreeting()); + PersonType greetedPerson = greeterClient.greet(person); + // System.out.println("Client side: " + greetedPerson.getFirstName() + " + // " + greetedPerson.getLastName() + " " + greetedPerson.getGreeting()); + assertNotSame("greetedPerson.getGreeting() not set", "", greetedPerson.getGreeting()); + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdogen/LICENSE.txt b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdogen/LICENSE.txt new file mode 100644 index 0000000000..d645695673 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdogen/LICENSE.txt @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed 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. diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdogen/NOTICE.txt b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdogen/NOTICE.txt new file mode 100644 index 0000000000..92ca715fbe --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdogen/NOTICE.txt @@ -0,0 +1,14 @@ +${pom.name} +Copyright (c) 2005 - 2007 The Apache Software Foundation + +Apache Tuscany is an effort undergoing incubation at The Apache Software +Foundation (ASF), sponsored by the Apache Web Services PMC. Incubation is +required of all newly accepted projects until a further review indicates that +the infrastructure, communications, and decision making process have stabilized +in a manner consistent with other successful ASF projects. While incubation +status is not necessarily a reflection of the completeness or stability of the +code, it does indicate that the project has yet to be fully endorsed by the ASF. + +This product includes software developed by +The Apache Software Foundation (http://www.apache.org/). + diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdogen/pom.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdogen/pom.xml new file mode 100644 index 0000000000..6b16fa2205 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdogen/pom.xml @@ -0,0 +1,183 @@ +<?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> + <parent> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>databindings</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + </parent> + + <modelVersion>4.0.0</modelVersion> + + <artifactId>iTest-sdoDatabinding</artifactId> + <version>${testing.version}</version> + <packaging>jar</packaging> + <name>Test Suite for SDO Databindings</name> + + <repositories> + <repository> + <snapshots> + <enabled>true</enabled> + </snapshots> + <id>java.net</id> + <name>java.net Maven 1.x Repository</name> + <url>https://maven-repository.dev.java.net/nonav/repository</url> + <layout>legacy</layout> + </repository> + </repositories> + + <pluginRepositories> + <pluginRepository> + <snapshots> + <enabled>true</enabled> + </snapshots> + <id>java.net</id> + <name>java.net Maven 1.x Repository</name> + <url>https://maven-repository.dev.java.net/repository</url> + <layout>legacy</layout> + </pluginRepository> + </pluginRepositories> + + <dependencies> + <dependency> + <groupId>org.apache.tuscany.sca.services.databinding</groupId> + <artifactId>databinding-jaxb</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + <scope>runtime</scope> + </dependency> + <dependency> + <groupId>org.apache.tuscany.sca.services.databinding</groupId> + <artifactId>databinding-sdo</artifactId> + <version>${pom.version}</version> + <scope>compile</scope> + </dependency> + <dependency> + <groupId>org.apache.tuscany.sca.extensions.axis2</groupId> + <artifactId>databinding-axiom</artifactId> + <version>${pom.version}</version> + <scope>compile</scope> + </dependency> + <dependency> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>itest-common</artifactId> + <version>${pom.version}</version> + <scope>compile</scope> + </dependency> + </dependencies> + + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-dependency-plugin</artifactId> + <executions> + <execution> + <phase>generate-sources</phase> + <goals> + <goal>unpack</goal> + </goals> + <configuration> + <artifactItems> + <artifactItem> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>itest-common</artifactId> + <version>${project.version}</version> + <overWrite>true</overWrite> + <outputDirectory>${project.build.directory}/classes</outputDirectory> + </artifactItem> + </artifactItems> + </configuration> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>build-helper-maven-plugin</artifactId> + <version>1.0</version> + <executions> + <execution> + <id>add-test-source</id> + <phase>generate-sources</phase> + <goals> + <goal>add-test-source</goal> + </goals> + <configuration> + <sources> + <source>target/sdo-source</source> + </sources> + </configuration> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>exec-maven-plugin</artifactId> + <executions> + <execution> + <id>generate-test-source</id> + <phase>process-resources</phase> + <goals> + <goal>java</goal> + </goals> + </execution> + </executions> + <configuration> + <mainClass>org.apache.tuscany.sca.itest.generate.Generate</mainClass> + <arguments> + <argument>${project.build.directory}</argument> + </arguments> + </configuration> + </plugin> + <plugin> + <groupId>org.apache.tuscany.sdo</groupId> + <artifactId>tuscany-sdo-plugin</artifactId> + <version>1.0-incubator-SNAPSHOT</version> + <executions> + <execution> + <id>generate-sdo</id> + <phase>process-resources</phase> + <configuration> + <schemaFiles> + <configuration> + <fileName>${project.build.directory}/classes/wsdl/Greeter.wsdl</fileName> + <javaPackage>org.apache.tuscany.sca.itest.databinding.services</javaPackage> + </configuration> + <configuration> + <fileName>${project.build.directory}/classes/xsd/Person.xsd</fileName> + <javaPackage>org.apache.tuscany.sca.itest.databinding.types</javaPackage> + </configuration> + <configuration> + <fileName>${project.build.directory}/classes/xsd/Interop.xsd</fileName> + <javaPackage>org.apache.tuscany.interop</javaPackage> + </configuration> + </schemaFiles> + <noNotification>true</noNotification> + <noContainment>true</noContainment> + <noUnsettable>true</noUnsettable> + </configuration> + <goals> + <goal>generate</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> +</project> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdogen/src/main/resources/generate/generate.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdogen/src/main/resources/generate/generate.xml new file mode 100644 index 0000000000..b87ddc8f02 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdogen/src/main/resources/generate/generate.xml @@ -0,0 +1,114 @@ +<?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. +--> +<tns:Generate xmlns:tns="http://www.apache.org/tuscany/generate" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.example.org/generate generate.xsd "> + <Template> + <TemplateName>pom.xml.vm</TemplateName> + <TemplateTargetDir>..</TemplateTargetDir> + </Template> + <Template> + <TemplateName>greeter.composite.vm</TemplateName> + <TemplateTargetDir>classes</TemplateTargetDir> + </Template> + <Template> + <TemplateName>GreeterService.java.vm</TemplateName> + <TemplateTargetDir>../src/main/java/org/apache/tuscany/sca/itest/sdodatabinding</TemplateTargetDir> + <JavaPackage>org.apache.tuscany.sca.itest.sdodatabinding</JavaPackage> + </Template> + <Template> + <TemplateName>GreeterServiceImpl.java.vm</TemplateName> + <TemplateTargetDir>../src/main/java/org/apache/tuscany/sca/itest/sdodatabinding</TemplateTargetDir> + <JavaPackage>org.apache.tuscany.sca.itest.sdodatabinding</JavaPackage> + </Template> + <Template> + <TemplateName>GreeterServiceClientImpl.java.vm</TemplateName> + <TemplateTargetDir>../src/main/java/org/apache/tuscany/sca/itest/sdodatabinding</TemplateTargetDir> + <JavaPackage>org.apache.tuscany.sca.itest.sdodatabinding</JavaPackage> + </Template> + <Template> + <TemplateName>DatabindingTestCase.java.vm</TemplateName> + <TemplateTargetDir>../src/test/java/org/apache/tuscany/sca/itest/sdodatabinding</TemplateTargetDir> + <JavaPackage>org.apache.tuscany.sca.itest.sdodatabinding</JavaPackage> + </Template> + <Template> + <TemplateName>Greeter.wsdl.vm</TemplateName> + <TemplateTargetDir>classes/wsdl</TemplateTargetDir> + </Template> + <InputFile> + <FileName>Person.xsd</FileName> + <FilePath>xsd</FilePath> + <JavaPackage>org.apache.tuscany.sca.itest.databinding.types</JavaPackage> + <Factory>TypesFactory</Factory> + <Namespace>http://apache.org/tuscany/sca/itest/databinding/types</Namespace> + <Prefix>p</Prefix> + <Type> + <TypeName>PersonType</TypeName> + <CreateTypeCode> + TypesFactory factory = TypesFactory.INSTANCE; + param = factory.createPersonType(); + param.setFirstName("George"); + param.setLastName("Doors"); + </CreateTypeCode> + <ModifyTypeCode> + param.setGreeting("Hello"); + </ModifyTypeCode> + <ResultComparison> + assertNotSame("greetedPerson.getGreeting() not set", "", result.getGreeting()); + </ResultComparison> + </Type> + </InputFile> + <InputFile> + <FileName>Interop.xsd</FileName> + <FilePath>xsd</FilePath> + <JavaPackage>org.apache.tuscany.interop</JavaPackage> + <Factory>InteropFactory</Factory> + <Namespace>http://www.apache.org/tuscany/interop</Namespace> + <Prefix>i</Prefix> + <Type> + <TypeName>SimpleTypeWithNameComplexType</TypeName> + <CreateTypeCode> + InteropFactory factory = InteropFactory.INSTANCE; + param = factory.createSimpleTypeWithNameComplexType(); + param.setSimpleTypeWithNameElement("SomeText"); + </CreateTypeCode> + <ModifyTypeCode> + param.setSimpleTypeWithNameElement("SomeChangedText");; + </ModifyTypeCode> + <ResultComparison> + assertEquals("data not changed corretly", "SomeChangedText", result.getSimpleTypeWithNameElement()); + </ResultComparison> + </Type> + <Type> + <TypeName>ComplexTypeWithContentType</TypeName> + <CreateTypeCode> + InteropFactory factory = InteropFactory.INSTANCE; + param = factory.createComplexTypeWithContentType(); + param.setSimpleTypeWithName("SomeText"); + </CreateTypeCode> + <ModifyTypeCode> + param.setSimpleTypeWithName("SomeChangedText");; + </ModifyTypeCode> + <ResultComparison> + assertEquals("data not changed corretly", "SomeChangedText", result.getSimpleTypeWithName()); + </ResultComparison> + </Type> + </InputFile> +</tns:Generate> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdogen/src/main/resources/generate/greeter.composite.vm b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdogen/src/main/resources/generate/greeter.composite.vm new file mode 100644 index 0000000000..301c3de322 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/sdogen/src/main/resources/generate/greeter.composite.vm @@ -0,0 +1,75 @@ +<?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" + xmlns:wsdli="http://www.w3.org/2006/01/wsdl-instance" + xmlns:dbsdo="http://tuscany.apache.org/xmlns/sca/databinding/sdo/1.0" + name="SDOGreeterService"> + + <dbsdo:import.sdo factory="org.apache.tuscany.sca.itest.databinding.services.ServicesFactory"/> + <!-- SDO factory classes --> + #foreach( $file in $fileList ) + <dbsdo:import.sdo factory="$file.getJavaPackage().$file.getFactory()"/> + #end + + <!-- Services Exposed via different bindings --> + <service name="SDOGreeterServiceDefaultBinding"> + <interface.java class="org.apache.tuscany.sca.itest.sdodatabinding.GreeterService" /> + <reference>SDOGreeterServiceComponent</reference> + </service> + + <service name="GreeterServiceWebServiceBinding"> + <interface.wsdl interface="http://apache.org/tuscany/sca/itest/databinding/services#wsdl.interface(GreeterPortType)" + wsdli:wsdlLocation="http://apache.org/tuscany/sca/itest/databinding/services wsdl/Greeter.wsdl" /> + <binding.ws + endpoint="http://apache.org/tuscany/sca/itest/databinding/services#wsdl.endpoint(GreeterService/GreeterPort)" + location="wsdl/Greeter.wsdl" /> + <reference>SDOGreeterServiceComponent</reference> + </service> + + <!-- Components used to implement the services --> + <component name="SDOGreeterServiceComponent"> + <implementation.java class="org.apache.tuscany.sca.itest.sdodatabinding.GreeterServiceImpl" /> + </component> + + + <!-- Clients to test the services --> + <component name="DefaultGreeterServiceClient"> + <implementation.java class="org.apache.tuscany.sca.itest.sdodatabinding.GreeterServiceClientImpl" /> + <!--reference name="greeterService">SDOGreeterServiceDefaultRef</reference--> + <reference name="greeterService">SDOGreeterServiceComponent</reference> + </component> + + <reference name="SDOGreeterServiceDefaultRef"> + <interface.java class="org.apache.tuscany.sca.itest.sdodatabinding.GreeterService" /> + </reference> + + <component name="WSGreeterServiceClient"> + <implementation.java class="org.apache.tuscany.sca.itest.sdodatabinding.GreeterServiceClientImpl" /> + <reference name="greeterService">SDOGreeterServiceWSRef</reference> + </component> + + <reference name="SDOGreeterServiceWSRef"> + <interface.wsdl interface="http://apache.org/tuscany/sca/itest/databinding/services#wsdl.interface(GreeterPortType)" + wsdli:wsdlLocation="http://apache.org/tuscany/sca/itest/databinding/services wsdl/Greeter.wsdl" /> + <binding.ws + endpoint="http://apache.org/tuscany/sca/itest/databinding/services#wsdl.endpoint(GreeterService/GreeterPort)" + location="wsdl/Greeter.wsdl" /> + </reference> +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/.ruleset b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/.ruleset new file mode 100644 index 0000000000..e615e93a4b --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/.ruleset @@ -0,0 +1,172 @@ +<?xml version="1.0" encoding="UTF-8"?> +<ruleset name="pmd-eclipse"> + <description>PMD Plugin preferences rule set</description> + + + <rule ref="rulesets/basic.xml/BooleanInstantiation"/> + <rule ref="rulesets/basic.xml/CollapsibleIfStatements"/> + <rule ref="rulesets/basic.xml/DoubleCheckedLocking"/> +<!--<rule ref="rulesets/basic.xml/EmptyCatchBlock"/>--> +<!--<rule ref="rulesets/basic.xml/EmptyFinallyBlock"/>--> +<!--<rule ref="rulesets/basic.xml/EmptyIfStmt"/>--> + <rule ref="rulesets/basic.xml/EmptyStatementNotInLoop"/> +<!--<rule ref="rulesets/basic.xml/EmptyStaticInitializer"/>--> +<!--<rule ref="rulesets/basic.xml/EmptySwitchStatements"/>--> +<!--<rule ref="rulesets/basic.xml/EmptySynchronizedBlock"/>--> +<!--<rule ref="rulesets/basic.xml/EmptyTryBlock"/>--> +<!--<rule ref="rulesets/basic.xml/EmptyWhileStmt"/>--> + <rule ref="rulesets/basic.xml/ForLoopShouldBeWhileLoop"/> + <rule ref="rulesets/basic.xml/JumbledIncrementer"/> +<!--<rule ref="rulesets/basic.xml/OverrideBothEqualsAndHashcode"/>--> + <rule ref="rulesets/basic.xml/ReturnFromFinallyBlock"/> + <rule ref="rulesets/basic.xml/UnconditionalIfStatement"/> + <rule ref="rulesets/basic.xml/UnnecessaryConversionTemporary"/> + <rule ref="rulesets/basic.xml/UnnecessaryFinalModifier"/> + <rule ref="rulesets/basic.xml/UnnecessaryReturn"/> +<!--<rule ref="rulesets/basic.xml/UselessOverridingMethod"/>--> + +<!--<rule ref="rulesets/braces.xml/ForLoopsMustUseBraces"/>--> +<!--<rule ref="rulesets/braces.xml/IfElseStmtsMustUseBraces"/>--> +<!--<rule ref="rulesets/braces.xml/IfStmtsMustUseBraces"/>--> +<!--<rule ref="rulesets/braces.xml/WhileLoopsMustUseBraces"/>--> + +<!--<rule ref="rulesets/clone.xml/CloneMethodMustImplementCloneable"/>--> +<!--<rule ref="rulesets/clone.xml/CloneThrowsCloneNotSupportedException"/>--> +<!--<rule ref="rulesets/clone.xml/ProperCloneImplementation"/>--> + +<!--<rule ref="rulesets/codesize.xml/CyclomaticComplexity"/>--> +<!--<rule ref="rulesets/codesize.xml/ExcessiveClassLength"/>--> +<!--<rule ref="rulesets/codesize.xml/ExcessiveMethodLength"/>--> +<!--<rule ref="rulesets/codesize.xml/ExcessiveParameterList"/>--> +<!--<rule ref="rulesets/codesize.xml/ExcessivePublicCount"/>--> +<!--<rule ref="rulesets/codesize.xml/TooManyFields"/>--> + +<rule ref="rulesets/controversial.xml/AssignmentInOperand"/> +<!--<rule ref="rulesets/controversial.xml/AtLeastOneConstructor"/>--> +<!--<rule ref="rulesets/controversial.xml/CallSuperInConstructor"/>--> +<!--<rule ref="rulesets/controversial.xml/DontImportSun"/>--> +<!--<rule ref="rulesets/controversial.xml/NullAssignment"/>--> +<!--<rule ref="rulesets/controversial.xml/OnlyOneReturn"/>--> +<!--<rule ref="rulesets/controversial.xml/SingularField"/>--> +<!--<rule ref="rulesets/controversial.xml/SuspiciousOctalEscape"/>--> +<!--<rule ref="rulesets/controversial.xml/UnnecessaryConstructor"/>--> +<rule ref="rulesets/controversial.xml/UnnecessaryParentheses"/> +<!--<rule ref="rulesets/controversial.xml/UnusedModifier"/>--> + +<!--<rule ref="rulesets/coupling.xml/CouplingBetweenObjects"/>--> +<!--<rule ref="rulesets/coupling.xml/ExcessiveImports"/>--> +<!--<rule ref="rulesets/coupling.xml/LooseCoupling"/>--> + +<!--<rule ref="rulesets/design.xml/AbstractClassWithoutAbstractMethod"/>--> +<!--<rule ref="rulesets/design.xml/AccessorClassGeneration"/>--> +<!--<rule ref="rulesets/design.xml/AssignmentToNonFinalStatic"/>--> +<!--<rule ref="rulesets/design.xml/AvoidDeeplyNestedIfStmts"/>--> +<!--<rule ref="rulesets/design.xml/AvoidInstanceofChecksInCatchClause"/>--> +<rule ref="rulesets/design.xml/AvoidProtectedFieldInFinalClass"/> +<!--<rule ref="rulesets/design.xml/AvoidReassigningParameters"/>--> +<!--<rule ref="rulesets/design.xml/AvoidSynchronizedAtMethodLevel"/>--> +<!--<rule ref="rulesets/design.xml/BadComparison"/>--> +<!--<rule ref="rulesets/design.xml/CloseConnection"/>--> +<!--<rule ref="rulesets/design.xml/CompareObjectsWithEquals"/>--> +<!--<rule ref="rulesets/design.xml/ConfusingTernary"/>--> +<rule ref="rulesets/design.xml/ConstructorCallsOverridableMethod"/> +<!--<rule ref="rulesets/design.xml/DefaultLabelNotLastInSwitchStmt"/>--> +<!--<rule ref="rulesets/design.xml/FinalFieldCouldBeStatic"/>--> +<rule ref="rulesets/design.xml/IdempotentOperations"/> +<!--<rule ref="rulesets/design.xml/ImmutableField"/>--> +<!--<rule ref="rulesets/design.xml/InstantiationToGetClass"/>--> +<!--<rule ref="rulesets/design.xml/MissingBreakInSwitch"/>--> +<!--<rule ref="rulesets/design.xml/MissingStaticMethodInNonInstantiatableClass"/>--> +<!--<rule ref="rulesets/design.xml/NonCaseLabelInSwitchStatement"/>--> +<!--<rule ref="rulesets/design.xml/NonStaticInitializer"/>--> +<rule ref="rulesets/design.xml/OptimizableToArrayCall"/> +<rule ref="rulesets/design.xml/PositionLiteralsFirstInComparisons"/> +<rule ref="rulesets/design.xml/SimplifyBooleanExpressions"/> +<rule ref="rulesets/design.xml/SimplifyBooleanReturns"/> +<rule ref="rulesets/design.xml/SimplifyConditional"/> +<!--<rule ref="rulesets/design.xml/SwitchDensity"/>--> +<!--<rule ref="rulesets/design.xml/SwitchStmtsShouldHaveDefault"/>--> +<rule ref="rulesets/design.xml/UnnecessaryLocalBeforeReturn"/> +<!--<rule ref="rulesets/design.xml/UseLocaleWithCaseConversions"/>--> +<!--<rule ref="rulesets/design.xml/UseNotifyAllInsteadOfNotify"/>--> +<!--<rule ref="rulesets/design.xml/UseSingleton"/>--> + +<!--<rule ref="rulesets/finalizers.xml/EmptyFinalizer"/>--> +<!--<rule ref="rulesets/finalizers.xml/FinalizeOnlyCallsSuperFinalize"/>--> +<!--<rule ref="rulesets/finalizers.xml/FinalizeOverloaded"/>--> +<!--<rule ref="rulesets/finalizers.xml/FinalizeDoesNotCallSuperFinalize"/>--> +<!--<rule ref="rulesets/finalizers.xml/FinalizeShouldBeProtected"/>--> +<!--<rule ref="rulesets/finalizers.xml/AvoidCallingFinalize"/>--> + +<!--<rule ref="rulesets/imports.xml/DuplicateImports"/>--> +<!--<rule ref="rulesets/imports.xml/DontImportJavaLang"/>--> +<!--<rule ref="rulesets/imports.xml/UnusedImports"/>--> +<!--<rule ref="rulesets/imports.xml/ImportFromSamePackage"/>--> + +<!--<rule ref="rulesets/javabeans.xml/BeanMembersShouldSerialize"/>--> +<!--<rule ref="rulesets/javabeans.xml/MissingSerialVersionUID"/>--> + +<!--<rule ref="rulesets/junit.xml/JUnitStaticSuite"/>--> +<!--<rule ref="rulesets/junit.xml/JUnitSpelling"/>--> +<!--<rule ref="rulesets/junit.xml/JUnitAssertionsShouldIncludeMessage"/>--> +<!--<rule ref="rulesets/junit.xml/JUnitTestsShouldIncludeAssert"/>--> +<!--<rule ref="rulesets/junit.xml/TestClassWithoutTestCases"/>--> +<!--<rule ref="rulesets/junit.xml/UnnecessaryBooleanAssertion"/>--> +<!--<rule ref="rulesets/junit.xml/UseAssertEqualsInsteadOfAssertTrue"/>--> +<!--<rule ref="rulesets/junit.xml/UseAssertSameInsteadOfAssertTrue"/>--> + + <!--<rule ref="rulesets/logging-java.xml/AvoidPrintStackTrace"/>--> + <!--<rule ref="rulesets/logging-java.xml/LoggerIsNotStaticFinal"/>--> + <!--<rule ref="rulesets/logging-java.xml/MoreThanOneLogger"/>--> + <!--<rule ref="rulesets/logging-java.xml/LoggerIsNotStaticFinal"/>--> + <!--<rule ref="rulesets/logging-java.xml/LogBlockWithoutIf"/>--> + <!--<rule ref="rulesets/logging-java.xml/SystemPrintln"/>--> + <!--<rule ref="rulesets/logging-jakarta-commons.xml/UseCorrectExceptionLogging"/>--> + <!--<rule ref="rulesets/logging-jakarta-commons.xml/ProperLogger"/>--> + + <!--<rule ref="rulesets/naming.xml/ShortVariable"/>--> + <!--<rule ref="rulesets/naming.xml/LongVariable"/>--> + <!--<rule ref="rulesets/naming.xml/ShortMethodName"/>--> + <!--<rule ref="rulesets/naming.xml/VariableNamingConventions"/>--> + <!--<rule ref="rulesets/naming.xml/MethodNamingConventions"/>--> + <!--<rule ref="rulesets/naming.xml/ClassNamingConventions"/>--> + <!--<rule ref="rulesets/naming.xml/AbstractNaming"/>--> + <!--<rule ref="rulesets/naming.xml/AvoidDollarSigns"/>--> + <!--<rule ref="rulesets/naming.xml/MethodWithSameNameAsEnclosingClass"/>--> + <!--<rule ref="rulesets/naming.xml/SuspiciousHashcodeMethodName"/>--> + <!--<rule ref="rulesets/naming.xml/SuspiciousConstantFieldName"/>--> + <!--<rule ref="rulesets/naming.xml/AvoidFieldNameMatchingTypeName"/>--> + <!--<rule ref="rulesets/naming.xml/AvoidFieldNameMatchingMethodName"/>--> + <!--<rule ref="rulesets/naming.xml/AvoidNonConstructorMethodsWithClassName"/>--> + <!--<rule ref="rulesets/naming.xml/NoPackage"/>--> + <!--<rule ref="rulesets/naming.xml/PackageCase"/>--> + + <!--<rule ref="rulesets/optimizations.xml/LocalVariableCouldBeFinal"/>--> + <!--<rule ref="rulesets/optimizations.xml/MethodArgumentCouldBeFinal"/>--> + <!--<rule ref="rulesets/optimizations.xml/AvoidInstantiatingObjectsInLoops"/>--> + <!--<rule ref="rulesets/optimizations.xml/UseArrayListInsteadOfVector"/>--> + <!--<rule ref="rulesets/optimizations.xml/SimplifyStartsWith"/>--> + <!--<rule ref="rulesets/optimizations.xml/UseStringBufferForStringAppends"/>--> + + <!--<rule ref="rulesets/strictexception.xml/AvoidCatchingThrowable"/>--> + <!--<rule ref="rulesets/strictexception.xml/SignatureDeclareThrowsException"/>--> + <!--<rule ref="rulesets/strictexception.xml/ExceptionAsFlowControl"/>--> + <!--<rule ref="rulesets/strictexception.xml/AvoidCatchingNPE"/>--> + <!--<rule ref="rulesets/strictexception.xml/AvoidThrowingRawExceptionTypes"/>--> + <!--<rule ref="rulesets/strictexception.xml/AvoidThrowingNullPointerException"/>--> + + <!--<rule ref="rulesets/strings.xml/AvoidDuplicateLiterals"/>--> + <!--<rule ref="rulesets/strings.xml/StringInstantiation"/>--> + <!--<rule ref="rulesets/strings.xml/StringToString"/>--> + <!--<rule ref="rulesets/strings.xml/AvoidConcatenatingNonLiteralsInStringBuffer"/>--> + <!--<rule ref="rulesets/strings.xml/UnnecessaryCaseChange"/>--> + + <!--<rule ref="rulesets/sunsecure.xml/MethodReturnsInternalArray"/>--> + <!--<rule ref="rulesets/sunsecure.xml/ArrayIsStoredDirectly"/>--> + + <rule ref="rulesets/unusedcode.xml/UnusedLocalVariable"/> + <rule ref="rulesets/unusedcode.xml/UnusedPrivateField"/> + <rule ref="rulesets/unusedcode.xml/UnusedPrivateMethod"/> + <!--<rule ref="rulesets/unusedcode.xml/UnusedFormalParameter"/>--> + +</ruleset> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/LICENSE.txt b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/LICENSE.txt new file mode 100755 index 0000000000..d645695673 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/LICENSE.txt @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed 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. diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/NOTICE.txt b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/NOTICE.txt new file mode 100644 index 0000000000..d83ebbe236 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/NOTICE.txt @@ -0,0 +1,14 @@ +${pom.name} +Copyright (c) 2005 - 2006 The Apache Software Foundation + +Apache Tuscany is an effort undergoing incubation at The Apache Software +Foundation (ASF), sponsored by the Apache Web Services PMC. Incubation is +required of all newly accepted projects until a further review indicates that +the infrastructure, communications, and decision making process have stabilized +in a manner consistent with other successful ASF projects. While incubation +status is not necessarily a reflection of the completeness or stability of the +code, it does indicate that the project has yet to be fully endorsed by the ASF. + +This product includes software developed by +The Apache Software Foundation (http://www.apache.org/). + diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/pom.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/pom.xml new file mode 100755 index 0000000000..688a7e464d --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/pom.xml @@ -0,0 +1,221 @@ +<?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> + <parent> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>databindings</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + <relativePath>../pom.xml</relativePath> + </parent> + <modelVersion>4.0.0</modelVersion> + <artifactId>iTest-databinding-transformers</artifactId> + <packaging>jar</packaging> + <name>Apache Tuscany DataBinding Transformers Integration Test</name> + <description>Apache Tuscany DataBinding Transformers Integration Test</description> + + <repositories> + <repository> + <snapshots> + <enabled>true</enabled> + </snapshots> + <id>java.net</id> + <name>java.net Maven 1.x Repository</name> + <url>https://maven-repository.dev.java.net/nonav/repository</url> + <layout>legacy</layout> + </repository> + </repositories> + + <dependencies> + <dependency> + <groupId>org.apache.tuscany.sca.kernel</groupId> + <artifactId>tuscany-spi</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + <scope>compile</scope> + </dependency> + <dependency> + <groupId>org.apache.tuscany.sca.services.databinding</groupId> + <artifactId>databinding-jaxb</artifactId> + <version>${pom.version}</version> + <scope>compile</scope> + </dependency> + <dependency> + <groupId>org.apache.tuscany.sca.services.databinding</groupId> + <artifactId>databinding-xmlbeans</artifactId> + <version>${pom.version}</version> + <scope>compile</scope> + </dependency> + <dependency> + <groupId>org.apache.tuscany.sca.extensions.axis2</groupId> + <artifactId>databinding-axiom</artifactId> + <version>${pom.version}</version> + <scope>compile</scope> + </dependency> + <dependency> + <groupId>org.apache.tuscany.sca.services.databinding</groupId> + <artifactId>databinding-sdo</artifactId> + <version>${pom.version}</version> + <scope>compile</scope> + </dependency> + <dependency> + <groupId>org.apache.tuscany.sca.services.idl</groupId> + <artifactId>tuscany-wsdl</artifactId> + <version>${pom.version}</version> + <scope>compile</scope> + </dependency> + + <dependency> + <groupId>org.easymock</groupId> + <artifactId>easymock</artifactId> + <version>2.2</version> + <scope>test</scope> + </dependency> + + <dependency> + <groupId>com.sun.xml.bind</groupId> + <artifactId>jaxb-impl</artifactId> + <version>2.0.4</version> + <scope>test</scope> + <!-- Relacing stax 1.0 with stax 1.0.1 --> + <exclusions> + <exclusion> + <groupId>javax.xml.bind</groupId> + <artifactId>jsr173_api</artifactId> + </exclusion> + </exclusions> + </dependency> + + <dependency> + <groupId>junit</groupId> + <artifactId>junit</artifactId> + <version>4.2</version> + <scope>test</scope> + </dependency> + </dependencies> + + <build> + <plugins> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>build-helper-maven-plugin</artifactId> + <version>1.0</version> + <executions> + <execution> + <id>add-test-source</id> + <phase>generate-sources</phase> + <goals> + <goal>add-test-source</goal> + </goals> + <configuration> + <sources> + <source>target/jaxb-source</source> + <source>target/sdo-source</source> + <source>target/xmlbeans-source</source> + </sources> + </configuration> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.apache.tuscany.sdo</groupId> + <artifactId>tuscany-sdo-plugin</artifactId> + <version>1.0-incubator-SNAPSHOT</version> + <executions> + <execution> + <id>generate-sdo</id> + <phase>generate-sources</phase> + <configuration> + <schemaFile>${basedir}/src/test/resources/ipo.xsd</schemaFile> + <javaPackage>com.example.ipo.sdo</javaPackage> + <noNotification>true</noNotification> + <noContainer>true</noContainer> + <noUnsettable>true</noUnsettable> + </configuration> + <goals> + <goal>generate</goal> + </goals> + </execution> + </executions> + </plugin> + + <plugin> + <groupId>com.sun.tools.xjc.maven2</groupId> + <artifactId>maven-jaxb-plugin</artifactId> + <version>1.1</version> + <executions> + <execution> + <id>generate-jaxb</id> + <phase>generate-sources</phase> + <goals> + <goal>generate</goal> + </goals> + </execution> + </executions> + <configuration> + <generatePackage>com.example.ipo.jaxb</generatePackage> + <generateDirectory>${project.build.directory}/jaxb-source</generateDirectory> + <schemaDirectory>${basedir}/src/test/resources</schemaDirectory> + <includeSchemas> + <includeSchema>ipo.xsd</includeSchema> + </includeSchemas> + </configuration> + </plugin> + + <plugin> + <artifactId>maven-antrun-plugin</artifactId> + <dependencies> + <dependency> + <groupId>xmlbeans</groupId> + <artifactId>xbean</artifactId> + <version>2.1.0</version> + </dependency> + <dependency> + <groupId>stax</groupId> + <artifactId>stax-api</artifactId> + <version>1.0.1</version> + </dependency> + + </dependencies> + + <executions> + <execution> + <id>generate-xmlbeans</id> + <phase>generate-sources</phase> + <configuration> + <tasks> + <taskdef name="xmlbean" classname="org.apache.xmlbeans.impl.tool.XMLBean" classpathref="maven.compile.classpath"/> + <xmlbean schema="${basedir}/src/test/resources" classpathref="maven.compile.classpath" + destfile="${project.build.directory}/ipo-xmlbeans.jar" srcgendir="${project.build.directory}/xmlbeans-source" + javasource="1.5" classgendir="${project.build.directory}/test-classes" /> + </tasks> + <!-- + <sourceRoot>${project.build.directory}/xmlbeans-source</sourceRoot> + <testSourceRoot>${project.build.directory}/xmlbeans-source</testSourceRoot> + --> + </configuration> + <goals> + <goal>run</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + +</project> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/src/test/java/org/apache/tuscany/databinding/JAXBTestCase.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/src/test/java/org/apache/tuscany/databinding/JAXBTestCase.java new file mode 100755 index 0000000000..894bee16e4 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/src/test/java/org/apache/tuscany/databinding/JAXBTestCase.java @@ -0,0 +1,119 @@ +/* + * 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.databinding; + +import static org.easymock.EasyMock.createMock; +import static org.easymock.EasyMock.expect; +import static org.easymock.EasyMock.replay; + +import java.io.StringReader; + +import javax.xml.stream.XMLStreamReader; + +import junit.framework.Assert; +import junit.framework.TestCase; + +import org.apache.tuscany.databinding.jaxb.JAXB2Node; +import org.apache.tuscany.databinding.jaxb.JAXBContextHelper; +import org.apache.tuscany.databinding.jaxb.XMLStreamReader2JAXB; +import org.apache.tuscany.databinding.xmlbeans.Node2XmlObject; +import org.apache.tuscany.databinding.xmlbeans.XmlObject2XMLStreamReader; +import org.apache.tuscany.spi.databinding.TransformationContext; +import org.apache.tuscany.spi.model.DataType; +import org.apache.xmlbeans.XmlObject; +import org.w3c.dom.Node; + +public class JAXBTestCase extends TestCase { + private static final String IPO_XML = + "<?xml version=\"1.0\"?>" + "<ipo:purchaseOrder" + + " xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"" + + " xmlns:ipo=\"http://www.example.com/IPO\"" + + " xsi:schemaLocation=\"http://www.example.com/IPO ipo.xsd\"" + + " orderDate=\"1999-12-01\">" + + " <shipTo exportCode=\"1\" xsi:type=\"ipo:UKAddress\">" + + " <name>Helen Zoe</name>" + + " <street>47 Eden Street</street>" + + " <city>Cambridge</city>" + + " <postcode>CB1 1JR</postcode>" + + " </shipTo>" + + " <billTo xsi:type=\"ipo:USAddress\">" + + " <name>Robert Smith</name>" + + " <street>8 Oak Avenue</street>" + + " <city>Old Town</city>" + + " <state>PA</state>" + + " <zip>95819</zip>" + + " </billTo>" + + " <items>" + + " <item partNum=\"833-AA\">" + + " <productName>Lapis necklace</productName>" + + " <quantity>1</quantity>" + + " <USPrice>99.95</USPrice>" + + " <ipo:comment>Want this for the holidays</ipo:comment>" + + " <shipDate>1999-12-05</shipDate>" + + " </item>" + + " </items>" + + "</ipo:purchaseOrder>"; + + private String contextPath = "com.example.ipo.jaxb"; + + protected void setUp() throws Exception { + super.setUp(); + } + + public void testTransform() throws Exception { + // URL/Stream/Reader to XmlObject + XmlObject object = XmlObject.Factory.parse(new StringReader(IPO_XML)); + + // XmlObject to XMLStreamReader + XmlObject2XMLStreamReader t1 = new XmlObject2XMLStreamReader(); + XMLStreamReader reader = t1.transform(object, null); + + DataType targetDataType = new DataType<Class>(Object.class, null); + targetDataType.setMetadata(JAXBContextHelper.JAXB_CONTEXT_PATH, contextPath); + + TransformationContext tContext = createMock(TransformationContext.class); + expect(tContext.getTargetDataType()).andReturn(targetDataType).anyTimes(); + replay(tContext); + + // XMLStreamReader to JAXB + XMLStreamReader2JAXB t2 = new XMLStreamReader2JAXB(); + Object object2 = t2.transform(reader, tContext); + + DataType sourceDataType = new DataType<Class>(Object.class, null); + sourceDataType.setMetadata(JAXBContextHelper.JAXB_CONTEXT_PATH, contextPath); + + TransformationContext tContext1 = createMock(TransformationContext.class); + expect(tContext1.getSourceDataType()).andReturn(sourceDataType).anyTimes(); + replay(tContext1); + + JAXB2Node t3 = new JAXB2Node(); + Node node = t3.transform(object2, tContext1); + + Node2XmlObject t4 = new Node2XmlObject(); + XmlObject object3 = t4.transform(node, null); + + Assert.assertNotNull(object3); + + } + + protected void tearDown() throws Exception { + super.tearDown(); + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/src/test/java/org/apache/tuscany/databinding/TransformationTestCase.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/src/test/java/org/apache/tuscany/databinding/TransformationTestCase.java new file mode 100755 index 0000000000..62183bd09d --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/src/test/java/org/apache/tuscany/databinding/TransformationTestCase.java @@ -0,0 +1,249 @@ +/* + * 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.databinding; + +import static org.easymock.EasyMock.createMock; +import static org.easymock.EasyMock.expect; +import static org.easymock.EasyMock.replay; + +import java.io.StringReader; +import java.net.URL; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import javax.xml.bind.JAXBElement; + +import junit.framework.Assert; +import junit.framework.TestCase; + +import org.apache.tuscany.core.databinding.impl.TransformerRegistryImpl; +import org.apache.tuscany.core.databinding.xml.Node2String; +import org.apache.tuscany.core.databinding.xml.String2Node; +import org.apache.tuscany.core.databinding.xml.String2XMLStreamReader; +import org.apache.tuscany.core.databinding.xml.XMLStreamReader2String; +import org.apache.tuscany.databinding.axiom.OMElement2String; +import org.apache.tuscany.databinding.axiom.OMElement2XMLStreamReader; +import org.apache.tuscany.databinding.axiom.String2OMElement; +import org.apache.tuscany.databinding.axiom.XMLStreamReader2OMElement; +import org.apache.tuscany.databinding.jaxb.JAXB2Node; +import org.apache.tuscany.databinding.jaxb.JAXBContextHelper; +import org.apache.tuscany.databinding.jaxb.Node2JAXB; +import org.apache.tuscany.databinding.jaxb.XMLStreamReader2JAXB; +import org.apache.tuscany.databinding.sdo.DataObject2XMLStreamReader; +import org.apache.tuscany.databinding.sdo.XMLDocument2XMLStreamReader; +import org.apache.tuscany.databinding.sdo.XMLStreamReader2DataObject; +import org.apache.tuscany.databinding.sdo.XMLStreamReader2XMLDocument; +import org.apache.tuscany.databinding.xmlbeans.Node2XmlObject; +import org.apache.tuscany.databinding.xmlbeans.XMLStreamReader2XmlObject; +import org.apache.tuscany.databinding.xmlbeans.XmlObject2Node; +import org.apache.tuscany.databinding.xmlbeans.XmlObject2XMLStreamReader; +import org.apache.tuscany.sdo.util.SDOUtil; +import org.apache.tuscany.spi.databinding.PullTransformer; +import org.apache.tuscany.spi.databinding.TransformationContext; +import org.apache.tuscany.spi.databinding.Transformer; +import org.apache.tuscany.spi.databinding.TransformerRegistry; +import org.apache.tuscany.spi.model.DataType; +import org.apache.xmlbeans.XmlObject; +import org.w3c.dom.Node; + +import commonj.sdo.DataObject; +import commonj.sdo.helper.HelperContext; +import commonj.sdo.helper.XMLDocument; +import commonj.sdo.helper.XMLHelper; +import commonj.sdo.helper.XSDHelper; + +public class TransformationTestCase extends TestCase { + private static final String IPO_XML = + "<?xml version=\"1.0\"?>" + "<ipo:purchaseOrder" + + " xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"" + + " xmlns:ipo=\"http://www.example.com/IPO\"" + + " xsi:schemaLocation=\"http://www.example.com/IPO ipo.xsd\"" + + " orderDate=\"1999-12-01\">" + + " <shipTo exportCode=\"1\" xsi:type=\"ipo:UKAddress\">" + + " <name>Helen Zoe</name>" + + " <street>47 Eden Street</street>" + + " <city>Cambridge</city>" + + " <postcode>CB1 1JR</postcode>" + + " </shipTo>" + + " <billTo xsi:type=\"ipo:USAddress\">" + + " <name>Robert Smith</name>" + + " <street>8 Oak Avenue</street>" + + " <city>Old Town</city>" + + " <state>PA</state>" + + " <zip>95819</zip>" + + " </billTo>" + + " <items>" + + " <item partNum=\"833-AA\">" + + " <productName>Lapis necklace</productName>" + + " <quantity>1</quantity>" + + " <USPrice>99.95</USPrice>" + + " <ipo:comment>Want this for the holidays</ipo:comment>" + + " <shipDate>1999-12-05</shipDate>" + + " </item>" + + " </items>" + + "</ipo:purchaseOrder>"; + + private TransformerRegistry registry; + + private String contextPath = "com.example.ipo.jaxb"; + + protected void setUp() throws Exception { + super.setUp(); + registry = new TransformerRegistryImpl(); + + List<Transformer> transformers = new ArrayList<Transformer>(); + + // Adding JAXB transformers + transformers.add(new JAXB2Node()); + transformers.add(new Node2JAXB()); + transformers.add(new XMLStreamReader2JAXB()); + + // Adding XMLBeans transformers + transformers.add(new XmlObject2Node()); + transformers.add(new XmlObject2XMLStreamReader()); + transformers.add(new Node2XmlObject()); + transformers.add(new XMLStreamReader2XmlObject()); + + transformers.add(new DataObject2XMLStreamReader()); + transformers.add(new XMLStreamReader2DataObject()); + + transformers.add(new XMLDocument2XMLStreamReader()); + transformers.add(new XMLStreamReader2XMLDocument()); + + transformers.add(new String2XMLStreamReader()); + transformers.add(new XMLStreamReader2String()); + + transformers.add(new String2Node()); + transformers.add(new Node2String()); + + transformers.add(new OMElement2String()); + transformers.add(new String2OMElement()); + + transformers.add(new XMLStreamReader2OMElement()); + transformers.add(new OMElement2XMLStreamReader()); + + for (Transformer transformer : transformers) { + registry.registerTransformer(transformer); + } + + // System.out.println(registry); + + URL xsdFile = getClass().getClassLoader().getResource("ipo.xsd"); + XSDHelper.INSTANCE.define(xsdFile.openStream(), null); + } + + @SuppressWarnings("unchecked") + // XMLBeans --> SDO + public void testTransformation1() throws Exception { + URL xsdFile = getClass().getClassLoader().getResource("ipo.xsd"); + HelperContext helperContext = SDOUtil.createHelperContext(); + XSDHelper xsdHelper = helperContext.getXSDHelper(); + xsdHelper.define(xsdFile.openStream(), xsdFile.toExternalForm()); + + // URL/Stream/Reader to XmlObject + XmlObject object = XmlObject.Factory.parse(new StringReader(IPO_XML)); + + List<Transformer> path = + registry.getTransformerChain(XmlObject.class.getName(), DataObject.class.getName()); + System.out.println("Path: " + path); + + TransformationContext tContext = createTransformationContext(); + // tContext.getMetadata().put(ImportSDO.class, new ImportSDO(helperContext)); + + Object result = object; + for (Transformer transformer : path) { + result = ((PullTransformer)transformer).transform(result, tContext); + } + System.out.println("Result: " + result); + Assert.assertNotNull(result); + Assert.assertTrue(result instanceof DataObject); + + } + + @SuppressWarnings("unchecked") + // SDO --> DOM + public void testTransformation2() throws Exception { + // System.out.println(registry); + + URL xmlFile = getClass().getClassLoader().getResource("ipo.xml"); + // URL/Stream/Reader to XmlObject + XMLDocument object = XMLHelper.INSTANCE.load(xmlFile.openStream()); + + List<Transformer> path = + registry.getTransformerChain(XMLDocument.class.getName(), Node.class.getName()); + System.out.println("Path: " + path); + + TransformationContext tContext = createTransformationContext(); + + Object result = object; + for (Transformer transformer : path) { + result = ((PullTransformer)transformer).transform(result, tContext); + } + System.out.println("Result: " + result); + Assert.assertNotNull(result); + Assert.assertTrue(result instanceof Node); + + } + + @SuppressWarnings("unchecked") + // SDO --> JAXB + public void testTransformation3() throws Exception { + // System.out.println(registry); + + URL xmlFile = getClass().getClassLoader().getResource("ipo.xml"); + // URL/Stream/Reader to XmlObject + XMLDocument object = XMLHelper.INSTANCE.load(xmlFile.openStream()); + + List<Transformer> path = + registry.getTransformerChain(XMLDocument.class.getName(), JAXBElement.class.getName()); + System.out.println("Path: " + path); + + TransformationContext tContext = createTransformationContext(); + + Object result = object; + for (Transformer transformer : path) { + result = ((PullTransformer)transformer).transform(result, tContext); + } + System.out.println("Result: " + result); + Assert.assertNotNull(result); + Assert.assertTrue(result instanceof Object); + + } + + private TransformationContext createTransformationContext() { + DataType dataType = new DataType<Class>(Object.class, null); + dataType.setMetadata(JAXBContextHelper.JAXB_CONTEXT_PATH, contextPath); + + TransformationContext tContext = createMock(TransformationContext.class); + expect(tContext.getTargetDataType()).andReturn(dataType).anyTimes(); + + expect(tContext.getSourceDataType()).andReturn(dataType).anyTimes(); + Map<Class<?>, Object> metadata = new HashMap<Class<?>, Object>(); + expect(tContext.getMetadata()).andReturn(metadata).anyTimes(); + replay(tContext); + return tContext; + } + + protected void tearDown() throws Exception { + super.tearDown(); + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/src/test/java/org/apache/tuscany/databinding/XmlObjectTestCase.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/src/test/java/org/apache/tuscany/databinding/XmlObjectTestCase.java new file mode 100755 index 0000000000..78d51352cb --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/src/test/java/org/apache/tuscany/databinding/XmlObjectTestCase.java @@ -0,0 +1,110 @@ +/* + * 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.databinding; + +import java.io.StringReader; + +import javax.xml.stream.XMLStreamReader; + +import junit.framework.Assert; +import junit.framework.TestCase; + +import org.apache.tuscany.databinding.xmlbeans.Node2XmlObject; +import org.apache.tuscany.databinding.xmlbeans.XMLStreamReader2XmlObject; +import org.apache.tuscany.databinding.xmlbeans.XmlObject2Node; +import org.apache.tuscany.databinding.xmlbeans.XmlObject2XMLStreamReader; +import org.apache.xmlbeans.XmlObject; +import org.w3c.dom.Node; + +public class XmlObjectTestCase extends TestCase { + private static final String IPO_XML = + "<?xml version=\"1.0\"?>" + "<ipo:purchaseOrder" + + " xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"" + + " xmlns:ipo=\"http://www.example.com/IPO\"" + + " xsi:schemaLocation=\"http://www.example.com/IPO ipo.xsd\"" + + " orderDate=\"1999-12-01\">" + + " <shipTo exportCode=\"1\" xsi:type=\"ipo:UKAddress\">" + + " <name>Helen Zoe</name>" + + " <street>47 Eden Street</street>" + + " <city>Cambridge</city>" + + " <postcode>CB1 1JR</postcode>" + + " </shipTo>" + + " <billTo xsi:type=\"ipo:USAddress\">" + + " <name>Robert Smith</name>" + + " <street>8 Oak Avenue</street>" + + " <city>Old Town</city>" + + " <state>PA</state>" + + " <zip>95819</zip>" + + " </billTo>" + + " <items>" + + " <item partNum=\"833-AA\">" + + " <productName>Lapis necklace</productName>" + + " <quantity>1</quantity>" + + " <USPrice>99.95</USPrice>" + + " <ipo:comment>Want this for the holidays</ipo:comment>" + + " <shipDate>1999-12-05</shipDate>" + + " </item>" + + " </items>" + + "</ipo:purchaseOrder>"; + + protected void setUp() throws Exception { + super.setUp(); + } + + public void testTransform() throws Exception { + XmlObject object = XmlObject.Factory.parse(new StringReader(IPO_XML)); + + // XmlObject to XMLStreamReader + XmlObject2XMLStreamReader t1 = new XmlObject2XMLStreamReader(); + XMLStreamReader reader = t1.transform(object, null); + + // XMLStreamReader to XmlObject + XMLStreamReader2XmlObject t2 = new XMLStreamReader2XmlObject(); + XmlObject object2 = t2.transform(reader, null); + + // XmlObject to Node + XmlObject2Node t3 = new XmlObject2Node(); + Node node = t3.transform(object2, null); + + // Node to XmlObject + Node2XmlObject t4 = new Node2XmlObject(); + XmlObject object3 = t4.transform(node, null); + Assert.assertNotNull(object3); + } + + /* + * public void testGeneratedXmlObject() throws Exception { URL xmlFile = + * getClass().getClassLoader().getResource("ipo.xml"); // URL/Stream/Reader + * to XmlObject PurchaseOrderDocument object = + * PurchaseOrderDocument.Factory.parse(xmlFile); // XmlObject to + * XMLStreamReader XmlObject2XMLStreamReader t1 = new + * XmlObject2XMLStreamReader(); XMLStreamReader reader = + * t1.transform(object, null); // XMLStreamReader to XmlObject + * XMLStreamReader2XmlObject t2 = new XMLStreamReader2XmlObject(); XmlObject + * object2 = t2.transform(reader, null); // XmlObject to Node XmlObject2Node + * t3 = new XmlObject2Node(); Node node = t3.transform(object2, null); // + * Node to XmlObject Node2XmlObject t4 = new Node2XmlObject(); XmlObject + * object3 = t4.transform(node, null); Assert.assertNotNull(object3); } + */ + + protected void tearDown() throws Exception { + super.tearDown(); + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/src/test/java/org/apache/tuscany/databinding/sample/Client.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/src/test/java/org/apache/tuscany/databinding/sample/Client.java new file mode 100644 index 0000000000..8ddc625d66 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/src/test/java/org/apache/tuscany/databinding/sample/Client.java @@ -0,0 +1,26 @@ +/* + * 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.databinding.sample; + +/** + * @version $Rev$ $Date$ + */ +public interface Client { + void call(Object po); +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/src/test/java/org/apache/tuscany/databinding/sample/ClientImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/src/test/java/org/apache/tuscany/databinding/sample/ClientImpl.java new file mode 100644 index 0000000000..2d33a8666b --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/src/test/java/org/apache/tuscany/databinding/sample/ClientImpl.java @@ -0,0 +1,50 @@ +/* + * 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.databinding.sample; + +import org.osoa.sca.annotations.Constructor; +import org.osoa.sca.annotations.Reference; + +import com.example.ipo.jaxb.PurchaseOrderType; + +/** + * @version $Rev$ $Date$ + */ +public class ClientImpl implements Client { + + private Echo echoReference; + + @Constructor + public ClientImpl(@Reference(name = "echoReference", required = true) + Echo echoReference) { + this.echoReference = echoReference; + } + + public void call(Object po) { + Object ret = null; + if (po instanceof PurchaseOrderType) { + ret = echoReference.echoJAXB((PurchaseOrderType)po); + } else if (po instanceof com.example.ipo.sdo.PurchaseOrderType) { + ret = echoReference.echoSDO((com.example.ipo.sdo.PurchaseOrderType)po); + } else if (po instanceof com.example.ipo.xmlbeans.PurchaseOrderType) { + ret = echoReference.echoXMLBeans((com.example.ipo.xmlbeans.PurchaseOrderType)po); + } + System.out.println("Returned message: " + ret); + } +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/src/test/java/org/apache/tuscany/databinding/sample/DataBindingBootStrapTestCase.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/src/test/java/org/apache/tuscany/databinding/sample/DataBindingBootStrapTestCase.java new file mode 100644 index 0000000000..f74b3558e9 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/src/test/java/org/apache/tuscany/databinding/sample/DataBindingBootStrapTestCase.java @@ -0,0 +1,124 @@ +/* + * 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.databinding.sample; + +import static org.easymock.EasyMock.createMock; +import static org.easymock.EasyMock.expect; +import static org.easymock.EasyMock.replay; + +import java.io.StringReader; + +import javax.xml.namespace.QName; +import javax.xml.stream.XMLInputFactory; +import javax.xml.stream.XMLStreamReader; + +import junit.framework.TestCase; + +import org.apache.tuscany.api.SCARuntime; +import org.apache.tuscany.databinding.jaxb.JAXBContextHelper; +import org.apache.tuscany.databinding.jaxb.Reader2JAXB; +import org.apache.tuscany.databinding.sdo.String2DataObject; +import org.apache.tuscany.databinding.xmlbeans.XMLStreamReader2XmlObject; +import org.apache.tuscany.spi.databinding.TransformationContext; +import org.apache.tuscany.spi.idl.XMLType; +import org.apache.tuscany.spi.model.DataType; +import org.osoa.sca.CompositeContext; +import org.osoa.sca.CurrentCompositeContext; + +import com.example.ipo.jaxb.PurchaseOrderType; +import com.example.ipo.xmlbeans.PurchaseOrderDocument; +import commonj.sdo.DataObject; + +/** + * @version $Rev$ $Date$ + */ +public class DataBindingBootStrapTestCase extends TestCase { + private static final String IPO_XML = + "<?xml version=\"1.0\"?>" + "<ipo:purchaseOrder" + + " xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"" + + " xmlns:ipo=\"http://www.example.com/IPO\"" + + " xsi:schemaLocation=\"http://www.example.com/IPO ipo.xsd\"" + + " orderDate=\"1999-12-01\">" + + " <shipTo exportCode=\"1\" xsi:type=\"ipo:UKAddress\">" + + " <name>Helen Zoe</name>" + + " <street>47 Eden Street</street>" + + " <city>Cambridge</city>" + + " <postcode>CB1 1JR</postcode>" + + " </shipTo>" + + " <billTo xsi:type=\"ipo:USAddress\">" + + " <name>Robert Smith</name>" + + " <street>8 Oak Avenue</street>" + + " <city>Old Town</city>" + + " <state>PA</state>" + + " <zip>95819</zip>" + + " </billTo>" + + " <items>" + + " <item partNum=\"833-AA\">" + + " <productName>Lapis necklace</productName>" + + " <quantity>1</quantity>" + + " <USPrice>99.95</USPrice>" + + " <ipo:comment>Want this for the holidays</ipo:comment>" + + " <shipDate>1999-12-05</shipDate>" + + " </item>" + + " </items>" + + "</ipo:purchaseOrder>"; + + private Client client; + private String contextPath = "com.example.ipo.jaxb"; + + @SuppressWarnings("unchecked") + public void testDataBindingBootstrap() throws Exception { + DataType targetDataType = new DataType<XMLType>(Object.class, XMLType.UNKNOWN); + targetDataType.setMetadata(JAXBContextHelper.JAXB_CONTEXT_PATH, contextPath); + TransformationContext tContext = createMock(TransformationContext.class); + expect(tContext.getTargetDataType()).andReturn(targetDataType).anyTimes(); + replay(tContext); + + String2DataObject t1 = new String2DataObject(); + DataObject po1 = t1.transform(IPO_XML, null); + client.call(po1); + + PurchaseOrderDocument.Factory.newInstance(); + + XMLStreamReader reader = XMLInputFactory.newInstance().createXMLStreamReader(new StringReader(IPO_XML)); + XMLStreamReader2XmlObject t2 = new XMLStreamReader2XmlObject(); + PurchaseOrderDocument po2 = (PurchaseOrderDocument)t2.transform(reader, null); + client.call(po2.getPurchaseOrder()); + + QName root = new QName("http://www.example.com/IPO", "purchaseOrder"); + DataType targetDataType1 = new DataType<XMLType>(PurchaseOrderType.class, new XMLType(root, null)); + TransformationContext tContext1 = createMock(TransformationContext.class); + expect(tContext1.getTargetDataType()).andReturn(targetDataType1).anyTimes(); + replay(tContext1); + Reader2JAXB t3 = new Reader2JAXB(); + PurchaseOrderType po3 = (PurchaseOrderType)t3.transform(new StringReader(IPO_XML), tContext1); + client.call(po3); + + } + + protected void setUp() throws Exception { + SCARuntime.start("DataBindingTest.composite"); + CompositeContext context = CurrentCompositeContext.getContext(); + client = context.locateService(Client.class, "Client"); + } + + protected void tearDown() throws Exception { + SCARuntime.stop(); + } +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/src/test/java/org/apache/tuscany/databinding/sample/Echo.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/src/test/java/org/apache/tuscany/databinding/sample/Echo.java new file mode 100644 index 0000000000..c44e575e26 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/src/test/java/org/apache/tuscany/databinding/sample/Echo.java @@ -0,0 +1,42 @@ +/* + * 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.databinding.sample; + +import org.apache.tuscany.api.annotation.DataType; +import org.osoa.sca.annotations.Remotable; +import org.osoa.sca.annotations.Service; + +import com.example.ipo.jaxb.PurchaseOrderType; + + +/** + * @version $Rev$ $Date$ + */ +@Remotable +@Service +public interface Echo { + @DataType(name="javax.xml.bind.JAXBElement") + PurchaseOrderType echoJAXB(PurchaseOrderType po); + + @DataType(name="commonj.sdo.DataObject") + com.example.ipo.sdo.PurchaseOrderType echoSDO(com.example.ipo.sdo.PurchaseOrderType po); + + @DataType(name="org.apache.xmlbeans.XmlObject") + com.example.ipo.xmlbeans.PurchaseOrderType echoXMLBeans(com.example.ipo.xmlbeans.PurchaseOrderType po); +}
\ No newline at end of file diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/src/test/java/org/apache/tuscany/databinding/sample/EchoImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/src/test/java/org/apache/tuscany/databinding/sample/EchoImpl.java new file mode 100644 index 0000000000..775c0317a4 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/src/test/java/org/apache/tuscany/databinding/sample/EchoImpl.java @@ -0,0 +1,43 @@ +/* + * 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.databinding.sample; + +import com.example.ipo.jaxb.PurchaseOrderType; + +/** + * @version $Rev$ $Date$ + */ +public class EchoImpl implements Echo { + + public PurchaseOrderType echoJAXB(PurchaseOrderType po) { + System.out.println("JAXB: " + po); + return po; + } + + public com.example.ipo.sdo.PurchaseOrderType echoSDO(com.example.ipo.sdo.PurchaseOrderType po) { + System.out.println("SDO: " + po); + return po; + } + + public com.example.ipo.xmlbeans.PurchaseOrderType echoXMLBeans(com.example.ipo.xmlbeans.PurchaseOrderType po) { + System.out.println("XMLBeans: " + po); + return po; + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/src/test/resources/DataBindingTest.composite b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/src/test/resources/DataBindingTest.composite new file mode 100644 index 0000000000..9f9d0467a4 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/src/test/resources/DataBindingTest.composite @@ -0,0 +1,34 @@ +<?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" xmlns:db="http://tuscany.apache.org/xmlns/databinding/1.0"
+ name="DataBindingTest">
+ + <dbsdo:import.sdo xmlns:dbsdo="http://tuscany.apache.org/xmlns/sca/databinding/sdo/1.0" factory="com.example.ipo.sdo.SdoFactory"/>
+ + <component name="Client"> + <implementation.java class="org.apache.tuscany.databinding.sample.ClientImpl" /> + <reference name="echoReference">Echo</reference> + </component> +
+ <component name="Echo">
+ <implementation.java class="org.apache.tuscany.databinding.sample.EchoImpl" />
+ </component>
+ +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/src/test/resources/ipo.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/src/test/resources/ipo.xml new file mode 100755 index 0000000000..58058dbe1a --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/src/test/resources/ipo.xml @@ -0,0 +1,33 @@ +<?xml version="1.0"?> +<ipo:purchaseOrder + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:ipo="http://www.example.com/IPO" + xsi:schemaLocation="http://www.example.com/IPO ipo.xsd" + orderDate="1999-12-01"> + + <shipTo exportCode="1" xsi:type="ipo:UKAddress"> + <name>Helen Zoe</name> + <street>47 Eden Street</street> + <city>Cambridge</city> + <postcode>CB1 1JR</postcode> + </shipTo> + + <billTo xsi:type="ipo:USAddress"> + <name>Robert Smith</name> + <street>8 Oak Avenue</street> + <city>Old Town</city> + <state>PA</state> + <zip>95819</zip> + </billTo> + + <items> + <item partNum="833-AA"> + <productName>Lapis necklace</productName> + <quantity>1</quantity> + <USPrice>99.95</USPrice> + <ipo:comment>Want this for the holidays</ipo:comment> + <shipDate>1999-12-05</shipDate> + </item> + </items> +</ipo:purchaseOrder> + diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/src/test/resources/ipo.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/src/test/resources/ipo.xsd new file mode 100755 index 0000000000..5468542693 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/src/test/resources/ipo.xsd @@ -0,0 +1,118 @@ +<schema targetNamespace="http://www.example.com/IPO" + xmlns="http://www.w3.org/2001/XMLSchema" + xmlns:ipo="http://www.example.com/IPO"> + + <annotation> + <documentation xml:lang="en"> + International Purchase order schema for Example.com + Copyright 2000 Example.com. All rights reserved. + </documentation> + </annotation> + + + <element name="purchaseOrder" type="ipo:PurchaseOrderType" /> + + <element name="comment" type="string" /> + + <complexType name="PurchaseOrderType"> + <sequence> + <element name="shipTo" type="ipo:Address" /> + <element name="billTo" type="ipo:Address" /> + <element ref="ipo:comment" minOccurs="0" /> + <element name="items" type="ipo:Items" /> + </sequence> + <attribute name="orderDate" type="date" /> + </complexType> + + <complexType name="Items"> + <sequence> + <element name="item" minOccurs="0" maxOccurs="unbounded"> + <complexType> + <sequence> + <element name="productName" type="string" /> + <element name="quantity"> + <simpleType> + <restriction base="positiveInteger"> + <maxExclusive value="100" /> + </restriction> + </simpleType> + </element> + <element name="USPrice" type="decimal" /> + <element ref="ipo:comment" minOccurs="0" /> + <element name="shipDate" type="date" + minOccurs="0" /> + </sequence> + <attribute name="partNum" type="ipo:SKU" + use="required" /> + </complexType> + </element> + </sequence> + </complexType> + + <simpleType name="SKU"> + <restriction base="string"> + <pattern value="\d{3}-[A-Z]{2}" /> + </restriction> + </simpleType> + + <complexType name="Address"> + <sequence> + <element name="name" type="string" /> + <element name="street" type="string" /> + <element name="city" type="string" /> + </sequence> + </complexType> + + <complexType name="USAddress"> + <complexContent> + <extension base="ipo:Address"> + <sequence> + <element name="state" type="ipo:USState" /> + <element name="zip" type="positiveInteger" /> + </sequence> + </extension> + </complexContent> + </complexType> + + <complexType name="UKAddress"> + <complexContent> + <extension base="ipo:Address"> + <sequence> + <element name="postcode" type="ipo:UKPostcode" /> + </sequence> + <attribute name="exportCode" type="positiveInteger" + fixed="1" /> + </extension> + </complexContent> + </complexType> + + <!-- other Address derivations for more countries --> + + <simpleType name="USState"> + <restriction base="string"> + <enumeration value="AK" /> + <enumeration value="AL" /> + <enumeration value="AR" /> + <enumeration value="CA" /> + <enumeration value="PA" /> + <!-- and so on ... --> + </restriction> + </simpleType> + + <simpleType name="Postcode"> + <restriction base="string"> + <length value="7" fixed="true" /> + </restriction> + </simpleType> + + + <simpleType name="UKPostcode"> + <restriction base="ipo:Postcode"> + <pattern value="[A-Z]{2}\d\s\d[A-Z]{2}" /> + </restriction> + </simpleType> + + + +</schema> + diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/src/test/resources/ipo.xsdconfig b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/src/test/resources/ipo.xsdconfig new file mode 100755 index 0000000000..a397182672 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/databindings/transformers/src/test/resources/ipo.xsdconfig @@ -0,0 +1,21 @@ +<!-- Copyright 2004 The Apache Software Foundation + + Licensed 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. --> +<xb:config xmlns:xb="http://xml.apache.org/xmlbeans/2004/02/xbean/config" + xmlns:ipo="http://www.example.com/IPO"> + + <xb:namespace uri="http://www.example.com/IPO"> + <xb:package>com.example.ipo.xmlbeans</xb:package> + </xb:namespace> + +</xb:config> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/LICENSE.txt b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/LICENSE.txt new file mode 100644 index 0000000000..0084319535 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/LICENSE.txt @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, serviceDefinition marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed 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. diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/NOTICE.txt b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/NOTICE.txt new file mode 100644 index 0000000000..d83ebbe236 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/NOTICE.txt @@ -0,0 +1,14 @@ +${pom.name} +Copyright (c) 2005 - 2006 The Apache Software Foundation + +Apache Tuscany is an effort undergoing incubation at The Apache Software +Foundation (ASF), sponsored by the Apache Web Services PMC. Incubation is +required of all newly accepted projects until a further review indicates that +the infrastructure, communications, and decision making process have stabilized +in a manner consistent with other successful ASF projects. While incubation +status is not necessarily a reflection of the completeness or stability of the +code, it does indicate that the project has yet to be fully endorsed by the ASF. + +This product includes software developed by +The Apache Software Foundation (http://www.apache.org/). + diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/pom.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/pom.xml new file mode 100644 index 0000000000..c27a6c62a2 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/pom.xml @@ -0,0 +1,189 @@ +<?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>
+ <parent>
+ <groupId>org.apache.tuscany.testing</groupId>
+ <artifactId>sca-itest</artifactId>
+ <version>0.1-integration-incubating-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>iTest-exceptions-crossBinding-ws</artifactId>
+ <packaging>jar</packaging>
+ <name>Test Suite Exception Handling cross bindings WS</name>
+ <!-- JAX-WS temporary only until java.net maven2 repo is ready-->
+ <repositories>
+ <repository>
+ <id>java.net</id>
+ <url>https://maven-repository.dev.java.net/nonav/repository/</url>
+ <layout>legacy</layout>
+ </repository>
+ </repositories>
+ <dependencies>
+ <!-- Required extensions -->
+ <dependency>
+ <groupId>org.apache.tuscany.sca.services.databinding</groupId>
+ <artifactId>databinding-sdo</artifactId>
+ <version>${scaKernelVersion}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.tuscany.sca.services.idl</groupId>
+ <artifactId>tuscany-wsdl</artifactId>
+ <version>${scaKernelVersion}</version>
+ <scope>runtime</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.tuscany.sca.extensions.axis2</groupId>
+ <artifactId>tuscany-axis2</artifactId>
+ <scope>runtime</scope>
+ <version>${scaKernelVersion}</version>
+ </dependency>
+
+ + <dependency> + <groupId>junit</groupId> + <artifactId>junit</artifactId> + <version>4.2</version> + <scope>test</scope> + </dependency> + <dependency>
+ <groupId>org.apache.tuscany.sca.services</groupId>
+ <artifactId>tuscany-http-jetty</artifactId>
+ <scope>runtime</scope>
+ <version>${scaKernelVersion}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.tuscany.sca.services.databinding</groupId>
+ <artifactId>databinding-jaxb</artifactId>
+ <version>${scaKernelVersion}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.tuscany.sca.extensions.axis2</groupId>
+ <artifactId>databinding-axiom</artifactId>
+ <version>${scaKernelVersion}</version>
+ </dependency>
+ <!-- End of Required extensions -->
+ <!-- sun's jax-ws -->
+ <dependency>
+ <groupId>com.sun.xml.ws</groupId>
+ <artifactId>jaxws-rt</artifactId>
+ <version>2.1</version>
+ </dependency>
+ <!-- you will need to install these on your internal repo + https://jax-ws.dev.java.net/2.1/ download binary + mvn install:install-file "-DgroupId=com.sun.xml.ws" "-DartifactId=http" "-Dversion=2.1" "-Dpackaging=jar" "-Dfile=jaxws-ri\lib\http.jar" + mvn install:install-file "-DgroupId=com.sun.xml.ws" "-DartifactId=resolver" "-Dversion=2.1" "-Dpackaging=jar" "-Dfile=jaxws-ri\lib\resolver.jar" + -->
+ <!-- + <dependency> + <groupId>com.sun.xml.ws</groupId> + <artifactId>http</artifactId> + <version>2.1</version> + </dependency> + <dependency> + <groupId>com.sun.xml.ws</groupId> + <artifactId>resolver</artifactId> + <version>2.1</version> + </dependency> +-->
+ <dependency>
+ <groupId>javax.jws</groupId>
+ <artifactId>jsr181-api</artifactId>
+ <version>1.0-MR1</version>
+ </dependency>
+ <dependency>
+ <groupId>javax.xml.bind</groupId>
+ <artifactId>jaxb-api</artifactId>
+ <version>2.1</version>
+ </dependency>
+ <!-- ENDOF sun's jax-ws -->
+ </dependencies>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ </plugin>
+ <!-- Sun's JAX-WS Generation -->
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>jaxws-maven-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>generate-jaxb</id>
+ <phase>generate-resources</phase>
+ <goals>
+ <goal>wsimport</goal>
+ </goals>
+ </execution>
+ </executions>
+ <configuration>
+ <wsdlDirectory>${basedir}/src/main/resources/wsdl</wsdlDirectory>
+ <verbose>true</verbose>
+ <packageName>org.apache.tuscany.sca.test.exceptions.impl.jaxb</packageName>
+ <keep>true</keep>
+ </configuration>
+ <dependencies>
+ <dependency>
+ <groupId>javax.jws</groupId>
+ <artifactId>jsr181-api</artifactId>
+ <version>1.0-MR1</version>
+ </dependency>
+ </dependencies>
+ </plugin>
+ <!-- SDO Generation -->
+ <plugin>
+ <groupId>org.apache.tuscany.sdo</groupId>
+ <artifactId>tuscany-sdo-plugin</artifactId>
+ <version>${sdo.version}</version>
+ <executions>
+ <execution>
+ <configuration>
+ <schemaFile>${basedir}/src/main/resources/wsdl.sdo/StockExceptionTest.wsdl</schemaFile>
+ <noNotification>true</noNotification>
+ <noContainer>true</noContainer>
+ <noUnsettable>true</noUnsettable>
+ </configuration>
+ <goals>
+ <goal>generate</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.tuscany.sca.extensions.axis2.plugins</groupId>
+ <artifactId>tuscany-plugin-wsdl2java</artifactId>
+ <version>${scaKernelVersion}</version>
+ <executions>
+ <execution>
+ <configuration>
+ <wsdlFile>${basedir}/src/main/resources/wsdl.sdo/StockExceptionTest.wsdl</wsdlFile>
+ </configuration>
+ <goals>
+ <goal>generate</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+</project>
diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/src/main/java/org/apache/tuscany/sca/test/exceptions/impl/StockExceptionTestJAXB.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/src/main/java/org/apache/tuscany/sca/test/exceptions/impl/StockExceptionTestJAXB.java new file mode 100644 index 0000000000..2c9b2d25cb --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/src/main/java/org/apache/tuscany/sca/test/exceptions/impl/StockExceptionTestJAXB.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.test.exceptions.impl; + +import org.apache.tuscany.api.annotation.DataType; +import org.apache.tuscany.sca.test.exceptions.impl.jaxb.StockExceptionTest; +import org.osoa.sca.annotations.Remotable; + +/** + * + */ +@Remotable +@DataType(name = "javax.xml.bind.JAXBElement") +public interface StockExceptionTestJAXB extends StockExceptionTest { + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/src/main/java/org/apache/tuscany/sca/test/exceptions/impl/StockExchangeJaxB.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/src/main/java/org/apache/tuscany/sca/test/exceptions/impl/StockExchangeJaxB.java new file mode 100644 index 0000000000..65751175fb --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/src/main/java/org/apache/tuscany/sca/test/exceptions/impl/StockExchangeJaxB.java @@ -0,0 +1,76 @@ +/* + * 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.test.exceptions.impl; + +import org.apache.tuscany.sca.test.exceptions.impl.jaxb.InvalidSymbolFault; +import org.apache.tuscany.sca.test.exceptions.impl.jaxb.InvalidSymbolFault_Exception; +import org.apache.tuscany.sca.test.exceptions.impl.jaxb.MarketClosedFault; +import org.apache.tuscany.sca.test.exceptions.impl.jaxb.ObjectFactory; +import org.apache.tuscany.sca.test.exceptions.impl.jaxb.StockOffer; +import org.apache.tuscany.sca.test.exceptions.impl.jaxb.TestNotDeclaredAtSourceFault; +import org.osoa.sca.annotations.Service; + +/** + * + */ +@Service(StockExceptionTestJAXB.class) +public class StockExchangeJaxB implements StockExceptionTestJAXB { + + /** + * + */ + public StockExchangeJaxB() { + + } + + /* + * (non-Javadoc) + * + * @see org.apache.tuscany.sca.test.exceptions.impl.jaxb.StockExceptionTest#stockQuoteOffer(org.apache.tuscany.sca.test.exceptions.impl.jaxb.StockOffer) + */ + public StockOffer stockQuoteOffer(StockOffer input) throws InvalidSymbolFault_Exception, MarketClosedFault, TestNotDeclaredAtSourceFault{ + + System.out.println("stockQuoteOffer '" + input + "'"); + + String symbol = input.getSymbol(); + if ("IBM".equals(symbol)) { + input.setPrice(99.00F); + return input; + + } + else if ("CLOSED".equals(input.getName())) { + throw new MarketClosedFault("TO LATE!", 3); + + } else if( "testNotDeclaredAtSourceTest".equals(input.getName())){ + + throw new TestNotDeclaredAtSourceFault("not declared", "fault info"); + + } + ObjectFactory jaxbOjectFactory = new ObjectFactory(); + + InvalidSymbolFault faultinfo = jaxbOjectFactory.createInvalidSymbolFault(); + + faultinfo.setOffer(input); + + throw new InvalidSymbolFault_Exception("bad symbol", faultinfo); + + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/src/main/java/org/apache/tuscany/sca/test/exceptions/impl/StockTraderSDO.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/src/main/java/org/apache/tuscany/sca/test/exceptions/impl/StockTraderSDO.java new file mode 100644 index 0000000000..5f65d293ea --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/src/main/java/org/apache/tuscany/sca/test/exceptions/impl/StockTraderSDO.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.test.exceptions.impl; + +import java.rmi.RemoteException; + +import org.apache.tuscany.sca.test.exceptions.sdohandgen.InvalidSymbolSDOException; +import org.apache.tuscany.sca.test.exceptions.sdohandgen.MarketClosedSDOException; + +import stockexceptiontestservice.scatesttool.StockOffer; + +public interface StockTraderSDO { + + StockOffer testTrading() throws RemoteException, InvalidSymbolSDOException, MarketClosedSDOException; + + void testInvalidSymbolSDOException() throws RemoteException, InvalidSymbolSDOException, MarketClosedSDOException; + + Object testNotDeclaredAtSourceTest(); + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/src/main/java/org/apache/tuscany/sca/test/exceptions/impl/StockTraderSDOImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/src/main/java/org/apache/tuscany/sca/test/exceptions/impl/StockTraderSDOImpl.java new file mode 100644 index 0000000000..7d303887e7 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/src/main/java/org/apache/tuscany/sca/test/exceptions/impl/StockTraderSDOImpl.java @@ -0,0 +1,122 @@ +/* + * 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.test.exceptions.impl; + +import java.rmi.RemoteException; + +import org.apache.tuscany.sca.test.exceptions.sdohandgen.InvalidSymbolSDOException; +import org.apache.tuscany.sca.test.exceptions.sdohandgen.MarketClosedSDOException; +import org.apache.tuscany.sca.test.exceptions.sdohandgen.StockExceptionTest; +import org.osoa.sca.annotations.Reference; +import org.osoa.sca.annotations.Service; + +import stockexceptiontestservice.scatesttool.ScatesttoolFactory; +import stockexceptiontestservice.scatesttool.StockOffer; + +/** + * + */ +@Service(StockTraderSDO.class) +public class StockTraderSDOImpl implements StockTraderSDO { + + private StockExceptionTest exchangeJaxb; + + /** + * + */ + + public StockTraderSDOImpl() { + // TODO Auto-generated constructor stub + } + + @Reference + public void setExchangeJaxb(StockExceptionTest exchangeJaxb) { + this.exchangeJaxb = exchangeJaxb; + } + + /* + * (non-Javadoc) + * + * @see org.apache.tuscany.sca.test.exceptions.impl.StockTraderSDO#tradingTest() + */ + public StockOffer testTrading() throws RemoteException, InvalidSymbolSDOException, MarketClosedSDOException { + StockOffer stockOffer = ScatesttoolFactory.INSTANCE.createStockOffer(); + stockOffer.setName("IBM"); + stockOffer.setSymbol("IBM"); + stockOffer.setPrice(100.00F); // offer to buy at max $100.00 + + StockOffer stockOfferAccepted = exchangeJaxb.stockQuoteOffer(stockOffer); + + return stockOfferAccepted; + + } + + public void testInvalidSymbolSDOException() throws RemoteException, InvalidSymbolSDOException, + MarketClosedSDOException { + StockOffer stockOffer = ScatesttoolFactory.INSTANCE.createStockOffer(); + // set up for a InvalidSymbolSDOException + stockOffer.setName(""); + stockOffer.setSymbol("IBM0"); + + stockOffer.setPrice(11.0F); // offer to buy at max $100.00 + exchangeJaxb.stockQuoteOffer(stockOffer); + + } + + public void marketClosedSDOExceptionTest() { + StockOffer stockOffer = ScatesttoolFactory.INSTANCE.createStockOffer(); + + // set up for a MarketClosedSDOException + stockOffer.setName("CLOSED"); + stockOffer.setSymbol("MBI"); + stockOffer.setPrice(Float.NaN); // offer to buy at max $100.00 + try { + StockOffer stockOfferAccepted = exchangeJaxb.stockQuoteOffer(stockOffer); + stockOfferAccepted.getPrice(); // the price actually bought. + } catch (RemoteException e) { + + e.printStackTrace(); + } catch (InvalidSymbolSDOException e) { + + e.printStackTrace(); + } catch (MarketClosedSDOException e) { + + e.printStackTrace(); + } + } + + public Object testNotDeclaredAtSourceTest() { + StockOffer stockOffer = ScatesttoolFactory.INSTANCE.createStockOffer(); + + // set up for a MarketClosedSDOException + stockOffer.setName("testNotDeclaredAtSourceTest"); + stockOffer.setSymbol("TNDAS"); + stockOffer.setPrice(Float.NaN); // offer to buy at max $100.00 + try { + return exchangeJaxb.stockQuoteOffer(stockOffer); + + } catch (Exception e) { + return e; + + } + + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/src/main/java/org/apache/tuscany/sca/test/exceptions/sdohandgen/InvalidSymbolSDOException.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/src/main/java/org/apache/tuscany/sca/test/exceptions/sdohandgen/InvalidSymbolSDOException.java new file mode 100644 index 0000000000..e9df6ba473 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/src/main/java/org/apache/tuscany/sca/test/exceptions/sdohandgen/InvalidSymbolSDOException.java @@ -0,0 +1,84 @@ +/* + * 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.test.exceptions.sdohandgen; + +import javax.xml.namespace.QName; + +import stockexceptiontestservice.scatesttool.InvalidSymbolFault; + +/** + * + */ +public class InvalidSymbolSDOException extends Exception { + + public static final QName FAULT_ELEMENT = new QName("http://scatesttool.stockexceptiontestservice", "InvalidSymbolFault"); + + /** + * + */ + public InvalidSymbolSDOException() { + + } + + /** + * @param message + * @param faultInfo + */ + public InvalidSymbolSDOException(String message, InvalidSymbolFault faultInfo) { + super(message); + this.faultInfo = faultInfo; + + } + + /** + * @param cause + */ + public InvalidSymbolSDOException(InvalidSymbolFault faultInfo, Throwable cause) { + super(cause); + this.faultInfo = faultInfo; + + } + + /** + * @param message + * @param cause + */ + public InvalidSymbolSDOException(String message, InvalidSymbolFault faultInfo, Throwable cause) { + super(message, cause); + this.faultInfo = faultInfo; + + } + + // *** Below was hand added ... tooling needs to do this ***/ + + /** + * Java type that goes as soapenv:Fault detail element. + */ + private InvalidSymbolFault faultInfo; + + /** + * @return returns fault bean: + * org.apache.tuscany.sca.test.exceptions.impl.jaxb.InvalidSymbolFault + */ + public InvalidSymbolFault getFaultInfo() { + return faultInfo; + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/src/main/java/org/apache/tuscany/sca/test/exceptions/sdohandgen/MarketClosedSDOException.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/src/main/java/org/apache/tuscany/sca/test/exceptions/sdohandgen/MarketClosedSDOException.java new file mode 100644 index 0000000000..39b702afe3 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/src/main/java/org/apache/tuscany/sca/test/exceptions/sdohandgen/MarketClosedSDOException.java @@ -0,0 +1,76 @@ +/* + * 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.test.exceptions.sdohandgen; + +import javax.xml.namespace.QName; + +/** + * + */ +public class MarketClosedSDOException extends Exception { + public static final QName FAULT_ELEMENT = + new QName("http://scatesttool.stockexceptiontestservice", "MarketClosedFault"); + + + /** + * Java type that goes as soapenv:Fault detail element. + */ + private int faultInfo; + + /** + * + */ + public MarketClosedSDOException() { + + } + + /** + * @param message + */ + public MarketClosedSDOException(String message, int faultInfo) { + super(message); + this.faultInfo = faultInfo; + } + + /** + * @param cause + */ + public MarketClosedSDOException(int faultInfo, Throwable cause) { + super(cause); + this.faultInfo = faultInfo; + } + + /** + * @param message + * @param cause + */ + public MarketClosedSDOException(String message, int faultInfo, Throwable cause) { + super(message, cause); + this.faultInfo = faultInfo; + } + + /** + * @return returns fault bean: int + */ + public int getFaultInfo() { + return faultInfo; + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/src/main/java/org/apache/tuscany/sca/test/exceptions/sdohandgen/StockExceptionTest.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/src/main/java/org/apache/tuscany/sca/test/exceptions/sdohandgen/StockExceptionTest.java new file mode 100644 index 0000000000..7b4b3a0f29 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/src/main/java/org/apache/tuscany/sca/test/exceptions/sdohandgen/StockExceptionTest.java @@ -0,0 +1,50 @@ +/* + * 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. + */ +/** + * StockExceptionTest.java + * + * This file was auto-generated from WSDL + * by the Apache Axis2 version: #axisVersion# #today# + */ +package org.apache.tuscany.sca.test.exceptions.sdohandgen; + +import org.apache.tuscany.api.annotation.DataType; +import org.osoa.sca.annotations.Remotable; + +import stockexceptiontestservice.scatesttool.StockOffer; + +import org.apache.tuscany.sca.test.exceptions.sdohandgen.MarketClosedSDOException; + +/* + * StockExceptionTest java interface + */ + +@Remotable +@DataType(name = "commonj.sdo.DataObject") +public interface StockExceptionTest { + + /** + * Auto generated method signatures + * + * @param param0 + */ + StockOffer stockQuoteOffer(StockOffer param0) + throws java.rmi.RemoteException, InvalidSymbolSDOException, MarketClosedSDOException; + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/src/main/resources/ExceptionTest.composite b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/src/main/resources/ExceptionTest.composite new file mode 100644 index 0000000000..f955ba093c --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/src/main/resources/ExceptionTest.composite @@ -0,0 +1,26 @@ +<?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" + xmlns:foo="http://foo" + name="ExceptionTest"> + + <include name="intracomposite" scdlLocation="intracomposite.composite"/> + +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/src/main/resources/intracomposite.composite b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/src/main/resources/intracomposite.composite new file mode 100644 index 0000000000..4dc2464c33 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/src/main/resources/intracomposite.composite @@ -0,0 +1,42 @@ +<?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 name="intracomposite" xmlns="http://www.osoa.org/xmlns/sca/1.0" xmlns:dbsdo="http://tuscany.apache.org/xmlns/sca/databinding/sdo/1.0" xmlns:wsdli="http://www.w3.org/2006/01/wsdl-instance"> + <dbsdo:import.sdo factory="stockexceptiontestservice.scatesttool.ScatesttoolFactory"/> + + <service name="exchangeJaxbService"> + <interface.java class="org.apache.tuscany.sca.test.exceptions.impl.StockExceptionTestJAXB"/> + <binding.ws wsdlElement="http://scatesttool.stockexceptiontestservice#wsdl.port(StockExceptionTestService/StockExceptionTestServiceSoapPort)" wsdlLocation="http://scatesttool.stockexceptiontestservice wsdl/StockExceptionTest.wsdl"/> + <reference target="exchangeJaxbComponent">exchangeJaxbComponent</reference> + </service> + + <component name="exchangeJaxbComponent"> + <implementation.java class="org.apache.tuscany.sca.test.exceptions.impl.StockExchangeJaxB"/> + </component> + + <component name="stockTraderSDOComponent"> + <implementation.java class="org.apache.tuscany.sca.test.exceptions.impl.StockTraderSDOImpl"/> + <reference name="exchangeJaxb"></reference> + </component> + + <reference name="stockTraderSDOReference" promote="stockTraderSDOComponent"> + <interface.java class="org.apache.tuscany.sca.test.exceptions.sdohandgen.StockExceptionTest"/> + <binding.ws wsdlElement="http://scatesttool.stockexceptiontestservice#wsdl.port(StockExceptionTestService/StockExceptionTestServiceSoapPort)" wsdlLocation="http://scatesttool.stockexceptiontestservice wsdl/StockExceptionTest.wsdl"/> + </reference> +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/src/main/resources/wsdl.sdo/StockExceptionTest.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/src/main/resources/wsdl.sdo/StockExceptionTest.wsdl new file mode 100644 index 0000000000..f5e716de94 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/src/main/resources/wsdl.sdo/StockExceptionTest.wsdl @@ -0,0 +1,141 @@ +<?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 targetNamespace="http://scatesttool.stockexceptiontestservice" xmlns:impl="http://scatesttool.stockexceptiontestservice"
+ xmlns:tns="http://scatesttool.stockexceptiontestservice" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+ xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsi="http://ws-i.org/profiles/basic/1.1/xsd"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="StockExceptionTest">
+ <wsdl:types>
+ <schema targetNamespace="http://scatesttool.stockexceptiontestservice" xmlns="http://www.w3.org/2001/XMLSchema"
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+ <complexType name="StockOffer">
+ <sequence>
+ <element name="symbol" minOccurs="1" type="xsd:string" />
+ <element name="price" minOccurs="1" type="xsd:float" nillable="true" /> <!-- max price reqested, actual response -->
+ <element name="name" minOccurs="0" type="xsd:string" />
+ </sequence>
+ </complexType>
+
+ <element name="stockQuoteOffer">
+ <complexType>
+ <sequence>
+ <element name="input" minOccurs="0" type="tns:StockOffer" />
+ </sequence>
+ </complexType>
+ </element>
+ <element name="stockQuoteOfferResponse">
+ <complexType>
+ <sequence>
+ <element name="stockQuoteOfferReturn" minOccurs="0" type="tns:StockOffer" />
+ </sequence>
+ </complexType>
+ </element>
+
+ <!-- Faults -->
+ <element name="InvalidSymbolFault">
+ <complexType>
+ <sequence>
+ <element name="message" minOccurs="1" type="xsd:string" />
+ <element name="offer" minOccurs="1" type="tns:StockOffer" />
+ </sequence>
+ </complexType>
+ </element>
+
+ <element name="MarketClosedFault">
+ <complexType>
+ <sequence>
+ <element name="message" minOccurs="1" type="xsd:string" />
+ </sequence>
+ </complexType>
+ </element>
+
+ </schema>
+ </wsdl:types>
+
+
+ <wsdl:message name="stockQuoteOfferRequest">
+ <wsdl:part element="tns:stockQuoteOffer" name="parameters" />
+ </wsdl:message>
+
+ <wsdl:message name="stockQuoteOfferResponse">
+ <wsdl:part element="tns:stockQuoteOfferResponse" name="parameters" />
+ </wsdl:message>
+
+ <wsdl:message name="InvalidSymbolFault">
+ <wsdl:part element="tns:InvalidSymbolFault" name="fault" />
+ </wsdl:message>
+
+ <wsdl:message name="MarketClosedFault">
+ <wsdl:part element="tns:MarketClosedFault" name="fault" />
+ </wsdl:message>
+
+
+ <wsdl:portType name="StockExceptionTest">
+ <wsdl:operation name="stockQuoteOffer">
+ <wsdl:input message="tns:stockQuoteOfferRequest" name="stockQuoteOfferRequest" />
+
+ <wsdl:output message="tns:stockQuoteOfferResponse" name="stockQuoteOfferResponse" />
+<!--
+ <wsdl:fault message="tns:InvalidSymbolFault" name="InvalidSymbolException" />
+
+ <wsdl:fault message="tns:MarketClosedFault" name="MarketClosedException" />
+-->
+ </wsdl:operation>
+
+
+ </wsdl:portType>
+
+ <wsdl:binding name="StockExceptionTestServiceSoapBinding" type="tns:StockExceptionTest">
+ <!-- <wsaw:UsingAddressing wsdl:required="false" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"/> -->
+
+ <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />
+
+ <wsdl:operation name="stockQuoteOffer">
+ <wsdlsoap:operation soapAction="" />
+
+ <wsdl:input name="stockQuoteOfferRequest">
+ <wsdlsoap:body use="literal" />
+ </wsdl:input>
+
+ <wsdl:output name="stockQuoteOfferResponse">
+ <wsdlsoap:body use="literal" />
+ </wsdl:output>
+<!--
+ <wsdl:fault name="InvalidSymbolException">
+ <wsdlsoap:fault name="InvalidSymbolException" use="literal" />
+ </wsdl:fault>
+
+ <wsdl:fault name="MarketClosedException">
+ <wsdlsoap:fault name="MarketClosedException" use="literal" />
+ </wsdl:fault>
+-->
+ </wsdl:operation>
+
+
+ </wsdl:binding>
+
+ <wsdl:service name="StockExceptionTestService">
+ <wsdl:port binding="tns:StockExceptionTestServiceSoapBinding" name="StockExceptionTestServiceSoapPort">
+ <wsdlsoap:address location="http://localhost:8080/StockExceptionTestService/services/StockExceptionTestService" />
+
+ </wsdl:port>
+
+ </wsdl:service>
+
+</wsdl:definitions>
\ No newline at end of file diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/src/main/resources/wsdl/StockExceptionTest.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/src/main/resources/wsdl/StockExceptionTest.wsdl new file mode 100644 index 0000000000..b4ed2b90cf --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/src/main/resources/wsdl/StockExceptionTest.wsdl @@ -0,0 +1,148 @@ +<?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 targetNamespace="http://scatesttool.stockexceptiontestservice" xmlns:impl="http://scatesttool.stockexceptiontestservice"
+ xmlns:tns="http://scatesttool.stockexceptiontestservice" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+ xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsi="http://ws-i.org/profiles/basic/1.1/xsd"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="StockExceptionTest">
+ <wsdl:types>
+ <schema targetNamespace="http://scatesttool.stockexceptiontestservice" xmlns="http://www.w3.org/2001/XMLSchema"
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+ <complexType name="StockOffer">
+ <sequence>
+ <element name="symbol" minOccurs="1" type="xsd:string" />
+ <element name="price" minOccurs="1" type="xsd:float" nillable="true" /> <!-- max price reqested, actual response -->
+ <element name="name" minOccurs="0" type="xsd:string" />
+ </sequence>
+ </complexType>
+
+ <element name="stockQuoteOffer">
+ <complexType>
+ <sequence>
+ <element name="input" minOccurs="0" type="tns:StockOffer" />
+ </sequence>
+ </complexType>
+ </element>
+ <element name="stockQuoteOfferResponse">
+ <complexType>
+ <sequence>
+ <element name="stockQuoteOfferReturn" minOccurs="0" type="tns:StockOffer" />
+ </sequence>
+ </complexType>
+ </element>
+
+ <!-- Faults -->
+ <element name="InvalidSymbolFault">
+ <complexType>
+ <sequence>
+ <element name="message" minOccurs="1" type="xsd:string" />
+ <element name="offer" minOccurs="1" type="tns:StockOffer" />
+ </sequence>
+ </complexType>
+ </element>
+
+ <element name="MarketClosedFault" type="xsd:int" />
+
+ <element name="TestNotDeclaredAtSourceFault" type="xsd:string" />
+
+ </schema>
+ </wsdl:types>
+
+
+ <wsdl:message name="stockQuoteOfferRequest">
+ <wsdl:part element="tns:stockQuoteOffer" name="parameters" />
+ </wsdl:message>
+
+ <wsdl:message name="stockQuoteOfferResponse">
+ <wsdl:part element="tns:stockQuoteOfferResponse" name="parameters" />
+ </wsdl:message>
+
+ <wsdl:message name="InvalidSymbolFault">
+ <wsdl:part element="tns:InvalidSymbolFault" name="fault" />
+ </wsdl:message>
+
+ <wsdl:message name="MarketClosedFault">
+ <wsdl:part element="tns:MarketClosedFault" name="fault" />
+ </wsdl:message>
+
+ <wsdl:message name="TestNotDeclaredAtSourceFault">
+ <wsdl:part element="tns:TestNotDeclaredAtSourceFault" name="fault" />
+ </wsdl:message>
+
+
+ <wsdl:portType name="StockExceptionTest">
+ <wsdl:operation name="stockQuoteOffer">
+ <wsdl:input message="tns:stockQuoteOfferRequest" name="stockQuoteOfferRequest" />
+
+ <wsdl:output message="tns:stockQuoteOfferResponse" name="stockQuoteOfferResponse" />
+
+ <wsdl:fault message="tns:InvalidSymbolFault" name="InvalidSymbolException" />
+
+ <wsdl:fault message="tns:MarketClosedFault" name="MarketClosedException" />
+
+ <wsdl:fault message="tns:TestNotDeclaredAtSourceFault" name="TestNotDeclaredAtSourceException" />
+ </wsdl:operation>
+
+
+ </wsdl:portType>
+
+ <wsdl:binding name="StockExceptionTestServiceSoapBinding" type="tns:StockExceptionTest">
+ <!-- <wsaw:UsingAddressing wsdl:required="false" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"/> -->
+
+ <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />
+
+ <wsdl:operation name="stockQuoteOffer">
+ <wsdlsoap:operation soapAction="" />
+
+ <wsdl:input name="stockQuoteOfferRequest">
+ <wsdlsoap:body use="literal" />
+ </wsdl:input>
+
+ <wsdl:output name="stockQuoteOfferResponse">
+ <wsdlsoap:body use="literal" />
+ </wsdl:output>
+
+ <wsdl:fault name="InvalidSymbolException">
+ <wsdlsoap:fault name="InvalidSymbolException" use="literal" />
+ </wsdl:fault>
+
+ <wsdl:fault name="MarketClosedException">
+ <wsdlsoap:fault name="MarketClosedException" use="literal" />
+ </wsdl:fault>
+
+ <wsdl:fault name="TestNotDeclaredAtSourceException">
+ <wsdlsoap:fault name="TestNotDeclaredAtSourceException" use="literal" />
+ </wsdl:fault>
+
+
+
+ </wsdl:operation>
+
+
+ </wsdl:binding>
+
+ <wsdl:service name="StockExceptionTestService">
+ <wsdl:port binding="tns:StockExceptionTestServiceSoapBinding" name="StockExceptionTestServiceSoapPort">
+ <wsdlsoap:address location="http://localhost:8080/services/exchangeJaxbService" />
+
+ </wsdl:port>
+
+ </wsdl:service>
+
+</wsdl:definitions>
\ No newline at end of file diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/src/main/resources/xsd/StockExceptionTest.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/src/main/resources/xsd/StockExceptionTest.xsd new file mode 100644 index 0000000000..9759647cfe --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/src/main/resources/xsd/StockExceptionTest.xsd @@ -0,0 +1,65 @@ +<?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. + --> + <schema targetNamespace="http://scatesttool.stockexceptiontestservice" xmlns="http://www.w3.org/2001/XMLSchema" + xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:tns="http://scatesttool.stockexceptiontestservice" + > + <complexType name="StockOffer"> + <sequence> + <element name="symbol" minOccurs="1" type="xsd:string" /> + <element name="price" minOccurs="1" type="xsd:float" nillable="true" /> <!-- max price reqested, actual response --> + <element name="name" minOccurs="0" type="xsd:string" /> + </sequence> + </complexType> + + <element name="stockQuoteOffer"> + <complexType> + <sequence> + <element name="input" minOccurs="0" type="tns:StockOffer" /> + </sequence> + </complexType> + </element> + <element name="stockQuoteOfferResponse"> + <complexType> + <sequence> + <element name="stockQuoteOfferReturn" minOccurs="0" type="tns:StockOffer" /> + </sequence> + </complexType> + </element> + + <!-- Faults --> + <element name="InvalidSymbolFault"> + <complexType> + <sequence> + <element name="message" minOccurs="1" type="xsd:string" /> + <element name="offer" minOccurs="1" type="tns:StockOffer" /> + </sequence> + </complexType> + </element> + + <element name="MarketClosedFault"> + <complexType> + <sequence> + <element name="message" minOccurs="1" type="xsd:string" /> + </sequence> + </complexType> + </element> + + </schema>
\ No newline at end of file diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/src/test/java/org/apache/tuscany/sca/test/exceptions/IntraCompositeTestCase.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/src/test/java/org/apache/tuscany/sca/test/exceptions/IntraCompositeTestCase.java new file mode 100644 index 0000000000..e8efe86945 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding-ws/src/test/java/org/apache/tuscany/sca/test/exceptions/IntraCompositeTestCase.java @@ -0,0 +1,97 @@ +/* + * 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.test.exceptions; + +import junit.framework.TestCase; + +import org.apache.tuscany.api.SCARuntime; +import org.apache.tuscany.sca.test.exceptions.impl.StockTraderSDO; +import org.apache.tuscany.sca.test.exceptions.sdohandgen.InvalidSymbolSDOException; +import org.apache.tuscany.spi.databinding.TransformationException; +import org.osoa.sca.CompositeContext; +import org.osoa.sca.CurrentCompositeContext; + +import stockexceptiontestservice.scatesttool.InvalidSymbolFault; +import stockexceptiontestservice.scatesttool.StockOffer; + +public class IntraCompositeTestCase extends TestCase { + private StockTraderSDO stockTrader; + + private CompositeContext context; + + public void testTrading() { + try { + StockOffer sp = stockTrader.testTrading(); + assertNotNull(sp); + assertEquals(99.00F, sp.getPrice()); + assertEquals("IBM", sp.getSymbol()); + } catch (Exception e) { + + e.printStackTrace(); + fail(e + ""); + + } + + } + + public void testInvalidSymbolSDOException() { + try { + stockTrader.testInvalidSymbolSDOException(); + fail("Expected InvalidSymbolSDOException"); + } catch (InvalidSymbolSDOException e) { + InvalidSymbolFault isf = e.getFaultInfo(); + + assertNotNull(isf); + StockOffer sp = isf.getOffer(); + assertEquals(11.00F, sp.getPrice()); + assertEquals("IBM0", sp.getSymbol()); + + } catch (Exception e) { + e.printStackTrace(); + fail("Expected InvalidSymbolSDOException" + e); + + } + } + + public void _testNotDeclaredAtSourceException() { + + Object ret = stockTrader.testNotDeclaredAtSourceTest(); + + assertNotNull(ret); + + assertEquals(TransformationException.class, ret.getClass()); + + } + + @Override + protected void setUp() throws Exception { + SCARuntime.start("ExceptionTest.composite"); + + context = CurrentCompositeContext.getContext(); + assertNotNull(context); + stockTrader = context.locateService(StockTraderSDO.class, "stockTraderSDOComponent"); + + assertNotNull(context); + } + + @Override + protected void tearDown() throws Exception { + SCARuntime.stop(); + } +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/LICENSE.txt b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/LICENSE.txt new file mode 100644 index 0000000000..0084319535 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/LICENSE.txt @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, serviceDefinition marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed 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. diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/NOTICE.txt b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/NOTICE.txt new file mode 100644 index 0000000000..d83ebbe236 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/NOTICE.txt @@ -0,0 +1,14 @@ +${pom.name} +Copyright (c) 2005 - 2006 The Apache Software Foundation + +Apache Tuscany is an effort undergoing incubation at The Apache Software +Foundation (ASF), sponsored by the Apache Web Services PMC. Incubation is +required of all newly accepted projects until a further review indicates that +the infrastructure, communications, and decision making process have stabilized +in a manner consistent with other successful ASF projects. While incubation +status is not necessarily a reflection of the completeness or stability of the +code, it does indicate that the project has yet to be fully endorsed by the ASF. + +This product includes software developed by +The Apache Software Foundation (http://www.apache.org/). + diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/pom.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/pom.xml new file mode 100644 index 0000000000..6b6d981a97 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/pom.xml @@ -0,0 +1,161 @@ +<?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>
+ <parent>
+ <groupId>org.apache.tuscany.testing</groupId>
+ <artifactId>sca-itest</artifactId>
+ <version>0.1-integration-incubating-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>iTest-exceptions-crossBinding</artifactId>
+ <packaging>jar</packaging>
+ <name>Test Suite Exception Handling cross bindings</name>
+ <!-- JAX-WS temporary only until java.net maven2 repo is ready-->
+ <repositories>
+ <repository>
+ <id>java.net</id>
+ <url>https://maven-repository.dev.java.net/nonav/repository/</url>
+ <layout>legacy</layout>
+ </repository>
+ </repositories>
+ <dependencies>
+ <!-- Required extensions -->
+ <dependency>
+ <groupId>org.apache.tuscany.sca.services.databinding</groupId>
+ <artifactId>databinding-sdo</artifactId>
+ <version>${scaKernelVersion}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.tuscany.sca.services.databinding</groupId>
+ <artifactId>databinding-jaxb</artifactId>
+ <version>${scaKernelVersion}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.tuscany.sca.extensions.axis2</groupId>
+ <artifactId>databinding-axiom</artifactId>
+ <version>${scaKernelVersion}</version>
+ </dependency>
+ <!-- End of Required extensions -->
+ <!-- sun's jax-ws -->
+ <dependency>
+ <groupId>com.sun.xml.ws</groupId>
+ <artifactId>jaxws-rt</artifactId>
+ <version>2.1</version>
+ </dependency>
+ <!-- you will need to install these on your internal repo + https://jax-ws.dev.java.net/2.1/ download binary + mvn install:install-file "-DgroupId=com.sun.xml.ws" "-DartifactId=http" "-Dversion=2.1" "-Dpackaging=jar" "-Dfile=jaxws-ri\lib\http.jar" + mvn install:install-file "-DgroupId=com.sun.xml.ws" "-DartifactId=resolver" "-Dversion=2.1" "-Dpackaging=jar" "-Dfile=jaxws-ri\lib\resolver.jar" + -->
+ <!-- + <dependency> + <groupId>com.sun.xml.ws</groupId> + <artifactId>http</artifactId> + <version>2.1</version> + </dependency> + <dependency> + <groupId>com.sun.xml.ws</groupId> + <artifactId>resolver</artifactId> + <version>2.1</version> + </dependency> +-->
+ <dependency>
+ <groupId>javax.jws</groupId>
+ <artifactId>jsr181-api</artifactId>
+ <version>1.0-MR1</version>
+ </dependency>
+ <dependency>
+ <groupId>javax.xml.bind</groupId>
+ <artifactId>jaxb-api</artifactId>
+ <version>2.1</version>
+ </dependency>
+ <!-- ENDOF sun's jax-ws -->
+ </dependencies>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ </plugin>
+ <!-- Sun's JAX-WS Generation -->
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>jaxws-maven-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>generate-jaxb</id>
+ <phase>generate-resources</phase>
+ <goals>
+ <goal>wsimport</goal>
+ </goals>
+ </execution>
+ </executions>
+ <configuration>
+ <wsdlDirectory>${basedir}/src/main/resources/wsdl</wsdlDirectory>
+ <verbose>true</verbose>
+ <packageName>org.apache.tuscany.sca.test.exceptions.impl.jaxb</packageName>
+ <keep>true</keep>
+ </configuration>
+ <dependencies>
+ <dependency>
+ <groupId>javax.jws</groupId>
+ <artifactId>jsr181-api</artifactId>
+ <version>1.0-MR1</version>
+ </dependency>
+ </dependencies>
+ </plugin>
+ <!-- SDO Generation -->
+ <plugin>
+ <groupId>org.apache.tuscany.sdo</groupId>
+ <artifactId>tuscany-sdo-plugin</artifactId>
+ <version>${sdo.version}</version>
+ <executions>
+ <execution>
+ <configuration>
+ <schemaFile>${basedir}/src/main/resources/wsdl.sdo/StockExceptionTest.wsdl</schemaFile>
+ <noNotification>true</noNotification>
+ <noContainer>true</noContainer>
+ <noUnsettable>true</noUnsettable>
+ </configuration>
+ <goals>
+ <goal>generate</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.tuscany.sca.extensions.axis2.plugins</groupId>
+ <artifactId>tuscany-plugin-wsdl2java</artifactId>
+ <version>${scaKernelVersion}</version>
+ <executions>
+ <execution>
+ <configuration>
+ <wsdlFile>${basedir}/src/main/resources/wsdl.sdo/StockExceptionTest.wsdl</wsdlFile>
+ </configuration>
+ <goals>
+ <goal>generate</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+</project>
diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/src/main/java/org/apache/tuscany/sca/test/exceptions/impl/StockExceptionTestJAXB.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/src/main/java/org/apache/tuscany/sca/test/exceptions/impl/StockExceptionTestJAXB.java new file mode 100644 index 0000000000..2c9b2d25cb --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/src/main/java/org/apache/tuscany/sca/test/exceptions/impl/StockExceptionTestJAXB.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.test.exceptions.impl; + +import org.apache.tuscany.api.annotation.DataType; +import org.apache.tuscany.sca.test.exceptions.impl.jaxb.StockExceptionTest; +import org.osoa.sca.annotations.Remotable; + +/** + * + */ +@Remotable +@DataType(name = "javax.xml.bind.JAXBElement") +public interface StockExceptionTestJAXB extends StockExceptionTest { + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/src/main/java/org/apache/tuscany/sca/test/exceptions/impl/StockExchangeJaxB.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/src/main/java/org/apache/tuscany/sca/test/exceptions/impl/StockExchangeJaxB.java new file mode 100644 index 0000000000..65751175fb --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/src/main/java/org/apache/tuscany/sca/test/exceptions/impl/StockExchangeJaxB.java @@ -0,0 +1,76 @@ +/* + * 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.test.exceptions.impl; + +import org.apache.tuscany.sca.test.exceptions.impl.jaxb.InvalidSymbolFault; +import org.apache.tuscany.sca.test.exceptions.impl.jaxb.InvalidSymbolFault_Exception; +import org.apache.tuscany.sca.test.exceptions.impl.jaxb.MarketClosedFault; +import org.apache.tuscany.sca.test.exceptions.impl.jaxb.ObjectFactory; +import org.apache.tuscany.sca.test.exceptions.impl.jaxb.StockOffer; +import org.apache.tuscany.sca.test.exceptions.impl.jaxb.TestNotDeclaredAtSourceFault; +import org.osoa.sca.annotations.Service; + +/** + * + */ +@Service(StockExceptionTestJAXB.class) +public class StockExchangeJaxB implements StockExceptionTestJAXB { + + /** + * + */ + public StockExchangeJaxB() { + + } + + /* + * (non-Javadoc) + * + * @see org.apache.tuscany.sca.test.exceptions.impl.jaxb.StockExceptionTest#stockQuoteOffer(org.apache.tuscany.sca.test.exceptions.impl.jaxb.StockOffer) + */ + public StockOffer stockQuoteOffer(StockOffer input) throws InvalidSymbolFault_Exception, MarketClosedFault, TestNotDeclaredAtSourceFault{ + + System.out.println("stockQuoteOffer '" + input + "'"); + + String symbol = input.getSymbol(); + if ("IBM".equals(symbol)) { + input.setPrice(99.00F); + return input; + + } + else if ("CLOSED".equals(input.getName())) { + throw new MarketClosedFault("TO LATE!", 3); + + } else if( "testNotDeclaredAtSourceTest".equals(input.getName())){ + + throw new TestNotDeclaredAtSourceFault("not declared", "fault info"); + + } + ObjectFactory jaxbOjectFactory = new ObjectFactory(); + + InvalidSymbolFault faultinfo = jaxbOjectFactory.createInvalidSymbolFault(); + + faultinfo.setOffer(input); + + throw new InvalidSymbolFault_Exception("bad symbol", faultinfo); + + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/src/main/java/org/apache/tuscany/sca/test/exceptions/impl/StockTraderSDO.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/src/main/java/org/apache/tuscany/sca/test/exceptions/impl/StockTraderSDO.java new file mode 100644 index 0000000000..5f65d293ea --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/src/main/java/org/apache/tuscany/sca/test/exceptions/impl/StockTraderSDO.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.test.exceptions.impl; + +import java.rmi.RemoteException; + +import org.apache.tuscany.sca.test.exceptions.sdohandgen.InvalidSymbolSDOException; +import org.apache.tuscany.sca.test.exceptions.sdohandgen.MarketClosedSDOException; + +import stockexceptiontestservice.scatesttool.StockOffer; + +public interface StockTraderSDO { + + StockOffer testTrading() throws RemoteException, InvalidSymbolSDOException, MarketClosedSDOException; + + void testInvalidSymbolSDOException() throws RemoteException, InvalidSymbolSDOException, MarketClosedSDOException; + + Object testNotDeclaredAtSourceTest(); + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/src/main/java/org/apache/tuscany/sca/test/exceptions/impl/StockTraderSDOImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/src/main/java/org/apache/tuscany/sca/test/exceptions/impl/StockTraderSDOImpl.java new file mode 100644 index 0000000000..7d303887e7 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/src/main/java/org/apache/tuscany/sca/test/exceptions/impl/StockTraderSDOImpl.java @@ -0,0 +1,122 @@ +/* + * 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.test.exceptions.impl; + +import java.rmi.RemoteException; + +import org.apache.tuscany.sca.test.exceptions.sdohandgen.InvalidSymbolSDOException; +import org.apache.tuscany.sca.test.exceptions.sdohandgen.MarketClosedSDOException; +import org.apache.tuscany.sca.test.exceptions.sdohandgen.StockExceptionTest; +import org.osoa.sca.annotations.Reference; +import org.osoa.sca.annotations.Service; + +import stockexceptiontestservice.scatesttool.ScatesttoolFactory; +import stockexceptiontestservice.scatesttool.StockOffer; + +/** + * + */ +@Service(StockTraderSDO.class) +public class StockTraderSDOImpl implements StockTraderSDO { + + private StockExceptionTest exchangeJaxb; + + /** + * + */ + + public StockTraderSDOImpl() { + // TODO Auto-generated constructor stub + } + + @Reference + public void setExchangeJaxb(StockExceptionTest exchangeJaxb) { + this.exchangeJaxb = exchangeJaxb; + } + + /* + * (non-Javadoc) + * + * @see org.apache.tuscany.sca.test.exceptions.impl.StockTraderSDO#tradingTest() + */ + public StockOffer testTrading() throws RemoteException, InvalidSymbolSDOException, MarketClosedSDOException { + StockOffer stockOffer = ScatesttoolFactory.INSTANCE.createStockOffer(); + stockOffer.setName("IBM"); + stockOffer.setSymbol("IBM"); + stockOffer.setPrice(100.00F); // offer to buy at max $100.00 + + StockOffer stockOfferAccepted = exchangeJaxb.stockQuoteOffer(stockOffer); + + return stockOfferAccepted; + + } + + public void testInvalidSymbolSDOException() throws RemoteException, InvalidSymbolSDOException, + MarketClosedSDOException { + StockOffer stockOffer = ScatesttoolFactory.INSTANCE.createStockOffer(); + // set up for a InvalidSymbolSDOException + stockOffer.setName(""); + stockOffer.setSymbol("IBM0"); + + stockOffer.setPrice(11.0F); // offer to buy at max $100.00 + exchangeJaxb.stockQuoteOffer(stockOffer); + + } + + public void marketClosedSDOExceptionTest() { + StockOffer stockOffer = ScatesttoolFactory.INSTANCE.createStockOffer(); + + // set up for a MarketClosedSDOException + stockOffer.setName("CLOSED"); + stockOffer.setSymbol("MBI"); + stockOffer.setPrice(Float.NaN); // offer to buy at max $100.00 + try { + StockOffer stockOfferAccepted = exchangeJaxb.stockQuoteOffer(stockOffer); + stockOfferAccepted.getPrice(); // the price actually bought. + } catch (RemoteException e) { + + e.printStackTrace(); + } catch (InvalidSymbolSDOException e) { + + e.printStackTrace(); + } catch (MarketClosedSDOException e) { + + e.printStackTrace(); + } + } + + public Object testNotDeclaredAtSourceTest() { + StockOffer stockOffer = ScatesttoolFactory.INSTANCE.createStockOffer(); + + // set up for a MarketClosedSDOException + stockOffer.setName("testNotDeclaredAtSourceTest"); + stockOffer.setSymbol("TNDAS"); + stockOffer.setPrice(Float.NaN); // offer to buy at max $100.00 + try { + return exchangeJaxb.stockQuoteOffer(stockOffer); + + } catch (Exception e) { + return e; + + } + + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/src/main/java/org/apache/tuscany/sca/test/exceptions/sdohandgen/InvalidSymbolSDOException.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/src/main/java/org/apache/tuscany/sca/test/exceptions/sdohandgen/InvalidSymbolSDOException.java new file mode 100644 index 0000000000..e9df6ba473 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/src/main/java/org/apache/tuscany/sca/test/exceptions/sdohandgen/InvalidSymbolSDOException.java @@ -0,0 +1,84 @@ +/* + * 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.test.exceptions.sdohandgen; + +import javax.xml.namespace.QName; + +import stockexceptiontestservice.scatesttool.InvalidSymbolFault; + +/** + * + */ +public class InvalidSymbolSDOException extends Exception { + + public static final QName FAULT_ELEMENT = new QName("http://scatesttool.stockexceptiontestservice", "InvalidSymbolFault"); + + /** + * + */ + public InvalidSymbolSDOException() { + + } + + /** + * @param message + * @param faultInfo + */ + public InvalidSymbolSDOException(String message, InvalidSymbolFault faultInfo) { + super(message); + this.faultInfo = faultInfo; + + } + + /** + * @param cause + */ + public InvalidSymbolSDOException(InvalidSymbolFault faultInfo, Throwable cause) { + super(cause); + this.faultInfo = faultInfo; + + } + + /** + * @param message + * @param cause + */ + public InvalidSymbolSDOException(String message, InvalidSymbolFault faultInfo, Throwable cause) { + super(message, cause); + this.faultInfo = faultInfo; + + } + + // *** Below was hand added ... tooling needs to do this ***/ + + /** + * Java type that goes as soapenv:Fault detail element. + */ + private InvalidSymbolFault faultInfo; + + /** + * @return returns fault bean: + * org.apache.tuscany.sca.test.exceptions.impl.jaxb.InvalidSymbolFault + */ + public InvalidSymbolFault getFaultInfo() { + return faultInfo; + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/src/main/java/org/apache/tuscany/sca/test/exceptions/sdohandgen/MarketClosedSDOException.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/src/main/java/org/apache/tuscany/sca/test/exceptions/sdohandgen/MarketClosedSDOException.java new file mode 100644 index 0000000000..39b702afe3 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/src/main/java/org/apache/tuscany/sca/test/exceptions/sdohandgen/MarketClosedSDOException.java @@ -0,0 +1,76 @@ +/* + * 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.test.exceptions.sdohandgen; + +import javax.xml.namespace.QName; + +/** + * + */ +public class MarketClosedSDOException extends Exception { + public static final QName FAULT_ELEMENT = + new QName("http://scatesttool.stockexceptiontestservice", "MarketClosedFault"); + + + /** + * Java type that goes as soapenv:Fault detail element. + */ + private int faultInfo; + + /** + * + */ + public MarketClosedSDOException() { + + } + + /** + * @param message + */ + public MarketClosedSDOException(String message, int faultInfo) { + super(message); + this.faultInfo = faultInfo; + } + + /** + * @param cause + */ + public MarketClosedSDOException(int faultInfo, Throwable cause) { + super(cause); + this.faultInfo = faultInfo; + } + + /** + * @param message + * @param cause + */ + public MarketClosedSDOException(String message, int faultInfo, Throwable cause) { + super(message, cause); + this.faultInfo = faultInfo; + } + + /** + * @return returns fault bean: int + */ + public int getFaultInfo() { + return faultInfo; + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/src/main/java/org/apache/tuscany/sca/test/exceptions/sdohandgen/StockExceptionTest.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/src/main/java/org/apache/tuscany/sca/test/exceptions/sdohandgen/StockExceptionTest.java new file mode 100644 index 0000000000..7b4b3a0f29 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/src/main/java/org/apache/tuscany/sca/test/exceptions/sdohandgen/StockExceptionTest.java @@ -0,0 +1,50 @@ +/* + * 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. + */ +/** + * StockExceptionTest.java + * + * This file was auto-generated from WSDL + * by the Apache Axis2 version: #axisVersion# #today# + */ +package org.apache.tuscany.sca.test.exceptions.sdohandgen; + +import org.apache.tuscany.api.annotation.DataType; +import org.osoa.sca.annotations.Remotable; + +import stockexceptiontestservice.scatesttool.StockOffer; + +import org.apache.tuscany.sca.test.exceptions.sdohandgen.MarketClosedSDOException; + +/* + * StockExceptionTest java interface + */ + +@Remotable +@DataType(name = "commonj.sdo.DataObject") +public interface StockExceptionTest { + + /** + * Auto generated method signatures + * + * @param param0 + */ + StockOffer stockQuoteOffer(StockOffer param0) + throws java.rmi.RemoteException, InvalidSymbolSDOException, MarketClosedSDOException; + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/src/main/resources/ExceptionTest.composite b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/src/main/resources/ExceptionTest.composite new file mode 100644 index 0000000000..f955ba093c --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/src/main/resources/ExceptionTest.composite @@ -0,0 +1,26 @@ +<?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" + xmlns:foo="http://foo" + name="ExceptionTest"> + + <include name="intracomposite" scdlLocation="intracomposite.composite"/> + +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/src/main/resources/intracomposite.composite b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/src/main/resources/intracomposite.composite new file mode 100644 index 0000000000..ffdc22e934 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/src/main/resources/intracomposite.composite @@ -0,0 +1,35 @@ +<?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" xmlns:foo="http://foo" + xmlns:dbsdo="http://tuscany.apache.org/xmlns/sca/databinding/sdo/1.0" name="intracomposite"> + + <component name="stockTraderSDOComponent"> + <implementation.java class="org.apache.tuscany.sca.test.exceptions.impl.StockTraderSDOImpl" /> + <reference name="exchangeJaxb" target="exchangeJaxbComponent">exchangeJaxbComponent</reference> + </component> + + <component name="exchangeJaxbComponent"> + <implementation.java class="org.apache.tuscany.sca.test.exceptions.impl.StockExchangeJaxB" /> + </component> + + <!-- Move to the end to verify the fix for TUSCANY-1165 --> + <dbsdo:import.sdo factory="stockexceptiontestservice.scatesttool.ScatesttoolFactory" /> + +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/src/main/resources/wsdl.sdo/StockExceptionTest.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/src/main/resources/wsdl.sdo/StockExceptionTest.wsdl new file mode 100644 index 0000000000..f5e716de94 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/src/main/resources/wsdl.sdo/StockExceptionTest.wsdl @@ -0,0 +1,141 @@ +<?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 targetNamespace="http://scatesttool.stockexceptiontestservice" xmlns:impl="http://scatesttool.stockexceptiontestservice"
+ xmlns:tns="http://scatesttool.stockexceptiontestservice" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+ xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsi="http://ws-i.org/profiles/basic/1.1/xsd"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="StockExceptionTest">
+ <wsdl:types>
+ <schema targetNamespace="http://scatesttool.stockexceptiontestservice" xmlns="http://www.w3.org/2001/XMLSchema"
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+ <complexType name="StockOffer">
+ <sequence>
+ <element name="symbol" minOccurs="1" type="xsd:string" />
+ <element name="price" minOccurs="1" type="xsd:float" nillable="true" /> <!-- max price reqested, actual response -->
+ <element name="name" minOccurs="0" type="xsd:string" />
+ </sequence>
+ </complexType>
+
+ <element name="stockQuoteOffer">
+ <complexType>
+ <sequence>
+ <element name="input" minOccurs="0" type="tns:StockOffer" />
+ </sequence>
+ </complexType>
+ </element>
+ <element name="stockQuoteOfferResponse">
+ <complexType>
+ <sequence>
+ <element name="stockQuoteOfferReturn" minOccurs="0" type="tns:StockOffer" />
+ </sequence>
+ </complexType>
+ </element>
+
+ <!-- Faults -->
+ <element name="InvalidSymbolFault">
+ <complexType>
+ <sequence>
+ <element name="message" minOccurs="1" type="xsd:string" />
+ <element name="offer" minOccurs="1" type="tns:StockOffer" />
+ </sequence>
+ </complexType>
+ </element>
+
+ <element name="MarketClosedFault">
+ <complexType>
+ <sequence>
+ <element name="message" minOccurs="1" type="xsd:string" />
+ </sequence>
+ </complexType>
+ </element>
+
+ </schema>
+ </wsdl:types>
+
+
+ <wsdl:message name="stockQuoteOfferRequest">
+ <wsdl:part element="tns:stockQuoteOffer" name="parameters" />
+ </wsdl:message>
+
+ <wsdl:message name="stockQuoteOfferResponse">
+ <wsdl:part element="tns:stockQuoteOfferResponse" name="parameters" />
+ </wsdl:message>
+
+ <wsdl:message name="InvalidSymbolFault">
+ <wsdl:part element="tns:InvalidSymbolFault" name="fault" />
+ </wsdl:message>
+
+ <wsdl:message name="MarketClosedFault">
+ <wsdl:part element="tns:MarketClosedFault" name="fault" />
+ </wsdl:message>
+
+
+ <wsdl:portType name="StockExceptionTest">
+ <wsdl:operation name="stockQuoteOffer">
+ <wsdl:input message="tns:stockQuoteOfferRequest" name="stockQuoteOfferRequest" />
+
+ <wsdl:output message="tns:stockQuoteOfferResponse" name="stockQuoteOfferResponse" />
+<!--
+ <wsdl:fault message="tns:InvalidSymbolFault" name="InvalidSymbolException" />
+
+ <wsdl:fault message="tns:MarketClosedFault" name="MarketClosedException" />
+-->
+ </wsdl:operation>
+
+
+ </wsdl:portType>
+
+ <wsdl:binding name="StockExceptionTestServiceSoapBinding" type="tns:StockExceptionTest">
+ <!-- <wsaw:UsingAddressing wsdl:required="false" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"/> -->
+
+ <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />
+
+ <wsdl:operation name="stockQuoteOffer">
+ <wsdlsoap:operation soapAction="" />
+
+ <wsdl:input name="stockQuoteOfferRequest">
+ <wsdlsoap:body use="literal" />
+ </wsdl:input>
+
+ <wsdl:output name="stockQuoteOfferResponse">
+ <wsdlsoap:body use="literal" />
+ </wsdl:output>
+<!--
+ <wsdl:fault name="InvalidSymbolException">
+ <wsdlsoap:fault name="InvalidSymbolException" use="literal" />
+ </wsdl:fault>
+
+ <wsdl:fault name="MarketClosedException">
+ <wsdlsoap:fault name="MarketClosedException" use="literal" />
+ </wsdl:fault>
+-->
+ </wsdl:operation>
+
+
+ </wsdl:binding>
+
+ <wsdl:service name="StockExceptionTestService">
+ <wsdl:port binding="tns:StockExceptionTestServiceSoapBinding" name="StockExceptionTestServiceSoapPort">
+ <wsdlsoap:address location="http://localhost:8080/StockExceptionTestService/services/StockExceptionTestService" />
+
+ </wsdl:port>
+
+ </wsdl:service>
+
+</wsdl:definitions>
\ No newline at end of file diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/src/main/resources/wsdl/StockExceptionTest.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/src/main/resources/wsdl/StockExceptionTest.wsdl new file mode 100644 index 0000000000..58367acac1 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/src/main/resources/wsdl/StockExceptionTest.wsdl @@ -0,0 +1,148 @@ +<?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 targetNamespace="http://scatesttool.stockexceptiontestservice" xmlns:impl="http://scatesttool.stockexceptiontestservice"
+ xmlns:tns="http://scatesttool.stockexceptiontestservice" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+ xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsi="http://ws-i.org/profiles/basic/1.1/xsd"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="StockExceptionTest">
+ <wsdl:types>
+ <schema targetNamespace="http://scatesttool.stockexceptiontestservice" xmlns="http://www.w3.org/2001/XMLSchema"
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+ <complexType name="StockOffer">
+ <sequence>
+ <element name="symbol" minOccurs="1" type="xsd:string" />
+ <element name="price" minOccurs="1" type="xsd:float" nillable="true" /> <!-- max price reqested, actual response -->
+ <element name="name" minOccurs="0" type="xsd:string" />
+ </sequence>
+ </complexType>
+
+ <element name="stockQuoteOffer">
+ <complexType>
+ <sequence>
+ <element name="input" minOccurs="0" type="tns:StockOffer" />
+ </sequence>
+ </complexType>
+ </element>
+ <element name="stockQuoteOfferResponse">
+ <complexType>
+ <sequence>
+ <element name="stockQuoteOfferReturn" minOccurs="0" type="tns:StockOffer" />
+ </sequence>
+ </complexType>
+ </element>
+
+ <!-- Faults -->
+ <element name="InvalidSymbolFault">
+ <complexType>
+ <sequence>
+ <element name="message" minOccurs="1" type="xsd:string" />
+ <element name="offer" minOccurs="1" type="tns:StockOffer" />
+ </sequence>
+ </complexType>
+ </element>
+
+ <element name="MarketClosedFault" type="xsd:int" />
+
+ <element name="TestNotDeclaredAtSourceFault" type="xsd:string" />
+
+ </schema>
+ </wsdl:types>
+
+
+ <wsdl:message name="stockQuoteOfferRequest">
+ <wsdl:part element="tns:stockQuoteOffer" name="parameters" />
+ </wsdl:message>
+
+ <wsdl:message name="stockQuoteOfferResponse">
+ <wsdl:part element="tns:stockQuoteOfferResponse" name="parameters" />
+ </wsdl:message>
+
+ <wsdl:message name="InvalidSymbolFault">
+ <wsdl:part element="tns:InvalidSymbolFault" name="fault" />
+ </wsdl:message>
+
+ <wsdl:message name="MarketClosedFault">
+ <wsdl:part element="tns:MarketClosedFault" name="fault" />
+ </wsdl:message>
+
+ <wsdl:message name="TestNotDeclaredAtSourceFault">
+ <wsdl:part element="tns:TestNotDeclaredAtSourceFault" name="fault" />
+ </wsdl:message>
+
+
+ <wsdl:portType name="StockExceptionTest">
+ <wsdl:operation name="stockQuoteOffer">
+ <wsdl:input message="tns:stockQuoteOfferRequest" name="stockQuoteOfferRequest" />
+
+ <wsdl:output message="tns:stockQuoteOfferResponse" name="stockQuoteOfferResponse" />
+
+ <wsdl:fault message="tns:InvalidSymbolFault" name="InvalidSymbolException" />
+
+ <wsdl:fault message="tns:MarketClosedFault" name="MarketClosedException" />
+
+ <wsdl:fault message="tns:TestNotDeclaredAtSourceFault" name="TestNotDeclaredAtSourceException" />
+ </wsdl:operation>
+
+
+ </wsdl:portType>
+
+ <wsdl:binding name="StockExceptionTestServiceSoapBinding" type="tns:StockExceptionTest">
+ <!-- <wsaw:UsingAddressing wsdl:required="false" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"/> -->
+
+ <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />
+
+ <wsdl:operation name="stockQuoteOffer">
+ <wsdlsoap:operation soapAction="" />
+
+ <wsdl:input name="stockQuoteOfferRequest">
+ <wsdlsoap:body use="literal" />
+ </wsdl:input>
+
+ <wsdl:output name="stockQuoteOfferResponse">
+ <wsdlsoap:body use="literal" />
+ </wsdl:output>
+
+ <wsdl:fault name="InvalidSymbolException">
+ <wsdlsoap:fault name="InvalidSymbolException" use="literal" />
+ </wsdl:fault>
+
+ <wsdl:fault name="MarketClosedException">
+ <wsdlsoap:fault name="MarketClosedException" use="literal" />
+ </wsdl:fault>
+
+ <wsdl:fault name="TestNotDeclaredAtSourceException">
+ <wsdlsoap:fault name="TestNotDeclaredAtSourceException" use="literal" />
+ </wsdl:fault>
+
+
+
+ </wsdl:operation>
+
+
+ </wsdl:binding>
+
+ <wsdl:service name="StockExceptionTestService">
+ <wsdl:port binding="tns:StockExceptionTestServiceSoapBinding" name="StockExceptionTestServiceSoapPort">
+ <wsdlsoap:address location="http://localhost:8080/StockExceptionTestService/services/StockExceptionTestService" />
+
+ </wsdl:port>
+
+ </wsdl:service>
+
+</wsdl:definitions>
\ No newline at end of file diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/src/main/resources/xsd/StockExceptionTest.xsd b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/src/main/resources/xsd/StockExceptionTest.xsd new file mode 100644 index 0000000000..9759647cfe --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/src/main/resources/xsd/StockExceptionTest.xsd @@ -0,0 +1,65 @@ +<?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. + --> + <schema targetNamespace="http://scatesttool.stockexceptiontestservice" xmlns="http://www.w3.org/2001/XMLSchema" + xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:tns="http://scatesttool.stockexceptiontestservice" + > + <complexType name="StockOffer"> + <sequence> + <element name="symbol" minOccurs="1" type="xsd:string" /> + <element name="price" minOccurs="1" type="xsd:float" nillable="true" /> <!-- max price reqested, actual response --> + <element name="name" minOccurs="0" type="xsd:string" /> + </sequence> + </complexType> + + <element name="stockQuoteOffer"> + <complexType> + <sequence> + <element name="input" minOccurs="0" type="tns:StockOffer" /> + </sequence> + </complexType> + </element> + <element name="stockQuoteOfferResponse"> + <complexType> + <sequence> + <element name="stockQuoteOfferReturn" minOccurs="0" type="tns:StockOffer" /> + </sequence> + </complexType> + </element> + + <!-- Faults --> + <element name="InvalidSymbolFault"> + <complexType> + <sequence> + <element name="message" minOccurs="1" type="xsd:string" /> + <element name="offer" minOccurs="1" type="tns:StockOffer" /> + </sequence> + </complexType> + </element> + + <element name="MarketClosedFault"> + <complexType> + <sequence> + <element name="message" minOccurs="1" type="xsd:string" /> + </sequence> + </complexType> + </element> + + </schema>
\ No newline at end of file diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/src/test/java/org/apache/tuscany/sca/test/exceptions/IntraCompositeTestCase.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/src/test/java/org/apache/tuscany/sca/test/exceptions/IntraCompositeTestCase.java new file mode 100644 index 0000000000..c589c5611c --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions-crossBinding/src/test/java/org/apache/tuscany/sca/test/exceptions/IntraCompositeTestCase.java @@ -0,0 +1,97 @@ +/* + * 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.test.exceptions; + +import junit.framework.TestCase; + +import org.apache.tuscany.api.SCARuntime; +import org.apache.tuscany.sca.test.exceptions.impl.StockTraderSDO; +import org.apache.tuscany.sca.test.exceptions.sdohandgen.InvalidSymbolSDOException; +import org.apache.tuscany.spi.databinding.TransformationException; +import org.osoa.sca.CompositeContext; +import org.osoa.sca.CurrentCompositeContext; + +import stockexceptiontestservice.scatesttool.InvalidSymbolFault; +import stockexceptiontestservice.scatesttool.StockOffer; + +public class IntraCompositeTestCase extends TestCase { + private StockTraderSDO stockTrader; + + private CompositeContext context; + + public void testTrading() { + try { + StockOffer sp = stockTrader.testTrading(); + assertNotNull(sp); + assertEquals(99.00F, sp.getPrice()); + assertEquals("IBM", sp.getSymbol()); + } catch (Exception e) { + + e.printStackTrace(); + fail(e + ""); + + } + + } + + public void testInvalidSymbolSDOException() { + try { + stockTrader.testInvalidSymbolSDOException(); + fail("Expected InvalidSymbolSDOException"); + } catch (InvalidSymbolSDOException e) { + InvalidSymbolFault isf = e.getFaultInfo(); + + assertNotNull(isf); + StockOffer sp = isf.getOffer(); + assertEquals(11.00F, sp.getPrice()); + assertEquals("IBM0", sp.getSymbol()); + + } catch (Exception e) { + e.printStackTrace(); + fail("Expected InvalidSymbolSDOException" + e); + + } + } + + public void testNotDeclaredAtSourceException() { + + Object ret = stockTrader.testNotDeclaredAtSourceTest(); + + assertNotNull(ret); + + assertEquals(TransformationException.class, ret.getClass()); + + } + + @Override + protected void setUp() throws Exception { + SCARuntime.start("ExceptionTest.composite"); + + context = CurrentCompositeContext.getContext(); + assertNotNull(context); + stockTrader = context.locateService(StockTraderSDO.class, "stockTraderSDOComponent"); + + assertNotNull(context); + } + + @Override + protected void tearDown() throws Exception { + SCARuntime.stop(); + } +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions/LICENSE.txt b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions/LICENSE.txt new file mode 100644 index 0000000000..0084319535 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions/LICENSE.txt @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, serviceDefinition marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed 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. diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions/NOTICE.txt b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions/NOTICE.txt new file mode 100644 index 0000000000..d83ebbe236 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions/NOTICE.txt @@ -0,0 +1,14 @@ +${pom.name} +Copyright (c) 2005 - 2006 The Apache Software Foundation + +Apache Tuscany is an effort undergoing incubation at The Apache Software +Foundation (ASF), sponsored by the Apache Web Services PMC. Incubation is +required of all newly accepted projects until a further review indicates that +the infrastructure, communications, and decision making process have stabilized +in a manner consistent with other successful ASF projects. While incubation +status is not necessarily a reflection of the completeness or stability of the +code, it does indicate that the project has yet to be fully endorsed by the ASF. + +This product includes software developed by +The Apache Software Foundation (http://www.apache.org/). + diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions/pom.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions/pom.xml new file mode 100644 index 0000000000..154f1748e3 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions/pom.xml @@ -0,0 +1,32 @@ +<?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> + <parent> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>sca-itest</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + <relativePath>../pom.xml</relativePath> + </parent> + <modelVersion>4.0.0</modelVersion> + <artifactId>iTest-exceptions</artifactId> + <packaging>jar</packaging> + <name>Test Suite Exception Handling</name> + +</project> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions/src/main/java/org/apache/tuscany/sca/test/exceptions/Checked.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions/src/main/java/org/apache/tuscany/sca/test/exceptions/Checked.java new file mode 100644 index 0000000000..e90289a07d --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions/src/main/java/org/apache/tuscany/sca/test/exceptions/Checked.java @@ -0,0 +1,57 @@ +/* + * 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.test.exceptions; + + +public class Checked extends Exception { + + /** + * + */ + public Checked() { + + } + + /** + * @param message + */ + public Checked(String message) { + super(message); + + } + + /** + * @param cause + */ + public Checked(Throwable cause) { + super(cause); + + } + + /** + * @param message + * @param cause + */ + public Checked(String message, Throwable cause) { + super(message, cause); + + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions/src/main/java/org/apache/tuscany/sca/test/exceptions/ExceptionHandler.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions/src/main/java/org/apache/tuscany/sca/test/exceptions/ExceptionHandler.java new file mode 100644 index 0000000000..0d14240513 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions/src/main/java/org/apache/tuscany/sca/test/exceptions/ExceptionHandler.java @@ -0,0 +1,32 @@ +/* + * 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.test.exceptions; + +public interface ExceptionHandler { + + public abstract void testing(); + + public abstract Checked getTheBad(); + + public abstract String getTheGood(); + + public abstract UnChecked getTheUgly(); + +}
\ No newline at end of file diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions/src/main/java/org/apache/tuscany/sca/test/exceptions/ExceptionThrower.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions/src/main/java/org/apache/tuscany/sca/test/exceptions/ExceptionThrower.java new file mode 100644 index 0000000000..80073e7679 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions/src/main/java/org/apache/tuscany/sca/test/exceptions/ExceptionThrower.java @@ -0,0 +1,31 @@ +/* + * 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.test.exceptions; + +public interface ExceptionThrower { + public static final String SO_THEY_SAY = "All is good that ends good."; + + public String theGood() throws org.apache.tuscany.sca.test.exceptions.Checked; + + public String theBad() throws org.apache.tuscany.sca.test.exceptions.Checked; + + public String theUgly() throws org.apache.tuscany.sca.test.exceptions.Checked; + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions/src/main/java/org/apache/tuscany/sca/test/exceptions/UnChecked.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions/src/main/java/org/apache/tuscany/sca/test/exceptions/UnChecked.java new file mode 100644 index 0000000000..1a439711dd --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions/src/main/java/org/apache/tuscany/sca/test/exceptions/UnChecked.java @@ -0,0 +1,56 @@ +/* + * 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.test.exceptions; + +public class UnChecked extends RuntimeException { + + /** + * + */ + public UnChecked() { + + } + + /** + * @param message + */ + public UnChecked(String message) { + super(message); + + } + + /** + * @param cause + */ + public UnChecked(Throwable cause) { + super(cause); + + } + + /** + * @param message + * @param cause + */ + public UnChecked(String message, Throwable cause) { + super(message, cause); + + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions/src/main/java/org/apache/tuscany/sca/test/exceptions/impl/ExceptionHandlerImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions/src/main/java/org/apache/tuscany/sca/test/exceptions/impl/ExceptionHandlerImpl.java new file mode 100644 index 0000000000..32a23c5e7d --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions/src/main/java/org/apache/tuscany/sca/test/exceptions/impl/ExceptionHandlerImpl.java @@ -0,0 +1,120 @@ +/* + * 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.test.exceptions.impl; + +import org.apache.tuscany.sca.test.exceptions.Checked; +import org.apache.tuscany.sca.test.exceptions.ExceptionHandler; +import org.apache.tuscany.sca.test.exceptions.ExceptionThrower; +import org.apache.tuscany.sca.test.exceptions.UnChecked; +import org.osoa.sca.annotations.Reference; +import org.osoa.sca.annotations.Scope; + +@Scope("COMPOSITE") +public class ExceptionHandlerImpl implements ExceptionHandler { + static final String INIT = "INIT"; + + private ExceptionThrower exceptionThrower; + + private String theGood; + + private Checked theBad; + + private UnChecked theUgly; + + /* + * (non-Javadoc) + * + * @see org.apache.tuscany.sca.test.exceptions.impl.ExceptionHandler#testing() + */ + public void testing() { + + assert exceptionThrower != null : "'exceptionThrower' never wired"; + String result = INIT; + try { + theGood = result = exceptionThrower.theGood(); + assert result == ExceptionThrower.SO_THEY_SAY; + } catch (Throwable e) { + assert result == INIT; + assert false; + e.printStackTrace(); + } + + result = INIT; + try { + result = exceptionThrower.theBad(); + // incredible + assert false : "Expected 'Check' Exception"; + + } catch (Checked e) { + // This is good... + assert result == INIT; + theBad = e; + } catch (Throwable t) { + // This is not so good. + t.printStackTrace(); + assert result == INIT; + assert false : "Got wrong exception '" + t.getClass().getName(); + } + + result = INIT; + try { + result = exceptionThrower.theUgly(); + // incredible + assert false : "Expected 'UnCheck' Exception"; + + } catch (Checked e) { + // This is not so good... + assert false : "Got wrong exception '" + e.getClass().getName(); + assert result == INIT; + } catch (UnChecked e) { + theUgly = e; + + } catch (Throwable t) { + // This is not good. + assert false; + assert result == INIT; + + System.out.println(ExceptionThrower.SO_THEY_SAY + " " + INIT); + } + + } + + @Reference + public void setExceptionThrower(ExceptionThrower exceptionThrower) { + this.exceptionThrower = exceptionThrower; + } + + public String getTheGood() { + return theGood; + } + + public Checked getTheBad() { + return theBad; + } + + public UnChecked getTheUgly() { + return theUgly; + } + + public ExceptionThrower getExceptionThrower() { + return exceptionThrower; + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions/src/main/java/org/apache/tuscany/sca/test/exceptions/impl/ExceptionThrowerImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions/src/main/java/org/apache/tuscany/sca/test/exceptions/impl/ExceptionThrowerImpl.java new file mode 100644 index 0000000000..c1b7c23d5d --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions/src/main/java/org/apache/tuscany/sca/test/exceptions/impl/ExceptionThrowerImpl.java @@ -0,0 +1,63 @@ +/* + * 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.test.exceptions.impl; + +import org.apache.tuscany.sca.test.exceptions.Checked; +import org.apache.tuscany.sca.test.exceptions.ExceptionThrower; +import org.apache.tuscany.sca.test.exceptions.UnChecked; + +/** + * @author rineholt + * + */ +public class ExceptionThrowerImpl implements ExceptionThrower { + + /* + * (non-Javadoc) + * + * @see org.apache.tuscany.sca.test.exceptions.ExceptionThrower#theBad() + */ + public String theBad() throws Checked { + + throw new Checked("theBad"); + + } + + /* + * (non-Javadoc) + * + * @see org.apache.tuscany.sca.test.exceptions.ExceptionThrower#theGood() + */ + public String theGood() throws Checked { + + return SO_THEY_SAY; + } + + /* + * (non-Javadoc) + * + * @see org.apache.tuscany.sca.test.exceptions.ExceptionThrower#theUgly() + */ + public String theUgly() throws Checked { + + throw new UnChecked("theUgly"); + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions/src/main/resources/ExceptionTest.composite b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions/src/main/resources/ExceptionTest.composite new file mode 100644 index 0000000000..f955ba093c --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions/src/main/resources/ExceptionTest.composite @@ -0,0 +1,26 @@ +<?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" + xmlns:foo="http://foo" + name="ExceptionTest"> + + <include name="intracomposite" scdlLocation="intracomposite.composite"/> + +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions/src/main/resources/intracomposite.composite b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions/src/main/resources/intracomposite.composite new file mode 100644 index 0000000000..0211e1f490 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions/src/main/resources/intracomposite.composite @@ -0,0 +1,33 @@ +<?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" + xmlns:foo="http://foo" + name="intracomposite"> + + <component name="main"> + <implementation.java class="org.apache.tuscany.sca.test.exceptions.impl.ExceptionHandlerImpl"/> + <reference name="exceptionThrower" target="exceptionThrower">exceptionThrower</reference> + </component> + + <component name="exceptionThrower"> + <implementation.java class="org.apache.tuscany.sca.test.exceptions.impl.ExceptionThrowerImpl"/> + </component> + +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions/src/test/java/org/apache/tuscany/sca/test/exceptions/IntraCompositeTestCase.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions/src/test/java/org/apache/tuscany/sca/test/exceptions/IntraCompositeTestCase.java new file mode 100644 index 0000000000..da0803ed91 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/exceptions/src/test/java/org/apache/tuscany/sca/test/exceptions/IntraCompositeTestCase.java @@ -0,0 +1,57 @@ +/* + * 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.test.exceptions; + +import junit.framework.TestCase; + +import org.apache.tuscany.api.SCARuntime; +import org.osoa.sca.CompositeContext; +import org.osoa.sca.CurrentCompositeContext; + +public class IntraCompositeTestCase extends TestCase { + private ExceptionHandler exceptionHandler; + + private CompositeContext context; + + public void testALL() { + exceptionHandler.testing(); + assertEquals(ExceptionThrower.SO_THEY_SAY, exceptionHandler.getTheGood() ); + assertNotNull(exceptionHandler.getTheBad()); + assertEquals( Checked.class, exceptionHandler.getTheBad().getClass()); + assertNotNull(exceptionHandler.getTheUgly()); + assertEquals( UnChecked.class, exceptionHandler.getTheUgly().getClass()); + + } + + @Override + protected void setUp() throws Exception { + SCARuntime.start("ExceptionTest.composite"); + + context = CurrentCompositeContext.getContext(); + assertNotNull(context); + exceptionHandler = context.locateService(ExceptionHandler.class, "main"); + assertNotNull(context); + } + + @Override + protected void tearDown() throws Exception { + SCARuntime.stop(); + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/operation-overloading/LICENSE.txt b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/operation-overloading/LICENSE.txt new file mode 100644 index 0000000000..0084319535 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/operation-overloading/LICENSE.txt @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, serviceDefinition marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed 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. diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/operation-overloading/NOTICE.txt b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/operation-overloading/NOTICE.txt new file mode 100644 index 0000000000..d83ebbe236 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/operation-overloading/NOTICE.txt @@ -0,0 +1,14 @@ +${pom.name} +Copyright (c) 2005 - 2006 The Apache Software Foundation + +Apache Tuscany is an effort undergoing incubation at The Apache Software +Foundation (ASF), sponsored by the Apache Web Services PMC. Incubation is +required of all newly accepted projects until a further review indicates that +the infrastructure, communications, and decision making process have stabilized +in a manner consistent with other successful ASF projects. While incubation +status is not necessarily a reflection of the completeness or stability of the +code, it does indicate that the project has yet to be fully endorsed by the ASF. + +This product includes software developed by +The Apache Software Foundation (http://www.apache.org/). + diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/operation-overloading/pom.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/operation-overloading/pom.xml new file mode 100644 index 0000000000..4b92e62197 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/operation-overloading/pom.xml @@ -0,0 +1,43 @@ +<?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> + <parent> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>sca-itest</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + <relativePath>../pom.xml</relativePath> + </parent> + <modelVersion>4.0.0</modelVersion> + <artifactId>iTest-operation-overloading</artifactId> + <packaging>jar</packaging> + <name>Test Suite Operator over loading.</name> + <!-- JAX-WS temporary only until java.net maven2 repo is ready--> + <dependencies> + <!-- Required extensions --> + <!-- End of Required extensions --> + <dependency> + <groupId>org.apache.tuscany.sca.kernel</groupId> + <artifactId>tuscany-core</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + <scope>compile</scope> + </dependency> + + </dependencies> +</project> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/operation-overloading/src/main/java/org/apache/tuscany/sca/test/opoverload/OverloadASourceTarget.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/operation-overloading/src/main/java/org/apache/tuscany/sca/test/opoverload/OverloadASourceTarget.java new file mode 100644 index 0000000000..fd6d9038eb --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/operation-overloading/src/main/java/org/apache/tuscany/sca/test/opoverload/OverloadASourceTarget.java @@ -0,0 +1,43 @@ +/* + * 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.test.opoverload; + +import org.osoa.sca.annotations.AllowsPassByReference; + +/** + * + */ +//@AllowsPassByReference +public interface OverloadASourceTarget { + final String opName = "operationA:"; + + String operationA(); + + String operationA(int parm1); + + String operationA(int parm1, String parm2); + + String operationA(String parm1, int parm2); + + String operationA(String string); + + String[] operationAall(); + +}
\ No newline at end of file diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/operation-overloading/src/main/java/org/apache/tuscany/sca/test/opoverload/impl/OverloadASource.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/operation-overloading/src/main/java/org/apache/tuscany/sca/test/opoverload/impl/OverloadASource.java new file mode 100644 index 0000000000..30687f9c78 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/operation-overloading/src/main/java/org/apache/tuscany/sca/test/opoverload/impl/OverloadASource.java @@ -0,0 +1,105 @@ +/* + * 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.test.opoverload.impl; + +import java.util.ArrayList; +import java.util.List; + +import org.apache.tuscany.sca.test.opoverload.OverloadASourceTarget; +import org.osoa.sca.annotations.Reference; +import org.osoa.sca.annotations.Service; + +/** + * + */ +@Service(OverloadASourceTarget.class) +public class OverloadASource implements OverloadASourceTarget{ + public OverloadASourceTarget overloadASourceTarget; + /** + * + */ + public OverloadASource() { + + } + /** + * @return + * @see org.apache.tuscany.sca.test.opoverload.OverloadASourceTarget#operationA() + */ + public String[] operationAall() { + assert overloadASourceTarget != null : "reference overloadASourceTarget is null"; + ArrayList<String> ret = new ArrayList<String>(); + ret.add(overloadASourceTarget.operationA()); + ret.add(overloadASourceTarget.operationA(11)); + ret.add(overloadASourceTarget.operationA("eleven")); + ret.add(overloadASourceTarget.operationA(3,"three")); + ret.add(overloadASourceTarget.operationA("four",4)); + return (String[]) ret.toArray(new String[ret.size()]); + } + + + /** + * @return + * @see org.apache.tuscany.sca.test.opoverload.OverloadASourceTarget#operationA() + */ + public String operationA() { + assert overloadASourceTarget != null : "reference overloadASourceTarget is null"; + return overloadASourceTarget.operationA(); + } + /** + * @param parm1 + * @return + * @see org.apache.tuscany.sca.test.opoverload.OverloadASourceTarget#operationA(int) + */ + public String operationA(int parm1) { + assert overloadASourceTarget != null : "reference overloadASourceTarget is null"; + return overloadASourceTarget.operationA(parm1); + } + /** + * @param parm1 + * @param parm2 + * @return + * @see org.apache.tuscany.sca.test.opoverload.OverloadASourceTarget#operationA(int, java.lang.String) + */ + public String operationA(int parm1, String parm2) { + assert overloadASourceTarget != null : "reference overloadASourceTarget is null"; + return overloadASourceTarget.operationA(parm1, parm2); + } + public String operationA(String string) { + assert overloadASourceTarget != null : "reference overloadASourceTarget is null"; + return overloadASourceTarget.operationA(string); + } + /** + * @param parm1 + * @param parm2 + * @return + * @see org.apache.tuscany.sca.test.opoverload.OverloadASourceTarget#operationA(java.lang.String, int) + */ + public String operationA(String parm1, int parm2) { + assert overloadASourceTarget != null : "reference overloadASourceTarget is null"; + return overloadASourceTarget.operationA(parm1, parm2); + } + + @Reference + public void setOverloadASourceTarget(OverloadASourceTarget overloadASourceTarget) { + assert overloadASourceTarget != null : "reference overloadASourceTarget is set tonull"; + this.overloadASourceTarget = overloadASourceTarget; + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/operation-overloading/src/main/java/org/apache/tuscany/sca/test/opoverload/impl/OverloadATarget.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/operation-overloading/src/main/java/org/apache/tuscany/sca/test/opoverload/impl/OverloadATarget.java new file mode 100644 index 0000000000..e83952e573 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/operation-overloading/src/main/java/org/apache/tuscany/sca/test/opoverload/impl/OverloadATarget.java @@ -0,0 +1,96 @@ +/* + * 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.test.opoverload.impl; + +import org.apache.tuscany.sca.test.opoverload.OverloadASourceTarget; +import org.osoa.sca.annotations.Service; + +/** + * + */ +@Service(OverloadASourceTarget.class) +public class OverloadATarget implements OverloadASourceTarget { + + /** + * + */ + public OverloadATarget() { + + } + + /* + * (non-Javadoc) + * + * @see org.apache.tuscany.sca.test.opoverload.OverloadASourceTarget#operationA(int) + */ + public String operationA(int parm1) { + final String ret = opName + parm1; + out(ret); + return ret; + + } + + /* + * (non-Javadoc) + * + * @see org.apache.tuscany.sca.test.opoverload.OverloadASourceTarget#operationA(int, + * java.lang.String) + */ + public String operationA(int parm1, String parm2) { + final String ret = opName + parm1 + parm2; + out(ret); + return ret; + + } + + /* + * (non-Javadoc) + * + * @see org.apache.tuscany.sca.test.opoverload.OverloadASourceTarget#operationA() + */ + public String operationA() { + out(opName); + return opName; + + } + + public String operationA(String parm1, int parm2) { + final String ret = opName + parm1 + parm2; + out(ret); + return ret; + } + + public String operationA(String parm1) { + final String ret = opName + parm1; + out(ret); + return ret; + } + + private void out(String msg) { + + java.lang.System.out.println(msg); + } + + public String[] operationAall() { + throw new IllegalArgumentException("not supported"); + + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/operation-overloading/src/main/java/org/apache/tuscany/sca/test/opoverload/interceptor/MessageInterceptor.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/operation-overloading/src/main/java/org/apache/tuscany/sca/test/opoverload/interceptor/MessageInterceptor.java new file mode 100644 index 0000000000..8d2447a66b --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/operation-overloading/src/main/java/org/apache/tuscany/sca/test/opoverload/interceptor/MessageInterceptor.java @@ -0,0 +1,114 @@ +/* + * 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.test.opoverload.interceptor; + +import java.io.FileWriter; +import java.io.IOException; + +import org.apache.tuscany.spi.component.CompositeComponent; +import org.apache.tuscany.spi.model.Operation; +import org.apache.tuscany.spi.wire.Interceptor; +import org.apache.tuscany.spi.wire.Message; +import org.apache.tuscany.spi.wire.Wire; + +/** + * An interceptor to transform data accross databindings on the wire + * + * @version $Rev$ $Date$ + */ +public class MessageInterceptor implements Interceptor { + private Interceptor next; + + private CompositeComponent compositeComponent; + + private Operation<?> sourceOperation; + + private Operation<?> targetOperation; + + protected FileWriter fw= null; + + + public MessageInterceptor(Wire sourceWire, Operation<?> sourceOperation, Operation<?> targetOperation) { + super(); + // this.sourceWire = sourceWire; + this.sourceOperation = sourceOperation; + // this.targetWire = targetWire; + this.targetOperation = targetOperation; + this.compositeComponent = sourceWire.getContainer().getParent(); + + + try { + fw = new FileWriter("MessageInterceptor.log", true); + } catch (IOException e) { + fw= null; + e.printStackTrace(); + } + } + + /** + * @see org.apache.tuscany.spi.wire.Interceptor#getNext() + */ + public Interceptor getNext() { + return next; + } + + /** + * @see org.apache.tuscany.spi.wire.Interceptor#invoke(org.apache.tuscany.spi.wire.Message) + */ + /* + * (non-Javadoc) + * + * @see org.apache.tuscany.spi.wire.Interceptor#invoke(org.apache.tuscany.spi.wire.Message) + */ + public Message invoke(Message msg) { + out(msg.toString()); + return msg; + } + + + + private void out(String string) { + if( null != fw){ + try { + fw.write(string); + fw.flush(); + } catch (IOException e) { + + } + } + + } + + /** + * @see org.apache.tuscany.spi.wire.Interceptor#isOptimizable() + */ + public boolean isOptimizable() { + return false; + } + + /** + * @see org.apache.tuscany.spi.wire.Interceptor#setNext(org.apache.tuscany.spi.wire.Interceptor) + */ + public void setNext(Interceptor next) { + this.next = next; + } + + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/operation-overloading/src/main/java/org/apache/tuscany/sca/test/opoverload/interceptor/MessageInterceptorWirePostProcessor.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/operation-overloading/src/main/java/org/apache/tuscany/sca/test/opoverload/interceptor/MessageInterceptorWirePostProcessor.java new file mode 100644 index 0000000000..5c258e2307 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/operation-overloading/src/main/java/org/apache/tuscany/sca/test/opoverload/interceptor/MessageInterceptorWirePostProcessor.java @@ -0,0 +1,122 @@ +/* + * 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.test.opoverload.interceptor; + +import java.util.Map; +import java.util.Set; + +import org.apache.tuscany.spi.component.ReferenceBinding; +import org.apache.tuscany.spi.component.SCAObject; +import org.apache.tuscany.spi.model.Operation; +import org.apache.tuscany.spi.wire.InboundInvocationChain; +import org.apache.tuscany.spi.wire.InboundWire; +import org.apache.tuscany.spi.wire.Interceptor; +import org.apache.tuscany.spi.wire.OutboundInvocationChain; +import org.apache.tuscany.spi.wire.OutboundWire; +import org.apache.tuscany.spi.wire.WirePostProcessorExtension; + +/** + * This processor is responsible to add an interceptor to invocation chain if + * the source and target operations have different databinding requirements + * + * @version $Rev$ $Date$ + */ +public class MessageInterceptorWirePostProcessor extends WirePostProcessorExtension { + + + public MessageInterceptorWirePostProcessor() { + super(); + + } + + public void process(OutboundWire source, InboundWire target) { + Map<Operation<?>, OutboundInvocationChain> chains = source.getInvocationChains(); + for (Map.Entry<Operation<?>, OutboundInvocationChain> entry : chains.entrySet()) { + Operation<?> sourceOperation = entry.getKey(); + Operation<?> targetOperation = + getTargetOperation(target.getInvocationChains().keySet(), sourceOperation.getName()); + + MessageInterceptor interceptor = new MessageInterceptor(source, sourceOperation, targetOperation); + + entry.getValue().addInterceptor(0, interceptor); + + } + + // Check if there's a callback + Map callbackOperations = source.getServiceContract().getCallbackOperations(); + if (callbackOperations == null || callbackOperations.isEmpty()) { + return; + } + Object targetAddress = source.getContainer().getName(); + Map<Operation<?>, OutboundInvocationChain> callbackChains = + target.getSourceCallbackInvocationChains(targetAddress); + if (callbackChains == null) { + // callback chains could be null + return; + } + for (Map.Entry<Operation<?>, OutboundInvocationChain> entry : callbackChains.entrySet()) { + Operation<?> sourceOperation = entry.getKey(); + Operation<?> targetOperation = + getTargetOperation(source.getTargetCallbackInvocationChains().keySet(), sourceOperation.getName()); + MessageInterceptor interceptor = new MessageInterceptor(source, sourceOperation, targetOperation); + entry.getValue().addInterceptor(0, interceptor); + + } + } + + public void process(InboundWire source, OutboundWire target) { + SCAObject container = source.getContainer(); + // Either Service or Reference + boolean isReference = container instanceof ReferenceBinding; + + Map<Operation<?>, InboundInvocationChain> chains = source.getInvocationChains(); + for (Map.Entry<Operation<?>, InboundInvocationChain> entry : chains.entrySet()) { + Operation<?> sourceOperation = entry.getKey(); + Operation<?> targetOperation = + getTargetOperation(target.getInvocationChains().keySet(), sourceOperation.getName()); + + // Add the interceptor to the source side + MessageInterceptor interceptor = new MessageInterceptor(source, sourceOperation, targetOperation); + + if (isReference) { + + target.getInvocationChains().get(targetOperation).addInterceptor(0, interceptor); + Interceptor tail = entry.getValue().getTailInterceptor(); + if (tail != null) { + // HACK to relink the bridging interceptor + tail.setNext(interceptor); + } + } else { + entry.getValue().addInterceptor(0, interceptor); + } + + } + } + + private Operation getTargetOperation(Set<Operation<?>> operations, String operationName) { + for (Operation<?> op : operations) { + if (op.getName().equals(operationName)) { + return op; + } + } + return null; + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/operation-overloading/src/main/resources/META-INF/sca/application.composite b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/operation-overloading/src/main/resources/META-INF/sca/application.composite new file mode 100644 index 0000000000..d92e8372fd --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/operation-overloading/src/main/resources/META-INF/sca/application.composite @@ -0,0 +1,34 @@ +<?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"
+ xmlns:foo="http://foo"
+ name="OperationOverloadTest">
+
+ <component name="OverloadASourceComponent">
+ <implementation.java class="org.apache.tuscany.sca.test.opoverload.impl.OverloadASource" />
+ <reference name="overloadASourceTarget">OverloadATargetComponent</reference>
+ </component>
+
+ <component name="OverloadATargetComponent">
+ <implementation.java class="org.apache.tuscany.sca.test.opoverload.impl.OverloadATarget" />
+ </component>
+
+
+</composite>
diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/operation-overloading/src/main/resources/org/apache/tuscany/sca/test/opoverload/interceptor/MessageInterceptor.scdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/operation-overloading/src/main/resources/org/apache/tuscany/sca/test/opoverload/interceptor/MessageInterceptor.scdl new file mode 100644 index 0000000000..87387d8e49 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/operation-overloading/src/main/resources/org/apache/tuscany/sca/test/opoverload/interceptor/MessageInterceptor.scdl @@ -0,0 +1,27 @@ +<?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" xmlns:system="http://tuscany.apache.org/xmlns/system/1.0-SNAPSHOT" + name="org.apache.tuscany.sca.test.opoverload.interceptor"> + + <component name="MessageInterceptorWirePostProcessor"> + <system:implementation.system class="org.apache.tuscany.sca.test.opoverload.interceptor.MessageInterceptorWirePostProcessor" /> + </component> + +</composite>
\ No newline at end of file diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/operation-overloading/src/test/java/org/apache/tuscany/sca/test/opoverload/impl/OverloadATestCase.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/operation-overloading/src/test/java/org/apache/tuscany/sca/test/opoverload/impl/OverloadATestCase.java new file mode 100644 index 0000000000..74c1b3cf12 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/operation-overloading/src/test/java/org/apache/tuscany/sca/test/opoverload/impl/OverloadATestCase.java @@ -0,0 +1,78 @@ +/* + * 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.test.opoverload.impl; + +import java.io.File; +import java.net.URL; + +import org.apache.tuscany.sca.test.opoverload.OverloadASourceTarget; +import org.apache.tuscany.test.SCATestCase; +import org.osoa.sca.CompositeContext; +import org.osoa.sca.CurrentCompositeContext; + +public class OverloadATestCase extends SCATestCase { + private OverloadASourceTarget overloadA; + + private CompositeContext context; + + + public void testOperationAall() { + String[] result= overloadA.operationAall(); + assertEquals(5, result.length); + assertEquals(OverloadASourceTarget.opName , result[0]); + assertEquals(OverloadASourceTarget.opName + 11, result[1]); + assertEquals(OverloadASourceTarget.opName + "eleven", result[2]); + assertEquals(OverloadASourceTarget.opName + 3 + "three", result[3]); + assertEquals(OverloadASourceTarget.opName + "four" + 4, result[4]); + } + +// public void testOperationAInt() { +// String result= overloadA.operationA(29); +// assertEquals(OverloadASourceTarget.opName + 29, result); +// } +// +// public void testOperationAString() { +// String result= overloadA.operationA("rick:-)"); +// assertEquals(OverloadASourceTarget.opName + "rick:-)", result); +// } +// +// public void testOperationAIntString() { +// String result= overloadA.operationA(123, "Tuscany"); +// assertEquals(OverloadASourceTarget.opName +123+ "Tuscany", result); +// } +// +// public void testOperationStringInt() { +// String result= overloadA.operationA("StringInt", 77); +// assertEquals(OverloadASourceTarget.opName + "StringInt" + 77, result); +// } +// + + @Override + protected void setUp() throws Exception { + File cdf = new File ("."); + String currentdir= cdf.getCanonicalPath(); + addExtension("org.apache.tuscany.sca.test.opoverload.interceptor", new URL("file:///" + currentdir + "/src/main/resources/org/apache/tuscany/sca/test/opoverload/interceptor/MessageInterceptor.scdl")); + super.setUp(); + context = CurrentCompositeContext.getContext(); + assertNotNull(context); + overloadA = context.locateService(OverloadASourceTarget.class, "OverloadASourceComponent"); + + assertNotNull(context); + } +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/pom.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/pom.xml new file mode 100644 index 0000000000..63a370d19d --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/pom.xml @@ -0,0 +1,135 @@ +<?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> + <parent> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>tuscany-testing-sca</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + </parent> + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>sca-itest</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + <packaging>pom</packaging> + <name>Apache Tuscany SCA Integration Test Suite</name> + + <profiles> + <!-- default profile --> + <profile> + <id>stable</id> + <activation> + <activeByDefault>true</activeByDefault> + </activation> + <modules> + <!--module>spec</module--> + <module>property</module> + <module>exceptions</module> + <module>exceptions-crossBinding</module> + <module>exceptions-crossBinding-ws</module> + <module>callback-api</module> + <module>callback-basic</module> + <module>callback-complexType</module> + <module>callback-id</module> + <module>callback-setCallback</module> + <module>callback-setCallbackConversation</module> + <module>wsdl</module> + <module>conversations</module> + <module>bindings</module> + </modules> + </profile> + + <profile> + <id>integration</id> + <modules> + <module>spec</module> + <module>property</module> + <module>exceptions</module> + <module>exceptions-crossBinding</module> + <module>exceptions-crossBinding-ws</module> + <module>callback-api</module> + <module>callback-basic</module> + <module>callback-complexType</module> + <module>callback-id</module> + <module>callback-setCallback</module> + <module>callback-setCallbackConversation</module> + <module>conversations</module> + <module>wsdl</module> + <module>bindings</module> + <module>databindings</module> + <module>operation-overloading</module> + </modules> + </profile> + + <profile> + <id>unstable</id> + <modules> + <module>spec</module> + <module>property</module> + <module>exceptions</module> + <module>exceptions-crossBinding</module> + <module>exceptions-crossBinding-ws</module> + <module>callback-api</module> + <module>callback-basic</module> + <module>callback-complexType</module> + <module>callback-id</module> + <module>callback-setCallback</module> + <module>callback-setCallbackConversation</module> + <module>conversations</module> + <module>wsdl</module> + <module>bindings</module> + <module>databindings</module> + <module>operation-overloading</module> + </modules> + </profile> + + </profiles> + + <dependencies> + <dependency> + <groupId>org.apache.tuscany.sca.kernel</groupId> + <artifactId>tuscany-api</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.apache.tuscany.sca.kernel</groupId> + <artifactId>tuscany-core</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + <scope>runtime</scope> + </dependency> + <dependency> + <groupId>org.apache.tuscany.sca.extensions.axis2</groupId> + <artifactId>tuscany-axis2</artifactId> + <scope>runtime</scope> + <version>0.1-integration-incubating-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.apache.tuscany.sca.services</groupId> + <artifactId>tuscany-http-jetty</artifactId> + <scope>runtime</scope> + <version>0.1-integration-incubating-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>junit</groupId> + <artifactId>junit</artifactId> + <version>4.2</version> + </dependency> + </dependencies> + +</project> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/pom.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/pom.xml new file mode 100644 index 0000000000..40391d6c07 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/pom.xml @@ -0,0 +1,34 @@ +<?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>
+ <parent>
+ <groupId>org.apache.tuscany.testing</groupId>
+ <artifactId>sca-itest</artifactId>
+ <version>0.1-integration-incubating-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
+ </parent>
+
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>iTest-propertyTest</artifactId>
+ <version>${testing.version}</version>
+ <packaging>jar</packaging>
+ <name>Test Suite for SCA properties</name>
+
+</project>
diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/java/org/apache/tuscany/sca/itest/ABCDComponent.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/java/org/apache/tuscany/sca/itest/ABCDComponent.java new file mode 100644 index 0000000000..667b854c10 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/java/org/apache/tuscany/sca/itest/ABCDComponent.java @@ -0,0 +1,27 @@ +/* + * 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.itest; + +public interface ABCDComponent { + String getA(); + String getB(); + String getC(); + String getD(); +} + diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/java/org/apache/tuscany/sca/itest/ABCDComponentImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/java/org/apache/tuscany/sca/itest/ABCDComponentImpl.java new file mode 100644 index 0000000000..51d4d9b3cb --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/java/org/apache/tuscany/sca/itest/ABCDComponentImpl.java @@ -0,0 +1,55 @@ +/* + * 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.itest; + +import org.osoa.sca.annotations.Reference; +import org.osoa.sca.annotations.Scope; + +@Scope("COMPOSITE") +public class ABCDComponentImpl implements ABCDComponent { + private ABComponent abComponent; + private CDComponent cdComponent; + + @Reference + public void setAb(ABComponent component) { + this.abComponent = component; + } + + @Reference + public void setCd(CDComponent component) { + this.cdComponent = component; + } + + public String getA() { + return this.abComponent.getA(); + } + + public String getB() { + return this.abComponent.getB(); + } + + public String getC() { + return this.cdComponent.getC(); + } + + public String getD() { + return this.cdComponent.getD(); + } +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/java/org/apache/tuscany/sca/itest/ABComponent.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/java/org/apache/tuscany/sca/itest/ABComponent.java new file mode 100644 index 0000000000..4058ce92bd --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/java/org/apache/tuscany/sca/itest/ABComponent.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.itest; + +import java.util.Collection; + +public interface ABComponent { + + String getA(); + String getB(); + String getZ(); + int getIntValue(); + String getF(); + Collection<String> getManyStringValues(); + Collection<Integer> getManyIntegers(); +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/java/org/apache/tuscany/sca/itest/ABComponentImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/java/org/apache/tuscany/sca/itest/ABComponentImpl.java new file mode 100644 index 0000000000..b78d6380ef --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/java/org/apache/tuscany/sca/itest/ABComponentImpl.java @@ -0,0 +1,98 @@ +/* + * 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.itest; + +import java.util.Collection; + +import org.osoa.sca.annotations.Property; + +public class ABComponentImpl implements ABComponent { + + private String aProperty; + private String bProperty; + private int intValue; + private Collection<String> manyStringValues; + private Collection<Integer> manyIntegerValues; + private String zProperty; + private String fProperty; + + @Property(name="xpath") + public void setZProperty(final String value) { + this.zProperty = value; + } + + @Property(name="foobar") + public void setManyStringValues(final Collection<String> value) { + this.manyStringValues = value; + } + + @Property(name="fooInts") + public void setManyIntegers(final Collection<Integer> value) { + this.manyIntegerValues = value; + } + + @Property + public void setA(final String A) { + this.aProperty = A; + } + + @Property + public void setB(final String B) { + this.bProperty = B; + } + + @Property + public void setF(final String F) { + this.fProperty = F; + } + + @Property + public void setOne(final int value) { + this.intValue = value; + } + + public String getA() { + return this.aProperty; + } + + public String getB() { + return this.bProperty; + } + + public int getIntValue() { + return this.intValue; + } + + public String getZ() { + return this.zProperty; + } + + public String getF() { + return this.fProperty; + } + + public Collection<String> getManyStringValues() { + return manyStringValues; + } + + public Collection<Integer> getManyIntegers() { + return manyIntegerValues; + } +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/java/org/apache/tuscany/sca/itest/CDComponent.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/java/org/apache/tuscany/sca/itest/CDComponent.java new file mode 100644 index 0000000000..cd3046c62c --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/java/org/apache/tuscany/sca/itest/CDComponent.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.itest; + +import java.util.Collection; + +public interface CDComponent { + + String getC(); + String getC2(); + String getD(); + String getNoSource(); + String getFileProperty(); + Collection<String> getManyValuesFileProperty(); + int getOverrideValue(); +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/java/org/apache/tuscany/sca/itest/CDComponentImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/java/org/apache/tuscany/sca/itest/CDComponentImpl.java new file mode 100644 index 0000000000..aec71d30f9 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/java/org/apache/tuscany/sca/itest/CDComponentImpl.java @@ -0,0 +1,97 @@ +/* + * 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.itest; + +import java.util.Collection; + +import org.osoa.sca.annotations.Property; + +public class CDComponentImpl implements CDComponent { + + private String cProperty; + private String dProperty; + private String nosource; + private String fileProperty; + private Collection<String> manyValuesFileProperty; + private int overrideNumber; + private String cProperty2; + + @Property(name="nonFileProperty") + public void setC2(final String value) { + this.cProperty2 = value; + } + @Property(name="two") + public void setOverrideNumber(final int value) { + this.overrideNumber = value; + } + + @Property(name="fileProperty") + public void setFileProp(final String value) { + this.fileProperty = value; + } + + @Property(name="manyValuesFileProperty") + public void setFileManyValueProp(final Collection<String> values) { + this.manyValuesFileProperty = values; + } + + @Property + public void setC(final String C) { + this.cProperty = C; + } + + @Property + public void setD(final String D) { + this.dProperty = D; + } + + @Property + public void setNosource(final String value) { + this.nosource = value; + } + + public String getFileProperty() { + return this.fileProperty; + } + + public String getC() { + return this.cProperty; + } + + public String getC2() { + return this.cProperty2; + } + + public String getD() { + return this.dProperty; + } + + public String getNoSource() { + return this.nosource; + } + + public int getOverrideValue() { + return this.overrideNumber; + } + public Collection<String> getManyValuesFileProperty() { + return this.manyValuesFileProperty; + } +} + diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/java/org/apache/tuscany/sca/itest/ComplexPropertyBean.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/java/org/apache/tuscany/sca/itest/ComplexPropertyBean.java new file mode 100644 index 0000000000..1f3e4a0a41 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/java/org/apache/tuscany/sca/itest/ComplexPropertyBean.java @@ -0,0 +1,69 @@ +package org.apache.tuscany.sca.itest;
+
+public class ComplexPropertyBean {
+
+ protected int integerNumber = 25;
+ public float floatNumber = 50;
+ public double doubleNumber = 75;
+ public int[] intArray = null;
+ public double[] doubleArray = null;
+ protected String[] stringArray = null;
+
+ ComplexPropertyBean numberSet;
+ public ComplexPropertyBean[] numberSetArray = null;
+
+ public ComplexPropertyBean() {
+
+ }
+
+ public double getDoubleNumber() {
+ return doubleNumber;
+ }
+
+ public void setDoubleNumber(double doubleNumber) {
+ this.doubleNumber = doubleNumber;
+ }
+
+ public float getFloatNumber() {
+ return floatNumber;
+ }
+
+ public void setFloatNumber(float floatNumber) {
+ this.floatNumber = floatNumber;
+ }
+
+ public int getIntegerNumber() {
+ return integerNumber;
+ }
+
+ public void setIntegerNumber(int integerNumber) {
+ this.integerNumber = integerNumber;
+ }
+
+ public ComplexPropertyBean getNumberSet() {
+ return numberSet;
+ }
+
+ public void setNumberSet(ComplexPropertyBean numberSet) {
+ this.numberSet = numberSet;
+ }
+
+ public String toString() {
+ return Double.toString(integerNumber) + " - " +
+ Double.toString(floatNumber) + " - " +
+ Double.toString(doubleNumber) + " \n" +
+ ((intArray == null ) ? "no int array" : intArray[0] + " - " + intArray[1] + " \n " ) +
+ ((doubleArray == null ) ? "no double array" : doubleArray[0] + " - " + doubleArray[1] + " \n " ) +
+ ((stringArray == null ) ? "no string array" : stringArray[0] + " - " + stringArray[1] + " \n " ) +
+ ((numberSetArray == null ) ? "no numberset array" : numberSetArray[0] + " - " + numberSetArray[1] + " \n " ) +
+ ((numberSet == null ) ? "" : numberSet.toString());
+ }
+
+ public String[] getStringArray() {
+ return stringArray;
+ }
+
+ public void setStringArray(String[] stringArray) {
+ this.stringArray = stringArray;
+ }
+}
diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/java/org/apache/tuscany/sca/itest/OverrideService.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/java/org/apache/tuscany/sca/itest/OverrideService.java new file mode 100644 index 0000000000..116cdef48f --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/java/org/apache/tuscany/sca/itest/OverrideService.java @@ -0,0 +1,25 @@ + +/* + * 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.itest; + +public interface OverrideService { + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/java/org/apache/tuscany/sca/itest/OverrideServiceImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/java/org/apache/tuscany/sca/itest/OverrideServiceImpl.java new file mode 100644 index 0000000000..a36bb5e419 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/java/org/apache/tuscany/sca/itest/OverrideServiceImpl.java @@ -0,0 +1,24 @@ +/* + * 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.itest; + +public class OverrideServiceImpl implements OverrideService { + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/java/org/apache/tuscany/sca/itest/PropertyComponent.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/java/org/apache/tuscany/sca/itest/PropertyComponent.java new file mode 100644 index 0000000000..a76f17bcad --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/java/org/apache/tuscany/sca/itest/PropertyComponent.java @@ -0,0 +1,32 @@ +/* + * 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.itest; + +import java.util.Collection; + + +public interface PropertyComponent { + public String getLocation(); + public String getYear(); + public ComplexPropertyBean getComplexPropertyOne(); + public ComplexPropertyBean getComplexPropertyTwo(); + public ComplexPropertyBean getComplexPropertyThree(); + public Collection<ComplexPropertyBean> getComplexPropertyFour(); +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/java/org/apache/tuscany/sca/itest/PropertyComponentImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/java/org/apache/tuscany/sca/itest/PropertyComponentImpl.java new file mode 100644 index 0000000000..be99611dfa --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/java/org/apache/tuscany/sca/itest/PropertyComponentImpl.java @@ -0,0 +1,72 @@ +/* + * 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.itest; + +import java.util.Collection; + +import org.osoa.sca.annotations.Property; + +public class PropertyComponentImpl implements PropertyComponent { + @Property + protected ComplexPropertyBean complexPropertyOne; + + @Property + protected ComplexPropertyBean complexPropertyTwo; + + @Property + protected ComplexPropertyBean complexPropertyThree; + + @Property + protected Collection<ComplexPropertyBean> complexPropertyFour; + + @Property(name = "location") + protected String location = "RTP"; + + @Property(name = "year") + protected String year = "2006"; + + public String getLocation(){ + return location; + } + + public String getYear(){ + return year; + } + + public ComplexPropertyBean getComplexPropertyOne() { + //System.out.println(complexPropertyOne); + return complexPropertyOne; + } + + public ComplexPropertyBean getComplexPropertyTwo() { + //System.out.println(complexPropertyTwo); + return complexPropertyTwo; + } + + public ComplexPropertyBean getComplexPropertyThree() { + //System.out.println(complexPropertyThree); + return complexPropertyThree; + } + + public Collection<ComplexPropertyBean> getComplexPropertyFour() { + //System.out.println(complexPropertyThree); + return complexPropertyFour; + } +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/java/org/apache/tuscany/sca/itest/PropertyService.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/java/org/apache/tuscany/sca/itest/PropertyService.java new file mode 100644 index 0000000000..f20d295a06 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/java/org/apache/tuscany/sca/itest/PropertyService.java @@ -0,0 +1,24 @@ +/* + * 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.itest; + +public interface PropertyService { + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/resources/PropertyTest.composite b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/resources/PropertyTest.composite new file mode 100644 index 0000000000..e48a8cc606 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/resources/PropertyTest.composite @@ -0,0 +1,197 @@ +<?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" + xmlns:foo="http://foo" + name="PropertyTest" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> + + <property name="number" type="xsd:int">1</property> + <property name="complex" type="foo:MyComplexType" > + <foo:MyComplexValue xsi:type="foo:MyComplexType" > + <foo:a>a</foo:a> + <foo:b>b</foo:b> + <foo:c>c</foo:c> + <foo:d>d</foo:d> + <foo:x> + <foo:y>y</foo:y> + <foo:z>z</foo:z> + </foo:x> + </foo:MyComplexValue> + </property> + + <property name="moreComplex" type="foo:MyMoreComplexType"> + <foo:MyMoreComplexValue xsi:type="foo:MyMoreComplexType"> + <foo:stringArray>TestString_1</foo:stringArray> + <foo:stringArray>TestString_2</foo:stringArray> + <foo:intArray>10</foo:intArray> + <foo:integerNumber>27</foo:integerNumber> + <foo:floatNumber>79.34</foo:floatNumber> + <foo:doubleArray>25.52</foo:doubleArray> + <foo:doubleNumber>184.52</foo:doubleNumber> + <foo:doubleArray>50.05</foo:doubleArray> + <foo:intArray>20</foo:intArray> + <foo:numberSetArray> + <foo:integerNumber>1</foo:integerNumber> + <foo:floatNumber>11</foo:floatNumber> + <foo:doubleNumber>111</foo:doubleNumber> + </foo:numberSetArray> + <foo:numberSetArray> + <foo:integerNumber>2</foo:integerNumber> + <foo:floatNumber>22</foo:floatNumber> + <foo:doubleNumber>222</foo:doubleNumber> + </foo:numberSetArray> + <foo:numberSet> + <foo:integerNumber>54</foo:integerNumber> + <foo:floatNumber>158.68</foo:floatNumber> + <foo:doubleNumber>369.04</foo:doubleNumber> + </foo:numberSet> + </foo:MyMoreComplexValue> + </property> + + <component name="ABCDComponent"> + <implementation.java class="org.apache.tuscany.sca.itest.ABCDComponentImpl"/> + <reference name="ab" target="ABComponent"></reference> + <reference name="cd" target="CDComponent"></reference> + </component> + + <component name="ABComponent"> + <implementation.java class="org.apache.tuscany.sca.itest.ABComponentImpl"/> + <property name="a" source="$complex/foo:MyComplexValue/foo:a"/> + <property name="b" source="$complex/foo:MyComplexValue/foo:b"/> + <property name="f" source="$complex/foo:MyComplexValue/foo:a">f</property> + <property name="xpath" source="$complex/foo:MyComplexValue/foo:x/*[local-name()='z']"/> + <property name="one" source="$number"/> + <property name="foobar"> + <value>Apache</value> + <value>Tuscany</value> + <value>Java SCA</value> + </property> + <property name="fooInts"> + <value>123</value> + <value>456</value> + <value>789</value> + </property> + </component> + + + <component name="CDComponent"> + <implementation.java class="org.apache.tuscany.sca.itest.CDComponentImpl"/> + <property name="c" source="$complex/foo:MyComplexValue/foo:c"/> + <property name="d" source="$complex/foo:MyComplexValue/foo:d"/> + <property name="nosource">aValue</property> + <property name="fileProperty" file="fileProperty.txt"/> + <property name="manyValuesFileProperty" file="manyValuesFileProperty.txt"/> + <property name="nonFileProperty" file="fileProperty.txt" source="$complex/foo:MyComplexValue/foo:c"/> + <property name="two" source="$number">2</property> + </component> + + <component name="PropertyComponent"> + <implementation.java class="org.apache.tuscany.sca.itest.PropertyComponentImpl"/> + <property name="complexPropertyOne" source="$moreComplex"></property> + <property name="complexPropertyTwo"> + <foo:MyAnotherComplexValue> + <foo:stringArray>TestString_1</foo:stringArray> + <foo:stringArray>TestString_2</foo:stringArray> + <foo:intArray>10</foo:intArray> + <foo:integerNumber>27</foo:integerNumber> + <foo:floatNumber>79.34</foo:floatNumber> + <foo:doubleArray>25.52</foo:doubleArray> + <foo:doubleNumber>184.52</foo:doubleNumber> + <foo:doubleArray>50.05</foo:doubleArray> + <foo:intArray>20</foo:intArray> + <foo:numberSetArray> + <foo:integerNumber>1</foo:integerNumber> + <foo:floatNumber>11</foo:floatNumber> + <foo:doubleNumber>111</foo:doubleNumber> + </foo:numberSetArray> + <foo:numberSetArray> + <foo:integerNumber>2</foo:integerNumber> + <foo:floatNumber>22</foo:floatNumber> + <foo:doubleNumber>222</foo:doubleNumber> + </foo:numberSetArray> + <foo:numberSet> + <foo:integerNumber>54</foo:integerNumber> + <foo:floatNumber>158.68</foo:floatNumber> + <foo:doubleNumber>369.04</foo:doubleNumber> + </foo:numberSet> + </foo:MyAnotherComplexValue> + </property> + <property name="complexPropertyThree" element="foo:PropertyThreeElement"> + <foo:PropertyThreeElement> + <foo:stringArray>TestElementString_1</foo:stringArray> + <foo:stringArray>TestElementString_2</foo:stringArray> + <foo:intArray>10</foo:intArray> + <foo:integerNumber>27</foo:integerNumber> + <foo:floatNumber>79.34</foo:floatNumber> + <foo:doubleArray>25.52</foo:doubleArray> + <foo:doubleNumber>184.52</foo:doubleNumber> + <foo:doubleArray>50.05</foo:doubleArray> + <foo:intArray>20</foo:intArray> + <foo:numberSetArray> + <foo:integerNumber>1</foo:integerNumber> + <foo:floatNumber>11</foo:floatNumber> + <foo:doubleNumber>111</foo:doubleNumber> + </foo:numberSetArray> + <foo:numberSetArray> + <foo:integerNumber>2</foo:integerNumber> + <foo:floatNumber>22</foo:floatNumber> + <foo:doubleNumber>222</foo:doubleNumber> + </foo:numberSetArray> + <foo:numberSet> + <foo:integerNumber>54</foo:integerNumber> + <foo:floatNumber>158.68</foo:floatNumber> + <foo:doubleNumber>369.04</foo:doubleNumber> + </foo:numberSet> + </foo:PropertyThreeElement> + </property> + <property name="complexPropertyFour" element="foo:PropertyFourElement" > + <foo:PropertyFourElement> + <foo:integerNumber>1</foo:integerNumber> + <foo:floatNumber>11.11</foo:floatNumber> + <foo:doubleNumber>111.111</foo:doubleNumber> + <foo:numberSet> + <foo:integerNumber>11</foo:integerNumber> + <foo:floatNumber>1111.1111</foo:floatNumber> + <foo:doubleNumber>11111.11111</foo:doubleNumber> + </foo:numberSet> + </foo:PropertyFourElement> + <foo:PropertyFourElement> + <foo:integerNumber>2</foo:integerNumber> + <foo:floatNumber>22.22</foo:floatNumber> + <foo:doubleNumber>222.222</foo:doubleNumber> + <foo:numberSet> + <foo:integerNumber>22</foo:integerNumber> + <foo:floatNumber>2222.2222</foo:floatNumber> + <foo:doubleNumber>22222.22222</foo:doubleNumber> + </foo:numberSet> + </foo:PropertyFourElement> + <foo:PropertyFourElement> + <foo:integerNumber>3</foo:integerNumber> + <foo:floatNumber>33.33</foo:floatNumber> + <foo:doubleNumber>333.333</foo:doubleNumber> + <foo:numberSet> + <foo:integerNumber>33</foo:integerNumber> + <foo:floatNumber>3333.3333</foo:floatNumber> + <foo:doubleNumber>33333.33333</foo:doubleNumber> + </foo:numberSet> + </foo:PropertyFourElement> + </property> + </component> +</composite> + diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/resources/fileProperty.txt b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/resources/fileProperty.txt new file mode 100644 index 0000000000..c530ae892d --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/resources/fileProperty.txt @@ -0,0 +1 @@ +<filePropertyTest>fileValue</filePropertyTest> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/resources/manyValuesFileProperty.txt b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/resources/manyValuesFileProperty.txt new file mode 100644 index 0000000000..328b9b3767 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/main/resources/manyValuesFileProperty.txt @@ -0,0 +1,6 @@ +<manyFilePropertyValues>
+ <value>fileValueOne</value>
+ <value>fileValueTwo</value>
+ <value>fileValueThree</value>
+ <value>fileValueFour</value>
+</manyFilePropertyValues>
diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/test/java/org/apache/tuscany/sca/itest/PropertyTestCase.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/test/java/org/apache/tuscany/sca/itest/PropertyTestCase.java new file mode 100644 index 0000000000..e72cdd24bf --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/property/src/test/java/org/apache/tuscany/sca/itest/PropertyTestCase.java @@ -0,0 +1,186 @@ +/* + * 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.itest; + +import static junit.framework.Assert.assertEquals; +import static junit.framework.Assert.assertNotNull; + +import java.util.Iterator; + +import org.apache.tuscany.api.SCARuntime; +import org.junit.AfterClass; +import org.junit.BeforeClass; +import org.junit.Test; +import org.osoa.sca.CurrentCompositeContext; + +public class PropertyTestCase { + private static ABComponent abService; + private static CDComponent cdService; + private static ABCDComponent abcdService; + private static PropertyComponent propertyService; + + @Test + public void testA() { + assertEquals("a", abService.getA()); + } + + @Test + public void testB() { + assertEquals("b", abService.getB()); + } + + @Test + public void testC() { + assertEquals("c", cdService.getC()); + } + + @Test + public void testC2() { + assertEquals("c", cdService.getC2()); + } + + @Test + public void testD() { + assertEquals("d", cdService.getD()); + } + + @Test + public void testF() { + assertEquals("a", abService.getF()); + } + + @Test + public void testZ() { + assertEquals("z", abService.getZ()); + } + + @Test + public void testIntValue() { + assertEquals(1, abService.getIntValue()); + } + + @Test + public void testDefaultValue() { + assertEquals(1, abService.getIntValue()); + } + + @Test + public void testDefaultValueOverride() { + assertEquals(1, cdService.getOverrideValue()); + } + + @Test + public void testNoSource() { + assertEquals("aValue", cdService.getNoSource()); + } + + @Test + public void testFileProperty() { + assertEquals("fileValue", cdService.getFileProperty()); + } + + @Test + public void testManyValuesFileProperty() { + Iterator<String> iterator = cdService.getManyValuesFileProperty().iterator(); + iterator.next(); + String secondValue = iterator.next(); + assertEquals(4, cdService.getManyValuesFileProperty().size()); + assertEquals("fileValueTwo", secondValue); + } + + @Test + public void testABCD() { + assertEquals("a", abcdService.getA()); + assertEquals("b", abcdService.getB()); + assertEquals("c", abcdService.getC()); + assertEquals("d", abcdService.getD()); + } + + @Test + public void testDefaultProperty() { + assertEquals("RTP", propertyService.getLocation()); + assertEquals("2006", propertyService.getYear()); + + } + + @Test + public void testManySimpleStringValues() { + Iterator<String> iterator = abService.getManyStringValues().iterator(); + assertEquals("Apache", iterator.next()); + assertEquals("Tuscany", iterator.next()); + assertEquals("Java SCA", iterator.next()); + } + + @Test + public void testManySimpleIntegerValues() { + Iterator<Integer> iterator = abService.getManyIntegers().iterator(); + assertEquals(123, iterator.next().intValue()); + assertEquals(456, iterator.next().intValue()); + assertEquals(789, iterator.next().intValue()); + } + + @Test + public void testComplexPropertyOne() { + ComplexPropertyBean propBean = propertyService.getComplexPropertyOne(); + assertNotNull(propBean); + assertEquals("TestString_1", propBean.getStringArray()[0]); + assertEquals(2, propBean.numberSetArray[1].integerNumber); + } + + @Test + public void testComplexPropertyTwo() { + ComplexPropertyBean propBean = propertyService.getComplexPropertyTwo(); + assertNotNull(propBean); + assertEquals(10, propBean.intArray[0]); + assertEquals((float)22, propBean.numberSetArray[1].floatNumber); + } + + @Test + public void testComplexPropertyThree() { + ComplexPropertyBean propBean = propertyService.getComplexPropertyThree(); + assertNotNull(propBean); + assertEquals("TestElementString_1", propBean.stringArray[0]); + assertEquals((float)22, propBean.numberSetArray[1].floatNumber); + } + + @Test + public void testComplexPropertyFour() { + Object[] propBeanCollection = propertyService.getComplexPropertyFour().toArray(); + assertNotNull(propBeanCollection); + assertEquals(1, ((ComplexPropertyBean)propBeanCollection[0]).getIntegerNumber()); + assertEquals(222.222, ((ComplexPropertyBean)propBeanCollection[1]).getDoubleNumber()); + assertEquals(33, ((ComplexPropertyBean)propBeanCollection[2]).getNumberSet().getIntegerNumber()); + } + + @BeforeClass + public static void init() throws Exception { + SCARuntime.start("PropertyTest.composite"); + abService = CurrentCompositeContext.getContext().locateService(ABComponent.class, "ABComponent"); + cdService = CurrentCompositeContext.getContext().locateService(CDComponent.class, "CDComponent"); + abcdService = CurrentCompositeContext.getContext().locateService(ABCDComponent.class, "ABCDComponent"); + propertyService = + CurrentCompositeContext.getContext().locateService(PropertyComponent.class, "PropertyComponent"); + } + + @AfterClass + public static void destroy() throws Exception { + SCARuntime.stop(); + } +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/pom.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/pom.xml new file mode 100644 index 0000000000..74f389f743 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/pom.xml @@ -0,0 +1,34 @@ +<?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>
+ <parent>
+ <groupId>org.apache.tuscany.testing</groupId>
+ <artifactId>sca-itest</artifactId>
+ <version>0.1-integration-incubating-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
+ </parent>
+
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>iTest-spec</artifactId>
+ <version>${testing.version}</version>
+ <packaging>jar</packaging>
+ <name>Test Suite for SCA Spec APIs</name>
+
+</project>
diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/java/org/apache/tuscany/sca/test/spec/MyListService.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/java/org/apache/tuscany/sca/test/spec/MyListService.java new file mode 100644 index 0000000000..7fe9fa4909 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/java/org/apache/tuscany/sca/test/spec/MyListService.java @@ -0,0 +1,28 @@ +/*
+ * 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.test.spec;
+
+import org.osoa.sca.annotations.Remotable;
+
+@Remotable
+public interface MyListService {
+ String[] getHolidays();
+
+ String getYear();
+}
diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/java/org/apache/tuscany/sca/test/spec/MyListServiceByYear.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/java/org/apache/tuscany/sca/test/spec/MyListServiceByYear.java new file mode 100644 index 0000000000..a381fc62dc --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/java/org/apache/tuscany/sca/test/spec/MyListServiceByYear.java @@ -0,0 +1,27 @@ +/*
+ * 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.test.spec;
+
+import org.osoa.sca.annotations.Remotable;
+
+@Remotable
+public interface MyListServiceByYear {
+ //FIXME renaming method due to TUSCANY-1173. Original name getHolidays
+ String[] getHolidaysByYear(int year);
+}
diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/java/org/apache/tuscany/sca/test/spec/MyService.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/java/org/apache/tuscany/sca/test/spec/MyService.java new file mode 100644 index 0000000000..fbb2161df3 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/java/org/apache/tuscany/sca/test/spec/MyService.java @@ -0,0 +1,29 @@ +/*
+ * 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.test.spec;
+
+import java.util.Date;
+
+public interface MyService extends SCAComponentService {
+ Date nextHoliday();
+
+ String getLocation();
+
+ String getYear();
+}
diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/java/org/apache/tuscany/sca/test/spec/MyServiceByDate.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/java/org/apache/tuscany/sca/test/spec/MyServiceByDate.java new file mode 100644 index 0000000000..98490c4e3d --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/java/org/apache/tuscany/sca/test/spec/MyServiceByDate.java @@ -0,0 +1,29 @@ +/*
+ * 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.test.spec;
+
+import java.util.Date;
+
+import org.osoa.sca.annotations.Remotable;
+
+@Remotable
+public interface MyServiceByDate {
+ //FIXME renaming method due to TUSCANY-1173. Original name nextHoliday
+ Date nextHolidayByDate(Date date);
+}
diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/java/org/apache/tuscany/sca/test/spec/MyTotalService.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/java/org/apache/tuscany/sca/test/spec/MyTotalService.java new file mode 100644 index 0000000000..6a4cfc1f79 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/java/org/apache/tuscany/sca/test/spec/MyTotalService.java @@ -0,0 +1,23 @@ +/*
+ * 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.test.spec;
+
+public interface MyTotalService extends MyListService, MyListServiceByYear, MyService, MyServiceByDate {
+
+}
diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/java/org/apache/tuscany/sca/test/spec/SCAComponentService.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/java/org/apache/tuscany/sca/test/spec/SCAComponentService.java new file mode 100644 index 0000000000..2b54ce2740 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/java/org/apache/tuscany/sca/test/spec/SCAComponentService.java @@ -0,0 +1,28 @@ +/*
+ * 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.test.spec;
+
+import org.osoa.sca.CompositeContext;
+
+public interface SCAComponentService {
+ String getComponentName();
+
+ CompositeContext getContext();
+
+}
diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/java/org/apache/tuscany/sca/test/spec/impl/MyListServiceImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/java/org/apache/tuscany/sca/test/spec/impl/MyListServiceImpl.java new file mode 100644 index 0000000000..5170c32cd2 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/java/org/apache/tuscany/sca/test/spec/impl/MyListServiceImpl.java @@ -0,0 +1,73 @@ +/*
+ * 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.test.spec.impl;
+
+import java.util.List;
+
+import org.apache.tuscany.sca.test.spec.MyListService;
+import org.apache.tuscany.sca.test.spec.MyListServiceByYear;
+import org.osoa.sca.annotations.Property;
+import org.osoa.sca.annotations.Reference;
+import org.osoa.sca.annotations.Service;
+
+
+@Service(interfaces = {MyListService.class, MyListServiceByYear.class})
+public class MyListServiceImpl implements MyListService, MyListServiceByYear {
+
+ // This is multiplicity=1:n
+ @Reference(name = "myListServiceList", required = false)
+ public List<MyListService> myListServicesList;
+
+ // This is multiplicity=0:n
+ @Reference(name = "myListServiceArray", required = false)
+ public MyListService[] myListServicesArray;
+
+ @Property(name = "serviceYear")
+ protected String year = "2006";
+
+ public String[] getHolidays() {
+ return getHolidaysByYear(new Integer(year).intValue());
+ }
+
+ public String[] getHolidaysByYear(int year) {
+ MyListService myService;
+ if (myListServicesList != null) {
+ for (int i = 0; i < myListServicesList.size(); i++) {
+ myService = myListServicesList.get(i);
+ if (new Integer(myService.getYear()).intValue() == year) {
+ return myService.getHolidays();
+ }
+ }
+ }
+ if (myListServicesArray != null) {
+ for (int i = 0; i < myListServicesArray.length; i++) {
+ myService = myListServicesArray[i];
+ if (new Integer(myService.getYear()).intValue() == year) {
+ return myService.getHolidays();
+ }
+ }
+ }
+ return null;
+ }
+
+ public String getYear() {
+ return year;
+ }
+
+}
diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/java/org/apache/tuscany/sca/test/spec/impl/MyServiceImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/java/org/apache/tuscany/sca/test/spec/impl/MyServiceImpl.java new file mode 100644 index 0000000000..7e8575a0a7 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/java/org/apache/tuscany/sca/test/spec/impl/MyServiceImpl.java @@ -0,0 +1,122 @@ +/*
+ * 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.test.spec.impl;
+
+import java.util.Date;
+
+import org.apache.tuscany.sca.test.spec.MyListService;
+import org.apache.tuscany.sca.test.spec.MyListServiceByYear;
+import org.apache.tuscany.sca.test.spec.MyService;
+import org.apache.tuscany.sca.test.spec.MyServiceByDate;
+import org.osoa.sca.CompositeContext;
+import org.osoa.sca.annotations.ComponentName;
+import org.osoa.sca.annotations.Context;
+import org.osoa.sca.annotations.Destroy;
+import org.osoa.sca.annotations.Init;
+import org.osoa.sca.annotations.Property;
+import org.osoa.sca.annotations.Service;
+
+
+@Service(interfaces = {MyService.class, MyServiceByDate.class, MyListService.class, MyListServiceByYear.class})
+public class MyServiceImpl implements MyService, MyServiceByDate, MyListService, MyListServiceByYear {
+ static String[][] holidays =
+ {
+ {"2006/01/02", "2006/05/29", "2006/07/03", "2006/07/04", "2006/09/04", "2006/11/23", "2006/11/23",
+ "2006/11/24", "2006/12/25"},
+ {"2007/01/01", "2007/05/28", "2007/07/04", "2007/09/03", "2007/11/22", "2007/11/23", "2007/12/25"}};
+
+ @Property(name = "location")
+ protected String location = "RTP";
+
+ @Property(name = "year")
+ protected String year = "2006";
+
+ @ComponentName
+ private String componentName;
+
+ @Context
+ private CompositeContext context;
+
+ public MyServiceImpl() {
+ // System.out.println("creating service instance...");
+ }
+
+ public Date nextHoliday() {
+
+ return nextHolidayByDate(new Date());
+ }
+
+ @SuppressWarnings("deprecation")
+ public Date nextHolidayByDate(Date today) {
+ Date d1;
+ String[] days = getHolidays();
+ for (int j = 0; j < days.length; j++) {
+ d1 = new Date(days[j]);
+ if (d1.after(today))
+ return d1;
+ }
+ return null;
+ }
+
+ public String[] getHolidaysByYear(int year) {
+ int index = year - 2006;
+ if (index >= 0 && index < holidays.length)
+ return holidays[index];
+ return null;
+ }
+
+ public String[] getHolidays() {
+
+ Integer theYear;
+ if (year == null || year.length() == 0)
+ theYear = new Integer("2006");
+ else
+ theYear = new Integer(year);
+
+ return getHolidaysByYear(theYear.intValue());
+ }
+
+ @Init
+ public void start() {
+ // System.out.println("Start service..");
+ }
+
+ @Destroy
+ public void stop() {
+ // System.out.println("Stop service..");
+
+ }
+
+ public String getComponentName() {
+ return componentName;
+ }
+
+ public CompositeContext getContext() {
+ return context;
+ }
+
+ public String getLocation() {
+ return location;
+ }
+
+ public String getYear() {
+ return year;
+ }
+
+}
diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/java/org/apache/tuscany/sca/test/spec/impl/MyTotalServiceImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/java/org/apache/tuscany/sca/test/spec/impl/MyTotalServiceImpl.java new file mode 100644 index 0000000000..9d382341e7 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/java/org/apache/tuscany/sca/test/spec/impl/MyTotalServiceImpl.java @@ -0,0 +1,83 @@ +/*
+ * 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.test.spec.impl;
+
+import java.util.Date;
+
+import org.apache.tuscany.sca.test.spec.MyListService;
+import org.apache.tuscany.sca.test.spec.MyListServiceByYear;
+import org.apache.tuscany.sca.test.spec.MyService;
+import org.apache.tuscany.sca.test.spec.MyServiceByDate;
+import org.apache.tuscany.sca.test.spec.MyTotalService;
+import org.osoa.sca.CompositeContext;
+import org.osoa.sca.annotations.Reference;
+import org.osoa.sca.annotations.Service;
+
+
+@Service(MyTotalService.class)
+public class MyTotalServiceImpl implements MyTotalService {
+
+ // This is multiplicity=1:1
+ @Reference(required = true)
+ public MyListService myListService;
+
+ // default required==true so it is 1:1
+ @Reference
+ public MyListServiceByYear myListServiceByYear = new MyServiceImpl();
+
+ // default required==true so it is 1:1
+ @Reference
+ public MyService myService;
+
+ // This is multiplicity=0:1
+ @Reference(required = false)
+ public MyServiceByDate myServiceByDate = new MyServiceImpl();
+
+ public String[] getHolidays() {
+ return myListService.getHolidays();
+ }
+
+ public String[] getHolidaysByYear(int year) {
+ return myListServiceByYear.getHolidaysByYear(year);
+ }
+
+ public String getComponentName() {
+ return myService.getComponentName();
+ }
+
+ public CompositeContext getContext() {
+ return myService.getContext();
+ }
+
+ public Date nextHolidayByDate(Date date) {
+ return myServiceByDate.nextHolidayByDate(date);
+ }
+
+ public String getLocation() {
+ return myService.getLocation();
+ }
+
+ public String getYear() {
+ return myService.getYear();
+ }
+
+ public Date nextHoliday() {
+ return myService.nextHoliday();
+ }
+}
diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/resources/CompositeTest.composite b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/resources/CompositeTest.composite new file mode 100644 index 0000000000..fdaa23379c --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/resources/CompositeTest.composite @@ -0,0 +1,33 @@ +<?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" + xmlns:foo="http://foo" + name="CompositeTest"> + + <include name="myTotalService" scdlLocation="myTotalService.composite"/> + <include name="myListService" scdlLocation="myListService.composite"/> + <include name="mySimpleServiceInRecursive" scdlLocation="mySimpleServiceInRecursive.composite"/> + <include name="myServiceInRecursive" scdlLocation="myServiceInRecursive.composite"/> + <include name="mySimpleServiceInRecursive2" scdlLocation="mySimpleServiceInRecursive2.composite"/> + <include name="MyTotalServiceInRecursive" scdlLocation="myTotalServiceInRecursive.composite"/> + <include name="MyTotalServiceInRecursiveForReferenceOverride" scdlLocation="myTotalServiceInRecursiveForReferenceOverride.composite"/> + + +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/resources/myListService.composite b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/resources/myListService.composite new file mode 100644 index 0000000000..0094d119e7 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/resources/myListService.composite @@ -0,0 +1,32 @@ +<?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" + xmlns:foo="http://foo" + name="MyListServiceTest"> + + <component name="MyNewListService"> + <implementation.java class="org.apache.tuscany.sca.test.spec.impl.MyListServiceImpl"/> + <reference name="myListServiceList" target="MyNCService/MyListService"></reference> + <reference name="myListServiceArray" target="MyListServiceFor2006/MyListService"></reference> + <property name="serviceYear">2007</property> + </component> + + +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/resources/myServiceInComposite.composite b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/resources/myServiceInComposite.composite new file mode 100644 index 0000000000..0d689e2c9c --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/resources/myServiceInComposite.composite @@ -0,0 +1,53 @@ +<?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" + xmlns:foo="http://foo" + name="MyServiceInCompositeTest"> + + <service name="MyService"> + <interface.java interface="org.apache.tuscany.sca.test.spec.MyService"/> + <reference>MyServiceComponent/MyService</reference> + </service> + + + <service name="MyListService"> + <interface.java interface="org.apache.tuscany.sca.test.spec.MyListService"/> + <reference>MyServiceComponent/MyListService</reference> + </service> + + + <service name="MyListServiceByYear"> + <interface.java interface="org.apache.tuscany.sca.test.spec.MyListServiceByYear"/> + <reference>MyServiceComponent/MyListServiceByYear</reference> + </service> + + + <service name="MyServiceByDate"> + <interface.java interface="org.apache.tuscany.sca.test.spec.MyServiceByDate"/> + <reference>MyServiceComponent/MyServiceByDate</reference> + </service> + + <component name="MyServiceComponent"> + <implementation.java class="org.apache.tuscany.sca.test.spec.impl.MyServiceImpl"/> + <property name="location">CARY</property> + <property name="year">2007</property> + </component> + +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/resources/myServiceInRecursive.composite b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/resources/myServiceInRecursive.composite new file mode 100644 index 0000000000..59341c9f8a --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/resources/myServiceInRecursive.composite @@ -0,0 +1,53 @@ +<?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" + xmlns:foo="http://foo" + name="MyServiceInRecursiveTest"> + + <service name="MyServiceInRecursiveMyService"> + <interface.java interface="org.apache.tuscany.sca.test.spec.MyService"/> + <reference>MyServiceInRecursive/MyService</reference> + </service> + + + <service name="MyServiceInRecursiveMyListService"> + <interface.java interface="org.apache.tuscany.sca.test.spec.MyListService"/> + <reference>MyServiceInRecursive/MyListService</reference> + </service> + + + <service name="MyServiceInRecursiveMyListServiceByYear"> + <interface.java interface="org.apache.tuscany.sca.test.spec.MyListServiceByYear"/> + <reference>MyServiceInRecursive/MyListServiceByYear</reference> + </service> + + + <service name="MyServiceInRecursiveMyServiceByDate"> + <interface.java interface="org.apache.tuscany.sca.test.spec.MyServiceByDate"/> + <reference>MyServiceInRecursive/MyServiceByDate</reference> + </service> + + + <component name="MyServiceInRecursive"> + <implementation.composite scdlLocation="myServiceInComposite.composite"/> + </component> + + +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/resources/mySimpleService.composite b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/resources/mySimpleService.composite new file mode 100644 index 0000000000..65140fced8 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/resources/mySimpleService.composite @@ -0,0 +1,35 @@ +<?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" + xmlns:foo="http://foo" + name="MySimpleServiceTest"> + + <service name="MyService"> + <interface.java interface="org.apache.tuscany.sca.test.spec.MyService"/> + <reference>MyServiceComponent/MyService</reference> + </service> + + <component name="MyServiceComponent"> + <implementation.java class="org.apache.tuscany.sca.test.spec.impl.MyServiceImpl"/> + <property name="location">CARY</property> + <property name="year">2007</property> + </component> + +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/resources/mySimpleServiceInRecursive.composite b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/resources/mySimpleServiceInRecursive.composite new file mode 100644 index 0000000000..e6925ee7f8 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/resources/mySimpleServiceInRecursive.composite @@ -0,0 +1,48 @@ +<?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" + xmlns:foo="http://foo" + name="MySimpleServiceInRecursiveTest"> + + <service name="MySimpleService"> + <interface.java interface="org.apache.tuscany.sca.test.spec.MyService"/> + <reference>MySimpleServiceInRecursive/MyService</reference> + </service> + + + <service name="MySimpleServiceNo" override="no"> + <interface.java interface="org.apache.tuscany.sca.test.spec.MyService"/> + <reference>MySimpleServiceInRecursive/MyService</reference> + </service> + + <service name="MySimpleServiceMay" override="may"> + <interface.java interface="org.apache.tuscany.sca.test.spec.MyService"/> + <reference>MySimpleServiceInRecursive/MyService</reference> + </service> + + <service name="MySimpleServiceMust" override="must"> + <interface.java interface="org.apache.tuscany.sca.test.spec.MyService"/> + <reference>MySimpleServiceInRecursive/MyService</reference> + </service> + + <component name="MySimpleServiceInRecursive"> + <implementation.composite scdlLocation="mySimpleService.composite"/> + </component> +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/resources/mySimpleServiceInRecursive2.composite b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/resources/mySimpleServiceInRecursive2.composite new file mode 100644 index 0000000000..4895691c00 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/resources/mySimpleServiceInRecursive2.composite @@ -0,0 +1,47 @@ +<?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" + xmlns:foo="http://foo" + name="MySimpleServiceInRecursiveTest"> + + <service name="MySimpleServiceDefault"> + <interface.java interface="org.apache.tuscany.sca.test.spec.MyService"/> + <reference>MySimpleServiceInRecursiveComponent/MySimpleService</reference> + </service> + + <service name="MySimpleServiceNo" override="no"> + <interface.java interface="org.apache.tuscany.sca.test.spec.MyService"/> + <reference>MySimpleServiceInRecursiveComponent/MySimpleServiceNo</reference> + </service> + + <service name="MySimpleServiceMay" override="may"> + <interface.java interface="org.apache.tuscany.sca.test.spec.MyService"/> + <reference>MySimpleServiceInRecursiveComponent/MySimpleServiceMay</reference> + </service> + + <service name="MySimpleServiceMust" override="must"> + <interface.java interface="org.apache.tuscany.sca.test.spec.MyService"/> + <reference>MySimpleServiceInRecursiveComponent/MySimpleServiceMust</reference> + </service> + + <component name="MySimpleServiceInRecursiveComponent"> + <implementation.composite scdlLocation="mySimpleServiceInRecursive.composite"/> + </component> +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/resources/myTotalService.composite b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/resources/myTotalService.composite new file mode 100644 index 0000000000..d01558cdfe --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/resources/myTotalService.composite @@ -0,0 +1,32 @@ +<?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" + xmlns:foo="http://foo" + name="MyTotalServiceTest"> + + <include name="myservice" scdlLocation="myservice.composite"/> + + <component name="MyTotalService"> + <implementation.java class="org.apache.tuscany.sca.test.spec.impl.MyTotalServiceImpl"/> + <reference name="myService" target="MyNCService/MyService"></reference> + <reference name="myListService" target="MyNCService/MyListService"></reference> + </component> + +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/resources/myTotalServiceInComposite.composite b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/resources/myTotalServiceInComposite.composite new file mode 100644 index 0000000000..2359323058 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/resources/myTotalServiceInComposite.composite @@ -0,0 +1,43 @@ +<?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" + xmlns:foo="http://foo" + name="MyTotalServiceReferenceOverrideTest"> + + <service name="MyTotalService"> + <interface.java interface="org.apache.tuscany.sca.test.spec.MyTotalService"/> + <reference>MyTotalServiceComponent</reference> + </service> + + <component name="MyTotalServiceComponent"> + <implementation.java class="org.apache.tuscany.sca.test.spec.impl.MyTotalServiceImpl"/> + <reference name="myService"></reference> + <reference name="myListService"></reference> + </component> + + <reference name="MyServiceRef" promote="MyTotalServiceComponent/myService"> + <interface.java interface="org.apache.tuscany.sca.test.spec.MyService"/> + </reference> + + <reference name="MyListServiceRef" promote="MyTotalServiceComponent/myListService"> + <interface.java interface="org.apache.tuscany.sca.test.spec.MyListService"/> + </reference> + +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/resources/myTotalServiceInCompositeForReferenceOverride.composite b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/resources/myTotalServiceInCompositeForReferenceOverride.composite new file mode 100644 index 0000000000..96a8f00740 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/resources/myTotalServiceInCompositeForReferenceOverride.composite @@ -0,0 +1,81 @@ +<?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" + xmlns:foo="http://foo" + name="MyTotalServiceTest"> + + <service name="MyTotalServiceNo"> + <interface.java interface="org.apache.tuscany.sca.test.spec.MyTotalService"/> + <reference>MyTotalServiceComponentNo</reference> + </service> + + <component name="MyTotalServiceComponentNo"> + <implementation.java class="org.apache.tuscany.sca.test.spec.impl.MyTotalServiceImpl"/> + <reference name="myService"></reference> + <reference name="myListService"></reference> + </component> + + <reference name="MyServiceRefNo" override="no" promote="MyTotalServiceComponentNo/myService"> + <interface.java interface="org.apache.tuscany.sca.test.spec.MyService"/> + </reference> + + <reference name="MyListServiceRefNo" promote="MyTotalServiceComponentNo/myListService" override="no"> + <interface.java interface="org.apache.tuscany.sca.test.spec.MyListService"/> + </reference> + + <service name="MyTotalServiceMay"> + <interface.java interface="org.apache.tuscany.sca.test.spec.MyTotalService"/> + <reference>MyTotalServiceComponentMay</reference> + </service> + + <component name="MyTotalServiceComponentMay"> + <implementation.java class="org.apache.tuscany.sca.test.spec.impl.MyTotalServiceImpl"/> + <reference name="myService"></reference> + <reference name="myListService"></reference> + </component> + + <reference name="MyServiceRefMay" override="may" promote="MyTotalServiceComponentMay/myService"> + <interface.java interface="org.apache.tuscany.sca.test.spec.MyService"/> + </reference> + + <reference name="MyListServiceRefMay" override="may" promote="MyTotalServiceComponentMay/myListService"> + <interface.java interface="org.apache.tuscany.sca.test.spec.MyListService"/> + </reference> + + <service name="MyTotalServiceMust"> + <interface.java interface="org.apache.tuscany.sca.test.spec.MyTotalService"/> + <reference>MyTotalServiceComponentMust</reference> + </service> + + <component name="MyTotalServiceComponentMust"> + <implementation.java class="org.apache.tuscany.sca.test.spec.impl.MyTotalServiceImpl"/> + <reference name="myService"></reference> + <reference name="myListService"></reference> + </component> + + <reference name="MyServiceRefMust" override="must" promote="MyTotalServiceComponentMust/myService"> + <interface.java interface="org.apache.tuscany.sca.test.spec.MyService"/> + </reference> + + <reference name="MyListServiceRefMust" override="must" promote="MyTotalServiceComponentMust/myListService"> + <interface.java interface="org.apache.tuscany.sca.test.spec.MyListService"/> + </reference> + +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/resources/myTotalServiceInRecursive.composite b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/resources/myTotalServiceInRecursive.composite new file mode 100644 index 0000000000..36802c75a6 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/resources/myTotalServiceInRecursive.composite @@ -0,0 +1,62 @@ +<?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" + xmlns:foo="http://foo" + name="MyTotalServiceInRecursiveTest"> + + <component name="MyServiceInComposite"> + <implementation.composite scdlLocation="myServiceInComposite.composite"/> + </component> + + <component name="MyTotalServiceFromRecursive"> + <implementation.java class="org.apache.tuscany.sca.test.spec.impl.MyTotalServiceImpl"/> + <reference name="myService" target="MyServiceInComposite/MyService"></reference> + <reference name="myListService" target="MyServiceInComposite/MyListService"></reference> + </component> + + <service name="MyTotalServiceInCompositeWithRecursiveUseService"> + <interface.java interface="org.apache.tuscany.sca.test.spec.MyTotalService"/> + <reference>MyTotalServiceInCompositeWithRecursive</reference> + </service> + + <service name="MyTotalServiceInCompositeWithComponentServiceUseService"> + <interface.java interface="org.apache.tuscany.sca.test.spec.MyTotalService"/> + <reference>MyTotalServiceInCompositeWithComponentService</reference> + </service> + + <component name="MyTotalServiceInCompositeWithRecursive"> + <implementation.composite scdlLocation="myTotalServiceInComposite.composite"/> + <reference name="MyServiceRef" target="MyServiceInComposite/MyService"></reference> + <reference name="MyListServiceRef" target="MyServiceInComposite/MyListService"></reference> + </component> + + <component name="MyTotalServiceInCompositeWithComponentService"> + <implementation.composite scdlLocation="myTotalServiceInComposite.composite"/> + <reference name="MyServiceRef" target="MyServiceInComponent/MyService"></reference> + <reference name="MyListServiceRef" target="MyServiceInComponent/MyListService"></reference> + </component> + + <component name="MyServiceInComponent"> + <implementation.java class="org.apache.tuscany.sca.test.spec.impl.MyServiceImpl"/> + <property name="location">CARY</property> + <property name="year">2007</property> + </component> + +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/resources/myTotalServiceInRecursiveForReferenceOverride.composite b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/resources/myTotalServiceInRecursiveForReferenceOverride.composite new file mode 100644 index 0000000000..4eccde41f4 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/resources/myTotalServiceInRecursiveForReferenceOverride.composite @@ -0,0 +1,55 @@ +<?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" + xmlns:foo="http://foo" + name="MyTotalServiceInRecursiveTest"> + + <service name="MyTotalServiceNo"> + <interface.java interface="org.apache.tuscany.sca.test.spec.MyTotalService"/> + <reference>MyTotalServiceForReferenceComponent/MyTotalServiceNo</reference> + </service> + + <service name="MyTotalServiceMay"> + <interface.java interface="org.apache.tuscany.sca.test.spec.MyTotalService"/> + <reference>MyTotalServiceForReferenceComponent/MyTotalServiceMay</reference> + </service> + + <service name="MyTotalServiceMust"> + <interface.java interface="org.apache.tuscany.sca.test.spec.MyTotalService"/> + <reference>MyTotalServiceForReferenceComponent/MyTotalServiceMust</reference> + </service> + + <component name="MyTotalServiceForReferenceComponent"> + <implementation.composite scdlLocation="myTotalServiceInCompositeForReferenceOverride.composite"/> + <reference name="MyServiceRefNo" target="MyServiceInComposite/MyService"></reference> + <reference name="MyListServiceRefNo" target="MyServiceInComposite/MyListService"></reference> + <reference name="MyServiceRefMay" target="MyServiceInComposite/MyService"></reference> + <reference name="MyListServiceRefMay" target="MyServiceInComposite/MyListService"></reference> + <reference name="MyServiceRefMust" target="MyServiceInComposite/MyService"></reference> + <reference name="MyListServiceRefMust" target="MyServiceInComposite/MyListService"></reference> + </component> + + <component name="MyServiceInComponent"> + <implementation.java class="org.apache.tuscany.sca.test.spec.impl.MyServiceImpl"/> + <property name="location">CARY</property> + <property name="year">2007</property> + </component> + +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/resources/myservice.composite b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/resources/myservice.composite new file mode 100644 index 0000000000..1e5f9edbd7 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/main/resources/myservice.composite @@ -0,0 +1,51 @@ +<?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" + xmlns:foo="http://foo" + name="MyServiceComposite"> + + <component name="MyService"> + <implementation.java class="org.apache.tuscany.sca.test.spec.impl.MyServiceImpl"/> + </component> + + <component name="MyNCService"> + <implementation.java class="org.apache.tuscany.sca.test.spec.impl.MyServiceImpl"/> + <property name="location">NC</property> + <property name="year">2007</property> + </component> + + <component name="MyServiceByDate"> + <implementation.java class="org.apache.tuscany.sca.test.spec.impl.MyServiceImpl"/> + </component> + + <component name="MyListService"> + <implementation.java class="org.apache.tuscany.sca.test.spec.impl.MyServiceImpl"/> + </component> + + <component name="MyListServiceFor2006"> + <implementation.java class="org.apache.tuscany.sca.test.spec.impl.MyServiceImpl"/> + <property name="year">2006</property> + </component> + + <component name="MyListServiceByYear"> + <implementation.java class="org.apache.tuscany.sca.test.spec.impl.MyServiceImpl"/> + </component> + +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/test/java/org/apache/tuscany/sca/test/spec/ComponentServiceReferenceListTestCase.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/test/java/org/apache/tuscany/sca/test/spec/ComponentServiceReferenceListTestCase.java new file mode 100644 index 0000000000..fe2780ed9d --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/test/java/org/apache/tuscany/sca/test/spec/ComponentServiceReferenceListTestCase.java @@ -0,0 +1,53 @@ +/*
+ * 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.test.spec;
+
+import junit.framework.TestCase;
+
+import org.apache.tuscany.api.SCARuntime;
+import org.osoa.sca.CompositeContext;
+import org.osoa.sca.CurrentCompositeContext;
+
+public class ComponentServiceReferenceListTestCase extends TestCase {
+ private MyListService myListService;
+ private MyListServiceByYear myListServiceByYear;
+
+ private CompositeContext context;
+
+ public void testDefaultProperty() {
+ assertEquals("2007", myListService.getYear());
+
+ }
+
+ public void testDefaultService() {
+ assertEquals(myListService.getHolidays()[0], myListServiceByYear.getHolidaysByYear(2007)[0]);
+
+ }
+
+ protected void setUp() throws Exception {
+ SCARuntime.start("CompositeTest.composite");
+ context = CurrentCompositeContext.getContext();
+ myListService = context.locateService(MyListService.class, "MyNewListService");
+ myListServiceByYear = context.locateService(MyListServiceByYear.class, "MyNewListService");
+ }
+
+ protected void tearDown() throws Exception {
+ SCARuntime.stop();
+ }
+}
diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/test/java/org/apache/tuscany/sca/test/spec/ComponentServiceReferenceTestCase.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/test/java/org/apache/tuscany/sca/test/spec/ComponentServiceReferenceTestCase.java new file mode 100644 index 0000000000..087f77c950 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/test/java/org/apache/tuscany/sca/test/spec/ComponentServiceReferenceTestCase.java @@ -0,0 +1,88 @@ +/*
+ * 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.test.spec;
+
+import java.util.Date;
+
+import junit.framework.TestCase;
+
+import org.apache.tuscany.api.SCARuntime;
+import org.osoa.sca.CompositeContext;
+import org.osoa.sca.CurrentCompositeContext;
+import org.osoa.sca.RequestContext;
+
+public class ComponentServiceReferenceTestCase extends TestCase {
+ private MyTotalService myService;
+ private CompositeContext context;
+
+ public void testDefaultProperty() {
+ assertEquals("NC", myService.getLocation());
+ assertEquals("2007", myService.getYear());
+
+ }
+
+ public void testDefaultService() {
+ assertNotSame(myService.nextHoliday(), myService.nextHolidayByDate(new Date()));
+ assertEquals(myService.getHolidays()[0], myService.getHolidaysByYear(2007)[0]);
+
+ }
+
+ public void testContext() {
+ //FIXME TUSCANY-1174 - Need support for @ComponentName
+ /*
+ assertNotNull("Service component name is null", myService.getComponentName());
+ assertNotNull("service context is null", myService.getContext());
+
+ System.out.println("Service component name :" + myService.getComponentName());
+ System.out.println("service context :" + myService.getContext());
+
+ test(context);
+ */
+ }
+
+ private void test(CompositeContext context) {
+ assertNotNull("composite name is null", context.getName());
+ assertNotNull("composite URI is null", context.getURI());
+
+ System.out.println("composite name :" + context.getName());
+ System.out.println("composite URI:" + context.getURI());
+
+ if (context.getRequestContext() == null)
+ System.out.println("Request context:" + context.getRequestContext());
+ else
+ display(context.getRequestContext());
+ }
+
+ private void display(RequestContext context) {
+ System.out.println("\tService name:" + context.getServiceName());
+ System.out.println("\tSecurity subject:" + context.getSecuritySubject());
+ //System.out.println("\tService reference:" + context.getServiceReference());
+
+ }
+
+ protected void setUp() throws Exception {
+ SCARuntime.start("CompositeTest.composite");
+ context = CurrentCompositeContext.getContext();
+ myService = context.locateService(MyTotalService.class, "MyTotalService");
+ }
+
+ protected void tearDown() throws Exception {
+ SCARuntime.stop();
+ }
+}
diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/test/java/org/apache/tuscany/sca/test/spec/ComponentTestCase.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/test/java/org/apache/tuscany/sca/test/spec/ComponentTestCase.java new file mode 100644 index 0000000000..ca3ed8051d --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/test/java/org/apache/tuscany/sca/test/spec/ComponentTestCase.java @@ -0,0 +1,110 @@ +/*
+ * 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.test.spec;
+
+import java.util.Date;
+
+import junit.framework.TestCase;
+
+import org.apache.tuscany.api.SCARuntime;
+import org.osoa.sca.CompositeContext;
+import org.osoa.sca.CurrentCompositeContext;
+import org.osoa.sca.RequestContext;
+
+public class ComponentTestCase extends TestCase {
+ private MyService myService;
+ private MyServiceByDate myServiceByDate;
+ private MyListService myListService;
+ private MyListServiceByYear myListServiceByYear;
+ private MyService myNCService;
+ private MyListService myListServiceFor2006;
+
+ private CompositeContext context;
+
+ public void testDefaultProperty() {
+ assertEquals("RTP", myService.getLocation());
+ assertEquals("2006", myService.getYear());
+
+ }
+
+ public void testDefaultService() {
+ assertEquals(myService.nextHoliday(), myServiceByDate.nextHolidayByDate(new Date()));
+ assertEquals(myListService.getHolidays()[0], myListServiceByYear.getHolidaysByYear(2006)[0]);
+
+ }
+
+ public void testOverrideProperty() {
+ assertEquals("NC", myNCService.getLocation());
+ assertEquals("2007", myNCService.getYear());
+ }
+
+ public void testServiceWithOverrideProperty() {
+ assertFalse(myNCService.nextHoliday() == myService.nextHoliday());
+ assertEquals(myListServiceFor2006.getHolidays()[0], myListServiceByYear.getHolidaysByYear(2006)[0]);
+
+ }
+
+ public void testContext() {
+ //FIXME TUSCANY-1174 - Need support for @ComponentName
+ /*
+ assertNotNull("Service component name is null", myService.getComponentName());
+ assertNotNull("service context is null", myService.getContext());
+
+ System.out.println("Service component name :" + myService.getComponentName());
+ System.out.println("service context :" + myService.getContext());
+
+ test(context);
+ */
+ }
+
+ private void test(CompositeContext context) {
+ assertNotNull("composite name is null", context.getName());
+ assertNotNull("composite URI is null", context.getURI());
+
+ System.out.println("composite name :" + context.getName());
+ System.out.println("composite URI:" + context.getURI());
+
+ if (context.getRequestContext() == null)
+ System.out.println("Request context:" + context.getRequestContext());
+ else
+ display(context.getRequestContext());
+ }
+
+ private void display(RequestContext context) {
+ System.out.println("\tService name:" + context.getServiceName());
+ System.out.println("\tSecurity subject:" + context.getSecuritySubject());
+ //System.out.println("\tService reference:" + (Object)context.getServiceReference());
+
+ }
+
+ protected void setUp() throws Exception {
+ SCARuntime.start("CompositeTest.composite");
+ context = CurrentCompositeContext.getContext();
+ myService = context.locateService(MyService.class, "MyService");
+ myServiceByDate = context.locateService(MyServiceByDate.class, "MyServiceByDate");
+ myListService = context.locateService(MyListService.class, "MyListService");
+ myListServiceByYear = context.locateService(MyListServiceByYear.class, "MyListServiceByYear");
+ myNCService = context.locateService(MyService.class, "MyNCService");
+ myListServiceFor2006 = context.locateService(MyListService.class, "MyListServiceFor2006");
+ }
+
+ protected void tearDown() throws Exception {
+ SCARuntime.stop();
+ }
+}
diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/test/java/org/apache/tuscany/sca/test/spec/CompositeOneService2LevelTestCase.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/test/java/org/apache/tuscany/sca/test/spec/CompositeOneService2LevelTestCase.java new file mode 100644 index 0000000000..ad89590600 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/test/java/org/apache/tuscany/sca/test/spec/CompositeOneService2LevelTestCase.java @@ -0,0 +1,191 @@ +/*
+ * 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.test.spec;
+
+import junit.extensions.TestSetup;
+import junit.framework.Test;
+import junit.framework.TestCase;
+import junit.framework.TestSuite;
+
+import org.apache.tuscany.api.SCARuntime;
+import org.osoa.sca.CompositeContext;
+import org.osoa.sca.CurrentCompositeContext;
+import org.osoa.sca.RequestContext;
+
+@SuppressWarnings("deprecation")
+public class CompositeOneService2LevelTestCase extends TestCase {
+ private static MyService myService;
+ private static MyService myServiceDefault;
+ private static MyService myServiceNo;
+ private static MyService myServiceMay;
+ private static MyService myServiceMust;
+
+ static private CompositeContext context;
+
+ public static Test suite() {
+
+ TestSuite suite = new TestSuite();
+
+ suite.addTestSuite(CompositeOneService2LevelTestCase.class);
+ TestSetup wrapper = new TestSetup(suite) {
+ public void setUp() {
+ setupStatic();
+ }
+
+ public void tearDown() {
+ tearDownStatic();
+ }
+
+ };
+ return wrapper;
+ }
+
+ public static void setupStatic() {
+ if (null != context)
+ return;
+ SCARuntime.start("CompositeTest.composite");
+ context = CurrentCompositeContext.getContext();
+ assertNotNull(context);
+ myService = context.locateService(MyService.class, "MySimpleServiceInRecursiveComponent/MySimpleService");
+ myServiceDefault = context.locateService(MyService.class, "MySimpleServiceDefault");
+ myServiceNo = context.locateService(MyService.class, "MySimpleServiceNo");
+ myServiceMay = context.locateService(MyService.class, "MySimpleServiceMay");
+ myServiceMust = context.locateService(MyService.class, "MySimpleServiceMust");
+
+ }
+
+ public static void tearDownStatic() {
+ if (context != null) {
+
+ context = null;
+ SCARuntime.stop();
+ }
+ }
+
+ public void setUp() {
+ setupStatic();
+ }
+
+ static Object foo = new Object() {
+ public void finalize() throws Throwable {
+ foo = null;
+ tearDownStatic();
+ }
+
+ };
+
+ public void testPropertyFromComponent() {
+
+ assertNotNull(myService);
+ assertEquals("CARY", myService.getLocation());
+ assertEquals("2007", myService.getYear());
+
+ }
+
+ public void testPropertyFromServiceDefault() {
+
+ assertNotNull(myServiceDefault);
+ assertEquals("CARY", myServiceDefault.getLocation());
+ assertEquals("2007", myServiceDefault.getYear());
+
+ }
+
+ public void testServiceDefault() {
+
+ assertNotNull(myService);
+ assertEquals(myService.nextHoliday(), myServiceDefault.nextHoliday());
+ }
+
+ public void testPropertyFromServiceNo() {
+
+ assertNotNull(myServiceNo);
+ assertEquals("CARY", myServiceNo.getLocation());
+ assertEquals("2007", myServiceNo.getYear());
+
+ }
+
+ public void testServiceNo() {
+
+ assertNotNull(myService);
+ assertEquals(myService.nextHoliday(), myServiceNo.nextHoliday());
+ }
+
+ public void testPropertyFromServiceMay() {
+
+ assertNotNull(myServiceMay);
+ assertEquals("CARY", myServiceMay.getLocation());
+ assertEquals("2007", myServiceMay.getYear());
+
+ }
+
+ public void testServiceMay() {
+
+ assertNotNull(myService);
+ assertEquals(myService.nextHoliday(), myServiceMay.nextHoliday());
+ }
+
+ public void testPropertyFromServiceMust() {
+
+ assertNotNull(myServiceMust);
+ assertEquals("CARY", myServiceMust.getLocation());
+ assertEquals("2007", myServiceMust.getYear());
+
+ }
+
+ public void testServiceMust() {
+
+ assertNotNull(myService);
+ assertEquals(myService.nextHoliday(), myServiceMust.nextHoliday());
+ }
+
+ public void testContext() {
+ // FIXME TUSCANY-1174 - Need support for @ComponentName
+ /*
+ * assertNotNull("Service component name is null",
+ * myService.getComponentName()); assertNotNull("service context is
+ * null", myService.getContext()); System.out.println("Service component
+ * name :" + myService.getComponentName()); System.out.println("service
+ * context :" + myService.getContext()); test(context);
+ */
+ }
+
+ private void test(CompositeContext context) {
+
+ assertNotNull("composite name is null", context.getName());
+ assertNotNull("composite URI is null", context.getURI());
+
+ System.out.println("composite name :" + context.getName());
+ System.out.println("composite URI:" + context.getURI());
+
+ if (context.getRequestContext() == null)
+ System.out.println("Request context:" + context.getRequestContext());
+ else
+ display(context.getRequestContext());
+ }
+
+ private void display(RequestContext context) {
+ System.out.println("\tService name:" + context.getServiceName());
+ System.out.println("\tSecurity subject:" + context.getSecuritySubject());
+ // System.out.println("\tService reference:" +
+ // (Object)context.getServiceReference());
+
+ }
+
+
+}
diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/test/java/org/apache/tuscany/sca/test/spec/CompositeOneServiceTestCase.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/test/java/org/apache/tuscany/sca/test/spec/CompositeOneServiceTestCase.java new file mode 100644 index 0000000000..1b41672700 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/test/java/org/apache/tuscany/sca/test/spec/CompositeOneServiceTestCase.java @@ -0,0 +1,84 @@ +/*
+ * 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.test.spec;
+
+import junit.framework.TestCase;
+
+import org.apache.tuscany.api.SCARuntime;
+import org.osoa.sca.CompositeContext;
+import org.osoa.sca.CurrentCompositeContext;
+import org.osoa.sca.RequestContext;
+
+public class CompositeOneServiceTestCase extends TestCase {
+ private MyService myService;
+ private CompositeContext context;
+
+ public void testOverrideProperty() {
+ assertEquals("CARY", myService.getLocation());
+ assertEquals("2007", myService.getYear());
+
+ }
+
+ public void testDefaultService() {
+ assertNotNull(myService.nextHoliday());
+ }
+
+ public void testContext() {
+ //FIXME TUSCANY-1174 - Need support for @ComponentName
+ /*
+ assertNotNull("Service component name is null", myService.getComponentName());
+ assertNotNull("service context is null", myService.getContext());
+
+ System.out.println("Service component name :" + myService.getComponentName());
+ System.out.println("service context :" + myService.getContext());
+
+ test(context);
+ */
+ }
+
+ private void test(CompositeContext context) {
+ assertNotNull("composite name is null", context.getName());
+ assertNotNull("composite URI is null", context.getURI());
+
+ System.out.println("composite name :" + context.getName());
+ System.out.println("composite URI:" + context.getURI());
+
+ if (context.getRequestContext() == null)
+ System.out.println("Request context:" + context.getRequestContext());
+ else
+ display(context.getRequestContext());
+ }
+
+ private void display(RequestContext context) {
+ System.out.println("\tService name:" + context.getServiceName());
+ System.out.println("\tSecurity subject:" + context.getSecuritySubject());
+ //System.out.println("\tService reference:" + context.getServiceReference());
+
+ }
+
+ protected void setUp() throws Exception {
+ SCARuntime.start("CompositeTest.composite");
+ context = CurrentCompositeContext.getContext();
+ myService = context.locateService(MyService.class, "MySimpleServiceInRecursive");
+ }
+
+ protected void tearDown() throws Exception {
+ SCARuntime.stop();
+ }
+}
diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/test/java/org/apache/tuscany/sca/test/spec/CompositeServiceReferenceForRefOverrideTestCase.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/test/java/org/apache/tuscany/sca/test/spec/CompositeServiceReferenceForRefOverrideTestCase.java new file mode 100644 index 0000000000..7023d7981c --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/test/java/org/apache/tuscany/sca/test/spec/CompositeServiceReferenceForRefOverrideTestCase.java @@ -0,0 +1,83 @@ +/*
+ * 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.test.spec;
+
+import java.util.Date;
+
+import junit.framework.TestCase;
+
+import org.apache.tuscany.api.SCARuntime;
+import org.osoa.sca.CompositeContext;
+import org.osoa.sca.CurrentCompositeContext;
+
+public class CompositeServiceReferenceForRefOverrideTestCase extends TestCase {
+ private MyTotalService myService1;
+ private MyTotalService myService2;
+ private MyTotalService myService3;
+ private CompositeContext context;
+
+ public void testPropertyWithServiceFromReferenceNo() {
+ assertEquals("CARY", myService1.getLocation());
+ assertEquals("2007", myService1.getYear());
+ }
+
+ public void testPropertyWithServiceFromReferenceMay() {
+ assertEquals("CARY", myService2.getLocation());
+ assertEquals("2007", myService2.getYear());
+
+ }
+
+ public void testPropertyWithServiceFromReferenceMust() {
+ assertEquals("CARY", myService3.getLocation());
+ assertEquals("2007", myService3.getYear());
+ }
+
+ public void testServiceFromReferenceNo() {
+ System.out.println("nextHolday()" + myService1.nextHoliday());
+ System.out.println("nextHolday(Date)" + myService1.nextHolidayByDate(new Date()));
+ System.out.println("myService1.getHolidays()[0]" + myService1.getHolidays()[0]);
+ System.out.println("myService1.getHolidays(2007)[0]" + myService1.getHolidaysByYear(2007)[0]);
+ assertNotSame(myService1.nextHoliday(), myService1.nextHolidayByDate(new Date()));
+ assertEquals(myService1.getHolidays()[0], myService1.getHolidaysByYear(2007)[0]);
+ }
+
+ public void testServiceFromReferenceMay() {
+ assertEquals(myService2.getHolidays()[0], myService2.getHolidaysByYear(2007)[0]);
+ assertNotSame(myService2.nextHoliday(), myService2.nextHolidayByDate(new Date()));
+
+ }
+
+ public void testServiceFromReferenceMust() {
+ assertEquals(myService3.getHolidays()[0], myService3.getHolidaysByYear(2007)[0]);
+ assertNotSame(myService3.nextHoliday(), myService3.nextHolidayByDate(new Date()));
+
+ }
+
+ protected void setUp() throws Exception {
+ SCARuntime.start("CompositeTest.composite");
+ context = CurrentCompositeContext.getContext();
+ myService1 = context.locateService(MyTotalService.class, "MyTotalServiceNo");
+ myService2 = context.locateService(MyTotalService.class, "MyTotalServiceMay");
+ myService3 = context.locateService(MyTotalService.class, "MyTotalServiceMust");
+ }
+
+ protected void tearDown() throws Exception {
+ SCARuntime.stop();
+ }
+}
diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/test/java/org/apache/tuscany/sca/test/spec/CompositeServiceReferenceTestCase.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/test/java/org/apache/tuscany/sca/test/spec/CompositeServiceReferenceTestCase.java new file mode 100644 index 0000000000..6128d108ba --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/test/java/org/apache/tuscany/sca/test/spec/CompositeServiceReferenceTestCase.java @@ -0,0 +1,95 @@ +/*
+ * 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.test.spec;
+
+import java.util.Date;
+
+import junit.framework.TestCase;
+
+import org.apache.tuscany.api.SCARuntime;
+import org.osoa.sca.CompositeContext;
+import org.osoa.sca.CurrentCompositeContext;
+
+public class CompositeServiceReferenceTestCase extends TestCase {
+ private MyTotalService myService1;
+ private MyTotalService myService2;
+ private MyTotalService myService3;
+ private MyTotalService myService4;
+ private MyTotalService myService5;
+ private CompositeContext context;
+
+ public void testPropertyWithServiceFromRecursive() {
+ assertEquals("CARY", myService1.getLocation());
+ assertEquals("2007", myService1.getYear());
+ }
+
+ public void testPropertyWithServiceInCompositeFromRecursive() {
+ assertEquals("CARY", myService2.getLocation());
+ assertEquals("2007", myService2.getYear());
+
+ }
+
+ public void testPropertyWithServiceInCompositeFromComponent() {
+ assertEquals("CARY", myService3.getLocation());
+ assertEquals("2007", myService3.getYear());
+ }
+
+ public void testServiceFromRecursive() {
+ assertNotSame(myService1.nextHoliday(), myService1.nextHolidayByDate(new Date()));
+ assertEquals(myService1.getHolidays()[0], myService1.getHolidaysByYear(2007)[0]);
+
+ }
+
+ public void testServiceReferenceFromRecursive() {
+ assertEquals(myService2.getHolidays()[0], myService2.getHolidaysByYear(2007)[0]);
+ assertNotSame(myService2.nextHoliday(), myService2.nextHolidayByDate(new Date()));
+
+ }
+
+ public void testServiceReferenceFromRecursiveUseService() {
+ assertNotSame(myService4.nextHoliday(), myService4.nextHolidayByDate(new Date()));
+ assertEquals(myService4.getHolidays()[0], myService4.getHolidaysByYear(2007)[0]);
+ }
+
+ public void testServiceReferenceFromComponent() {
+ assertEquals(myService3.getHolidays()[0], myService3.getHolidaysByYear(2007)[0]);
+ assertNotSame(myService3.nextHoliday(), myService3.nextHolidayByDate(new Date()));
+
+ }
+
+ public void testServiceReferenceFromComponentUseService() {
+ assertNotSame(myService5.nextHoliday(), myService5.nextHolidayByDate(new Date()));
+ assertEquals(myService5.getHolidays()[0], myService5.getHolidaysByYear(2007)[0]);
+ }
+
+ protected void setUp() throws Exception {
+ SCARuntime.start("CompositeTest.composite");
+ context = CurrentCompositeContext.getContext();
+ myService1 = context.locateService(MyTotalService.class, "MyTotalServiceFromRecursive");
+ myService2 = context.locateService(MyTotalService.class, "MyTotalServiceInCompositeWithRecursive");
+ myService3 = context.locateService(MyTotalService.class, "MyTotalServiceInCompositeWithComponentService");
+ myService4 = context.locateService(MyTotalService.class, "MyTotalServiceInCompositeWithRecursiveUseService");
+ myService5 =
+ context.locateService(MyTotalService.class, "MyTotalServiceInCompositeWithComponentServiceUseService");
+ }
+
+ protected void tearDown() throws Exception {
+ SCARuntime.stop();
+ }
+}
diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/test/java/org/apache/tuscany/sca/test/spec/CompositeTestCase.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/test/java/org/apache/tuscany/sca/test/spec/CompositeTestCase.java new file mode 100644 index 0000000000..7c50a90e60 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/spec/src/test/java/org/apache/tuscany/sca/test/spec/CompositeTestCase.java @@ -0,0 +1,96 @@ +/*
+ * 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.test.spec;
+
+import java.util.Date;
+
+import junit.framework.TestCase;
+
+import org.apache.tuscany.api.SCARuntime;
+import org.osoa.sca.CompositeContext;
+import org.osoa.sca.CurrentCompositeContext;
+import org.osoa.sca.RequestContext;
+
+public class CompositeTestCase extends TestCase {
+ private MyService myService;
+ private MyServiceByDate myServiceByDate;
+ private MyListService myListService;
+ private MyListServiceByYear myListServiceByYear;
+
+ private CompositeContext context;
+
+ public void testOverrideProperty() {
+ assertEquals("CARY", myService.getLocation());
+ assertEquals("2007", myService.getYear());
+
+ }
+
+ public void testDefaultService() {
+ assertEquals(myService.nextHoliday(), myServiceByDate.nextHolidayByDate(new Date()));
+ assertEquals(myListService.getHolidays()[0], myListServiceByYear.getHolidaysByYear(2007)[0]);
+
+ }
+
+ public void testContext() {
+ //FIXME TUSCANY-1174 - Need support for @ComponentName
+ /*
+ assertNotNull("Service component name is null", myService.getComponentName());
+ assertNotNull("service context is null", myService.getContext());
+
+ System.out.println("Service component name :" + myService.getComponentName());
+ System.out.println("service context :" + myService.getContext());
+
+ test(context);
+ */
+ }
+
+ private void test(CompositeContext context) {
+ assertNotNull("composite name is null", context.getName());
+ assertNotNull("composite URI is null", context.getURI());
+
+ System.out.println("composite name :" + context.getName());
+ System.out.println("composite URI:" + context.getURI());
+
+ if (context.getRequestContext() == null)
+ System.out.println("Request context:" + context.getRequestContext());
+ else
+ display(context.getRequestContext());
+ }
+
+ private void display(RequestContext context) {
+ System.out.println("\tService name:" + context.getServiceName());
+ System.out.println("\tSecurity subject:" + context.getSecuritySubject());
+ //System.out.println("\tService reference:" + (Object)context.getServiceReference());
+
+ }
+
+ protected void setUp() throws Exception {
+ SCARuntime.start("CompositeTest.composite");
+ context = CurrentCompositeContext.getContext();
+ myService = context.locateService(MyService.class, "MyServiceInRecursiveMyService");
+ myServiceByDate = context.locateService(MyServiceByDate.class, "MyServiceInRecursiveMyServiceByDate");
+ myListService = context.locateService(MyListService.class, "MyServiceInRecursiveMyListService");
+ myListServiceByYear =
+ context.locateService(MyListServiceByYear.class, "MyServiceInRecursiveMyListServiceByYear");
+ }
+
+ protected void tearDown() throws Exception {
+ SCARuntime.stop();
+ }
+}
diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/pom.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/pom.xml new file mode 100644 index 0000000000..49e697a0c2 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/pom.xml @@ -0,0 +1,135 @@ +<?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> + <parent> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>sca-itest</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + <relativePath>../pom.xml</relativePath> + </parent> + + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>iTest-wsdl</artifactId> + <version>${testing.version}</version> + <packaging>jar</packaging> + <name>Test Suite for SCA WSDL IDL</name> + + <dependencies> + <dependency> + <groupId>org.apache.tuscany.sca.kernel</groupId> + <artifactId>tuscany-api</artifactId> + <scope>compile</scope> + <version>0.1-integration-incubating-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.apache.tuscany.sca.kernel</groupId> + <artifactId>tuscany-core</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + <scope>runtime</scope> + </dependency> + <dependency> + <groupId>org.apache.tuscany.sca.services.idl</groupId> + <artifactId>tuscany-wsdl</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + <scope>runtime</scope> + </dependency> + <dependency> + <groupId>org.apache.tuscany.sca.extensions.axis2</groupId> + <artifactId>tuscany-axis2</artifactId> + <scope>runtime</scope> + <version>0.1-integration-incubating-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.apache.tuscany.sca.services</groupId> + <artifactId>tuscany-http-jetty</artifactId> + <scope>runtime</scope> + <version>0.1-integration-incubating-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.apache.tuscany.sdo</groupId> + <artifactId>tuscany-sdo-impl</artifactId> + <version>${sdo.version}</version> + <scope>compile</scope> + </dependency> + <dependency> + <groupId>org.apache.tuscany.sca.services.databinding</groupId> + <artifactId>databinding-sdo</artifactId> + <version>${scaKernelVersion}</version> + </dependency> + <dependency> + <groupId>org.apache.tuscany.sca.extensions.axis2</groupId> + <artifactId>databinding-axiom</artifactId> + <version>${scaKernelVersion}</version> + </dependency> + <dependency> + <groupId>junit</groupId> + <artifactId>junit</artifactId> + <version>4.2</version> + <scope>test</scope> + </dependency> + </dependencies> + + <build> + <plugins> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>build-helper-maven-plugin</artifactId> + <version>1.0</version> + <executions> + <execution> + <id>add-source</id> + <phase>generate-sources</phase> + <goals> + <goal>add-source</goal> + </goals> + <configuration> + <sources> + <source>target/sdo-source</source> + </sources> + </configuration> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.apache.tuscany.sdo</groupId> + <artifactId>tuscany-sdo-plugin</artifactId> + <version>1.0-incubator-SNAPSHOT</version> + <executions> + <execution> + <id>generate-sdo</id> + <phase>generate-sources</phase> + <configuration> + <schemaFile>${basedir}/src/main/resources/wsdl/AccountService.wsdl</schemaFile> + <javaPackage>com.bigbank.account</javaPackage> + <prefix>Account</prefix> + <noNotification>true</noNotification> + <noContainer>true</noContainer> + <noUnsettable>true</noUnsettable> + </configuration> + <goals> + <goal>generate</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> +</project> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/bigbank/account/services/accountdata/AccountDataService.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/bigbank/account/services/accountdata/AccountDataService.java new file mode 100644 index 0000000000..501d43734c --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/bigbank/account/services/accountdata/AccountDataService.java @@ -0,0 +1,95 @@ +/* + * 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 bigbank.account.services.accountdata; + +import org.apache.tuscany.api.annotation.DataType; +import org.osoa.sca.annotations.AllowsPassByReference; +import org.osoa.sca.annotations.Remotable; + +@Remotable +@DataType(name="commonj.sdo.DataObject") +@AllowsPassByReference +public interface AccountDataService { + + /** + * Auto generated method signatures + * + * @param param0* + * @param param1* + * @param param2 + */ + public com.bigbank.account.StockSummary purchaseStock(int param0, com.bigbank.account.StockSummary parm1) throws java.rmi.RemoteException; + + /** + * Auto generated method signatures + * + * @param param4 + */ + public com.bigbank.account.CustomerProfileData getCustomerProfile(java.lang.String param4) throws java.rmi.RemoteException; + + /** + * Auto generated method signatures + * + * @param param6* + * @param param7 + */ + public float deposit(java.lang.String param6, float param7) throws java.rmi.RemoteException; + + /** + * Auto generated method signatures + * + * @param param9* + * @param param10* + * @param param11 + */ + @DataType(name = "commonj.sdo.DataObject") + public com.bigbank.account.CustomerProfileData createAccount(com.bigbank.account.CustomerProfileData param9, boolean param10, boolean param11) + throws java.rmi.RemoteException; + + /** + * Auto generated method signatures + * + * @param param13* + * @param param14 + */ + public com.bigbank.account.StockSummary sellStock(int param13, int param14) throws java.rmi.RemoteException; + + /** + * Auto generated method signatures + * + * @param param16* + * @param param17 + */ + public float withdraw(java.lang.String param16, float param17) throws java.rmi.RemoteException; + + /** + * Auto generated method signatures + * + * @param param19 + */ + public com.bigbank.account.AccountReport getAccountReport(int param19) throws java.rmi.RemoteException; + + /** + * Auto generated method signatures + * + * @param param0 + */ + public com.bigbank.account.AccountLog getAccountLog(int param0) throws java.rmi.RemoteException; + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/bigbank/account/services/accountdata/AccountDataServiceImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/bigbank/account/services/accountdata/AccountDataServiceImpl.java new file mode 100644 index 0000000000..32f77eb61a --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/bigbank/account/services/accountdata/AccountDataServiceImpl.java @@ -0,0 +1,80 @@ +/* + * 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 bigbank.account.services.accountdata; + +import java.rmi.RemoteException; + +import org.osoa.sca.annotations.Service; + +import com.bigbank.account.AccountFactory; +import com.bigbank.account.AccountLog; +import com.bigbank.account.AccountReport; +import com.bigbank.account.CustomerProfileData; +import com.bigbank.account.StockSummary; + +@Service(AccountDataService.class) +public class AccountDataServiceImpl implements AccountDataService { + + public CustomerProfileData getCustomerProfile(String logonID) throws RemoteException { + // TODO Auto-generated method stub + return null; + } + + public AccountReport getAccountReport(int customerID) { + // TODO Auto-generated method stub + return null; + } + + public CustomerProfileData createAccount(CustomerProfileData customerProfile, boolean createSavings, boolean createCheckings) + throws RemoteException { + CustomerProfileData data = AccountFactory.INSTANCE.createCustomerProfileData(); + data.setLoginID(customerProfile.getLoginID()); + data.setAddress(customerProfile.getAddress()); + data.setEmail(customerProfile.getEmail()); + data.setFirstName(customerProfile.getFirstName()); + data.setId(customerProfile.getId()); + data.setLastName(customerProfile.getLastName()); + data.setPassword(customerProfile.getPassword()); + return data; + } + + public float deposit(String param6, float param7) throws RemoteException { + // TODO Auto-generated method stub + return 0; + } + + public StockSummary purchaseStock(int param0, StockSummary stock) throws RemoteException { + // TODO Auto-generated method stub + return null; + } + + public StockSummary sellStock(int param13, int param14) throws RemoteException { + // TODO Auto-generated method stub + return null; + } + + public float withdraw(String param16, float param17) throws RemoteException { + // TODO Auto-generated method stub + return 0; + } + + public AccountLog getAccountLog(final int customerID) throws RemoteException { + throw new RemoteException("This method should not be called"); + } +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/bigbank/account/services/accountdata/AccountServiceClientImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/bigbank/account/services/accountdata/AccountServiceClientImpl.java new file mode 100644 index 0000000000..d53b26cd04 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/bigbank/account/services/accountdata/AccountServiceClientImpl.java @@ -0,0 +1,80 @@ +/* + * 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 bigbank.account.services.accountdata; + +import java.rmi.RemoteException; + +import org.apache.tuscany.api.annotation.DataType; +import org.osoa.sca.annotations.Reference; + +import com.bigbank.account.AccountLog; +import com.bigbank.account.AccountReport; +import com.bigbank.account.CustomerProfileData; +import com.bigbank.account.StockSummary; + +public class AccountServiceClientImpl implements AccountDataService { + + AccountDataService accountService; + + @Reference + public void setAccountService(AccountDataService accountService) { + this.accountService = accountService; + } + + public CustomerProfileData createAccount(CustomerProfileData param9, boolean param10, boolean param11) throws RemoteException { + return accountService.createAccount(param9, param10, param11); + } + + public float deposit(String param6, float param7) throws RemoteException { + // TODO Auto-generated method stub + return 0; + } + + public AccountLog getAccountLog(int param0) throws RemoteException { + // TODO Auto-generated method stub + return null; + } + + public AccountReport getAccountReport(int param19) throws RemoteException { + // TODO Auto-generated method stub + return null; + } + + public CustomerProfileData getCustomerProfile(String param4) throws RemoteException { + // TODO Auto-generated method stub + return null; + } + + public StockSummary purchaseStock(int param0, StockSummary parm1) throws RemoteException { + // TODO Auto-generated method stub + return null; + } + + public StockSummary sellStock(int param13, int param14) throws RemoteException { + // TODO Auto-generated method stub + return null; + } + + public float withdraw(String param16, float param17) throws RemoteException { + // TODO Auto-generated method stub + return 0; + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/bigbank/account/services/accountdata/Component2aImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/bigbank/account/services/accountdata/Component2aImpl.java new file mode 100644 index 0000000000..b60b2b9b7b --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/bigbank/account/services/accountdata/Component2aImpl.java @@ -0,0 +1,80 @@ +/* + * 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 bigbank.account.services.accountdata; + +import java.rmi.RemoteException; + +import org.apache.tuscany.api.annotation.DataType; +import org.osoa.sca.annotations.Reference; + +import com.bigbank.account.AccountLog; +import com.bigbank.account.AccountReport; +import com.bigbank.account.CustomerProfileData; +import com.bigbank.account.StockSummary; + +public class Component2aImpl implements AccountDataService { + + AccountDataService accountService; + + @Reference + public void setAccountService(AccountDataService accountService) { + this.accountService = accountService; + } + + public CustomerProfileData createAccount(CustomerProfileData param9, boolean param10, boolean param11) throws RemoteException { + return accountService.createAccount(param9, param10, param11); + } + + public float deposit(String param6, float param7) throws RemoteException { + // TODO Auto-generated method stub + return 0; + } + + public AccountLog getAccountLog(int param0) throws RemoteException { + // TODO Auto-generated method stub + return null; + } + + public AccountReport getAccountReport(int param19) throws RemoteException { + // TODO Auto-generated method stub + return null; + } + + public CustomerProfileData getCustomerProfile(String param4) throws RemoteException { + // TODO Auto-generated method stub + return null; + } + + public StockSummary purchaseStock(int param0, StockSummary parm1) throws RemoteException { + // TODO Auto-generated method stub + return null; + } + + public StockSummary sellStock(int param13, int param14) throws RemoteException { + // TODO Auto-generated method stub + return null; + } + + public float withdraw(String param16, float param17) throws RemoteException { + // TODO Auto-generated method stub + return 0; + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/bigbank/account/services/accountdata/Component2bImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/bigbank/account/services/accountdata/Component2bImpl.java new file mode 100644 index 0000000000..0898bbf7a5 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/bigbank/account/services/accountdata/Component2bImpl.java @@ -0,0 +1,80 @@ +/* + * 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 bigbank.account.services.accountdata; + +import java.rmi.RemoteException; + +import org.apache.tuscany.api.annotation.DataType; +import org.osoa.sca.annotations.Reference; + +import com.bigbank.account.AccountLog; +import com.bigbank.account.AccountReport; +import com.bigbank.account.CustomerProfileData; +import com.bigbank.account.StockSummary; + +public class Component2bImpl implements AccountDataService { + + AccountDataService accountService; + + @Reference + public void setAccountService(AccountDataService accountService) { + this.accountService = accountService; + } + + public CustomerProfileData createAccount(CustomerProfileData param9, boolean param10, boolean param11) throws RemoteException { + return accountService.createAccount(param9, param10, param11); + } + + public float deposit(String param6, float param7) throws RemoteException { + // TODO Auto-generated method stub + return 0; + } + + public AccountLog getAccountLog(int param0) throws RemoteException { + // TODO Auto-generated method stub + return null; + } + + public AccountReport getAccountReport(int param19) throws RemoteException { + // TODO Auto-generated method stub + return null; + } + + public CustomerProfileData getCustomerProfile(String param4) throws RemoteException { + // TODO Auto-generated method stub + return null; + } + + public StockSummary purchaseStock(int param0, StockSummary parm1) throws RemoteException { + // TODO Auto-generated method stub + return null; + } + + public StockSummary sellStock(int param13, int param14) throws RemoteException { + // TODO Auto-generated method stub + return null; + } + + public float withdraw(String param16, float param17) throws RemoteException { + // TODO Auto-generated method stub + return 0; + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/bigbank/account/services/accountdata/Component3aImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/bigbank/account/services/accountdata/Component3aImpl.java new file mode 100644 index 0000000000..6073ce75b1 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/bigbank/account/services/accountdata/Component3aImpl.java @@ -0,0 +1,80 @@ +/* + * 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 bigbank.account.services.accountdata; + +import java.rmi.RemoteException; + +import org.apache.tuscany.api.annotation.DataType; +import org.osoa.sca.annotations.Reference; + +import com.bigbank.account.AccountLog; +import com.bigbank.account.AccountReport; +import com.bigbank.account.CustomerProfileData; +import com.bigbank.account.StockSummary; + +public class Component3aImpl implements AccountDataService { + + AccountDataService accountService; + + @Reference + public void setAccountService(AccountDataService accountService) { + this.accountService = accountService; + } + + public CustomerProfileData createAccount(CustomerProfileData param9, boolean param10, boolean param11) throws RemoteException { + return accountService.createAccount(param9, param10, param11); + } + + public float deposit(String param6, float param7) throws RemoteException { + // TODO Auto-generated method stub + return 0; + } + + public AccountLog getAccountLog(int param0) throws RemoteException { + // TODO Auto-generated method stub + return null; + } + + public AccountReport getAccountReport(int param19) throws RemoteException { + // TODO Auto-generated method stub + return null; + } + + public CustomerProfileData getCustomerProfile(String param4) throws RemoteException { + // TODO Auto-generated method stub + return null; + } + + public StockSummary purchaseStock(int param0, StockSummary parm1) throws RemoteException { + // TODO Auto-generated method stub + return null; + } + + public StockSummary sellStock(int param13, int param14) throws RemoteException { + // TODO Auto-generated method stub + return null; + } + + public float withdraw(String param16, float param17) throws RemoteException { + // TODO Auto-generated method stub + return 0; + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/bigbank/account/services/accountdata/Component3bImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/bigbank/account/services/accountdata/Component3bImpl.java new file mode 100644 index 0000000000..81d6e0a5f6 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/bigbank/account/services/accountdata/Component3bImpl.java @@ -0,0 +1,80 @@ +/* + * 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 bigbank.account.services.accountdata; + +import java.rmi.RemoteException; + +import org.apache.tuscany.api.annotation.DataType; +import org.osoa.sca.annotations.Reference; + +import com.bigbank.account.AccountLog; +import com.bigbank.account.AccountReport; +import com.bigbank.account.CustomerProfileData; +import com.bigbank.account.StockSummary; + +public class Component3bImpl implements AccountDataService { + + AccountDataService accountService; + + @Reference + public void setAccountService(AccountDataService accountService) { + this.accountService = accountService; + } + + public CustomerProfileData createAccount(CustomerProfileData param9, boolean param10, boolean param11) throws RemoteException { + return accountService.createAccount(param9, param10, param11); + } + + public float deposit(String param6, float param7) throws RemoteException { + // TODO Auto-generated method stub + return 0; + } + + public AccountLog getAccountLog(int param0) throws RemoteException { + // TODO Auto-generated method stub + return null; + } + + public AccountReport getAccountReport(int param19) throws RemoteException { + // TODO Auto-generated method stub + return null; + } + + public CustomerProfileData getCustomerProfile(String param4) throws RemoteException { + // TODO Auto-generated method stub + return null; + } + + public StockSummary purchaseStock(int param0, StockSummary parm1) throws RemoteException { + // TODO Auto-generated method stub + return null; + } + + public StockSummary sellStock(int param13, int param14) throws RemoteException { + // TODO Auto-generated method stub + return null; + } + + public float withdraw(String param16, float param17) throws RemoteException { + // TODO Auto-generated method stub + return 0; + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/bigbank/account/services/accountdata/CustomerIdService.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/bigbank/account/services/accountdata/CustomerIdService.java new file mode 100644 index 0000000000..e747eb041f --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/bigbank/account/services/accountdata/CustomerIdService.java @@ -0,0 +1,98 @@ +/* + * 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 bigbank.account.services.accountdata; + +import java.rmi.RemoteException; + +/** + * This interface allows access to a customer's id from the data service. + */ +public interface CustomerIdService { + + /* + * Return -1 if purchaseLotNumber not found + */ + public int getCustomerIdByPurchaseLotNumber(int purchaseLotNumber) throws RemoteException; + + /* + * Return -1 if account not found + */ + public int getCustomerIdByAccount(String account) throws RemoteException; + + // TODO (isilval) Fix this !!! + // Apparently, configuration can't deal with extends so I am adding the contents of AccountDataService here + + /** + * Auto generated method signatures + * + * @param param0* + * @param param1* + * @param param2 + */ + public com.bigbank.account.StockSummary purchaseStock(int param0, com.bigbank.account.StockSummary parm1) throws java.rmi.RemoteException; + + /** + * Auto generated method signatures + * + * @param param4 + */ + public com.bigbank.account.CustomerProfileData getCustomerProfile(java.lang.String param4) throws java.rmi.RemoteException; + + /** + * Auto generated method signatures + * + * @param param6* + * @param param7 + */ + public float deposit(java.lang.String param6, float param7) throws java.rmi.RemoteException; + + /** + * Auto generated method signatures + * + * @param param9* + * @param param10* + * @param param11 + */ + public com.bigbank.account.CustomerProfileData createAccount(com.bigbank.account.CustomerProfileData param9, boolean param10, boolean param11) + throws java.rmi.RemoteException; + + /** + * Auto generated method signatures + * + * @param param13* + * @param param14 + */ + public com.bigbank.account.StockSummary sellStock(int param13, int param14) throws java.rmi.RemoteException; + + /** + * Auto generated method signatures + * + * @param param16* + * @param param17 + */ + public float withdraw(java.lang.String param16, float param17) throws java.rmi.RemoteException; + + /** + * Auto generated method signatures + * + * @param param19 + */ + public com.bigbank.account.AccountReport getAccountReport(int param19) throws java.rmi.RemoteException; + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/helloworld/HelloWorldImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/helloworld/HelloWorldImpl.java new file mode 100644 index 0000000000..c9076ebba6 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/helloworld/HelloWorldImpl.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 helloworld; + +import org.osoa.sca.annotations.Service; + +/** + * This class implements the HelloWorld service. + */ +@Service(HelloWorldService.class) +public class HelloWorldImpl implements HelloWorldService { + + public String getGreetings(String name) { + return "Hi " + name; + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/helloworld/HelloWorldService.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/helloworld/HelloWorldService.java new file mode 100644 index 0000000000..bd527ff8e2 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/helloworld/HelloWorldService.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 helloworld; + +import org.osoa.sca.annotations.Remotable; +import org.osoa.sca.annotations.Service; + +/** + * This is the business interface of the HelloWorld greetings service. + */ +@Remotable +@Service +public interface HelloWorldService { + + public String getGreetings(String name); +} + diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/helloworld/HelloWorldServiceComponent.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/helloworld/HelloWorldServiceComponent.java new file mode 100644 index 0000000000..d706517b76 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/helloworld/HelloWorldServiceComponent.java @@ -0,0 +1,43 @@ +/* + * 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 helloworld; + +import org.osoa.sca.annotations.Scope; + +/** + * This client program shows how to create an SCA runtime, start it, + * locate the HelloWorld service and invoke it. + */ +@Scope("COMPOSITE") +public class HelloWorldServiceComponent implements HelloWorldService { + + HelloWorldService helloWorldService; + + public String getGreetings(String name) { + return helloWorldService.getGreetings(name); + } + + public HelloWorldService getHelloWorldService() { + return helloWorldService; + } + + public void setHelloWorldService(HelloWorldService helloWorldService) { + this.helloWorldService = helloWorldService; + } +}
\ No newline at end of file diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/org/apache/tuscany/sca/itest/Component2aImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/org/apache/tuscany/sca/itest/Component2aImpl.java new file mode 100644 index 0000000000..9d147dc013 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/org/apache/tuscany/sca/itest/Component2aImpl.java @@ -0,0 +1,38 @@ +/* + * 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.itest; + +import helloworld.HelloWorldService; + +import org.osoa.sca.annotations.Reference; + +public class Component2aImpl implements HelloWorldService { + + private HelloWorldService comp; + + @Reference + public void setComp(HelloWorldService comp) { + this.comp = comp; + } + public String getGreetings(String s) { + return comp.getGreetings(s); + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/org/apache/tuscany/sca/itest/Component2bImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/org/apache/tuscany/sca/itest/Component2bImpl.java new file mode 100644 index 0000000000..7556e02b36 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/org/apache/tuscany/sca/itest/Component2bImpl.java @@ -0,0 +1,39 @@ +/* + * 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.itest; + +import helloworld.HelloWorldService; + +import org.osoa.sca.annotations.Reference; + +public class Component2bImpl implements HelloWorldService { + + private HelloWorldService comp; + + @Reference + public void setComp(HelloWorldService comp) { + this.comp = comp; + } + + public String getGreetings(String s) { + return comp.getGreetings(s); + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/org/apache/tuscany/sca/itest/Component3aImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/org/apache/tuscany/sca/itest/Component3aImpl.java new file mode 100644 index 0000000000..e7031ff41c --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/org/apache/tuscany/sca/itest/Component3aImpl.java @@ -0,0 +1,39 @@ +/* + * 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.itest; + +import helloworld.HelloWorldService; + +import org.osoa.sca.annotations.Reference; + +public class Component3aImpl implements HelloWorldService { + + private HelloWorldService comp; + + @Reference + public void setComp(HelloWorldService comp) { + this.comp = comp; + } + + public String getGreetings(String s) { + return comp.getGreetings(s); + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/org/apache/tuscany/sca/itest/Component3bImpl.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/org/apache/tuscany/sca/itest/Component3bImpl.java new file mode 100644 index 0000000000..7a049ed7b0 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/java/org/apache/tuscany/sca/itest/Component3bImpl.java @@ -0,0 +1,39 @@ +/* + * 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.itest; + +import helloworld.HelloWorldService; + +import org.osoa.sca.annotations.Reference; + +public class Component3bImpl implements HelloWorldService { + + private HelloWorldService comp; + + @Reference + public void setComp(HelloWorldService comp) { + this.comp = comp; + } + + public String getGreetings(String s) { + return comp.getGreetings(s); + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/SDOWSDLTest.composite b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/SDOWSDLTest.composite new file mode 100644 index 0000000000..b56d120acf --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/SDOWSDLTest.composite @@ -0,0 +1,402 @@ +<?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" xmlns:wsdli="http://www.w3.org/2006/01/wsdl-instance" name="SDOWSDLTest"> + + <dbsdo:import.sdo xmlns:dbsdo="http://tuscany.apache.org/xmlns/sca/databinding/sdo/1.0" + factory="com.bigbank.account.AccountFactory" /> + + <service name="AccountService1a2a3a4a"> + <interface.java interface="bigbank.account.services.accountdata.AccountDataService" /> + <binding.ws endpoint="http://www.bigbank.com/account#wsdl.endpoint(AccountService/AccountServiceSOAP)" + conformanceURIs="http://ws-i.org/profiles/basic/1.1" location="wsdl/AccountService.wsdl" /> + <reference>Component2a3a4a</reference> + </service> + <service name="AccountService1a2a3a4b"> + <interface.java interface="bigbank.account.services.accountdata.AccountDataService" /> + <binding.ws endpoint="http://www.bigbank.com/account#wsdl.endpoint(AccountService/AccountServiceSOAP)" + conformanceURIs="http://ws-i.org/profiles/basic/1.1" location="wsdl/AccountService.wsdl" /> + <reference>Component2a3a4b</reference> + </service> + <service name="AccountService1a2a3b4a"> + <interface.java interface="bigbank.account.services.accountdata.AccountDataService" /> + <binding.ws endpoint="http://www.bigbank.com/account#wsdl.endpoint(AccountService/AccountServiceSOAP)" + conformanceURIs="http://ws-i.org/profiles/basic/1.1" location="wsdl/AccountService.wsdl" /> + <reference>Component2a3b4a</reference> + </service> + <service name="AccountService1a2a3b4b"> + <interface.java interface="bigbank.account.services.accountdata.AccountDataService" /> + <binding.ws endpoint="http://www.bigbank.com/account#wsdl.endpoint(AccountService/AccountServiceSOAP)" + conformanceURIs="http://ws-i.org/profiles/basic/1.1" location="wsdl/AccountService.wsdl" /> + <reference>Component2a3b4b</reference> + </service> + <service name="AccountService1a2b3a4a"> + <interface.java interface="bigbank.account.services.accountdata.AccountDataService" /> + <binding.ws endpoint="http://www.bigbank.com/account#wsdl.endpoint(AccountService/AccountServiceSOAP)" + conformanceURIs="http://ws-i.org/profiles/basic/1.1" location="wsdl/AccountService.wsdl" /> + <reference>Component2b3a4a</reference> + </service> + <service name="AccountService1a2b3a4b"> + <interface.java interface="bigbank.account.services.accountdata.AccountDataService" /> + <binding.ws endpoint="http://www.bigbank.com/account#wsdl.endpoint(AccountService/AccountServiceSOAP)" + conformanceURIs="http://ws-i.org/profiles/basic/1.1" location="wsdl/AccountService.wsdl" /> + <reference>Component2b3a4b</reference> + </service> + <service name="AccountService1a2b3b4a"> + <interface.java interface="bigbank.account.services.accountdata.AccountDataService" /> + <binding.ws endpoint="http://www.bigbank.com/account#wsdl.endpoint(AccountService/AccountServiceSOAP)" + conformanceURIs="http://ws-i.org/profiles/basic/1.1" location="wsdl/AccountService.wsdl" /> + <reference>Component2b3b4a</reference> + </service> + <service name="AccountService1a2b3b4b"> + <interface.java interface="bigbank.account.services.accountdata.AccountDataService" /> + <binding.ws endpoint="http://www.bigbank.com/account#wsdl.endpoint(AccountService/AccountServiceSOAP)" + conformanceURIs="http://ws-i.org/profiles/basic/1.1" location="wsdl/AccountService.wsdl" /> + <reference>Component2b3b4b</reference> + </service> + <service name="AccountService1b2a3a4a"> + <interface.wsdl interface="http://www.bigbank.com/account#wsdl.interface(AccountService)" + wsdli:wsdlLocation="http://www.bigbank.com/account wsdl/AccountService.wsdl" /> + <binding.ws endpoint="http://www.bigbank.com/account#wsdl.endpoint(AccountService/AccountServiceSOAP)" + conformanceURIs="http://ws-i.org/profiles/basic/1.1" location="wsdl/AccountService.wsdl" /> + <reference>Component2a3a4a</reference> + </service> + <service name="AccountService1b2a3a4b"> + <interface.wsdl interface="http://www.bigbank.com/account#wsdl.interface(AccountService)" + wsdli:wsdlLocation="http://www.bigbank.com/account wsdl/AccountService.wsdl" /> + <binding.ws endpoint="http://www.bigbank.com/account#wsdl.endpoint(AccountService/AccountServiceSOAP)" + conformanceURIs="http://ws-i.org/profiles/basic/1.1" location="wsdl/AccountService.wsdl" /> + <reference>Component2a3a4b</reference> + </service> + <service name="AccountService1b2a3b4a"> + <interface.wsdl interface="http://www.bigbank.com/account#wsdl.interface(AccountService)" + wsdli:wsdlLocation="http://www.bigbank.com/account wsdl/AccountService.wsdl" /> + <binding.ws endpoint="http://www.bigbank.com/account#wsdl.endpoint(AccountService/AccountServiceSOAP)" + conformanceURIs="http://ws-i.org/profiles/basic/1.1" location="wsdl/AccountService.wsdl" /> + <reference>Component2a3b4a</reference> + </service> + <service name="AccountService1b2a3b4b"> + <interface.wsdl interface="http://www.bigbank.com/account#wsdl.interface(AccountService)" + wsdli:wsdlLocation="http://www.bigbank.com/account wsdl/AccountService.wsdl" /> + <binding.ws endpoint="http://www.bigbank.com/account#wsdl.endpoint(AccountService/AccountServiceSOAP)" + conformanceURIs="http://ws-i.org/profiles/basic/1.1" location="wsdl/AccountService.wsdl" /> + <reference>Component2a3b4b</reference> + </service> + <service name="AccountService1b2b3a4a"> + <interface.wsdl interface="http://www.bigbank.com/account#wsdl.interface(AccountService)" + wsdli:wsdlLocation="http://www.bigbank.com/account wsdl/AccountService.wsdl" /> + <binding.ws endpoint="http://www.bigbank.com/account#wsdl.endpoint(AccountService/AccountServiceSOAP)" + conformanceURIs="http://ws-i.org/profiles/basic/1.1" location="wsdl/AccountService.wsdl" /> + <reference>Component2b3a4a</reference> + </service> + <service name="AccountService1b2b3a4b"> + <interface.wsdl interface="http://www.bigbank.com/account#wsdl.interface(AccountService)" + wsdli:wsdlLocation="http://www.bigbank.com/account wsdl/AccountService.wsdl" /> + <binding.ws endpoint="http://www.bigbank.com/account#wsdl.endpoint(AccountService/AccountServiceSOAP)" + conformanceURIs="http://ws-i.org/profiles/basic/1.1" location="wsdl/AccountService.wsdl" /> + <reference>Component2b3a4b</reference> + </service> + <service name="AccountService1b2b3b4a"> + <interface.wsdl interface="http://www.bigbank.com/account#wsdl.interface(AccountService)" + wsdli:wsdlLocation="http://www.bigbank.com/account wsdl/AccountService.wsdl" /> + <binding.ws endpoint="http://www.bigbank.com/account#wsdl.endpoint(AccountService/AccountServiceSOAP)" + conformanceURIs="http://ws-i.org/profiles/basic/1.1" location="wsdl/AccountService.wsdl" /> + <reference>Component2b3b4a</reference> + </service> + <service name="AccountService1b2b3b4b"> + <interface.wsdl interface="http://www.bigbank.com/account#wsdl.interface(AccountService)" + wsdli:wsdlLocation="http://www.bigbank.com/account wsdl/AccountService.wsdl" /> + <binding.ws endpoint="http://www.bigbank.com/account#wsdl.endpoint(AccountService/AccountServiceSOAP)" + conformanceURIs="http://ws-i.org/profiles/basic/1.1" location="wsdl/AccountService.wsdl" /> + <reference>Component2b3b4b</reference> + </service> + + <component name="Component2a3a4a"> + <implementation.java class="bigbank.account.services.accountdata.Component2aImpl" /> + <reference name="accountService" target="Component3a4a">Component3a4a</reference> + </component> + <component name="Component2a3a4b"> + <implementation.java class="bigbank.account.services.accountdata.Component2aImpl" /> + <reference name="accountService" target="Component3a4b">Component3a4b</reference> + </component> + <component name="Component2a3b4a"> + <implementation.java class="bigbank.account.services.accountdata.Component2aImpl" /> + <reference name="accountService" target="Component3b4a">Component3b4a</reference> + </component> + <component name="Component2a3b4b"> + <implementation.java class="bigbank.account.services.accountdata.Component2aImpl" /> + <reference name="accountService" target="Component3b4b">Component3b4b</reference> + </component> + + <component name="Component2b3a4a"> + <implementation.java class="bigbank.account.services.accountdata.Component2bImpl" /> + <reference name="accountService" target="Component3a4a">Component3a4a</reference> + </component> + <component name="Component2b3a4b"> + <implementation.java class="bigbank.account.services.accountdata.Component2bImpl" /> + <reference name="accountService" target="Component3a4b">Component3a4b</reference> + </component> + <component name="Component2b3b4a"> + <implementation.java class="bigbank.account.services.accountdata.Component2bImpl" /> + <reference name="accountService" target="Component3b4a">Component3b4a</reference> + </component> + <component name="Component2b3b4b"> + <implementation.java class="bigbank.account.services.accountdata.Component2bImpl" /> + <reference name="accountService" target="Component3b4b">Component3b4b</reference> + </component> + + <component name="Component3a4a"> + <implementation.java class="bigbank.account.services.accountdata.Component3aImpl" /> + <reference name="accountService" target="Ref4a">Ref4a</reference> + </component> + <component name="Component3a4b"> + <implementation.java class="bigbank.account.services.accountdata.Component3aImpl" /> + <reference name="accountService" target="Ref4b">Ref4b</reference> + </component> + <component name="Component3b4a"> + <implementation.java class="bigbank.account.services.accountdata.Component3bImpl" /> + <reference name="accountService" target="Ref4a">Ref4a</reference> + </component> + <component name="Component3b4b"> + <implementation.java class="bigbank.account.services.accountdata.Component3bImpl" /> + <reference name="accountService" target="Ref4b">Ref4b</reference> + </component> + + <reference name="Ref4a"> + <interface.java interface="bigbank.account.services.accountdata.AccountDataService" /> + <binding.ws endpoint="http://www.bigbank.com/account#wsdl.endpoint(AccountService/AccountServiceSOAP)" + location="wsdl/AccountService.wsdl" /> + </reference> + + <reference name="Ref4b"> + <interface.wsdl interface="http://www.bigbank.com/account#wsdl.interface(AccountService)" + wsdli:wsdlLocation="http://www.bigbank.com/account wsdl/AccountService.wsdl" /> + <binding.ws endpoint="http://www.bigbank.com/account#wsdl.endpoint(AccountService/AccountServiceSOAP)" + location="wsdl/AccountService.wsdl" /> + </reference> + + + <!-- target service --> + + <service name="AccountService"> + <interface.java interface="bigbank.account.services.accountdata.AccountDataService" /> + <!-- interface.wsdl interface="http://www.bigbank.com/account#wsdl.interface(AccountService)" + wsdli:wsdlLocation="http://www.bigbank.com/account wsdl/AccountService.wsdl" / --> + <binding.ws endpoint="http://www.bigbank.com/account#wsdl.endpoint(AccountService/AccountServiceSOAP)" + conformanceURIs="http://ws-i.org/profiles/basic/1.1" location="wsdl/AccountService.wsdl" /> + <reference>AccountServiceComponent</reference> + </service> + + <component name="AccountServiceComponent"> + <implementation.java class="bigbank.account.services.accountdata.AccountDataServiceImpl" /> + </component> + + <!-- test client --> + + <component name="AccountServiceClient"> + <implementation.java class="bigbank.account.services.accountdata.AccountServiceClientImpl" /> + <reference name="accountService" target="AccountServiceRef">AccountServiceRef</reference> + </component> + + <reference name="AccountServiceRef"> + <interface.java interface="bigbank.account.services.accountdata.AccountDataService" /> + <!-- interface.wsdl interface="http://www.bigbank.com/account#wsdl.interface(AccountService)" wsdli:wsdlLocation="http://www.bigbank.com/account wsdl/AccountService.wsdl" / --> + <binding.ws endpoint="http://www.bigbank.com/account#wsdl.endpoint(AccountService/AccountServiceSOAP)" + location="wsdl/AccountService.wsdl" /> + </reference> + + <!-- clients --> + + <component name="Client1a2a3a4a"> + <implementation.java class="bigbank.account.services.accountdata.AccountServiceClientImpl" /> + <reference name="accountService" target="ClientRef1a2a3a4a">ClientRef1a2a3a4a</reference> + </component> + + <reference name="ClientRef1a2a3a4a"> + <interface.java interface="bigbank.account.services.accountdata.AccountDataService" /> + <binding.ws endpoint="http://www.bigbank.com/account#wsdl.endpoint(AccountService/AccountServiceSOAP)" + location="wsdl/AccountServiceC1a2a3a4a.wsdl" /> + </reference> + + <component name="Client1a2a3a4b"> + <implementation.java class="bigbank.account.services.accountdata.AccountServiceClientImpl" /> + <reference name="accountService" target="ClientRef1a2a3a4b">ClientRef1a2a3a4b</reference> + </component> + + <reference name="ClientRef1a2a3a4b"> + <interface.java interface="bigbank.account.services.accountdata.AccountDataService" /> + <binding.ws endpoint="http://www.bigbank.com/account#wsdl.endpoint(AccountService/AccountServiceSOAP)" + location="wsdl/AccountServiceC1a2a3a4b.wsdl" /> + </reference> + + <component name="Client1a2a3b4a"> + <implementation.java class="bigbank.account.services.accountdata.AccountServiceClientImpl" /> + <reference name="accountService" target="ClientRef1a2a3b4a">ClientRef1a2a3b4a</reference> + </component> + + <reference name="ClientRef1a2a3b4a"> + <interface.java interface="bigbank.account.services.accountdata.AccountDataService" /> + <binding.ws endpoint="http://www.bigbank.com/account#wsdl.endpoint(AccountService/AccountServiceSOAP)" + location="wsdl/AccountServiceC1a2a3b4a.wsdl" /> + </reference> + + <component name="Client1a2a3b4b"> + <implementation.java class="bigbank.account.services.accountdata.AccountServiceClientImpl" /> + <reference name="accountService" target="ClientRef1a2a3b4b">ClientRef1a2a3b4b</reference> + </component> + + <reference name="ClientRef1a2a3b4b"> + <interface.java interface="bigbank.account.services.accountdata.AccountDataService" /> + <binding.ws endpoint="http://www.bigbank.com/account#wsdl.endpoint(AccountService/AccountServiceSOAP)" + location="wsdl/AccountServiceC1a2a3b4b.wsdl" /> + </reference> + + <component name="Client1a2b3a4a"> + <implementation.java class="bigbank.account.services.accountdata.AccountServiceClientImpl" /> + <reference name="accountService" target="ClientRef1a2b3a4a">ClientRef1a2b3a4a</reference> + </component> + + <reference name="ClientRef1a2b3a4a"> + <interface.java interface="bigbank.account.services.accountdata.AccountDataService" /> + <binding.ws endpoint="http://www.bigbank.com/account#wsdl.endpoint(AccountService/AccountServiceSOAP)" + location="wsdl/AccountServiceC1a2b3a4a.wsdl" /> + </reference> + + <component name="Client1a2b3a4b"> + <implementation.java class="bigbank.account.services.accountdata.AccountServiceClientImpl" /> + <reference name="accountService" target="ClientRef1a2b3a4b">ClientRef1a2b3a4b</reference> + </component> + + <reference name="ClientRef1a2b3a4b"> + <interface.java interface="bigbank.account.services.accountdata.AccountDataService" /> + <binding.ws endpoint="http://www.bigbank.com/account#wsdl.endpoint(AccountService/AccountServiceSOAP)" + location="wsdl/AccountServiceC1a2b3a4b.wsdl" /> + </reference> + + <component name="Client1a2b3b4a"> + <implementation.java class="bigbank.account.services.accountdata.AccountServiceClientImpl" /> + <reference name="accountService" target="ClientRef1a2b3b4a">ClientRef1a2b3b4a</reference> + </component> + + <reference name="ClientRef1a2b3b4a"> + <interface.java interface="bigbank.account.services.accountdata.AccountDataService" /> + <binding.ws endpoint="http://www.bigbank.com/account#wsdl.endpoint(AccountService/AccountServiceSOAP)" + location="wsdl/AccountServiceC1a2b3b4a.wsdl" /> + </reference> + + <component name="Client1a2b3b4b"> + <implementation.java class="bigbank.account.services.accountdata.AccountServiceClientImpl" /> + <reference name="accountService" target="ClientRef1a2b3b4b">ClientRef1a2b3b4b</reference> + </component> + + <reference name="ClientRef1a2b3b4b"> + <interface.java interface="bigbank.account.services.accountdata.AccountDataService" /> + <binding.ws endpoint="http://www.bigbank.com/account#wsdl.endpoint(AccountService/AccountServiceSOAP)" + location="wsdl/AccountServiceC1a2b3b4b.wsdl" /> + </reference> + + <component name="Client1b2a3a4a"> + <implementation.java class="bigbank.account.services.accountdata.AccountServiceClientImpl" /> + <reference name="accountService" target="ClientRef1b2a3a4a">ClientRef1b2a3a4a</reference> + </component> + + <reference name="ClientRef1b2a3a4a"> + <interface.java interface="bigbank.account.services.accountdata.AccountDataService" /> + <binding.ws endpoint="http://www.bigbank.com/account#wsdl.endpoint(AccountService/AccountServiceSOAP)" + location="wsdl/AccountServiceC1b2a3a4a.wsdl" /> + </reference> + + <component name="Client1b2a3a4b"> + <implementation.java class="bigbank.account.services.accountdata.AccountServiceClientImpl" /> + <reference name="accountService" target="ClientRef1b2a3a4b">ClientRef1b2a3a4b</reference> + </component> + + <reference name="ClientRef1b2a3a4b"> + <interface.java interface="bigbank.account.services.accountdata.AccountDataService" /> + <binding.ws endpoint="http://www.bigbank.com/account#wsdl.endpoint(AccountService/AccountServiceSOAP)" + location="wsdl/AccountServiceC1b2a3a4b.wsdl" /> + </reference> + + <component name="Client1b2a3b4a"> + <implementation.java class="bigbank.account.services.accountdata.AccountServiceClientImpl" /> + <reference name="accountService" target="ClientRef1b2a3b4a">ClientRef1b2a3b4a</reference> + </component> + + <reference name="ClientRef1b2a3b4a"> + <interface.java interface="bigbank.account.services.accountdata.AccountDataService" /> + <binding.ws endpoint="http://www.bigbank.com/account#wsdl.endpoint(AccountService/AccountServiceSOAP)" + location="wsdl/AccountServiceC1b2a3b4a.wsdl" /> + </reference> + + <component name="Client1b2a3b4b"> + <implementation.java class="bigbank.account.services.accountdata.AccountServiceClientImpl" /> + <reference name="accountService" target="ClientRef1b2a3b4b">ClientRef1b2a3b4b</reference> + </component> + + <reference name="ClientRef1b2a3b4b"> + <interface.java interface="bigbank.account.services.accountdata.AccountDataService" /> + <binding.ws endpoint="http://www.bigbank.com/account#wsdl.endpoint(AccountService/AccountServiceSOAP)" + location="wsdl/AccountServiceC1b2a3b4b.wsdl" /> + </reference> + + <component name="Client1b2b3a4a"> + <implementation.java class="bigbank.account.services.accountdata.AccountServiceClientImpl" /> + <reference name="accountService" target="ClientRef1b2b3a4a">ClientRef1b2b3a4a</reference> + </component> + + <reference name="ClientRef1b2b3a4a"> + <interface.java interface="bigbank.account.services.accountdata.AccountDataService" /> + <binding.ws endpoint="http://www.bigbank.com/account#wsdl.endpoint(AccountService/AccountServiceSOAP)" + location="wsdl/AccountServiceC1b2b3a4a.wsdl" /> + </reference> + + <component name="Client1b2b3a4b"> + <implementation.java class="bigbank.account.services.accountdata.AccountServiceClientImpl" /> + <reference name="accountService" target="ClientRef1b2b3a4b">ClientRef1b2b3a4b</reference> + </component> + + <reference name="ClientRef1b2b3a4b"> + <interface.java interface="bigbank.account.services.accountdata.AccountDataService" /> + <binding.ws endpoint="http://www.bigbank.com/account#wsdl.endpoint(AccountService/AccountServiceSOAP)" + location="wsdl/AccountServiceC1b2b3a4b.wsdl" /> + </reference> + + <component name="Client1b2b3b4a"> + <implementation.java class="bigbank.account.services.accountdata.AccountServiceClientImpl" /> + <reference name="accountService" target="ClientRef1b2b3b4a">ClientRef1b2b3b4a</reference> + </component> + + <reference name="ClientRef1b2b3b4a"> + <interface.java interface="bigbank.account.services.accountdata.AccountDataService" /> + <binding.ws endpoint="http://www.bigbank.com/account#wsdl.endpoint(AccountService/AccountServiceSOAP)" + location="wsdl/AccountServiceC1b2b3b4a.wsdl" /> + </reference> + + <component name="Client1b2b3b4b"> + <implementation.java class="bigbank.account.services.accountdata.AccountServiceClientImpl" /> + <reference name="accountService" target="ClientRef1b2b3b4b">ClientRef1b2b3b4b</reference> + </component> + + <reference name="ClientRef1b2b3b4b"> + <interface.java interface="bigbank.account.services.accountdata.AccountDataService" /> + <binding.ws endpoint="http://www.bigbank.com/account#wsdl.endpoint(AccountService/AccountServiceSOAP)" + location="wsdl/AccountServiceC1b2b3b4b.wsdl" /> + </reference> + +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/WSDLTest.composite b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/WSDLTest.composite new file mode 100644 index 0000000000..61499b94e4 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/WSDLTest.composite @@ -0,0 +1,412 @@ +<?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" + xmlns:wsdli="http://www.w3.org/2006/01/wsdl-instance" + + name="WSDLTest"> + + <service name="HelloWorldService1a2a3a4a"> + <interface.java class="helloworld.HelloWorldService" /> + <binding.ws endpoint="http://helloworld#wsdl.endpoint(HelloWorldService/HelloWorldSoapPort)" location="wsdl/helloworld.wsdl" /> + <reference>Component2a3a4a</reference> + </service> + <service name="HelloWorldService1a2a3a4b"> + <interface.java class="helloworld.HelloWorldService" /> + <binding.ws endpoint="http://helloworld#wsdl.endpoint(HelloWorldService/HelloWorldSoapPort)" location="wsdl/helloworld.wsdl" /> + <reference>Component2a3a4b</reference> + </service> + <service name="HelloWorldService1a2a3b4a"> + <interface.java class="helloworld.HelloWorldService" /> + <binding.ws endpoint="http://helloworld#wsdl.endpoint(HelloWorldService/HelloWorldSoapPort)" location="wsdl/helloworld.wsdl" /> + <reference>Component2a3b4a</reference> + </service> + <service name="HelloWorldService1a2a3b4b"> + <interface.java class="helloworld.HelloWorldService" /> + <binding.ws endpoint="http://helloworld#wsdl.endpoint(HelloWorldService/HelloWorldSoapPort)" location="wsdl/helloworld.wsdl" /> + <reference>Component2a3b4b</reference> + </service> + <service name="HelloWorldService1a2b3a4a"> + <interface.java class="helloworld.HelloWorldService" /> + <binding.ws endpoint="http://helloworld#wsdl.endpoint(HelloWorldService/HelloWorldSoapPort)" location="wsdl/helloworld.wsdl" /> + <reference>Component2b3a4a</reference> + </service> + <service name="HelloWorldService1a2b3a4b"> + <interface.java class="helloworld.HelloWorldService" /> + <binding.ws endpoint="http://helloworld#wsdl.endpoint(HelloWorldService/HelloWorldSoapPort)" location="wsdl/helloworld.wsdl" /> + <reference>Component2b3a4b</reference> + </service> + <service name="HelloWorldService1a2b3b4a"> + <interface.java class="helloworld.HelloWorldService" /> + <binding.ws endpoint="http://helloworld#wsdl.endpoint(HelloWorldService/HelloWorldSoapPort)" location="wsdl/helloworld.wsdl" /> + <reference>Component2b3b4a</reference> + </service> + <service name="HelloWorldService1a2b3b4b"> + <interface.java class="helloworld.HelloWorldService" /> + <binding.ws endpoint="http://helloworld#wsdl.endpoint(HelloWorldService/HelloWorldSoapPort)" location="wsdl/helloworld.wsdl" /> + <reference>Component2b3b4b</reference> + </service> + + <service name="HelloWorldService1b2a3a4a"> + <interface.wsdl interface="http://helloworld#wsdl.interface(HelloWorld)" wsdli:wsdlLocation="http://helloworld wsdl/helloworld.wsdl" /> + <binding.ws endpoint="http://helloworld#wsdl.endpoint(HelloWorldService/HelloWorldSoapPort)" location="wsdl/helloworld.wsdl" /> + <reference>Component2a3a4a</reference> + </service> + <service name="HelloWorldService1b2a3a4b"> + <interface.wsdl interface="http://helloworld#wsdl.interface(HelloWorld)" wsdli:wsdlLocation="http://helloworld wsdl/helloworld.wsdl" /> + <binding.ws endpoint="http://helloworld#wsdl.endpoint(HelloWorldService/HelloWorldSoapPort)" location="wsdl/helloworld.wsdl" /> + <reference>Component2a3a4b</reference> + </service> + <service name="HelloWorldService1b2a3b4a"> + <interface.wsdl interface="http://helloworld#wsdl.interface(HelloWorld)" wsdli:wsdlLocation="http://helloworld wsdl/helloworld.wsdl" /> + <binding.ws endpoint="http://helloworld#wsdl.endpoint(HelloWorldService/HelloWorldSoapPort)" location="wsdl/helloworld.wsdl" /> + <reference>Component2a3b4a</reference> + </service> + <service name="HelloWorldService1b2a3b4b"> + <interface.wsdl interface="http://helloworld#wsdl.interface(HelloWorld)" wsdli:wsdlLocation="http://helloworld wsdl/helloworld.wsdl" /> + <binding.ws endpoint="http://helloworld#wsdl.endpoint(HelloWorldService/HelloWorldSoapPort)" location="wsdl/helloworld.wsdl" /> + <reference>Component2a3b4b</reference> + </service> + <service name="HelloWorldService1b2b3a4a"> + <interface.wsdl interface="http://helloworld#wsdl.interface(HelloWorld)" wsdli:wsdlLocation="http://helloworld wsdl/helloworld.wsdl" /> + <binding.ws endpoint="http://helloworld#wsdl.endpoint(HelloWorldService/HelloWorldSoapPort)" location="wsdl/helloworld.wsdl" /> + <reference>Component2b3a4a</reference> + </service> + <service name="HelloWorldService1b2b3a4b"> + <interface.wsdl interface="http://helloworld#wsdl.interface(HelloWorld)" wsdli:wsdlLocation="http://helloworld wsdl/helloworld.wsdl" /> + <binding.ws endpoint="http://helloworld#wsdl.endpoint(HelloWorldService/HelloWorldSoapPort)" location="wsdl/helloworld.wsdl" /> + <reference>Component2b3a4b</reference> + </service> + <service name="HelloWorldService1b2b3b4a"> + <interface.wsdl interface="http://helloworld#wsdl.interface(HelloWorld)" wsdli:wsdlLocation="http://helloworld wsdl/helloworld.wsdl" /> + <binding.ws endpoint="http://helloworld#wsdl.endpoint(HelloWorldService/HelloWorldSoapPort)" location="wsdl/helloworld.wsdl" /> + <reference>Component2b3b4a</reference> + </service> + <service name="HelloWorldService1b2b3b4b"> + <interface.wsdl interface="http://helloworld#wsdl.interface(HelloWorld)" wsdli:wsdlLocation="http://helloworld wsdl/helloworld.wsdl" /> + <binding.ws endpoint="http://helloworld#wsdl.endpoint(HelloWorldService/HelloWorldSoapPort)" location="wsdl/helloworld.wsdl" /> + <reference>Component2b3b4b</reference> + </service> + + <component name="Component2a3a4a"> + <implementation.java class="org.apache.tuscany.sca.itest.Component2aImpl"/> + <reference name="comp" target="Component3a4a">Component3a4a</reference> + </component> + <component name="Component2a3a4b"> + <implementation.java class="org.apache.tuscany.sca.itest.Component2aImpl"/> + <reference name="comp" target="Component3a4b">Component3a4b</reference> + </component> + <component name="Component2a3b4a"> + <implementation.java class="org.apache.tuscany.sca.itest.Component2aImpl"/> + <reference name="comp" target="Component3b4a">Component3b4a</reference> + </component> + <component name="Component2a3b4b"> + <implementation.java class="org.apache.tuscany.sca.itest.Component2aImpl"/> + <reference name="comp" target="Component3b4b">Component3b4b</reference> + </component> + + <component name="Component2b3a4a"> + <implementation.java class="org.apache.tuscany.sca.itest.Component2bImpl"/> + <reference name="comp" target="Component3a4a">Component3a4a</reference> + </component> + <component name="Component2b3a4b"> + <implementation.java class="org.apache.tuscany.sca.itest.Component2bImpl"/> + <reference name="comp" target="Component3a4b">Component3a4b</reference> + </component> + <component name="Component2b3b4a"> + <implementation.java class="org.apache.tuscany.sca.itest.Component2bImpl"/> + <reference name="comp" target="Component3b4a">Component3b4a</reference> + </component> + <component name="Component2b3b4b"> + <implementation.java class="org.apache.tuscany.sca.itest.Component2bImpl"/> + <reference name="comp" target="Component3b4b">Component3b4b</reference> + </component> + + <component name="Component3a4a"> + <implementation.java class="org.apache.tuscany.sca.itest.Component3aImpl"/> + <reference name="comp" target="Ref4a">Ref4a</reference> + </component> + <component name="Component3a4b"> + <implementation.java class="org.apache.tuscany.sca.itest.Component3aImpl"/> + <reference name="comp" target="Ref4b">Ref4b</reference> + </component> + <component name="Component3b4a"> + <implementation.java class="org.apache.tuscany.sca.itest.Component3bImpl"/> + <reference name="comp" target="Ref4a">Ref4a</reference> + </component> + <component name="Component3b4b"> + <implementation.java class="org.apache.tuscany.sca.itest.Component3bImpl"/> + <reference name="comp" target="Ref4b">Ref4b</reference> + </component> + + <reference name="Ref4a"> + <interface.java class="helloworld.HelloWorldService" /> + <binding.ws endpoint="http://helloworld#wsdl.endpoint(HelloWorldService/HelloWorldSoapPort)" + location="wsdl/helloworld.wsdl" /> + </reference> + + <reference name="Ref4b"> + <interface.wsdl xmlns:wsdli="http://www.w3.org/2006/01/wsdl-instance" + interface="http://helloworld#wsdl.interface(HelloWorld)" + wsdli:wsdlLocation="http://helloworld wsdl/helloworld.wsdl" /> + <binding.ws endpoint="http://helloworld#wsdl.endpoint(HelloWorldService/HelloWorldSoapPort)" + location="wsdl/helloworld.wsdl" /> + </reference> + + +<!-- the servive --> + + <service name="HelloWorldWebService"> + <!-- interface.java class="helloworld.HelloWorldService" / --> + <interface.wsdl interface="http://helloworld#wsdl.interface(HelloWorld)" wsdli:wsdlLocation="http://helloworld wsdl/helloworld.wsdl" /> + <binding.ws endpoint="http://helloworld#wsdl.endpoint(HelloWorldService/HelloWorldSoapPort)" location="wsdl/helloworld.wsdl" /> + <reference>HelloWorldServiceComponent</reference> + </service> + + <component name="HelloWorldServiceComponent"> + <implementation.java class="helloworld.HelloWorldImpl" /> + </component> + +<!-- the clients --> + + <component name="Client1a2a3a4a"> + <implementation.java class="helloworld.HelloWorldServiceComponent"/> + <reference name="helloWorldService" target="ClientRef1a2a3a4a">ClientRef1a2a3a4a</reference> + </component> + + <reference name="ClientRef1a2a3a4a"> + <!-- interface.java class="helloworld.HelloWorldService" / --> + <interface.wsdl xmlns:wsdli="http://www.w3.org/2006/01/wsdl-instance" + interface="http://helloworld#wsdl.interface(HelloWorld)" + wsdli:wsdlLocation="http://helloworld wsdl/helloworld.wsdl" /> + <binding.ws endpoint="http://helloworld#wsdl.endpoint(HelloWorldService/HelloWorldSoapPort)" + location="wsdl/helloworldC1a2a3a4a.wsdl" /> + </reference> + + <component name="Client1a2a3a4b"> + <implementation.java class="helloworld.HelloWorldServiceComponent"/> + <reference name="helloWorldService" target="ClientRef1a2a3a4b">ClientRef1a2a3a4b</reference> + </component> + + <reference name="ClientRef1a2a3a4b"> + <!-- interface.java class="helloworld.HelloWorldService" / --> + <interface.wsdl xmlns:wsdli="http://www.w3.org/2006/01/wsdl-instance" + interface="http://helloworld#wsdl.interface(HelloWorld)" + wsdli:wsdlLocation="http://helloworld wsdl/helloworld.wsdl" /> + <binding.ws endpoint="http://helloworld#wsdl.endpoint(HelloWorldService/HelloWorldSoapPort)" + location="wsdl/helloworldC1a2a3a4b.wsdl" /> + </reference> + + <component name="Client1a2a3b4a"> + <implementation.java class="helloworld.HelloWorldServiceComponent"/> + <reference name="helloWorldService" target="ClientRef1a2a3b4a">ClientRef1a2a3b4a</reference> + </component> + + <reference name="ClientRef1a2a3b4a"> + <!-- interface.java class="helloworld.HelloWorldService" / --> + <interface.wsdl xmlns:wsdli="http://www.w3.org/2006/01/wsdl-instance" + interface="http://helloworld#wsdl.interface(HelloWorld)" + wsdli:wsdlLocation="http://helloworld wsdl/helloworld.wsdl" /> + <binding.ws endpoint="http://helloworld#wsdl.endpoint(HelloWorldService/HelloWorldSoapPort)" + location="wsdl/helloworldC1a2a3b4a.wsdl" /> + </reference> + + <component name="Client1a2a3b4b"> + <implementation.java class="helloworld.HelloWorldServiceComponent"/> + <reference name="helloWorldService" target="ClientRef1a2a3b4b">ClientRef1a2a3b4b</reference> + </component> + + <reference name="ClientRef1a2a3b4b"> + <!-- interface.java class="helloworld.HelloWorldService" / --> + <interface.wsdl xmlns:wsdli="http://www.w3.org/2006/01/wsdl-instance" + interface="http://helloworld#wsdl.interface(HelloWorld)" + wsdli:wsdlLocation="http://helloworld wsdl/helloworld.wsdl" /> + <binding.ws endpoint="http://helloworld#wsdl.endpoint(HelloWorldService/HelloWorldSoapPort)" + location="wsdl/helloworldC1a2a3b4b.wsdl" /> + </reference> + + <component name="Client1a2b3a4a"> + <implementation.java class="helloworld.HelloWorldServiceComponent"/> + <reference name="helloWorldService" target="ClientRef1a2b3a4a">ClientRef1a2b3a4a</reference> + </component> + + <reference name="ClientRef1a2b3a4a"> + <!-- interface.java class="helloworld.HelloWorldService" / --> + <interface.wsdl xmlns:wsdli="http://www.w3.org/2006/01/wsdl-instance" + interface="http://helloworld#wsdl.interface(HelloWorld)" + wsdli:wsdlLocation="http://helloworld wsdl/helloworld.wsdl" /> + <binding.ws endpoint="http://helloworld#wsdl.endpoint(HelloWorldService/HelloWorldSoapPort)" + location="wsdl/helloworldC1a2b3a4a.wsdl" /> + </reference> + + <component name="Client1a2b3a4b"> + <implementation.java class="helloworld.HelloWorldServiceComponent"/> + <reference name="helloWorldService" target="ClientRef1a2b3a4b">ClientRef1a2b3a4b</reference> + </component> + + <reference name="ClientRef1a2b3a4b"> + <!-- interface.java class="helloworld.HelloWorldService" / --> + <interface.wsdl xmlns:wsdli="http://www.w3.org/2006/01/wsdl-instance" + interface="http://helloworld#wsdl.interface(HelloWorld)" + wsdli:wsdlLocation="http://helloworld wsdl/helloworld.wsdl" /> + <binding.ws endpoint="http://helloworld#wsdl.endpoint(HelloWorldService/HelloWorldSoapPort)" + location="wsdl/helloworldC1a2b3a4b.wsdl" /> + </reference> + + <component name="Client1a2b3b4a"> + <implementation.java class="helloworld.HelloWorldServiceComponent"/> + <reference name="helloWorldService" target="ClientRef1a2b3b4a">ClientRef1a2b3b4a</reference> + </component> + + <reference name="ClientRef1a2b3b4a"> + <!-- interface.java class="helloworld.HelloWorldService" / --> + <interface.wsdl xmlns:wsdli="http://www.w3.org/2006/01/wsdl-instance" + interface="http://helloworld#wsdl.interface(HelloWorld)" + wsdli:wsdlLocation="http://helloworld wsdl/helloworld.wsdl" /> + <binding.ws endpoint="http://helloworld#wsdl.endpoint(HelloWorldService/HelloWorldSoapPort)" + location="wsdl/helloworldC1a2b3b4a.wsdl" /> + </reference> + + <component name="Client1a2b3b4b"> + <implementation.java class="helloworld.HelloWorldServiceComponent"/> + <reference name="helloWorldService" target="ClientRef1a2b3b4b">ClientRef1a2b3b4b</reference> + </component> + + <reference name="ClientRef1a2b3b4b"> + <!-- interface.java class="helloworld.HelloWorldService" / --> + <interface.wsdl xmlns:wsdli="http://www.w3.org/2006/01/wsdl-instance" + interface="http://helloworld#wsdl.interface(HelloWorld)" + wsdli:wsdlLocation="http://helloworld wsdl/helloworld.wsdl" /> + <binding.ws endpoint="http://helloworld#wsdl.endpoint(HelloWorldService/HelloWorldSoapPort)" + location="wsdl/helloworldC1a2b3b4b.wsdl" /> + </reference> + + <component name="Client1b2a3a4a"> + <implementation.java class="helloworld.HelloWorldServiceComponent"/> + <reference name="helloWorldService" target="ClientRef1b2a3a4a">ClientRef1b2a3a4a</reference> + </component> + + <reference name="ClientRef1b2a3a4a"> + <!-- interface.java class="helloworld.HelloWorldService" / --> + <interface.wsdl xmlns:wsdli="http://www.w3.org/2006/01/wsdl-instance" + interface="http://helloworld#wsdl.interface(HelloWorld)" + wsdli:wsdlLocation="http://helloworld wsdl/helloworld.wsdl" /> + <binding.ws endpoint="http://helloworld#wsdl.endpoint(HelloWorldService/HelloWorldSoapPort)" + location="wsdl/helloworldC1b2a3a4a.wsdl" /> + </reference> + + <component name="Client1b2a3a4b"> + <implementation.java class="helloworld.HelloWorldServiceComponent"/> + <reference name="helloWorldService" target="ClientRef1b2a3a4b">ClientRef1b2a3a4b</reference> + </component> + + <reference name="ClientRef1b2a3a4b"> + <!-- interface.java class="helloworld.HelloWorldService" / --> + <interface.wsdl xmlns:wsdli="http://www.w3.org/2006/01/wsdl-instance" + interface="http://helloworld#wsdl.interface(HelloWorld)" + wsdli:wsdlLocation="http://helloworld wsdl/helloworld.wsdl" /> + <binding.ws endpoint="http://helloworld#wsdl.endpoint(HelloWorldService/HelloWorldSoapPort)" + location="wsdl/helloworldC1b2a3a4b.wsdl" /> + </reference> + + <component name="Client1b2a3b4a"> + <implementation.java class="helloworld.HelloWorldServiceComponent"/> + <reference name="helloWorldService" target="ClientRef1b2a3b4a">ClientRef1b2a3b4a</reference> + </component> + + <reference name="ClientRef1b2a3b4a"> + <!-- interface.java class="helloworld.HelloWorldService" / --> + <interface.wsdl xmlns:wsdli="http://www.w3.org/2006/01/wsdl-instance" + interface="http://helloworld#wsdl.interface(HelloWorld)" + wsdli:wsdlLocation="http://helloworld wsdl/helloworld.wsdl" /> + <binding.ws endpoint="http://helloworld#wsdl.endpoint(HelloWorldService/HelloWorldSoapPort)" + location="wsdl/helloworldC1b2a3b4a.wsdl" /> + </reference> + + <component name="Client1b2a3b4b"> + <implementation.java class="helloworld.HelloWorldServiceComponent"/> + <reference name="helloWorldService" target="ClientRef1b2a3b4b">ClientRef1b2a3b4b</reference> + </component> + + <reference name="ClientRef1b2a3b4b"> + <!-- interface.java class="helloworld.HelloWorldService" / --> + <interface.wsdl xmlns:wsdli="http://www.w3.org/2006/01/wsdl-instance" + interface="http://helloworld#wsdl.interface(HelloWorld)" + wsdli:wsdlLocation="http://helloworld wsdl/helloworld.wsdl" /> + <binding.ws endpoint="http://helloworld#wsdl.endpoint(HelloWorldService/HelloWorldSoapPort)" + location="wsdl/helloworldC1b2a3b4b.wsdl" /> + </reference> + + <component name="Client1b2b3a4a"> + <implementation.java class="helloworld.HelloWorldServiceComponent"/> + <reference name="helloWorldService" target="ClientRef1b2b3a4a">ClientRef1b2b3a4a</reference> + </component> + + <reference name="ClientRef1b2b3a4a"> + <!-- interface.java class="helloworld.HelloWorldService" / --> + <interface.wsdl xmlns:wsdli="http://www.w3.org/2006/01/wsdl-instance" + interface="http://helloworld#wsdl.interface(HelloWorld)" + wsdli:wsdlLocation="http://helloworld wsdl/helloworld.wsdl" /> + <binding.ws endpoint="http://helloworld#wsdl.endpoint(HelloWorldService/HelloWorldSoapPort)" + location="wsdl/helloworldC1b2b3a4a.wsdl" /> + </reference> + + <component name="Client1b2b3a4b"> + <implementation.java class="helloworld.HelloWorldServiceComponent"/> + <reference name="helloWorldService" target="ClientRef1b2b3a4b">ClientRef1b2b3a4b</reference> + </component> + + <reference name="ClientRef1b2b3a4b"> + <!-- interface.java class="helloworld.HelloWorldService" / --> + <interface.wsdl xmlns:wsdli="http://www.w3.org/2006/01/wsdl-instance" + interface="http://helloworld#wsdl.interface(HelloWorld)" + wsdli:wsdlLocation="http://helloworld wsdl/helloworld.wsdl" /> + <binding.ws endpoint="http://helloworld#wsdl.endpoint(HelloWorldService/HelloWorldSoapPort)" + location="wsdl/helloworldC1b2b3a4b.wsdl" /> + </reference> + + <component name="Client1b2b3b4a"> + <implementation.java class="helloworld.HelloWorldServiceComponent"/> + <reference name="helloWorldService" target="ClientRef1b2b3b4a">ClientRef1b2b3b4a</reference> + </component> + + <reference name="ClientRef1b2b3b4a"> + <!-- interface.java class="helloworld.HelloWorldService" / --> + <interface.wsdl xmlns:wsdli="http://www.w3.org/2006/01/wsdl-instance" + interface="http://helloworld#wsdl.interface(HelloWorld)" + wsdli:wsdlLocation="http://helloworld wsdl/helloworld.wsdl" /> + <binding.ws endpoint="http://helloworld#wsdl.endpoint(HelloWorldService/HelloWorldSoapPort)" + location="wsdl/helloworldC1b2b3b4a.wsdl" /> + </reference> + + <component name="Client1b2b3b4b"> + <implementation.java class="helloworld.HelloWorldServiceComponent"/> + <reference name="helloWorldService" target="ClientRef1b2b3b4b">ClientRef1b2b3b4b</reference> + </component> + + <reference name="ClientRef1b2b3b4b"> + <!-- interface.java class="helloworld.HelloWorldService" / --> + <interface.wsdl xmlns:wsdli="http://www.w3.org/2006/01/wsdl-instance" + interface="http://helloworld#wsdl.interface(HelloWorld)" + wsdli:wsdlLocation="http://helloworld wsdl/helloworld.wsdl" /> + <binding.ws endpoint="http://helloworld#wsdl.endpoint(HelloWorldService/HelloWorldSoapPort)" + location="wsdl/helloworldC1b2b3b4b.wsdl" /> + </reference> + +</composite> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/bigbank/account/services/accountdata/Component2bImpl.componentType b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/bigbank/account/services/accountdata/Component2bImpl.componentType new file mode 100644 index 0000000000..2f346a2b0e --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/bigbank/account/services/accountdata/Component2bImpl.componentType @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="ASCII"?> +<componentType xmlns="http://www.osoa.org/xmlns/sca/1.0" xmlns:wsdli="http://www.w3.org/2006/01/wsdl-instance"> + + <service name="Component2Service"> + <interface.wsdl interface="http://www.bigbank.com/account#wsdl.interface(AccountService)" + wsdli:wsdlLocation="http://www.bigbank.com/account wsdl/AccountService.wsdl" /> + </service> + +</componentType> +
\ No newline at end of file diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/bigbank/account/services/accountdata/Component3bImpl.componentType b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/bigbank/account/services/accountdata/Component3bImpl.componentType new file mode 100644 index 0000000000..fbce84f82f --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/bigbank/account/services/accountdata/Component3bImpl.componentType @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="ASCII"?> +<componentType xmlns="http://www.osoa.org/xmlns/sca/1.0" xmlns:wsdli="http://www.w3.org/2006/01/wsdl-instance"> + + <service name="Component3Service"> + <interface.wsdl interface="http://www.bigbank.com/account#wsdl.interface(AccountService)" + wsdli:wsdlLocation="http://www.bigbank.com/account wsdl/AccountService.wsdl" /> + </service> + +</componentType> +
\ No newline at end of file diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/org/apache/tuscany/sca/itest/Component2bImpl.componentType b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/org/apache/tuscany/sca/itest/Component2bImpl.componentType new file mode 100644 index 0000000000..44d2acbd05 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/org/apache/tuscany/sca/itest/Component2bImpl.componentType @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="ASCII"?> +<componentType xmlns="http://www.osoa.org/xmlns/sca/1.0" xmlns:wsdli="http://www.w3.org/2006/01/wsdl-instance"> + + <service name="Component2Service"> + <!-- interface.java interface="org.apache.tuscany.sca.itest.Component" / --> + <interface.wsdl interface="http://helloworld#wsdl.interface(HelloWorld)" wsdli:wsdlLocation="http://helloworld wsdl/helloworld.wsdl" /> + </service> + +</componentType> +
\ No newline at end of file diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/org/apache/tuscany/sca/itest/Component3bImpl.componentType b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/org/apache/tuscany/sca/itest/Component3bImpl.componentType new file mode 100644 index 0000000000..44d2acbd05 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/org/apache/tuscany/sca/itest/Component3bImpl.componentType @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="ASCII"?> +<componentType xmlns="http://www.osoa.org/xmlns/sca/1.0" xmlns:wsdli="http://www.w3.org/2006/01/wsdl-instance"> + + <service name="Component2Service"> + <!-- interface.java interface="org.apache.tuscany.sca.itest.Component" / --> + <interface.wsdl interface="http://helloworld#wsdl.interface(HelloWorld)" wsdli:wsdlLocation="http://helloworld wsdl/helloworld.wsdl" /> + </service> + +</componentType> +
\ No newline at end of file diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountService.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountService.wsdl new file mode 100644 index 0000000000..8802f91b9d --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountService.wsdl @@ -0,0 +1,467 @@ +<?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:soap="http://schemas.xmlsoap.org/wsdl/soap/" + xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:account="http://www.bigbank.com/account" + targetNamespace="http://www.bigbank.com/account" + name="AccountService"> + + <wsdl:types> + <xsd:schema targetNamespace="http://www.bigbank.com/account" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:account="http://www.bigbank.com/account" + + > <!-- xmlns:sdojava="commonj.sdo/java" sdojava:package="org.apache.tuscany.samples.bigbank.account" --> + + +<!-- <xsd:complexType name="DataGraphRoot"> + <xsd:sequence> + <xsd:element name="customerProfileData" type="account:CustomerProfileData" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="StockSummaries" type="account:StockSummary" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="AccountSummaries" type="account:AccountSummary" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="StockLogEntries" type="account:StockLogEntry" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="AccountLogEntries" type="account:AccountLogEntry" maxOccurs="unbounded" minOccurs="0" /> + </xsd:sequence> + </xsd:complexType>--> + + + <xsd:element name="getAccountReport"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerID" + type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="getAccountReportResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountReport" + type="account:AccountReport" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="AccountReport"> + <xsd:sequence> + <xsd:element name="accountSummaries" + type="account:AccountSummary" maxOccurs="unbounded" /> + <xsd:element name="stockSummaries" + type="account:StockSummary" maxOccurs="unbounded" /> + + </xsd:sequence> + </xsd:complexType> + <xsd:complexType name="AccountSummary"> + <xsd:attribute name="accountNumber" type="xsd:string" /> + <xsd:attribute name="accountType" type="xsd:string" /> + <xsd:attribute name="balance" type="xsd:float" /> + </xsd:complexType> + + <xsd:complexType name="StockSummary"> + <!-- xsd:attribute name="id" type="xsd:int" / --> + <xsd:attribute name="purchaseLotNumber" type="xsd:int" /> + <!-- unique id for this purchase --> + <xsd:attribute name="symbol" type="xsd:string" /> + <xsd:attribute name="quantity" type="xsd:int" /> + <xsd:attribute name="purchaseDate" type="xsd:dateTime" /> + <xsd:attribute name="purchasePrice" type="xsd:float" /> + <xsd:attribute name="currentPrice" type="xsd:float" /> + <xsd:attribute name="company" type="xsd:string" /> + <xsd:attribute name="highPrice" type="xsd:float" /> + <xsd:attribute name="lowPrice" type="xsd:float" /> + + </xsd:complexType> + + <!-- Profile in data base --> + <xsd:element name="getCustomerProfile"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="loginID" type="xsd:string" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="CustomerProfileData"> + <xsd:sequence> + <xsd:element name="firstName" type="xsd:string" /> + <xsd:element name="lastName" type="xsd:string" /> + <xsd:element name="address" type="xsd:string" /> + <xsd:element name="email" type="xsd:string" /> + <xsd:element name="loginID" type="xsd:string" /> + <xsd:element name="password" type="xsd:string" /> + <xsd:element name="id" type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + + <xsd:element name="getCustomerProfileResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="withdraw"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountNumber" + type="xsd:string" /> + <xsd:element name="amount" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="withdrawResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="balance" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="deposit"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountNumber" + type="xsd:string" /> + <xsd:element name="amount" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="depositResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="balance" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="purchaseStock"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="id" type="xsd:int" /> + <xsd:element name="stock" type="account:StockSummary" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="purchaseStockResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="purchaseSummary" + type="account:StockSummary" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + + + <xsd:element name="sellStock"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="purchaseLotNumber" + type="xsd:int" /><!-- unique id for this purchase --> + <xsd:element name="quantity" type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="createAccount"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + <xsd:element name="createSavings" + type="xsd:boolean" /> + <xsd:element name="createCheckings" + type="xsd:boolean" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="createAccountResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + </xsd:sequence> + </xsd:complexType> + + </xsd:element> + + <xsd:element name="getAccountLog"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerID" + type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="getAccountLogResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountLog" + type="account:AccountLog" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="AccountLog"> + <xsd:sequence> + <xsd:element name="accountLogEntries" + type="account:AccountLogEntry" maxOccurs="unbounded" /> + <xsd:element name="stockLogEntries" + type="account:StockLogEntry" maxOccurs="unbounded" /> + + </xsd:sequence> + </xsd:complexType> + + <xsd:complexType name="AccountLogEntry"> + <xsd:attribute name="logSeqNo" type="xsd:int" /> + <xsd:attribute name="id" type="xsd:int" /> + <xsd:attribute name="accountNumber" type="xsd:string" /> + <xsd:attribute name="actionType" type="xsd:string" /> + <xsd:attribute name="amount" type="xsd:float" /> + </xsd:complexType> + + <xsd:complexType name="StockLogEntry"> + <xsd:attribute name="logSeqNo" type="xsd:int" /> + <xsd:attribute name="id" type="xsd:int" /> + <xsd:attribute name="symbol" type="xsd:string" /> + <xsd:attribute name="quantity" type="xsd:int" /> + <xsd:attribute name="actionType" type="xsd:string" /> + <xsd:attribute name="purchaseLotNumber" type="xsd:int" /> + </xsd:complexType> + + </xsd:schema> + </wsdl:types> + <wsdl:message name="getAccountReportRequest"> + <wsdl:part element="account:getAccountReport" + name="getAccountReportRequest" /> + </wsdl:message> + <wsdl:message name="getAccountReportResponse"> + <wsdl:part element="account:getAccountReportResponse" + name="getAccountReportResponse" /> + </wsdl:message> + + <wsdl:message name="getCustomerProfileRequest"> + <wsdl:part element="account:getCustomerProfile" + name="getCustomerProfile" /> + </wsdl:message> + <wsdl:message name="getCustomerProfileResponse"> + <wsdl:part element="account:getCustomerProfileResponse" + name="getCustomerProfileResponse" /> + </wsdl:message> + + <wsdl:message name="withdrawRequest"> + <wsdl:part element="account:withdraw" name="withdrawRequest" /> + </wsdl:message> + + <wsdl:message name="withdrawResponse"> + <wsdl:part element="account:withdrawResponse" + name="withdrawResponse" /> + </wsdl:message> + + <wsdl:message name="depositRequest"> + <wsdl:part element="account:deposit" name="depositRequest" /> + </wsdl:message> + + <wsdl:message name="depositResponse"> + <wsdl:part element="account:depositResponse" + name="depositResponse" /> + </wsdl:message> + + <wsdl:message name="purchaseStockRequest"> + <wsdl:part element="account:purchaseStock" + name="purchaseStockRequest" /> + </wsdl:message> + + <wsdl:message name="purchaseStockResponse"> + <wsdl:part element="account:purchaseStockResponse" + name="purchaseStockResponse" /> + </wsdl:message> + + <wsdl:message name="sellStockRequest"> + <wsdl:part element="account:sellStock" name="sellStockRequest" /> + </wsdl:message> + + <wsdl:message name="createAccountRequest"> + <wsdl:part element="account:createAccount" name="createAccountRequest" /> + </wsdl:message> + + <wsdl:message name="createAccountResponse"> + <wsdl:part element="account:createAccountResponse" name="createAccountResponse" /> + </wsdl:message> + + <wsdl:message name="getAccountLogRequest"> + <wsdl:part element="account:getAccountLog" + name="getAccountLogRequest" /> + </wsdl:message> + + <wsdl:message name="getAccountLogResponse"> + <wsdl:part element="account:getAccountLogResponse" + name="getAccountLogResponse" /> + </wsdl:message> + + <wsdl:portType name="AccountService"> + <wsdl:operation name="getAccountReport"> + <wsdl:input message="account:getAccountReportRequest" /> + <wsdl:output message="account:getAccountReportResponse" /> + </wsdl:operation> + + <wsdl:operation name="getCustomerProfile"> + <wsdl:input message="account:getCustomerProfileRequest" /> + <wsdl:output message="account:getCustomerProfileResponse" /> + </wsdl:operation> + + <wsdl:operation name="withdraw"> + <wsdl:input message="account:withdrawRequest" /> + <wsdl:output message="account:withdrawResponse" /> + </wsdl:operation> + + <wsdl:operation name="deposit"> + <wsdl:input message="account:depositRequest" /> + <wsdl:output message="account:depositResponse" /> + </wsdl:operation> + + <wsdl:operation name="purchaseStock"> + <wsdl:input message="account:purchaseStockRequest" /> + <wsdl:output message="account:purchaseStockResponse" /> + </wsdl:operation> + + <wsdl:operation name="sellStock"> + <wsdl:input message="account:sellStockRequest" /> + <wsdl:output message="account:purchaseStockResponse" /> + </wsdl:operation> + + + <wsdl:operation name="createAccount"> + <wsdl:input message="account:createAccountRequest" /> + <wsdl:output message="account:createAccountResponse" /> + </wsdl:operation> + + <wsdl:operation name="getAccountLog"> + <wsdl:input message="account:getAccountLogRequest" /> + <wsdl:output message="account:getAccountLogResponse" /> + </wsdl:operation> + + </wsdl:portType> + + + + <wsdl:binding name="AccountServiceSOAP" type="account:AccountService"> + <soap:binding style="document" + transport="http://schemas.xmlsoap.org/soap/http" /> + <wsdl:operation name="getAccountReport"> + <soap:operation + soapAction="http://www.bigbank.com/account/getAccountReport" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + <wsdl:operation name="getCustomerProfile"> + <soap:operation + soapAction="http://www.bigbank.com/account/getCustomerProfile" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="withdraw"> + <soap:operation + soapAction="http://www.bigbank.com/account/withdraw" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="deposit"> + <soap:operation + soapAction="http://www.bigbank.com/account/deposit" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="purchaseStock"> + <soap:operation + soapAction="http://www.bigbank.com/account/purchaseStock" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="sellStock"> + <soap:operation + soapAction="http://www.bigbank.com/account/sellStock" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="createAccount"> + <soap:operation + soapAction="http://www.bigbank.com/account/createAccount" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="getAccountLog"> + <soap:operation + soapAction="http://www.bigbank.com/account/getAccountLog" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + </wsdl:binding> + <wsdl:service name="AccountService"> + <wsdl:port binding="account:AccountServiceSOAP" + name="AccountServiceSOAP"> + <soap:address + location="http://localhost:8080/services/AccountService" /> + </wsdl:port> + </wsdl:service> +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1a2a3a4a.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1a2a3a4a.wsdl new file mode 100644 index 0000000000..c0e798b0be --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1a2a3a4a.wsdl @@ -0,0 +1,467 @@ +<?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:soap="http://schemas.xmlsoap.org/wsdl/soap/" + xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:account="http://www.bigbank.com/account" + targetNamespace="http://www.bigbank.com/account" + name="AccountService"> + + <wsdl:types> + <xsd:schema targetNamespace="http://www.bigbank.com/account" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:account="http://www.bigbank.com/account" + + > <!-- xmlns:sdojava="commonj.sdo/java" sdojava:package="org.apache.tuscany.samples.bigbank.account" --> + + +<!-- <xsd:complexType name="DataGraphRoot"> + <xsd:sequence> + <xsd:element name="customerProfileData" type="account:CustomerProfileData" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="StockSummaries" type="account:StockSummary" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="AccountSummaries" type="account:AccountSummary" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="StockLogEntries" type="account:StockLogEntry" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="AccountLogEntries" type="account:AccountLogEntry" maxOccurs="unbounded" minOccurs="0" /> + </xsd:sequence> + </xsd:complexType>--> + + + <xsd:element name="getAccountReport"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerID" + type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="getAccountReportResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountReport" + type="account:AccountReport" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="AccountReport"> + <xsd:sequence> + <xsd:element name="accountSummaries" + type="account:AccountSummary" maxOccurs="unbounded" /> + <xsd:element name="stockSummaries" + type="account:StockSummary" maxOccurs="unbounded" /> + + </xsd:sequence> + </xsd:complexType> + <xsd:complexType name="AccountSummary"> + <xsd:attribute name="accountNumber" type="xsd:string" /> + <xsd:attribute name="accountType" type="xsd:string" /> + <xsd:attribute name="balance" type="xsd:float" /> + </xsd:complexType> + + <xsd:complexType name="StockSummary"> + <!-- xsd:attribute name="id" type="xsd:int" / --> + <xsd:attribute name="purchaseLotNumber" type="xsd:int" /> + <!-- unique id for this purchase --> + <xsd:attribute name="symbol" type="xsd:string" /> + <xsd:attribute name="quantity" type="xsd:int" /> + <xsd:attribute name="purchaseDate" type="xsd:dateTime" /> + <xsd:attribute name="purchasePrice" type="xsd:float" /> + <xsd:attribute name="currentPrice" type="xsd:float" /> + <xsd:attribute name="company" type="xsd:string" /> + <xsd:attribute name="highPrice" type="xsd:float" /> + <xsd:attribute name="lowPrice" type="xsd:float" /> + + </xsd:complexType> + + <!-- Profile in data base --> + <xsd:element name="getCustomerProfile"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="loginID" type="xsd:string" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="CustomerProfileData"> + <xsd:sequence> + <xsd:element name="firstName" type="xsd:string" /> + <xsd:element name="lastName" type="xsd:string" /> + <xsd:element name="address" type="xsd:string" /> + <xsd:element name="email" type="xsd:string" /> + <xsd:element name="loginID" type="xsd:string" /> + <xsd:element name="password" type="xsd:string" /> + <xsd:element name="id" type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + + <xsd:element name="getCustomerProfileResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="withdraw"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountNumber" + type="xsd:string" /> + <xsd:element name="amount" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="withdrawResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="balance" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="deposit"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountNumber" + type="xsd:string" /> + <xsd:element name="amount" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="depositResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="balance" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="purchaseStock"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="id" type="xsd:int" /> + <xsd:element name="stock" type="account:StockSummary" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="purchaseStockResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="purchaseSummary" + type="account:StockSummary" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + + + <xsd:element name="sellStock"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="purchaseLotNumber" + type="xsd:int" /><!-- unique id for this purchase --> + <xsd:element name="quantity" type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="createAccount"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + <xsd:element name="createSavings" + type="xsd:boolean" /> + <xsd:element name="createCheckings" + type="xsd:boolean" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="createAccountResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + </xsd:sequence> + </xsd:complexType> + + </xsd:element> + + <xsd:element name="getAccountLog"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerID" + type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="getAccountLogResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountLog" + type="account:AccountLog" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="AccountLog"> + <xsd:sequence> + <xsd:element name="accountLogEntries" + type="account:AccountLogEntry" maxOccurs="unbounded" /> + <xsd:element name="stockLogEntries" + type="account:StockLogEntry" maxOccurs="unbounded" /> + + </xsd:sequence> + </xsd:complexType> + + <xsd:complexType name="AccountLogEntry"> + <xsd:attribute name="logSeqNo" type="xsd:int" /> + <xsd:attribute name="id" type="xsd:int" /> + <xsd:attribute name="accountNumber" type="xsd:string" /> + <xsd:attribute name="actionType" type="xsd:string" /> + <xsd:attribute name="amount" type="xsd:float" /> + </xsd:complexType> + + <xsd:complexType name="StockLogEntry"> + <xsd:attribute name="logSeqNo" type="xsd:int" /> + <xsd:attribute name="id" type="xsd:int" /> + <xsd:attribute name="symbol" type="xsd:string" /> + <xsd:attribute name="quantity" type="xsd:int" /> + <xsd:attribute name="actionType" type="xsd:string" /> + <xsd:attribute name="purchaseLotNumber" type="xsd:int" /> + </xsd:complexType> + + </xsd:schema> + </wsdl:types> + <wsdl:message name="getAccountReportRequest"> + <wsdl:part element="account:getAccountReport" + name="getAccountReportRequest" /> + </wsdl:message> + <wsdl:message name="getAccountReportResponse"> + <wsdl:part element="account:getAccountReportResponse" + name="getAccountReportResponse" /> + </wsdl:message> + + <wsdl:message name="getCustomerProfileRequest"> + <wsdl:part element="account:getCustomerProfile" + name="getCustomerProfile" /> + </wsdl:message> + <wsdl:message name="getCustomerProfileResponse"> + <wsdl:part element="account:getCustomerProfileResponse" + name="getCustomerProfileResponse" /> + </wsdl:message> + + <wsdl:message name="withdrawRequest"> + <wsdl:part element="account:withdraw" name="withdrawRequest" /> + </wsdl:message> + + <wsdl:message name="withdrawResponse"> + <wsdl:part element="account:withdrawResponse" + name="withdrawResponse" /> + </wsdl:message> + + <wsdl:message name="depositRequest"> + <wsdl:part element="account:deposit" name="depositRequest" /> + </wsdl:message> + + <wsdl:message name="depositResponse"> + <wsdl:part element="account:depositResponse" + name="depositResponse" /> + </wsdl:message> + + <wsdl:message name="purchaseStockRequest"> + <wsdl:part element="account:purchaseStock" + name="purchaseStockRequest" /> + </wsdl:message> + + <wsdl:message name="purchaseStockResponse"> + <wsdl:part element="account:purchaseStockResponse" + name="purchaseStockResponse" /> + </wsdl:message> + + <wsdl:message name="sellStockRequest"> + <wsdl:part element="account:sellStock" name="sellStockRequest" /> + </wsdl:message> + + <wsdl:message name="createAccountRequest"> + <wsdl:part element="account:createAccount" name="createAccountRequest" /> + </wsdl:message> + + <wsdl:message name="createAccountResponse"> + <wsdl:part element="account:createAccountResponse" name="createAccountResponse" /> + </wsdl:message> + + <wsdl:message name="getAccountLogRequest"> + <wsdl:part element="account:getAccountLog" + name="getAccountLogRequest" /> + </wsdl:message> + + <wsdl:message name="getAccountLogResponse"> + <wsdl:part element="account:getAccountLogResponse" + name="getAccountLogResponse" /> + </wsdl:message> + + <wsdl:portType name="AccountService"> + <wsdl:operation name="getAccountReport"> + <wsdl:input message="account:getAccountReportRequest" /> + <wsdl:output message="account:getAccountReportResponse" /> + </wsdl:operation> + + <wsdl:operation name="getCustomerProfile"> + <wsdl:input message="account:getCustomerProfileRequest" /> + <wsdl:output message="account:getCustomerProfileResponse" /> + </wsdl:operation> + + <wsdl:operation name="withdraw"> + <wsdl:input message="account:withdrawRequest" /> + <wsdl:output message="account:withdrawResponse" /> + </wsdl:operation> + + <wsdl:operation name="deposit"> + <wsdl:input message="account:depositRequest" /> + <wsdl:output message="account:depositResponse" /> + </wsdl:operation> + + <wsdl:operation name="purchaseStock"> + <wsdl:input message="account:purchaseStockRequest" /> + <wsdl:output message="account:purchaseStockResponse" /> + </wsdl:operation> + + <wsdl:operation name="sellStock"> + <wsdl:input message="account:sellStockRequest" /> + <wsdl:output message="account:purchaseStockResponse" /> + </wsdl:operation> + + + <wsdl:operation name="createAccount"> + <wsdl:input message="account:createAccountRequest" /> + <wsdl:output message="account:createAccountResponse" /> + </wsdl:operation> + + <wsdl:operation name="getAccountLog"> + <wsdl:input message="account:getAccountLogRequest" /> + <wsdl:output message="account:getAccountLogResponse" /> + </wsdl:operation> + + </wsdl:portType> + + + + <wsdl:binding name="AccountServiceSOAP" type="account:AccountService"> + <soap:binding style="document" + transport="http://schemas.xmlsoap.org/soap/http" /> + <wsdl:operation name="getAccountReport"> + <soap:operation + soapAction="http://www.bigbank.com/account/getAccountReport" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + <wsdl:operation name="getCustomerProfile"> + <soap:operation + soapAction="http://www.bigbank.com/account/getCustomerProfile" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="withdraw"> + <soap:operation + soapAction="http://www.bigbank.com/account/withdraw" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="deposit"> + <soap:operation + soapAction="http://www.bigbank.com/account/deposit" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="purchaseStock"> + <soap:operation + soapAction="http://www.bigbank.com/account/purchaseStock" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="sellStock"> + <soap:operation + soapAction="http://www.bigbank.com/account/sellStock" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="createAccount"> + <soap:operation + soapAction="http://www.bigbank.com/account/createAccount" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="getAccountLog"> + <soap:operation + soapAction="http://www.bigbank.com/account/getAccountLog" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + </wsdl:binding> + <wsdl:service name="AccountService"> + <wsdl:port binding="account:AccountServiceSOAP" + name="AccountServiceSOAP"> + <soap:address + location="http://localhost:8080/services/AccountService1a2a3a4a" /> + </wsdl:port> + </wsdl:service> +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1a2a3a4b.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1a2a3a4b.wsdl new file mode 100644 index 0000000000..02de68d566 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1a2a3a4b.wsdl @@ -0,0 +1,467 @@ +<?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:soap="http://schemas.xmlsoap.org/wsdl/soap/" + xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:account="http://www.bigbank.com/account" + targetNamespace="http://www.bigbank.com/account" + name="AccountService"> + + <wsdl:types> + <xsd:schema targetNamespace="http://www.bigbank.com/account" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:account="http://www.bigbank.com/account" + + > <!-- xmlns:sdojava="commonj.sdo/java" sdojava:package="org.apache.tuscany.samples.bigbank.account" --> + + +<!-- <xsd:complexType name="DataGraphRoot"> + <xsd:sequence> + <xsd:element name="customerProfileData" type="account:CustomerProfileData" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="StockSummaries" type="account:StockSummary" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="AccountSummaries" type="account:AccountSummary" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="StockLogEntries" type="account:StockLogEntry" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="AccountLogEntries" type="account:AccountLogEntry" maxOccurs="unbounded" minOccurs="0" /> + </xsd:sequence> + </xsd:complexType>--> + + + <xsd:element name="getAccountReport"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerID" + type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="getAccountReportResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountReport" + type="account:AccountReport" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="AccountReport"> + <xsd:sequence> + <xsd:element name="accountSummaries" + type="account:AccountSummary" maxOccurs="unbounded" /> + <xsd:element name="stockSummaries" + type="account:StockSummary" maxOccurs="unbounded" /> + + </xsd:sequence> + </xsd:complexType> + <xsd:complexType name="AccountSummary"> + <xsd:attribute name="accountNumber" type="xsd:string" /> + <xsd:attribute name="accountType" type="xsd:string" /> + <xsd:attribute name="balance" type="xsd:float" /> + </xsd:complexType> + + <xsd:complexType name="StockSummary"> + <!-- xsd:attribute name="id" type="xsd:int" / --> + <xsd:attribute name="purchaseLotNumber" type="xsd:int" /> + <!-- unique id for this purchase --> + <xsd:attribute name="symbol" type="xsd:string" /> + <xsd:attribute name="quantity" type="xsd:int" /> + <xsd:attribute name="purchaseDate" type="xsd:dateTime" /> + <xsd:attribute name="purchasePrice" type="xsd:float" /> + <xsd:attribute name="currentPrice" type="xsd:float" /> + <xsd:attribute name="company" type="xsd:string" /> + <xsd:attribute name="highPrice" type="xsd:float" /> + <xsd:attribute name="lowPrice" type="xsd:float" /> + + </xsd:complexType> + + <!-- Profile in data base --> + <xsd:element name="getCustomerProfile"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="loginID" type="xsd:string" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="CustomerProfileData"> + <xsd:sequence> + <xsd:element name="firstName" type="xsd:string" /> + <xsd:element name="lastName" type="xsd:string" /> + <xsd:element name="address" type="xsd:string" /> + <xsd:element name="email" type="xsd:string" /> + <xsd:element name="loginID" type="xsd:string" /> + <xsd:element name="password" type="xsd:string" /> + <xsd:element name="id" type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + + <xsd:element name="getCustomerProfileResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="withdraw"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountNumber" + type="xsd:string" /> + <xsd:element name="amount" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="withdrawResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="balance" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="deposit"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountNumber" + type="xsd:string" /> + <xsd:element name="amount" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="depositResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="balance" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="purchaseStock"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="id" type="xsd:int" /> + <xsd:element name="stock" type="account:StockSummary" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="purchaseStockResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="purchaseSummary" + type="account:StockSummary" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + + + <xsd:element name="sellStock"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="purchaseLotNumber" + type="xsd:int" /><!-- unique id for this purchase --> + <xsd:element name="quantity" type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="createAccount"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + <xsd:element name="createSavings" + type="xsd:boolean" /> + <xsd:element name="createCheckings" + type="xsd:boolean" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="createAccountResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + </xsd:sequence> + </xsd:complexType> + + </xsd:element> + + <xsd:element name="getAccountLog"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerID" + type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="getAccountLogResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountLog" + type="account:AccountLog" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="AccountLog"> + <xsd:sequence> + <xsd:element name="accountLogEntries" + type="account:AccountLogEntry" maxOccurs="unbounded" /> + <xsd:element name="stockLogEntries" + type="account:StockLogEntry" maxOccurs="unbounded" /> + + </xsd:sequence> + </xsd:complexType> + + <xsd:complexType name="AccountLogEntry"> + <xsd:attribute name="logSeqNo" type="xsd:int" /> + <xsd:attribute name="id" type="xsd:int" /> + <xsd:attribute name="accountNumber" type="xsd:string" /> + <xsd:attribute name="actionType" type="xsd:string" /> + <xsd:attribute name="amount" type="xsd:float" /> + </xsd:complexType> + + <xsd:complexType name="StockLogEntry"> + <xsd:attribute name="logSeqNo" type="xsd:int" /> + <xsd:attribute name="id" type="xsd:int" /> + <xsd:attribute name="symbol" type="xsd:string" /> + <xsd:attribute name="quantity" type="xsd:int" /> + <xsd:attribute name="actionType" type="xsd:string" /> + <xsd:attribute name="purchaseLotNumber" type="xsd:int" /> + </xsd:complexType> + + </xsd:schema> + </wsdl:types> + <wsdl:message name="getAccountReportRequest"> + <wsdl:part element="account:getAccountReport" + name="getAccountReportRequest" /> + </wsdl:message> + <wsdl:message name="getAccountReportResponse"> + <wsdl:part element="account:getAccountReportResponse" + name="getAccountReportResponse" /> + </wsdl:message> + + <wsdl:message name="getCustomerProfileRequest"> + <wsdl:part element="account:getCustomerProfile" + name="getCustomerProfile" /> + </wsdl:message> + <wsdl:message name="getCustomerProfileResponse"> + <wsdl:part element="account:getCustomerProfileResponse" + name="getCustomerProfileResponse" /> + </wsdl:message> + + <wsdl:message name="withdrawRequest"> + <wsdl:part element="account:withdraw" name="withdrawRequest" /> + </wsdl:message> + + <wsdl:message name="withdrawResponse"> + <wsdl:part element="account:withdrawResponse" + name="withdrawResponse" /> + </wsdl:message> + + <wsdl:message name="depositRequest"> + <wsdl:part element="account:deposit" name="depositRequest" /> + </wsdl:message> + + <wsdl:message name="depositResponse"> + <wsdl:part element="account:depositResponse" + name="depositResponse" /> + </wsdl:message> + + <wsdl:message name="purchaseStockRequest"> + <wsdl:part element="account:purchaseStock" + name="purchaseStockRequest" /> + </wsdl:message> + + <wsdl:message name="purchaseStockResponse"> + <wsdl:part element="account:purchaseStockResponse" + name="purchaseStockResponse" /> + </wsdl:message> + + <wsdl:message name="sellStockRequest"> + <wsdl:part element="account:sellStock" name="sellStockRequest" /> + </wsdl:message> + + <wsdl:message name="createAccountRequest"> + <wsdl:part element="account:createAccount" name="createAccountRequest" /> + </wsdl:message> + + <wsdl:message name="createAccountResponse"> + <wsdl:part element="account:createAccountResponse" name="createAccountResponse" /> + </wsdl:message> + + <wsdl:message name="getAccountLogRequest"> + <wsdl:part element="account:getAccountLog" + name="getAccountLogRequest" /> + </wsdl:message> + + <wsdl:message name="getAccountLogResponse"> + <wsdl:part element="account:getAccountLogResponse" + name="getAccountLogResponse" /> + </wsdl:message> + + <wsdl:portType name="AccountService"> + <wsdl:operation name="getAccountReport"> + <wsdl:input message="account:getAccountReportRequest" /> + <wsdl:output message="account:getAccountReportResponse" /> + </wsdl:operation> + + <wsdl:operation name="getCustomerProfile"> + <wsdl:input message="account:getCustomerProfileRequest" /> + <wsdl:output message="account:getCustomerProfileResponse" /> + </wsdl:operation> + + <wsdl:operation name="withdraw"> + <wsdl:input message="account:withdrawRequest" /> + <wsdl:output message="account:withdrawResponse" /> + </wsdl:operation> + + <wsdl:operation name="deposit"> + <wsdl:input message="account:depositRequest" /> + <wsdl:output message="account:depositResponse" /> + </wsdl:operation> + + <wsdl:operation name="purchaseStock"> + <wsdl:input message="account:purchaseStockRequest" /> + <wsdl:output message="account:purchaseStockResponse" /> + </wsdl:operation> + + <wsdl:operation name="sellStock"> + <wsdl:input message="account:sellStockRequest" /> + <wsdl:output message="account:purchaseStockResponse" /> + </wsdl:operation> + + + <wsdl:operation name="createAccount"> + <wsdl:input message="account:createAccountRequest" /> + <wsdl:output message="account:createAccountResponse" /> + </wsdl:operation> + + <wsdl:operation name="getAccountLog"> + <wsdl:input message="account:getAccountLogRequest" /> + <wsdl:output message="account:getAccountLogResponse" /> + </wsdl:operation> + + </wsdl:portType> + + + + <wsdl:binding name="AccountServiceSOAP" type="account:AccountService"> + <soap:binding style="document" + transport="http://schemas.xmlsoap.org/soap/http" /> + <wsdl:operation name="getAccountReport"> + <soap:operation + soapAction="http://www.bigbank.com/account/getAccountReport" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + <wsdl:operation name="getCustomerProfile"> + <soap:operation + soapAction="http://www.bigbank.com/account/getCustomerProfile" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="withdraw"> + <soap:operation + soapAction="http://www.bigbank.com/account/withdraw" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="deposit"> + <soap:operation + soapAction="http://www.bigbank.com/account/deposit" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="purchaseStock"> + <soap:operation + soapAction="http://www.bigbank.com/account/purchaseStock" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="sellStock"> + <soap:operation + soapAction="http://www.bigbank.com/account/sellStock" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="createAccount"> + <soap:operation + soapAction="http://www.bigbank.com/account/createAccount" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="getAccountLog"> + <soap:operation + soapAction="http://www.bigbank.com/account/getAccountLog" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + </wsdl:binding> + <wsdl:service name="AccountService"> + <wsdl:port binding="account:AccountServiceSOAP" + name="AccountServiceSOAP"> + <soap:address + location="http://localhost:8080/services/AccountService1a2a3b4a" /> + </wsdl:port> + </wsdl:service> +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1a2a3b4a.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1a2a3b4a.wsdl new file mode 100644 index 0000000000..02de68d566 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1a2a3b4a.wsdl @@ -0,0 +1,467 @@ +<?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:soap="http://schemas.xmlsoap.org/wsdl/soap/" + xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:account="http://www.bigbank.com/account" + targetNamespace="http://www.bigbank.com/account" + name="AccountService"> + + <wsdl:types> + <xsd:schema targetNamespace="http://www.bigbank.com/account" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:account="http://www.bigbank.com/account" + + > <!-- xmlns:sdojava="commonj.sdo/java" sdojava:package="org.apache.tuscany.samples.bigbank.account" --> + + +<!-- <xsd:complexType name="DataGraphRoot"> + <xsd:sequence> + <xsd:element name="customerProfileData" type="account:CustomerProfileData" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="StockSummaries" type="account:StockSummary" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="AccountSummaries" type="account:AccountSummary" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="StockLogEntries" type="account:StockLogEntry" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="AccountLogEntries" type="account:AccountLogEntry" maxOccurs="unbounded" minOccurs="0" /> + </xsd:sequence> + </xsd:complexType>--> + + + <xsd:element name="getAccountReport"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerID" + type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="getAccountReportResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountReport" + type="account:AccountReport" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="AccountReport"> + <xsd:sequence> + <xsd:element name="accountSummaries" + type="account:AccountSummary" maxOccurs="unbounded" /> + <xsd:element name="stockSummaries" + type="account:StockSummary" maxOccurs="unbounded" /> + + </xsd:sequence> + </xsd:complexType> + <xsd:complexType name="AccountSummary"> + <xsd:attribute name="accountNumber" type="xsd:string" /> + <xsd:attribute name="accountType" type="xsd:string" /> + <xsd:attribute name="balance" type="xsd:float" /> + </xsd:complexType> + + <xsd:complexType name="StockSummary"> + <!-- xsd:attribute name="id" type="xsd:int" / --> + <xsd:attribute name="purchaseLotNumber" type="xsd:int" /> + <!-- unique id for this purchase --> + <xsd:attribute name="symbol" type="xsd:string" /> + <xsd:attribute name="quantity" type="xsd:int" /> + <xsd:attribute name="purchaseDate" type="xsd:dateTime" /> + <xsd:attribute name="purchasePrice" type="xsd:float" /> + <xsd:attribute name="currentPrice" type="xsd:float" /> + <xsd:attribute name="company" type="xsd:string" /> + <xsd:attribute name="highPrice" type="xsd:float" /> + <xsd:attribute name="lowPrice" type="xsd:float" /> + + </xsd:complexType> + + <!-- Profile in data base --> + <xsd:element name="getCustomerProfile"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="loginID" type="xsd:string" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="CustomerProfileData"> + <xsd:sequence> + <xsd:element name="firstName" type="xsd:string" /> + <xsd:element name="lastName" type="xsd:string" /> + <xsd:element name="address" type="xsd:string" /> + <xsd:element name="email" type="xsd:string" /> + <xsd:element name="loginID" type="xsd:string" /> + <xsd:element name="password" type="xsd:string" /> + <xsd:element name="id" type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + + <xsd:element name="getCustomerProfileResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="withdraw"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountNumber" + type="xsd:string" /> + <xsd:element name="amount" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="withdrawResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="balance" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="deposit"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountNumber" + type="xsd:string" /> + <xsd:element name="amount" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="depositResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="balance" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="purchaseStock"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="id" type="xsd:int" /> + <xsd:element name="stock" type="account:StockSummary" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="purchaseStockResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="purchaseSummary" + type="account:StockSummary" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + + + <xsd:element name="sellStock"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="purchaseLotNumber" + type="xsd:int" /><!-- unique id for this purchase --> + <xsd:element name="quantity" type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="createAccount"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + <xsd:element name="createSavings" + type="xsd:boolean" /> + <xsd:element name="createCheckings" + type="xsd:boolean" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="createAccountResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + </xsd:sequence> + </xsd:complexType> + + </xsd:element> + + <xsd:element name="getAccountLog"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerID" + type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="getAccountLogResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountLog" + type="account:AccountLog" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="AccountLog"> + <xsd:sequence> + <xsd:element name="accountLogEntries" + type="account:AccountLogEntry" maxOccurs="unbounded" /> + <xsd:element name="stockLogEntries" + type="account:StockLogEntry" maxOccurs="unbounded" /> + + </xsd:sequence> + </xsd:complexType> + + <xsd:complexType name="AccountLogEntry"> + <xsd:attribute name="logSeqNo" type="xsd:int" /> + <xsd:attribute name="id" type="xsd:int" /> + <xsd:attribute name="accountNumber" type="xsd:string" /> + <xsd:attribute name="actionType" type="xsd:string" /> + <xsd:attribute name="amount" type="xsd:float" /> + </xsd:complexType> + + <xsd:complexType name="StockLogEntry"> + <xsd:attribute name="logSeqNo" type="xsd:int" /> + <xsd:attribute name="id" type="xsd:int" /> + <xsd:attribute name="symbol" type="xsd:string" /> + <xsd:attribute name="quantity" type="xsd:int" /> + <xsd:attribute name="actionType" type="xsd:string" /> + <xsd:attribute name="purchaseLotNumber" type="xsd:int" /> + </xsd:complexType> + + </xsd:schema> + </wsdl:types> + <wsdl:message name="getAccountReportRequest"> + <wsdl:part element="account:getAccountReport" + name="getAccountReportRequest" /> + </wsdl:message> + <wsdl:message name="getAccountReportResponse"> + <wsdl:part element="account:getAccountReportResponse" + name="getAccountReportResponse" /> + </wsdl:message> + + <wsdl:message name="getCustomerProfileRequest"> + <wsdl:part element="account:getCustomerProfile" + name="getCustomerProfile" /> + </wsdl:message> + <wsdl:message name="getCustomerProfileResponse"> + <wsdl:part element="account:getCustomerProfileResponse" + name="getCustomerProfileResponse" /> + </wsdl:message> + + <wsdl:message name="withdrawRequest"> + <wsdl:part element="account:withdraw" name="withdrawRequest" /> + </wsdl:message> + + <wsdl:message name="withdrawResponse"> + <wsdl:part element="account:withdrawResponse" + name="withdrawResponse" /> + </wsdl:message> + + <wsdl:message name="depositRequest"> + <wsdl:part element="account:deposit" name="depositRequest" /> + </wsdl:message> + + <wsdl:message name="depositResponse"> + <wsdl:part element="account:depositResponse" + name="depositResponse" /> + </wsdl:message> + + <wsdl:message name="purchaseStockRequest"> + <wsdl:part element="account:purchaseStock" + name="purchaseStockRequest" /> + </wsdl:message> + + <wsdl:message name="purchaseStockResponse"> + <wsdl:part element="account:purchaseStockResponse" + name="purchaseStockResponse" /> + </wsdl:message> + + <wsdl:message name="sellStockRequest"> + <wsdl:part element="account:sellStock" name="sellStockRequest" /> + </wsdl:message> + + <wsdl:message name="createAccountRequest"> + <wsdl:part element="account:createAccount" name="createAccountRequest" /> + </wsdl:message> + + <wsdl:message name="createAccountResponse"> + <wsdl:part element="account:createAccountResponse" name="createAccountResponse" /> + </wsdl:message> + + <wsdl:message name="getAccountLogRequest"> + <wsdl:part element="account:getAccountLog" + name="getAccountLogRequest" /> + </wsdl:message> + + <wsdl:message name="getAccountLogResponse"> + <wsdl:part element="account:getAccountLogResponse" + name="getAccountLogResponse" /> + </wsdl:message> + + <wsdl:portType name="AccountService"> + <wsdl:operation name="getAccountReport"> + <wsdl:input message="account:getAccountReportRequest" /> + <wsdl:output message="account:getAccountReportResponse" /> + </wsdl:operation> + + <wsdl:operation name="getCustomerProfile"> + <wsdl:input message="account:getCustomerProfileRequest" /> + <wsdl:output message="account:getCustomerProfileResponse" /> + </wsdl:operation> + + <wsdl:operation name="withdraw"> + <wsdl:input message="account:withdrawRequest" /> + <wsdl:output message="account:withdrawResponse" /> + </wsdl:operation> + + <wsdl:operation name="deposit"> + <wsdl:input message="account:depositRequest" /> + <wsdl:output message="account:depositResponse" /> + </wsdl:operation> + + <wsdl:operation name="purchaseStock"> + <wsdl:input message="account:purchaseStockRequest" /> + <wsdl:output message="account:purchaseStockResponse" /> + </wsdl:operation> + + <wsdl:operation name="sellStock"> + <wsdl:input message="account:sellStockRequest" /> + <wsdl:output message="account:purchaseStockResponse" /> + </wsdl:operation> + + + <wsdl:operation name="createAccount"> + <wsdl:input message="account:createAccountRequest" /> + <wsdl:output message="account:createAccountResponse" /> + </wsdl:operation> + + <wsdl:operation name="getAccountLog"> + <wsdl:input message="account:getAccountLogRequest" /> + <wsdl:output message="account:getAccountLogResponse" /> + </wsdl:operation> + + </wsdl:portType> + + + + <wsdl:binding name="AccountServiceSOAP" type="account:AccountService"> + <soap:binding style="document" + transport="http://schemas.xmlsoap.org/soap/http" /> + <wsdl:operation name="getAccountReport"> + <soap:operation + soapAction="http://www.bigbank.com/account/getAccountReport" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + <wsdl:operation name="getCustomerProfile"> + <soap:operation + soapAction="http://www.bigbank.com/account/getCustomerProfile" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="withdraw"> + <soap:operation + soapAction="http://www.bigbank.com/account/withdraw" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="deposit"> + <soap:operation + soapAction="http://www.bigbank.com/account/deposit" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="purchaseStock"> + <soap:operation + soapAction="http://www.bigbank.com/account/purchaseStock" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="sellStock"> + <soap:operation + soapAction="http://www.bigbank.com/account/sellStock" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="createAccount"> + <soap:operation + soapAction="http://www.bigbank.com/account/createAccount" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="getAccountLog"> + <soap:operation + soapAction="http://www.bigbank.com/account/getAccountLog" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + </wsdl:binding> + <wsdl:service name="AccountService"> + <wsdl:port binding="account:AccountServiceSOAP" + name="AccountServiceSOAP"> + <soap:address + location="http://localhost:8080/services/AccountService1a2a3b4a" /> + </wsdl:port> + </wsdl:service> +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1a2a3b4b.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1a2a3b4b.wsdl new file mode 100644 index 0000000000..b576af290d --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1a2a3b4b.wsdl @@ -0,0 +1,467 @@ +<?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:soap="http://schemas.xmlsoap.org/wsdl/soap/" + xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:account="http://www.bigbank.com/account" + targetNamespace="http://www.bigbank.com/account" + name="AccountService"> + + <wsdl:types> + <xsd:schema targetNamespace="http://www.bigbank.com/account" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:account="http://www.bigbank.com/account" + + > <!-- xmlns:sdojava="commonj.sdo/java" sdojava:package="org.apache.tuscany.samples.bigbank.account" --> + + +<!-- <xsd:complexType name="DataGraphRoot"> + <xsd:sequence> + <xsd:element name="customerProfileData" type="account:CustomerProfileData" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="StockSummaries" type="account:StockSummary" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="AccountSummaries" type="account:AccountSummary" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="StockLogEntries" type="account:StockLogEntry" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="AccountLogEntries" type="account:AccountLogEntry" maxOccurs="unbounded" minOccurs="0" /> + </xsd:sequence> + </xsd:complexType>--> + + + <xsd:element name="getAccountReport"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerID" + type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="getAccountReportResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountReport" + type="account:AccountReport" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="AccountReport"> + <xsd:sequence> + <xsd:element name="accountSummaries" + type="account:AccountSummary" maxOccurs="unbounded" /> + <xsd:element name="stockSummaries" + type="account:StockSummary" maxOccurs="unbounded" /> + + </xsd:sequence> + </xsd:complexType> + <xsd:complexType name="AccountSummary"> + <xsd:attribute name="accountNumber" type="xsd:string" /> + <xsd:attribute name="accountType" type="xsd:string" /> + <xsd:attribute name="balance" type="xsd:float" /> + </xsd:complexType> + + <xsd:complexType name="StockSummary"> + <!-- xsd:attribute name="id" type="xsd:int" / --> + <xsd:attribute name="purchaseLotNumber" type="xsd:int" /> + <!-- unique id for this purchase --> + <xsd:attribute name="symbol" type="xsd:string" /> + <xsd:attribute name="quantity" type="xsd:int" /> + <xsd:attribute name="purchaseDate" type="xsd:dateTime" /> + <xsd:attribute name="purchasePrice" type="xsd:float" /> + <xsd:attribute name="currentPrice" type="xsd:float" /> + <xsd:attribute name="company" type="xsd:string" /> + <xsd:attribute name="highPrice" type="xsd:float" /> + <xsd:attribute name="lowPrice" type="xsd:float" /> + + </xsd:complexType> + + <!-- Profile in data base --> + <xsd:element name="getCustomerProfile"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="loginID" type="xsd:string" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="CustomerProfileData"> + <xsd:sequence> + <xsd:element name="firstName" type="xsd:string" /> + <xsd:element name="lastName" type="xsd:string" /> + <xsd:element name="address" type="xsd:string" /> + <xsd:element name="email" type="xsd:string" /> + <xsd:element name="loginID" type="xsd:string" /> + <xsd:element name="password" type="xsd:string" /> + <xsd:element name="id" type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + + <xsd:element name="getCustomerProfileResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="withdraw"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountNumber" + type="xsd:string" /> + <xsd:element name="amount" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="withdrawResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="balance" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="deposit"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountNumber" + type="xsd:string" /> + <xsd:element name="amount" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="depositResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="balance" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="purchaseStock"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="id" type="xsd:int" /> + <xsd:element name="stock" type="account:StockSummary" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="purchaseStockResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="purchaseSummary" + type="account:StockSummary" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + + + <xsd:element name="sellStock"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="purchaseLotNumber" + type="xsd:int" /><!-- unique id for this purchase --> + <xsd:element name="quantity" type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="createAccount"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + <xsd:element name="createSavings" + type="xsd:boolean" /> + <xsd:element name="createCheckings" + type="xsd:boolean" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="createAccountResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + </xsd:sequence> + </xsd:complexType> + + </xsd:element> + + <xsd:element name="getAccountLog"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerID" + type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="getAccountLogResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountLog" + type="account:AccountLog" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="AccountLog"> + <xsd:sequence> + <xsd:element name="accountLogEntries" + type="account:AccountLogEntry" maxOccurs="unbounded" /> + <xsd:element name="stockLogEntries" + type="account:StockLogEntry" maxOccurs="unbounded" /> + + </xsd:sequence> + </xsd:complexType> + + <xsd:complexType name="AccountLogEntry"> + <xsd:attribute name="logSeqNo" type="xsd:int" /> + <xsd:attribute name="id" type="xsd:int" /> + <xsd:attribute name="accountNumber" type="xsd:string" /> + <xsd:attribute name="actionType" type="xsd:string" /> + <xsd:attribute name="amount" type="xsd:float" /> + </xsd:complexType> + + <xsd:complexType name="StockLogEntry"> + <xsd:attribute name="logSeqNo" type="xsd:int" /> + <xsd:attribute name="id" type="xsd:int" /> + <xsd:attribute name="symbol" type="xsd:string" /> + <xsd:attribute name="quantity" type="xsd:int" /> + <xsd:attribute name="actionType" type="xsd:string" /> + <xsd:attribute name="purchaseLotNumber" type="xsd:int" /> + </xsd:complexType> + + </xsd:schema> + </wsdl:types> + <wsdl:message name="getAccountReportRequest"> + <wsdl:part element="account:getAccountReport" + name="getAccountReportRequest" /> + </wsdl:message> + <wsdl:message name="getAccountReportResponse"> + <wsdl:part element="account:getAccountReportResponse" + name="getAccountReportResponse" /> + </wsdl:message> + + <wsdl:message name="getCustomerProfileRequest"> + <wsdl:part element="account:getCustomerProfile" + name="getCustomerProfile" /> + </wsdl:message> + <wsdl:message name="getCustomerProfileResponse"> + <wsdl:part element="account:getCustomerProfileResponse" + name="getCustomerProfileResponse" /> + </wsdl:message> + + <wsdl:message name="withdrawRequest"> + <wsdl:part element="account:withdraw" name="withdrawRequest" /> + </wsdl:message> + + <wsdl:message name="withdrawResponse"> + <wsdl:part element="account:withdrawResponse" + name="withdrawResponse" /> + </wsdl:message> + + <wsdl:message name="depositRequest"> + <wsdl:part element="account:deposit" name="depositRequest" /> + </wsdl:message> + + <wsdl:message name="depositResponse"> + <wsdl:part element="account:depositResponse" + name="depositResponse" /> + </wsdl:message> + + <wsdl:message name="purchaseStockRequest"> + <wsdl:part element="account:purchaseStock" + name="purchaseStockRequest" /> + </wsdl:message> + + <wsdl:message name="purchaseStockResponse"> + <wsdl:part element="account:purchaseStockResponse" + name="purchaseStockResponse" /> + </wsdl:message> + + <wsdl:message name="sellStockRequest"> + <wsdl:part element="account:sellStock" name="sellStockRequest" /> + </wsdl:message> + + <wsdl:message name="createAccountRequest"> + <wsdl:part element="account:createAccount" name="createAccountRequest" /> + </wsdl:message> + + <wsdl:message name="createAccountResponse"> + <wsdl:part element="account:createAccountResponse" name="createAccountResponse" /> + </wsdl:message> + + <wsdl:message name="getAccountLogRequest"> + <wsdl:part element="account:getAccountLog" + name="getAccountLogRequest" /> + </wsdl:message> + + <wsdl:message name="getAccountLogResponse"> + <wsdl:part element="account:getAccountLogResponse" + name="getAccountLogResponse" /> + </wsdl:message> + + <wsdl:portType name="AccountService"> + <wsdl:operation name="getAccountReport"> + <wsdl:input message="account:getAccountReportRequest" /> + <wsdl:output message="account:getAccountReportResponse" /> + </wsdl:operation> + + <wsdl:operation name="getCustomerProfile"> + <wsdl:input message="account:getCustomerProfileRequest" /> + <wsdl:output message="account:getCustomerProfileResponse" /> + </wsdl:operation> + + <wsdl:operation name="withdraw"> + <wsdl:input message="account:withdrawRequest" /> + <wsdl:output message="account:withdrawResponse" /> + </wsdl:operation> + + <wsdl:operation name="deposit"> + <wsdl:input message="account:depositRequest" /> + <wsdl:output message="account:depositResponse" /> + </wsdl:operation> + + <wsdl:operation name="purchaseStock"> + <wsdl:input message="account:purchaseStockRequest" /> + <wsdl:output message="account:purchaseStockResponse" /> + </wsdl:operation> + + <wsdl:operation name="sellStock"> + <wsdl:input message="account:sellStockRequest" /> + <wsdl:output message="account:purchaseStockResponse" /> + </wsdl:operation> + + + <wsdl:operation name="createAccount"> + <wsdl:input message="account:createAccountRequest" /> + <wsdl:output message="account:createAccountResponse" /> + </wsdl:operation> + + <wsdl:operation name="getAccountLog"> + <wsdl:input message="account:getAccountLogRequest" /> + <wsdl:output message="account:getAccountLogResponse" /> + </wsdl:operation> + + </wsdl:portType> + + + + <wsdl:binding name="AccountServiceSOAP" type="account:AccountService"> + <soap:binding style="document" + transport="http://schemas.xmlsoap.org/soap/http" /> + <wsdl:operation name="getAccountReport"> + <soap:operation + soapAction="http://www.bigbank.com/account/getAccountReport" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + <wsdl:operation name="getCustomerProfile"> + <soap:operation + soapAction="http://www.bigbank.com/account/getCustomerProfile" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="withdraw"> + <soap:operation + soapAction="http://www.bigbank.com/account/withdraw" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="deposit"> + <soap:operation + soapAction="http://www.bigbank.com/account/deposit" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="purchaseStock"> + <soap:operation + soapAction="http://www.bigbank.com/account/purchaseStock" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="sellStock"> + <soap:operation + soapAction="http://www.bigbank.com/account/sellStock" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="createAccount"> + <soap:operation + soapAction="http://www.bigbank.com/account/createAccount" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="getAccountLog"> + <soap:operation + soapAction="http://www.bigbank.com/account/getAccountLog" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + </wsdl:binding> + <wsdl:service name="AccountService"> + <wsdl:port binding="account:AccountServiceSOAP" + name="AccountServiceSOAP"> + <soap:address + location="http://localhost:8080/services/AccountService1a2a3b4b" /> + </wsdl:port> + </wsdl:service> +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1a2b3a4a.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1a2b3a4a.wsdl new file mode 100644 index 0000000000..009fb9a7a1 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1a2b3a4a.wsdl @@ -0,0 +1,467 @@ +<?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:soap="http://schemas.xmlsoap.org/wsdl/soap/" + xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:account="http://www.bigbank.com/account" + targetNamespace="http://www.bigbank.com/account" + name="AccountService"> + + <wsdl:types> + <xsd:schema targetNamespace="http://www.bigbank.com/account" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:account="http://www.bigbank.com/account" + + > <!-- xmlns:sdojava="commonj.sdo/java" sdojava:package="org.apache.tuscany.samples.bigbank.account" --> + + +<!-- <xsd:complexType name="DataGraphRoot"> + <xsd:sequence> + <xsd:element name="customerProfileData" type="account:CustomerProfileData" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="StockSummaries" type="account:StockSummary" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="AccountSummaries" type="account:AccountSummary" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="StockLogEntries" type="account:StockLogEntry" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="AccountLogEntries" type="account:AccountLogEntry" maxOccurs="unbounded" minOccurs="0" /> + </xsd:sequence> + </xsd:complexType>--> + + + <xsd:element name="getAccountReport"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerID" + type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="getAccountReportResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountReport" + type="account:AccountReport" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="AccountReport"> + <xsd:sequence> + <xsd:element name="accountSummaries" + type="account:AccountSummary" maxOccurs="unbounded" /> + <xsd:element name="stockSummaries" + type="account:StockSummary" maxOccurs="unbounded" /> + + </xsd:sequence> + </xsd:complexType> + <xsd:complexType name="AccountSummary"> + <xsd:attribute name="accountNumber" type="xsd:string" /> + <xsd:attribute name="accountType" type="xsd:string" /> + <xsd:attribute name="balance" type="xsd:float" /> + </xsd:complexType> + + <xsd:complexType name="StockSummary"> + <!-- xsd:attribute name="id" type="xsd:int" / --> + <xsd:attribute name="purchaseLotNumber" type="xsd:int" /> + <!-- unique id for this purchase --> + <xsd:attribute name="symbol" type="xsd:string" /> + <xsd:attribute name="quantity" type="xsd:int" /> + <xsd:attribute name="purchaseDate" type="xsd:dateTime" /> + <xsd:attribute name="purchasePrice" type="xsd:float" /> + <xsd:attribute name="currentPrice" type="xsd:float" /> + <xsd:attribute name="company" type="xsd:string" /> + <xsd:attribute name="highPrice" type="xsd:float" /> + <xsd:attribute name="lowPrice" type="xsd:float" /> + + </xsd:complexType> + + <!-- Profile in data base --> + <xsd:element name="getCustomerProfile"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="loginID" type="xsd:string" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="CustomerProfileData"> + <xsd:sequence> + <xsd:element name="firstName" type="xsd:string" /> + <xsd:element name="lastName" type="xsd:string" /> + <xsd:element name="address" type="xsd:string" /> + <xsd:element name="email" type="xsd:string" /> + <xsd:element name="loginID" type="xsd:string" /> + <xsd:element name="password" type="xsd:string" /> + <xsd:element name="id" type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + + <xsd:element name="getCustomerProfileResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="withdraw"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountNumber" + type="xsd:string" /> + <xsd:element name="amount" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="withdrawResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="balance" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="deposit"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountNumber" + type="xsd:string" /> + <xsd:element name="amount" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="depositResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="balance" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="purchaseStock"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="id" type="xsd:int" /> + <xsd:element name="stock" type="account:StockSummary" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="purchaseStockResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="purchaseSummary" + type="account:StockSummary" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + + + <xsd:element name="sellStock"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="purchaseLotNumber" + type="xsd:int" /><!-- unique id for this purchase --> + <xsd:element name="quantity" type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="createAccount"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + <xsd:element name="createSavings" + type="xsd:boolean" /> + <xsd:element name="createCheckings" + type="xsd:boolean" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="createAccountResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + </xsd:sequence> + </xsd:complexType> + + </xsd:element> + + <xsd:element name="getAccountLog"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerID" + type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="getAccountLogResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountLog" + type="account:AccountLog" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="AccountLog"> + <xsd:sequence> + <xsd:element name="accountLogEntries" + type="account:AccountLogEntry" maxOccurs="unbounded" /> + <xsd:element name="stockLogEntries" + type="account:StockLogEntry" maxOccurs="unbounded" /> + + </xsd:sequence> + </xsd:complexType> + + <xsd:complexType name="AccountLogEntry"> + <xsd:attribute name="logSeqNo" type="xsd:int" /> + <xsd:attribute name="id" type="xsd:int" /> + <xsd:attribute name="accountNumber" type="xsd:string" /> + <xsd:attribute name="actionType" type="xsd:string" /> + <xsd:attribute name="amount" type="xsd:float" /> + </xsd:complexType> + + <xsd:complexType name="StockLogEntry"> + <xsd:attribute name="logSeqNo" type="xsd:int" /> + <xsd:attribute name="id" type="xsd:int" /> + <xsd:attribute name="symbol" type="xsd:string" /> + <xsd:attribute name="quantity" type="xsd:int" /> + <xsd:attribute name="actionType" type="xsd:string" /> + <xsd:attribute name="purchaseLotNumber" type="xsd:int" /> + </xsd:complexType> + + </xsd:schema> + </wsdl:types> + <wsdl:message name="getAccountReportRequest"> + <wsdl:part element="account:getAccountReport" + name="getAccountReportRequest" /> + </wsdl:message> + <wsdl:message name="getAccountReportResponse"> + <wsdl:part element="account:getAccountReportResponse" + name="getAccountReportResponse" /> + </wsdl:message> + + <wsdl:message name="getCustomerProfileRequest"> + <wsdl:part element="account:getCustomerProfile" + name="getCustomerProfile" /> + </wsdl:message> + <wsdl:message name="getCustomerProfileResponse"> + <wsdl:part element="account:getCustomerProfileResponse" + name="getCustomerProfileResponse" /> + </wsdl:message> + + <wsdl:message name="withdrawRequest"> + <wsdl:part element="account:withdraw" name="withdrawRequest" /> + </wsdl:message> + + <wsdl:message name="withdrawResponse"> + <wsdl:part element="account:withdrawResponse" + name="withdrawResponse" /> + </wsdl:message> + + <wsdl:message name="depositRequest"> + <wsdl:part element="account:deposit" name="depositRequest" /> + </wsdl:message> + + <wsdl:message name="depositResponse"> + <wsdl:part element="account:depositResponse" + name="depositResponse" /> + </wsdl:message> + + <wsdl:message name="purchaseStockRequest"> + <wsdl:part element="account:purchaseStock" + name="purchaseStockRequest" /> + </wsdl:message> + + <wsdl:message name="purchaseStockResponse"> + <wsdl:part element="account:purchaseStockResponse" + name="purchaseStockResponse" /> + </wsdl:message> + + <wsdl:message name="sellStockRequest"> + <wsdl:part element="account:sellStock" name="sellStockRequest" /> + </wsdl:message> + + <wsdl:message name="createAccountRequest"> + <wsdl:part element="account:createAccount" name="createAccountRequest" /> + </wsdl:message> + + <wsdl:message name="createAccountResponse"> + <wsdl:part element="account:createAccountResponse" name="createAccountResponse" /> + </wsdl:message> + + <wsdl:message name="getAccountLogRequest"> + <wsdl:part element="account:getAccountLog" + name="getAccountLogRequest" /> + </wsdl:message> + + <wsdl:message name="getAccountLogResponse"> + <wsdl:part element="account:getAccountLogResponse" + name="getAccountLogResponse" /> + </wsdl:message> + + <wsdl:portType name="AccountService"> + <wsdl:operation name="getAccountReport"> + <wsdl:input message="account:getAccountReportRequest" /> + <wsdl:output message="account:getAccountReportResponse" /> + </wsdl:operation> + + <wsdl:operation name="getCustomerProfile"> + <wsdl:input message="account:getCustomerProfileRequest" /> + <wsdl:output message="account:getCustomerProfileResponse" /> + </wsdl:operation> + + <wsdl:operation name="withdraw"> + <wsdl:input message="account:withdrawRequest" /> + <wsdl:output message="account:withdrawResponse" /> + </wsdl:operation> + + <wsdl:operation name="deposit"> + <wsdl:input message="account:depositRequest" /> + <wsdl:output message="account:depositResponse" /> + </wsdl:operation> + + <wsdl:operation name="purchaseStock"> + <wsdl:input message="account:purchaseStockRequest" /> + <wsdl:output message="account:purchaseStockResponse" /> + </wsdl:operation> + + <wsdl:operation name="sellStock"> + <wsdl:input message="account:sellStockRequest" /> + <wsdl:output message="account:purchaseStockResponse" /> + </wsdl:operation> + + + <wsdl:operation name="createAccount"> + <wsdl:input message="account:createAccountRequest" /> + <wsdl:output message="account:createAccountResponse" /> + </wsdl:operation> + + <wsdl:operation name="getAccountLog"> + <wsdl:input message="account:getAccountLogRequest" /> + <wsdl:output message="account:getAccountLogResponse" /> + </wsdl:operation> + + </wsdl:portType> + + + + <wsdl:binding name="AccountServiceSOAP" type="account:AccountService"> + <soap:binding style="document" + transport="http://schemas.xmlsoap.org/soap/http" /> + <wsdl:operation name="getAccountReport"> + <soap:operation + soapAction="http://www.bigbank.com/account/getAccountReport" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + <wsdl:operation name="getCustomerProfile"> + <soap:operation + soapAction="http://www.bigbank.com/account/getCustomerProfile" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="withdraw"> + <soap:operation + soapAction="http://www.bigbank.com/account/withdraw" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="deposit"> + <soap:operation + soapAction="http://www.bigbank.com/account/deposit" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="purchaseStock"> + <soap:operation + soapAction="http://www.bigbank.com/account/purchaseStock" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="sellStock"> + <soap:operation + soapAction="http://www.bigbank.com/account/sellStock" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="createAccount"> + <soap:operation + soapAction="http://www.bigbank.com/account/createAccount" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="getAccountLog"> + <soap:operation + soapAction="http://www.bigbank.com/account/getAccountLog" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + </wsdl:binding> + <wsdl:service name="AccountService"> + <wsdl:port binding="account:AccountServiceSOAP" + name="AccountServiceSOAP"> + <soap:address + location="http://localhost:8080/services/AccountService1a2b3a4a" /> + </wsdl:port> + </wsdl:service> +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1a2b3a4b.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1a2b3a4b.wsdl new file mode 100644 index 0000000000..359114437a --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1a2b3a4b.wsdl @@ -0,0 +1,467 @@ +<?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:soap="http://schemas.xmlsoap.org/wsdl/soap/" + xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:account="http://www.bigbank.com/account" + targetNamespace="http://www.bigbank.com/account" + name="AccountService"> + + <wsdl:types> + <xsd:schema targetNamespace="http://www.bigbank.com/account" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:account="http://www.bigbank.com/account" + + > <!-- xmlns:sdojava="commonj.sdo/java" sdojava:package="org.apache.tuscany.samples.bigbank.account" --> + + +<!-- <xsd:complexType name="DataGraphRoot"> + <xsd:sequence> + <xsd:element name="customerProfileData" type="account:CustomerProfileData" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="StockSummaries" type="account:StockSummary" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="AccountSummaries" type="account:AccountSummary" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="StockLogEntries" type="account:StockLogEntry" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="AccountLogEntries" type="account:AccountLogEntry" maxOccurs="unbounded" minOccurs="0" /> + </xsd:sequence> + </xsd:complexType>--> + + + <xsd:element name="getAccountReport"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerID" + type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="getAccountReportResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountReport" + type="account:AccountReport" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="AccountReport"> + <xsd:sequence> + <xsd:element name="accountSummaries" + type="account:AccountSummary" maxOccurs="unbounded" /> + <xsd:element name="stockSummaries" + type="account:StockSummary" maxOccurs="unbounded" /> + + </xsd:sequence> + </xsd:complexType> + <xsd:complexType name="AccountSummary"> + <xsd:attribute name="accountNumber" type="xsd:string" /> + <xsd:attribute name="accountType" type="xsd:string" /> + <xsd:attribute name="balance" type="xsd:float" /> + </xsd:complexType> + + <xsd:complexType name="StockSummary"> + <!-- xsd:attribute name="id" type="xsd:int" / --> + <xsd:attribute name="purchaseLotNumber" type="xsd:int" /> + <!-- unique id for this purchase --> + <xsd:attribute name="symbol" type="xsd:string" /> + <xsd:attribute name="quantity" type="xsd:int" /> + <xsd:attribute name="purchaseDate" type="xsd:dateTime" /> + <xsd:attribute name="purchasePrice" type="xsd:float" /> + <xsd:attribute name="currentPrice" type="xsd:float" /> + <xsd:attribute name="company" type="xsd:string" /> + <xsd:attribute name="highPrice" type="xsd:float" /> + <xsd:attribute name="lowPrice" type="xsd:float" /> + + </xsd:complexType> + + <!-- Profile in data base --> + <xsd:element name="getCustomerProfile"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="loginID" type="xsd:string" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="CustomerProfileData"> + <xsd:sequence> + <xsd:element name="firstName" type="xsd:string" /> + <xsd:element name="lastName" type="xsd:string" /> + <xsd:element name="address" type="xsd:string" /> + <xsd:element name="email" type="xsd:string" /> + <xsd:element name="loginID" type="xsd:string" /> + <xsd:element name="password" type="xsd:string" /> + <xsd:element name="id" type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + + <xsd:element name="getCustomerProfileResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="withdraw"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountNumber" + type="xsd:string" /> + <xsd:element name="amount" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="withdrawResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="balance" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="deposit"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountNumber" + type="xsd:string" /> + <xsd:element name="amount" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="depositResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="balance" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="purchaseStock"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="id" type="xsd:int" /> + <xsd:element name="stock" type="account:StockSummary" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="purchaseStockResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="purchaseSummary" + type="account:StockSummary" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + + + <xsd:element name="sellStock"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="purchaseLotNumber" + type="xsd:int" /><!-- unique id for this purchase --> + <xsd:element name="quantity" type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="createAccount"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + <xsd:element name="createSavings" + type="xsd:boolean" /> + <xsd:element name="createCheckings" + type="xsd:boolean" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="createAccountResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + </xsd:sequence> + </xsd:complexType> + + </xsd:element> + + <xsd:element name="getAccountLog"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerID" + type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="getAccountLogResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountLog" + type="account:AccountLog" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="AccountLog"> + <xsd:sequence> + <xsd:element name="accountLogEntries" + type="account:AccountLogEntry" maxOccurs="unbounded" /> + <xsd:element name="stockLogEntries" + type="account:StockLogEntry" maxOccurs="unbounded" /> + + </xsd:sequence> + </xsd:complexType> + + <xsd:complexType name="AccountLogEntry"> + <xsd:attribute name="logSeqNo" type="xsd:int" /> + <xsd:attribute name="id" type="xsd:int" /> + <xsd:attribute name="accountNumber" type="xsd:string" /> + <xsd:attribute name="actionType" type="xsd:string" /> + <xsd:attribute name="amount" type="xsd:float" /> + </xsd:complexType> + + <xsd:complexType name="StockLogEntry"> + <xsd:attribute name="logSeqNo" type="xsd:int" /> + <xsd:attribute name="id" type="xsd:int" /> + <xsd:attribute name="symbol" type="xsd:string" /> + <xsd:attribute name="quantity" type="xsd:int" /> + <xsd:attribute name="actionType" type="xsd:string" /> + <xsd:attribute name="purchaseLotNumber" type="xsd:int" /> + </xsd:complexType> + + </xsd:schema> + </wsdl:types> + <wsdl:message name="getAccountReportRequest"> + <wsdl:part element="account:getAccountReport" + name="getAccountReportRequest" /> + </wsdl:message> + <wsdl:message name="getAccountReportResponse"> + <wsdl:part element="account:getAccountReportResponse" + name="getAccountReportResponse" /> + </wsdl:message> + + <wsdl:message name="getCustomerProfileRequest"> + <wsdl:part element="account:getCustomerProfile" + name="getCustomerProfile" /> + </wsdl:message> + <wsdl:message name="getCustomerProfileResponse"> + <wsdl:part element="account:getCustomerProfileResponse" + name="getCustomerProfileResponse" /> + </wsdl:message> + + <wsdl:message name="withdrawRequest"> + <wsdl:part element="account:withdraw" name="withdrawRequest" /> + </wsdl:message> + + <wsdl:message name="withdrawResponse"> + <wsdl:part element="account:withdrawResponse" + name="withdrawResponse" /> + </wsdl:message> + + <wsdl:message name="depositRequest"> + <wsdl:part element="account:deposit" name="depositRequest" /> + </wsdl:message> + + <wsdl:message name="depositResponse"> + <wsdl:part element="account:depositResponse" + name="depositResponse" /> + </wsdl:message> + + <wsdl:message name="purchaseStockRequest"> + <wsdl:part element="account:purchaseStock" + name="purchaseStockRequest" /> + </wsdl:message> + + <wsdl:message name="purchaseStockResponse"> + <wsdl:part element="account:purchaseStockResponse" + name="purchaseStockResponse" /> + </wsdl:message> + + <wsdl:message name="sellStockRequest"> + <wsdl:part element="account:sellStock" name="sellStockRequest" /> + </wsdl:message> + + <wsdl:message name="createAccountRequest"> + <wsdl:part element="account:createAccount" name="createAccountRequest" /> + </wsdl:message> + + <wsdl:message name="createAccountResponse"> + <wsdl:part element="account:createAccountResponse" name="createAccountResponse" /> + </wsdl:message> + + <wsdl:message name="getAccountLogRequest"> + <wsdl:part element="account:getAccountLog" + name="getAccountLogRequest" /> + </wsdl:message> + + <wsdl:message name="getAccountLogResponse"> + <wsdl:part element="account:getAccountLogResponse" + name="getAccountLogResponse" /> + </wsdl:message> + + <wsdl:portType name="AccountService"> + <wsdl:operation name="getAccountReport"> + <wsdl:input message="account:getAccountReportRequest" /> + <wsdl:output message="account:getAccountReportResponse" /> + </wsdl:operation> + + <wsdl:operation name="getCustomerProfile"> + <wsdl:input message="account:getCustomerProfileRequest" /> + <wsdl:output message="account:getCustomerProfileResponse" /> + </wsdl:operation> + + <wsdl:operation name="withdraw"> + <wsdl:input message="account:withdrawRequest" /> + <wsdl:output message="account:withdrawResponse" /> + </wsdl:operation> + + <wsdl:operation name="deposit"> + <wsdl:input message="account:depositRequest" /> + <wsdl:output message="account:depositResponse" /> + </wsdl:operation> + + <wsdl:operation name="purchaseStock"> + <wsdl:input message="account:purchaseStockRequest" /> + <wsdl:output message="account:purchaseStockResponse" /> + </wsdl:operation> + + <wsdl:operation name="sellStock"> + <wsdl:input message="account:sellStockRequest" /> + <wsdl:output message="account:purchaseStockResponse" /> + </wsdl:operation> + + + <wsdl:operation name="createAccount"> + <wsdl:input message="account:createAccountRequest" /> + <wsdl:output message="account:createAccountResponse" /> + </wsdl:operation> + + <wsdl:operation name="getAccountLog"> + <wsdl:input message="account:getAccountLogRequest" /> + <wsdl:output message="account:getAccountLogResponse" /> + </wsdl:operation> + + </wsdl:portType> + + + + <wsdl:binding name="AccountServiceSOAP" type="account:AccountService"> + <soap:binding style="document" + transport="http://schemas.xmlsoap.org/soap/http" /> + <wsdl:operation name="getAccountReport"> + <soap:operation + soapAction="http://www.bigbank.com/account/getAccountReport" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + <wsdl:operation name="getCustomerProfile"> + <soap:operation + soapAction="http://www.bigbank.com/account/getCustomerProfile" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="withdraw"> + <soap:operation + soapAction="http://www.bigbank.com/account/withdraw" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="deposit"> + <soap:operation + soapAction="http://www.bigbank.com/account/deposit" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="purchaseStock"> + <soap:operation + soapAction="http://www.bigbank.com/account/purchaseStock" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="sellStock"> + <soap:operation + soapAction="http://www.bigbank.com/account/sellStock" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="createAccount"> + <soap:operation + soapAction="http://www.bigbank.com/account/createAccount" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="getAccountLog"> + <soap:operation + soapAction="http://www.bigbank.com/account/getAccountLog" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + </wsdl:binding> + <wsdl:service name="AccountService"> + <wsdl:port binding="account:AccountServiceSOAP" + name="AccountServiceSOAP"> + <soap:address + location="http://localhost:8080/services/AccountService1a2b3a4b" /> + </wsdl:port> + </wsdl:service> +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1a2b3b4a.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1a2b3b4a.wsdl new file mode 100644 index 0000000000..ac0ef22f9e --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1a2b3b4a.wsdl @@ -0,0 +1,467 @@ +<?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:soap="http://schemas.xmlsoap.org/wsdl/soap/" + xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:account="http://www.bigbank.com/account" + targetNamespace="http://www.bigbank.com/account" + name="AccountService"> + + <wsdl:types> + <xsd:schema targetNamespace="http://www.bigbank.com/account" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:account="http://www.bigbank.com/account" + + > <!-- xmlns:sdojava="commonj.sdo/java" sdojava:package="org.apache.tuscany.samples.bigbank.account" --> + + +<!-- <xsd:complexType name="DataGraphRoot"> + <xsd:sequence> + <xsd:element name="customerProfileData" type="account:CustomerProfileData" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="StockSummaries" type="account:StockSummary" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="AccountSummaries" type="account:AccountSummary" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="StockLogEntries" type="account:StockLogEntry" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="AccountLogEntries" type="account:AccountLogEntry" maxOccurs="unbounded" minOccurs="0" /> + </xsd:sequence> + </xsd:complexType>--> + + + <xsd:element name="getAccountReport"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerID" + type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="getAccountReportResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountReport" + type="account:AccountReport" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="AccountReport"> + <xsd:sequence> + <xsd:element name="accountSummaries" + type="account:AccountSummary" maxOccurs="unbounded" /> + <xsd:element name="stockSummaries" + type="account:StockSummary" maxOccurs="unbounded" /> + + </xsd:sequence> + </xsd:complexType> + <xsd:complexType name="AccountSummary"> + <xsd:attribute name="accountNumber" type="xsd:string" /> + <xsd:attribute name="accountType" type="xsd:string" /> + <xsd:attribute name="balance" type="xsd:float" /> + </xsd:complexType> + + <xsd:complexType name="StockSummary"> + <!-- xsd:attribute name="id" type="xsd:int" / --> + <xsd:attribute name="purchaseLotNumber" type="xsd:int" /> + <!-- unique id for this purchase --> + <xsd:attribute name="symbol" type="xsd:string" /> + <xsd:attribute name="quantity" type="xsd:int" /> + <xsd:attribute name="purchaseDate" type="xsd:dateTime" /> + <xsd:attribute name="purchasePrice" type="xsd:float" /> + <xsd:attribute name="currentPrice" type="xsd:float" /> + <xsd:attribute name="company" type="xsd:string" /> + <xsd:attribute name="highPrice" type="xsd:float" /> + <xsd:attribute name="lowPrice" type="xsd:float" /> + + </xsd:complexType> + + <!-- Profile in data base --> + <xsd:element name="getCustomerProfile"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="loginID" type="xsd:string" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="CustomerProfileData"> + <xsd:sequence> + <xsd:element name="firstName" type="xsd:string" /> + <xsd:element name="lastName" type="xsd:string" /> + <xsd:element name="address" type="xsd:string" /> + <xsd:element name="email" type="xsd:string" /> + <xsd:element name="loginID" type="xsd:string" /> + <xsd:element name="password" type="xsd:string" /> + <xsd:element name="id" type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + + <xsd:element name="getCustomerProfileResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="withdraw"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountNumber" + type="xsd:string" /> + <xsd:element name="amount" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="withdrawResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="balance" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="deposit"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountNumber" + type="xsd:string" /> + <xsd:element name="amount" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="depositResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="balance" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="purchaseStock"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="id" type="xsd:int" /> + <xsd:element name="stock" type="account:StockSummary" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="purchaseStockResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="purchaseSummary" + type="account:StockSummary" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + + + <xsd:element name="sellStock"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="purchaseLotNumber" + type="xsd:int" /><!-- unique id for this purchase --> + <xsd:element name="quantity" type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="createAccount"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + <xsd:element name="createSavings" + type="xsd:boolean" /> + <xsd:element name="createCheckings" + type="xsd:boolean" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="createAccountResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + </xsd:sequence> + </xsd:complexType> + + </xsd:element> + + <xsd:element name="getAccountLog"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerID" + type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="getAccountLogResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountLog" + type="account:AccountLog" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="AccountLog"> + <xsd:sequence> + <xsd:element name="accountLogEntries" + type="account:AccountLogEntry" maxOccurs="unbounded" /> + <xsd:element name="stockLogEntries" + type="account:StockLogEntry" maxOccurs="unbounded" /> + + </xsd:sequence> + </xsd:complexType> + + <xsd:complexType name="AccountLogEntry"> + <xsd:attribute name="logSeqNo" type="xsd:int" /> + <xsd:attribute name="id" type="xsd:int" /> + <xsd:attribute name="accountNumber" type="xsd:string" /> + <xsd:attribute name="actionType" type="xsd:string" /> + <xsd:attribute name="amount" type="xsd:float" /> + </xsd:complexType> + + <xsd:complexType name="StockLogEntry"> + <xsd:attribute name="logSeqNo" type="xsd:int" /> + <xsd:attribute name="id" type="xsd:int" /> + <xsd:attribute name="symbol" type="xsd:string" /> + <xsd:attribute name="quantity" type="xsd:int" /> + <xsd:attribute name="actionType" type="xsd:string" /> + <xsd:attribute name="purchaseLotNumber" type="xsd:int" /> + </xsd:complexType> + + </xsd:schema> + </wsdl:types> + <wsdl:message name="getAccountReportRequest"> + <wsdl:part element="account:getAccountReport" + name="getAccountReportRequest" /> + </wsdl:message> + <wsdl:message name="getAccountReportResponse"> + <wsdl:part element="account:getAccountReportResponse" + name="getAccountReportResponse" /> + </wsdl:message> + + <wsdl:message name="getCustomerProfileRequest"> + <wsdl:part element="account:getCustomerProfile" + name="getCustomerProfile" /> + </wsdl:message> + <wsdl:message name="getCustomerProfileResponse"> + <wsdl:part element="account:getCustomerProfileResponse" + name="getCustomerProfileResponse" /> + </wsdl:message> + + <wsdl:message name="withdrawRequest"> + <wsdl:part element="account:withdraw" name="withdrawRequest" /> + </wsdl:message> + + <wsdl:message name="withdrawResponse"> + <wsdl:part element="account:withdrawResponse" + name="withdrawResponse" /> + </wsdl:message> + + <wsdl:message name="depositRequest"> + <wsdl:part element="account:deposit" name="depositRequest" /> + </wsdl:message> + + <wsdl:message name="depositResponse"> + <wsdl:part element="account:depositResponse" + name="depositResponse" /> + </wsdl:message> + + <wsdl:message name="purchaseStockRequest"> + <wsdl:part element="account:purchaseStock" + name="purchaseStockRequest" /> + </wsdl:message> + + <wsdl:message name="purchaseStockResponse"> + <wsdl:part element="account:purchaseStockResponse" + name="purchaseStockResponse" /> + </wsdl:message> + + <wsdl:message name="sellStockRequest"> + <wsdl:part element="account:sellStock" name="sellStockRequest" /> + </wsdl:message> + + <wsdl:message name="createAccountRequest"> + <wsdl:part element="account:createAccount" name="createAccountRequest" /> + </wsdl:message> + + <wsdl:message name="createAccountResponse"> + <wsdl:part element="account:createAccountResponse" name="createAccountResponse" /> + </wsdl:message> + + <wsdl:message name="getAccountLogRequest"> + <wsdl:part element="account:getAccountLog" + name="getAccountLogRequest" /> + </wsdl:message> + + <wsdl:message name="getAccountLogResponse"> + <wsdl:part element="account:getAccountLogResponse" + name="getAccountLogResponse" /> + </wsdl:message> + + <wsdl:portType name="AccountService"> + <wsdl:operation name="getAccountReport"> + <wsdl:input message="account:getAccountReportRequest" /> + <wsdl:output message="account:getAccountReportResponse" /> + </wsdl:operation> + + <wsdl:operation name="getCustomerProfile"> + <wsdl:input message="account:getCustomerProfileRequest" /> + <wsdl:output message="account:getCustomerProfileResponse" /> + </wsdl:operation> + + <wsdl:operation name="withdraw"> + <wsdl:input message="account:withdrawRequest" /> + <wsdl:output message="account:withdrawResponse" /> + </wsdl:operation> + + <wsdl:operation name="deposit"> + <wsdl:input message="account:depositRequest" /> + <wsdl:output message="account:depositResponse" /> + </wsdl:operation> + + <wsdl:operation name="purchaseStock"> + <wsdl:input message="account:purchaseStockRequest" /> + <wsdl:output message="account:purchaseStockResponse" /> + </wsdl:operation> + + <wsdl:operation name="sellStock"> + <wsdl:input message="account:sellStockRequest" /> + <wsdl:output message="account:purchaseStockResponse" /> + </wsdl:operation> + + + <wsdl:operation name="createAccount"> + <wsdl:input message="account:createAccountRequest" /> + <wsdl:output message="account:createAccountResponse" /> + </wsdl:operation> + + <wsdl:operation name="getAccountLog"> + <wsdl:input message="account:getAccountLogRequest" /> + <wsdl:output message="account:getAccountLogResponse" /> + </wsdl:operation> + + </wsdl:portType> + + + + <wsdl:binding name="AccountServiceSOAP" type="account:AccountService"> + <soap:binding style="document" + transport="http://schemas.xmlsoap.org/soap/http" /> + <wsdl:operation name="getAccountReport"> + <soap:operation + soapAction="http://www.bigbank.com/account/getAccountReport" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + <wsdl:operation name="getCustomerProfile"> + <soap:operation + soapAction="http://www.bigbank.com/account/getCustomerProfile" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="withdraw"> + <soap:operation + soapAction="http://www.bigbank.com/account/withdraw" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="deposit"> + <soap:operation + soapAction="http://www.bigbank.com/account/deposit" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="purchaseStock"> + <soap:operation + soapAction="http://www.bigbank.com/account/purchaseStock" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="sellStock"> + <soap:operation + soapAction="http://www.bigbank.com/account/sellStock" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="createAccount"> + <soap:operation + soapAction="http://www.bigbank.com/account/createAccount" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="getAccountLog"> + <soap:operation + soapAction="http://www.bigbank.com/account/getAccountLog" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + </wsdl:binding> + <wsdl:service name="AccountService"> + <wsdl:port binding="account:AccountServiceSOAP" + name="AccountServiceSOAP"> + <soap:address + location="http://localhost:8080/services/AccountService1a2b3b4a" /> + </wsdl:port> + </wsdl:service> +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1a2b3b4b.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1a2b3b4b.wsdl new file mode 100644 index 0000000000..dd2a8497e0 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1a2b3b4b.wsdl @@ -0,0 +1,467 @@ +<?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:soap="http://schemas.xmlsoap.org/wsdl/soap/" + xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:account="http://www.bigbank.com/account" + targetNamespace="http://www.bigbank.com/account" + name="AccountService"> + + <wsdl:types> + <xsd:schema targetNamespace="http://www.bigbank.com/account" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:account="http://www.bigbank.com/account" + + > <!-- xmlns:sdojava="commonj.sdo/java" sdojava:package="org.apache.tuscany.samples.bigbank.account" --> + + +<!-- <xsd:complexType name="DataGraphRoot"> + <xsd:sequence> + <xsd:element name="customerProfileData" type="account:CustomerProfileData" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="StockSummaries" type="account:StockSummary" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="AccountSummaries" type="account:AccountSummary" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="StockLogEntries" type="account:StockLogEntry" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="AccountLogEntries" type="account:AccountLogEntry" maxOccurs="unbounded" minOccurs="0" /> + </xsd:sequence> + </xsd:complexType>--> + + + <xsd:element name="getAccountReport"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerID" + type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="getAccountReportResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountReport" + type="account:AccountReport" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="AccountReport"> + <xsd:sequence> + <xsd:element name="accountSummaries" + type="account:AccountSummary" maxOccurs="unbounded" /> + <xsd:element name="stockSummaries" + type="account:StockSummary" maxOccurs="unbounded" /> + + </xsd:sequence> + </xsd:complexType> + <xsd:complexType name="AccountSummary"> + <xsd:attribute name="accountNumber" type="xsd:string" /> + <xsd:attribute name="accountType" type="xsd:string" /> + <xsd:attribute name="balance" type="xsd:float" /> + </xsd:complexType> + + <xsd:complexType name="StockSummary"> + <!-- xsd:attribute name="id" type="xsd:int" / --> + <xsd:attribute name="purchaseLotNumber" type="xsd:int" /> + <!-- unique id for this purchase --> + <xsd:attribute name="symbol" type="xsd:string" /> + <xsd:attribute name="quantity" type="xsd:int" /> + <xsd:attribute name="purchaseDate" type="xsd:dateTime" /> + <xsd:attribute name="purchasePrice" type="xsd:float" /> + <xsd:attribute name="currentPrice" type="xsd:float" /> + <xsd:attribute name="company" type="xsd:string" /> + <xsd:attribute name="highPrice" type="xsd:float" /> + <xsd:attribute name="lowPrice" type="xsd:float" /> + + </xsd:complexType> + + <!-- Profile in data base --> + <xsd:element name="getCustomerProfile"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="loginID" type="xsd:string" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="CustomerProfileData"> + <xsd:sequence> + <xsd:element name="firstName" type="xsd:string" /> + <xsd:element name="lastName" type="xsd:string" /> + <xsd:element name="address" type="xsd:string" /> + <xsd:element name="email" type="xsd:string" /> + <xsd:element name="loginID" type="xsd:string" /> + <xsd:element name="password" type="xsd:string" /> + <xsd:element name="id" type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + + <xsd:element name="getCustomerProfileResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="withdraw"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountNumber" + type="xsd:string" /> + <xsd:element name="amount" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="withdrawResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="balance" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="deposit"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountNumber" + type="xsd:string" /> + <xsd:element name="amount" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="depositResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="balance" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="purchaseStock"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="id" type="xsd:int" /> + <xsd:element name="stock" type="account:StockSummary" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="purchaseStockResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="purchaseSummary" + type="account:StockSummary" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + + + <xsd:element name="sellStock"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="purchaseLotNumber" + type="xsd:int" /><!-- unique id for this purchase --> + <xsd:element name="quantity" type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="createAccount"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + <xsd:element name="createSavings" + type="xsd:boolean" /> + <xsd:element name="createCheckings" + type="xsd:boolean" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="createAccountResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + </xsd:sequence> + </xsd:complexType> + + </xsd:element> + + <xsd:element name="getAccountLog"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerID" + type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="getAccountLogResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountLog" + type="account:AccountLog" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="AccountLog"> + <xsd:sequence> + <xsd:element name="accountLogEntries" + type="account:AccountLogEntry" maxOccurs="unbounded" /> + <xsd:element name="stockLogEntries" + type="account:StockLogEntry" maxOccurs="unbounded" /> + + </xsd:sequence> + </xsd:complexType> + + <xsd:complexType name="AccountLogEntry"> + <xsd:attribute name="logSeqNo" type="xsd:int" /> + <xsd:attribute name="id" type="xsd:int" /> + <xsd:attribute name="accountNumber" type="xsd:string" /> + <xsd:attribute name="actionType" type="xsd:string" /> + <xsd:attribute name="amount" type="xsd:float" /> + </xsd:complexType> + + <xsd:complexType name="StockLogEntry"> + <xsd:attribute name="logSeqNo" type="xsd:int" /> + <xsd:attribute name="id" type="xsd:int" /> + <xsd:attribute name="symbol" type="xsd:string" /> + <xsd:attribute name="quantity" type="xsd:int" /> + <xsd:attribute name="actionType" type="xsd:string" /> + <xsd:attribute name="purchaseLotNumber" type="xsd:int" /> + </xsd:complexType> + + </xsd:schema> + </wsdl:types> + <wsdl:message name="getAccountReportRequest"> + <wsdl:part element="account:getAccountReport" + name="getAccountReportRequest" /> + </wsdl:message> + <wsdl:message name="getAccountReportResponse"> + <wsdl:part element="account:getAccountReportResponse" + name="getAccountReportResponse" /> + </wsdl:message> + + <wsdl:message name="getCustomerProfileRequest"> + <wsdl:part element="account:getCustomerProfile" + name="getCustomerProfile" /> + </wsdl:message> + <wsdl:message name="getCustomerProfileResponse"> + <wsdl:part element="account:getCustomerProfileResponse" + name="getCustomerProfileResponse" /> + </wsdl:message> + + <wsdl:message name="withdrawRequest"> + <wsdl:part element="account:withdraw" name="withdrawRequest" /> + </wsdl:message> + + <wsdl:message name="withdrawResponse"> + <wsdl:part element="account:withdrawResponse" + name="withdrawResponse" /> + </wsdl:message> + + <wsdl:message name="depositRequest"> + <wsdl:part element="account:deposit" name="depositRequest" /> + </wsdl:message> + + <wsdl:message name="depositResponse"> + <wsdl:part element="account:depositResponse" + name="depositResponse" /> + </wsdl:message> + + <wsdl:message name="purchaseStockRequest"> + <wsdl:part element="account:purchaseStock" + name="purchaseStockRequest" /> + </wsdl:message> + + <wsdl:message name="purchaseStockResponse"> + <wsdl:part element="account:purchaseStockResponse" + name="purchaseStockResponse" /> + </wsdl:message> + + <wsdl:message name="sellStockRequest"> + <wsdl:part element="account:sellStock" name="sellStockRequest" /> + </wsdl:message> + + <wsdl:message name="createAccountRequest"> + <wsdl:part element="account:createAccount" name="createAccountRequest" /> + </wsdl:message> + + <wsdl:message name="createAccountResponse"> + <wsdl:part element="account:createAccountResponse" name="createAccountResponse" /> + </wsdl:message> + + <wsdl:message name="getAccountLogRequest"> + <wsdl:part element="account:getAccountLog" + name="getAccountLogRequest" /> + </wsdl:message> + + <wsdl:message name="getAccountLogResponse"> + <wsdl:part element="account:getAccountLogResponse" + name="getAccountLogResponse" /> + </wsdl:message> + + <wsdl:portType name="AccountService"> + <wsdl:operation name="getAccountReport"> + <wsdl:input message="account:getAccountReportRequest" /> + <wsdl:output message="account:getAccountReportResponse" /> + </wsdl:operation> + + <wsdl:operation name="getCustomerProfile"> + <wsdl:input message="account:getCustomerProfileRequest" /> + <wsdl:output message="account:getCustomerProfileResponse" /> + </wsdl:operation> + + <wsdl:operation name="withdraw"> + <wsdl:input message="account:withdrawRequest" /> + <wsdl:output message="account:withdrawResponse" /> + </wsdl:operation> + + <wsdl:operation name="deposit"> + <wsdl:input message="account:depositRequest" /> + <wsdl:output message="account:depositResponse" /> + </wsdl:operation> + + <wsdl:operation name="purchaseStock"> + <wsdl:input message="account:purchaseStockRequest" /> + <wsdl:output message="account:purchaseStockResponse" /> + </wsdl:operation> + + <wsdl:operation name="sellStock"> + <wsdl:input message="account:sellStockRequest" /> + <wsdl:output message="account:purchaseStockResponse" /> + </wsdl:operation> + + + <wsdl:operation name="createAccount"> + <wsdl:input message="account:createAccountRequest" /> + <wsdl:output message="account:createAccountResponse" /> + </wsdl:operation> + + <wsdl:operation name="getAccountLog"> + <wsdl:input message="account:getAccountLogRequest" /> + <wsdl:output message="account:getAccountLogResponse" /> + </wsdl:operation> + + </wsdl:portType> + + + + <wsdl:binding name="AccountServiceSOAP" type="account:AccountService"> + <soap:binding style="document" + transport="http://schemas.xmlsoap.org/soap/http" /> + <wsdl:operation name="getAccountReport"> + <soap:operation + soapAction="http://www.bigbank.com/account/getAccountReport" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + <wsdl:operation name="getCustomerProfile"> + <soap:operation + soapAction="http://www.bigbank.com/account/getCustomerProfile" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="withdraw"> + <soap:operation + soapAction="http://www.bigbank.com/account/withdraw" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="deposit"> + <soap:operation + soapAction="http://www.bigbank.com/account/deposit" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="purchaseStock"> + <soap:operation + soapAction="http://www.bigbank.com/account/purchaseStock" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="sellStock"> + <soap:operation + soapAction="http://www.bigbank.com/account/sellStock" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="createAccount"> + <soap:operation + soapAction="http://www.bigbank.com/account/createAccount" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="getAccountLog"> + <soap:operation + soapAction="http://www.bigbank.com/account/getAccountLog" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + </wsdl:binding> + <wsdl:service name="AccountService"> + <wsdl:port binding="account:AccountServiceSOAP" + name="AccountServiceSOAP"> + <soap:address + location="http://localhost:8080/services/AccountService1a2b3b4b" /> + </wsdl:port> + </wsdl:service> +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1b2a3a4a.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1b2a3a4a.wsdl new file mode 100644 index 0000000000..a8d211230d --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1b2a3a4a.wsdl @@ -0,0 +1,467 @@ +<?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:soap="http://schemas.xmlsoap.org/wsdl/soap/" + xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:account="http://www.bigbank.com/account" + targetNamespace="http://www.bigbank.com/account" + name="AccountService"> + + <wsdl:types> + <xsd:schema targetNamespace="http://www.bigbank.com/account" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:account="http://www.bigbank.com/account" + + > <!-- xmlns:sdojava="commonj.sdo/java" sdojava:package="org.apache.tuscany.samples.bigbank.account" --> + + +<!-- <xsd:complexType name="DataGraphRoot"> + <xsd:sequence> + <xsd:element name="customerProfileData" type="account:CustomerProfileData" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="StockSummaries" type="account:StockSummary" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="AccountSummaries" type="account:AccountSummary" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="StockLogEntries" type="account:StockLogEntry" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="AccountLogEntries" type="account:AccountLogEntry" maxOccurs="unbounded" minOccurs="0" /> + </xsd:sequence> + </xsd:complexType>--> + + + <xsd:element name="getAccountReport"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerID" + type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="getAccountReportResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountReport" + type="account:AccountReport" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="AccountReport"> + <xsd:sequence> + <xsd:element name="accountSummaries" + type="account:AccountSummary" maxOccurs="unbounded" /> + <xsd:element name="stockSummaries" + type="account:StockSummary" maxOccurs="unbounded" /> + + </xsd:sequence> + </xsd:complexType> + <xsd:complexType name="AccountSummary"> + <xsd:attribute name="accountNumber" type="xsd:string" /> + <xsd:attribute name="accountType" type="xsd:string" /> + <xsd:attribute name="balance" type="xsd:float" /> + </xsd:complexType> + + <xsd:complexType name="StockSummary"> + <!-- xsd:attribute name="id" type="xsd:int" / --> + <xsd:attribute name="purchaseLotNumber" type="xsd:int" /> + <!-- unique id for this purchase --> + <xsd:attribute name="symbol" type="xsd:string" /> + <xsd:attribute name="quantity" type="xsd:int" /> + <xsd:attribute name="purchaseDate" type="xsd:dateTime" /> + <xsd:attribute name="purchasePrice" type="xsd:float" /> + <xsd:attribute name="currentPrice" type="xsd:float" /> + <xsd:attribute name="company" type="xsd:string" /> + <xsd:attribute name="highPrice" type="xsd:float" /> + <xsd:attribute name="lowPrice" type="xsd:float" /> + + </xsd:complexType> + + <!-- Profile in data base --> + <xsd:element name="getCustomerProfile"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="loginID" type="xsd:string" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="CustomerProfileData"> + <xsd:sequence> + <xsd:element name="firstName" type="xsd:string" /> + <xsd:element name="lastName" type="xsd:string" /> + <xsd:element name="address" type="xsd:string" /> + <xsd:element name="email" type="xsd:string" /> + <xsd:element name="loginID" type="xsd:string" /> + <xsd:element name="password" type="xsd:string" /> + <xsd:element name="id" type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + + <xsd:element name="getCustomerProfileResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="withdraw"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountNumber" + type="xsd:string" /> + <xsd:element name="amount" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="withdrawResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="balance" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="deposit"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountNumber" + type="xsd:string" /> + <xsd:element name="amount" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="depositResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="balance" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="purchaseStock"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="id" type="xsd:int" /> + <xsd:element name="stock" type="account:StockSummary" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="purchaseStockResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="purchaseSummary" + type="account:StockSummary" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + + + <xsd:element name="sellStock"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="purchaseLotNumber" + type="xsd:int" /><!-- unique id for this purchase --> + <xsd:element name="quantity" type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="createAccount"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + <xsd:element name="createSavings" + type="xsd:boolean" /> + <xsd:element name="createCheckings" + type="xsd:boolean" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="createAccountResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + </xsd:sequence> + </xsd:complexType> + + </xsd:element> + + <xsd:element name="getAccountLog"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerID" + type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="getAccountLogResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountLog" + type="account:AccountLog" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="AccountLog"> + <xsd:sequence> + <xsd:element name="accountLogEntries" + type="account:AccountLogEntry" maxOccurs="unbounded" /> + <xsd:element name="stockLogEntries" + type="account:StockLogEntry" maxOccurs="unbounded" /> + + </xsd:sequence> + </xsd:complexType> + + <xsd:complexType name="AccountLogEntry"> + <xsd:attribute name="logSeqNo" type="xsd:int" /> + <xsd:attribute name="id" type="xsd:int" /> + <xsd:attribute name="accountNumber" type="xsd:string" /> + <xsd:attribute name="actionType" type="xsd:string" /> + <xsd:attribute name="amount" type="xsd:float" /> + </xsd:complexType> + + <xsd:complexType name="StockLogEntry"> + <xsd:attribute name="logSeqNo" type="xsd:int" /> + <xsd:attribute name="id" type="xsd:int" /> + <xsd:attribute name="symbol" type="xsd:string" /> + <xsd:attribute name="quantity" type="xsd:int" /> + <xsd:attribute name="actionType" type="xsd:string" /> + <xsd:attribute name="purchaseLotNumber" type="xsd:int" /> + </xsd:complexType> + + </xsd:schema> + </wsdl:types> + <wsdl:message name="getAccountReportRequest"> + <wsdl:part element="account:getAccountReport" + name="getAccountReportRequest" /> + </wsdl:message> + <wsdl:message name="getAccountReportResponse"> + <wsdl:part element="account:getAccountReportResponse" + name="getAccountReportResponse" /> + </wsdl:message> + + <wsdl:message name="getCustomerProfileRequest"> + <wsdl:part element="account:getCustomerProfile" + name="getCustomerProfile" /> + </wsdl:message> + <wsdl:message name="getCustomerProfileResponse"> + <wsdl:part element="account:getCustomerProfileResponse" + name="getCustomerProfileResponse" /> + </wsdl:message> + + <wsdl:message name="withdrawRequest"> + <wsdl:part element="account:withdraw" name="withdrawRequest" /> + </wsdl:message> + + <wsdl:message name="withdrawResponse"> + <wsdl:part element="account:withdrawResponse" + name="withdrawResponse" /> + </wsdl:message> + + <wsdl:message name="depositRequest"> + <wsdl:part element="account:deposit" name="depositRequest" /> + </wsdl:message> + + <wsdl:message name="depositResponse"> + <wsdl:part element="account:depositResponse" + name="depositResponse" /> + </wsdl:message> + + <wsdl:message name="purchaseStockRequest"> + <wsdl:part element="account:purchaseStock" + name="purchaseStockRequest" /> + </wsdl:message> + + <wsdl:message name="purchaseStockResponse"> + <wsdl:part element="account:purchaseStockResponse" + name="purchaseStockResponse" /> + </wsdl:message> + + <wsdl:message name="sellStockRequest"> + <wsdl:part element="account:sellStock" name="sellStockRequest" /> + </wsdl:message> + + <wsdl:message name="createAccountRequest"> + <wsdl:part element="account:createAccount" name="createAccountRequest" /> + </wsdl:message> + + <wsdl:message name="createAccountResponse"> + <wsdl:part element="account:createAccountResponse" name="createAccountResponse" /> + </wsdl:message> + + <wsdl:message name="getAccountLogRequest"> + <wsdl:part element="account:getAccountLog" + name="getAccountLogRequest" /> + </wsdl:message> + + <wsdl:message name="getAccountLogResponse"> + <wsdl:part element="account:getAccountLogResponse" + name="getAccountLogResponse" /> + </wsdl:message> + + <wsdl:portType name="AccountService"> + <wsdl:operation name="getAccountReport"> + <wsdl:input message="account:getAccountReportRequest" /> + <wsdl:output message="account:getAccountReportResponse" /> + </wsdl:operation> + + <wsdl:operation name="getCustomerProfile"> + <wsdl:input message="account:getCustomerProfileRequest" /> + <wsdl:output message="account:getCustomerProfileResponse" /> + </wsdl:operation> + + <wsdl:operation name="withdraw"> + <wsdl:input message="account:withdrawRequest" /> + <wsdl:output message="account:withdrawResponse" /> + </wsdl:operation> + + <wsdl:operation name="deposit"> + <wsdl:input message="account:depositRequest" /> + <wsdl:output message="account:depositResponse" /> + </wsdl:operation> + + <wsdl:operation name="purchaseStock"> + <wsdl:input message="account:purchaseStockRequest" /> + <wsdl:output message="account:purchaseStockResponse" /> + </wsdl:operation> + + <wsdl:operation name="sellStock"> + <wsdl:input message="account:sellStockRequest" /> + <wsdl:output message="account:purchaseStockResponse" /> + </wsdl:operation> + + + <wsdl:operation name="createAccount"> + <wsdl:input message="account:createAccountRequest" /> + <wsdl:output message="account:createAccountResponse" /> + </wsdl:operation> + + <wsdl:operation name="getAccountLog"> + <wsdl:input message="account:getAccountLogRequest" /> + <wsdl:output message="account:getAccountLogResponse" /> + </wsdl:operation> + + </wsdl:portType> + + + + <wsdl:binding name="AccountServiceSOAP" type="account:AccountService"> + <soap:binding style="document" + transport="http://schemas.xmlsoap.org/soap/http" /> + <wsdl:operation name="getAccountReport"> + <soap:operation + soapAction="http://www.bigbank.com/account/getAccountReport" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + <wsdl:operation name="getCustomerProfile"> + <soap:operation + soapAction="http://www.bigbank.com/account/getCustomerProfile" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="withdraw"> + <soap:operation + soapAction="http://www.bigbank.com/account/withdraw" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="deposit"> + <soap:operation + soapAction="http://www.bigbank.com/account/deposit" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="purchaseStock"> + <soap:operation + soapAction="http://www.bigbank.com/account/purchaseStock" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="sellStock"> + <soap:operation + soapAction="http://www.bigbank.com/account/sellStock" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="createAccount"> + <soap:operation + soapAction="http://www.bigbank.com/account/createAccount" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="getAccountLog"> + <soap:operation + soapAction="http://www.bigbank.com/account/getAccountLog" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + </wsdl:binding> + <wsdl:service name="AccountService"> + <wsdl:port binding="account:AccountServiceSOAP" + name="AccountServiceSOAP"> + <soap:address + location="http://localhost:8080/services/AccountService1b2a3a4a" /> + </wsdl:port> + </wsdl:service> +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1b2a3a4b.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1b2a3a4b.wsdl new file mode 100644 index 0000000000..9622d55219 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1b2a3a4b.wsdl @@ -0,0 +1,467 @@ +<?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:soap="http://schemas.xmlsoap.org/wsdl/soap/" + xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:account="http://www.bigbank.com/account" + targetNamespace="http://www.bigbank.com/account" + name="AccountService"> + + <wsdl:types> + <xsd:schema targetNamespace="http://www.bigbank.com/account" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:account="http://www.bigbank.com/account" + + > <!-- xmlns:sdojava="commonj.sdo/java" sdojava:package="org.apache.tuscany.samples.bigbank.account" --> + + +<!-- <xsd:complexType name="DataGraphRoot"> + <xsd:sequence> + <xsd:element name="customerProfileData" type="account:CustomerProfileData" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="StockSummaries" type="account:StockSummary" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="AccountSummaries" type="account:AccountSummary" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="StockLogEntries" type="account:StockLogEntry" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="AccountLogEntries" type="account:AccountLogEntry" maxOccurs="unbounded" minOccurs="0" /> + </xsd:sequence> + </xsd:complexType>--> + + + <xsd:element name="getAccountReport"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerID" + type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="getAccountReportResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountReport" + type="account:AccountReport" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="AccountReport"> + <xsd:sequence> + <xsd:element name="accountSummaries" + type="account:AccountSummary" maxOccurs="unbounded" /> + <xsd:element name="stockSummaries" + type="account:StockSummary" maxOccurs="unbounded" /> + + </xsd:sequence> + </xsd:complexType> + <xsd:complexType name="AccountSummary"> + <xsd:attribute name="accountNumber" type="xsd:string" /> + <xsd:attribute name="accountType" type="xsd:string" /> + <xsd:attribute name="balance" type="xsd:float" /> + </xsd:complexType> + + <xsd:complexType name="StockSummary"> + <!-- xsd:attribute name="id" type="xsd:int" / --> + <xsd:attribute name="purchaseLotNumber" type="xsd:int" /> + <!-- unique id for this purchase --> + <xsd:attribute name="symbol" type="xsd:string" /> + <xsd:attribute name="quantity" type="xsd:int" /> + <xsd:attribute name="purchaseDate" type="xsd:dateTime" /> + <xsd:attribute name="purchasePrice" type="xsd:float" /> + <xsd:attribute name="currentPrice" type="xsd:float" /> + <xsd:attribute name="company" type="xsd:string" /> + <xsd:attribute name="highPrice" type="xsd:float" /> + <xsd:attribute name="lowPrice" type="xsd:float" /> + + </xsd:complexType> + + <!-- Profile in data base --> + <xsd:element name="getCustomerProfile"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="loginID" type="xsd:string" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="CustomerProfileData"> + <xsd:sequence> + <xsd:element name="firstName" type="xsd:string" /> + <xsd:element name="lastName" type="xsd:string" /> + <xsd:element name="address" type="xsd:string" /> + <xsd:element name="email" type="xsd:string" /> + <xsd:element name="loginID" type="xsd:string" /> + <xsd:element name="password" type="xsd:string" /> + <xsd:element name="id" type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + + <xsd:element name="getCustomerProfileResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="withdraw"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountNumber" + type="xsd:string" /> + <xsd:element name="amount" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="withdrawResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="balance" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="deposit"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountNumber" + type="xsd:string" /> + <xsd:element name="amount" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="depositResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="balance" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="purchaseStock"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="id" type="xsd:int" /> + <xsd:element name="stock" type="account:StockSummary" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="purchaseStockResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="purchaseSummary" + type="account:StockSummary" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + + + <xsd:element name="sellStock"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="purchaseLotNumber" + type="xsd:int" /><!-- unique id for this purchase --> + <xsd:element name="quantity" type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="createAccount"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + <xsd:element name="createSavings" + type="xsd:boolean" /> + <xsd:element name="createCheckings" + type="xsd:boolean" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="createAccountResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + </xsd:sequence> + </xsd:complexType> + + </xsd:element> + + <xsd:element name="getAccountLog"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerID" + type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="getAccountLogResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountLog" + type="account:AccountLog" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="AccountLog"> + <xsd:sequence> + <xsd:element name="accountLogEntries" + type="account:AccountLogEntry" maxOccurs="unbounded" /> + <xsd:element name="stockLogEntries" + type="account:StockLogEntry" maxOccurs="unbounded" /> + + </xsd:sequence> + </xsd:complexType> + + <xsd:complexType name="AccountLogEntry"> + <xsd:attribute name="logSeqNo" type="xsd:int" /> + <xsd:attribute name="id" type="xsd:int" /> + <xsd:attribute name="accountNumber" type="xsd:string" /> + <xsd:attribute name="actionType" type="xsd:string" /> + <xsd:attribute name="amount" type="xsd:float" /> + </xsd:complexType> + + <xsd:complexType name="StockLogEntry"> + <xsd:attribute name="logSeqNo" type="xsd:int" /> + <xsd:attribute name="id" type="xsd:int" /> + <xsd:attribute name="symbol" type="xsd:string" /> + <xsd:attribute name="quantity" type="xsd:int" /> + <xsd:attribute name="actionType" type="xsd:string" /> + <xsd:attribute name="purchaseLotNumber" type="xsd:int" /> + </xsd:complexType> + + </xsd:schema> + </wsdl:types> + <wsdl:message name="getAccountReportRequest"> + <wsdl:part element="account:getAccountReport" + name="getAccountReportRequest" /> + </wsdl:message> + <wsdl:message name="getAccountReportResponse"> + <wsdl:part element="account:getAccountReportResponse" + name="getAccountReportResponse" /> + </wsdl:message> + + <wsdl:message name="getCustomerProfileRequest"> + <wsdl:part element="account:getCustomerProfile" + name="getCustomerProfile" /> + </wsdl:message> + <wsdl:message name="getCustomerProfileResponse"> + <wsdl:part element="account:getCustomerProfileResponse" + name="getCustomerProfileResponse" /> + </wsdl:message> + + <wsdl:message name="withdrawRequest"> + <wsdl:part element="account:withdraw" name="withdrawRequest" /> + </wsdl:message> + + <wsdl:message name="withdrawResponse"> + <wsdl:part element="account:withdrawResponse" + name="withdrawResponse" /> + </wsdl:message> + + <wsdl:message name="depositRequest"> + <wsdl:part element="account:deposit" name="depositRequest" /> + </wsdl:message> + + <wsdl:message name="depositResponse"> + <wsdl:part element="account:depositResponse" + name="depositResponse" /> + </wsdl:message> + + <wsdl:message name="purchaseStockRequest"> + <wsdl:part element="account:purchaseStock" + name="purchaseStockRequest" /> + </wsdl:message> + + <wsdl:message name="purchaseStockResponse"> + <wsdl:part element="account:purchaseStockResponse" + name="purchaseStockResponse" /> + </wsdl:message> + + <wsdl:message name="sellStockRequest"> + <wsdl:part element="account:sellStock" name="sellStockRequest" /> + </wsdl:message> + + <wsdl:message name="createAccountRequest"> + <wsdl:part element="account:createAccount" name="createAccountRequest" /> + </wsdl:message> + + <wsdl:message name="createAccountResponse"> + <wsdl:part element="account:createAccountResponse" name="createAccountResponse" /> + </wsdl:message> + + <wsdl:message name="getAccountLogRequest"> + <wsdl:part element="account:getAccountLog" + name="getAccountLogRequest" /> + </wsdl:message> + + <wsdl:message name="getAccountLogResponse"> + <wsdl:part element="account:getAccountLogResponse" + name="getAccountLogResponse" /> + </wsdl:message> + + <wsdl:portType name="AccountService"> + <wsdl:operation name="getAccountReport"> + <wsdl:input message="account:getAccountReportRequest" /> + <wsdl:output message="account:getAccountReportResponse" /> + </wsdl:operation> + + <wsdl:operation name="getCustomerProfile"> + <wsdl:input message="account:getCustomerProfileRequest" /> + <wsdl:output message="account:getCustomerProfileResponse" /> + </wsdl:operation> + + <wsdl:operation name="withdraw"> + <wsdl:input message="account:withdrawRequest" /> + <wsdl:output message="account:withdrawResponse" /> + </wsdl:operation> + + <wsdl:operation name="deposit"> + <wsdl:input message="account:depositRequest" /> + <wsdl:output message="account:depositResponse" /> + </wsdl:operation> + + <wsdl:operation name="purchaseStock"> + <wsdl:input message="account:purchaseStockRequest" /> + <wsdl:output message="account:purchaseStockResponse" /> + </wsdl:operation> + + <wsdl:operation name="sellStock"> + <wsdl:input message="account:sellStockRequest" /> + <wsdl:output message="account:purchaseStockResponse" /> + </wsdl:operation> + + + <wsdl:operation name="createAccount"> + <wsdl:input message="account:createAccountRequest" /> + <wsdl:output message="account:createAccountResponse" /> + </wsdl:operation> + + <wsdl:operation name="getAccountLog"> + <wsdl:input message="account:getAccountLogRequest" /> + <wsdl:output message="account:getAccountLogResponse" /> + </wsdl:operation> + + </wsdl:portType> + + + + <wsdl:binding name="AccountServiceSOAP" type="account:AccountService"> + <soap:binding style="document" + transport="http://schemas.xmlsoap.org/soap/http" /> + <wsdl:operation name="getAccountReport"> + <soap:operation + soapAction="http://www.bigbank.com/account/getAccountReport" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + <wsdl:operation name="getCustomerProfile"> + <soap:operation + soapAction="http://www.bigbank.com/account/getCustomerProfile" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="withdraw"> + <soap:operation + soapAction="http://www.bigbank.com/account/withdraw" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="deposit"> + <soap:operation + soapAction="http://www.bigbank.com/account/deposit" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="purchaseStock"> + <soap:operation + soapAction="http://www.bigbank.com/account/purchaseStock" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="sellStock"> + <soap:operation + soapAction="http://www.bigbank.com/account/sellStock" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="createAccount"> + <soap:operation + soapAction="http://www.bigbank.com/account/createAccount" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="getAccountLog"> + <soap:operation + soapAction="http://www.bigbank.com/account/getAccountLog" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + </wsdl:binding> + <wsdl:service name="AccountService"> + <wsdl:port binding="account:AccountServiceSOAP" + name="AccountServiceSOAP"> + <soap:address + location="http://localhost:8080/services/AccountService1b2a3a4b" /> + </wsdl:port> + </wsdl:service> +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1b2a3b4a.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1b2a3b4a.wsdl new file mode 100644 index 0000000000..2b5bf5d1a6 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1b2a3b4a.wsdl @@ -0,0 +1,467 @@ +<?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:soap="http://schemas.xmlsoap.org/wsdl/soap/" + xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:account="http://www.bigbank.com/account" + targetNamespace="http://www.bigbank.com/account" + name="AccountService"> + + <wsdl:types> + <xsd:schema targetNamespace="http://www.bigbank.com/account" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:account="http://www.bigbank.com/account" + + > <!-- xmlns:sdojava="commonj.sdo/java" sdojava:package="org.apache.tuscany.samples.bigbank.account" --> + + +<!-- <xsd:complexType name="DataGraphRoot"> + <xsd:sequence> + <xsd:element name="customerProfileData" type="account:CustomerProfileData" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="StockSummaries" type="account:StockSummary" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="AccountSummaries" type="account:AccountSummary" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="StockLogEntries" type="account:StockLogEntry" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="AccountLogEntries" type="account:AccountLogEntry" maxOccurs="unbounded" minOccurs="0" /> + </xsd:sequence> + </xsd:complexType>--> + + + <xsd:element name="getAccountReport"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerID" + type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="getAccountReportResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountReport" + type="account:AccountReport" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="AccountReport"> + <xsd:sequence> + <xsd:element name="accountSummaries" + type="account:AccountSummary" maxOccurs="unbounded" /> + <xsd:element name="stockSummaries" + type="account:StockSummary" maxOccurs="unbounded" /> + + </xsd:sequence> + </xsd:complexType> + <xsd:complexType name="AccountSummary"> + <xsd:attribute name="accountNumber" type="xsd:string" /> + <xsd:attribute name="accountType" type="xsd:string" /> + <xsd:attribute name="balance" type="xsd:float" /> + </xsd:complexType> + + <xsd:complexType name="StockSummary"> + <!-- xsd:attribute name="id" type="xsd:int" / --> + <xsd:attribute name="purchaseLotNumber" type="xsd:int" /> + <!-- unique id for this purchase --> + <xsd:attribute name="symbol" type="xsd:string" /> + <xsd:attribute name="quantity" type="xsd:int" /> + <xsd:attribute name="purchaseDate" type="xsd:dateTime" /> + <xsd:attribute name="purchasePrice" type="xsd:float" /> + <xsd:attribute name="currentPrice" type="xsd:float" /> + <xsd:attribute name="company" type="xsd:string" /> + <xsd:attribute name="highPrice" type="xsd:float" /> + <xsd:attribute name="lowPrice" type="xsd:float" /> + + </xsd:complexType> + + <!-- Profile in data base --> + <xsd:element name="getCustomerProfile"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="loginID" type="xsd:string" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="CustomerProfileData"> + <xsd:sequence> + <xsd:element name="firstName" type="xsd:string" /> + <xsd:element name="lastName" type="xsd:string" /> + <xsd:element name="address" type="xsd:string" /> + <xsd:element name="email" type="xsd:string" /> + <xsd:element name="loginID" type="xsd:string" /> + <xsd:element name="password" type="xsd:string" /> + <xsd:element name="id" type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + + <xsd:element name="getCustomerProfileResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="withdraw"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountNumber" + type="xsd:string" /> + <xsd:element name="amount" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="withdrawResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="balance" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="deposit"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountNumber" + type="xsd:string" /> + <xsd:element name="amount" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="depositResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="balance" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="purchaseStock"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="id" type="xsd:int" /> + <xsd:element name="stock" type="account:StockSummary" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="purchaseStockResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="purchaseSummary" + type="account:StockSummary" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + + + <xsd:element name="sellStock"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="purchaseLotNumber" + type="xsd:int" /><!-- unique id for this purchase --> + <xsd:element name="quantity" type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="createAccount"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + <xsd:element name="createSavings" + type="xsd:boolean" /> + <xsd:element name="createCheckings" + type="xsd:boolean" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="createAccountResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + </xsd:sequence> + </xsd:complexType> + + </xsd:element> + + <xsd:element name="getAccountLog"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerID" + type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="getAccountLogResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountLog" + type="account:AccountLog" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="AccountLog"> + <xsd:sequence> + <xsd:element name="accountLogEntries" + type="account:AccountLogEntry" maxOccurs="unbounded" /> + <xsd:element name="stockLogEntries" + type="account:StockLogEntry" maxOccurs="unbounded" /> + + </xsd:sequence> + </xsd:complexType> + + <xsd:complexType name="AccountLogEntry"> + <xsd:attribute name="logSeqNo" type="xsd:int" /> + <xsd:attribute name="id" type="xsd:int" /> + <xsd:attribute name="accountNumber" type="xsd:string" /> + <xsd:attribute name="actionType" type="xsd:string" /> + <xsd:attribute name="amount" type="xsd:float" /> + </xsd:complexType> + + <xsd:complexType name="StockLogEntry"> + <xsd:attribute name="logSeqNo" type="xsd:int" /> + <xsd:attribute name="id" type="xsd:int" /> + <xsd:attribute name="symbol" type="xsd:string" /> + <xsd:attribute name="quantity" type="xsd:int" /> + <xsd:attribute name="actionType" type="xsd:string" /> + <xsd:attribute name="purchaseLotNumber" type="xsd:int" /> + </xsd:complexType> + + </xsd:schema> + </wsdl:types> + <wsdl:message name="getAccountReportRequest"> + <wsdl:part element="account:getAccountReport" + name="getAccountReportRequest" /> + </wsdl:message> + <wsdl:message name="getAccountReportResponse"> + <wsdl:part element="account:getAccountReportResponse" + name="getAccountReportResponse" /> + </wsdl:message> + + <wsdl:message name="getCustomerProfileRequest"> + <wsdl:part element="account:getCustomerProfile" + name="getCustomerProfile" /> + </wsdl:message> + <wsdl:message name="getCustomerProfileResponse"> + <wsdl:part element="account:getCustomerProfileResponse" + name="getCustomerProfileResponse" /> + </wsdl:message> + + <wsdl:message name="withdrawRequest"> + <wsdl:part element="account:withdraw" name="withdrawRequest" /> + </wsdl:message> + + <wsdl:message name="withdrawResponse"> + <wsdl:part element="account:withdrawResponse" + name="withdrawResponse" /> + </wsdl:message> + + <wsdl:message name="depositRequest"> + <wsdl:part element="account:deposit" name="depositRequest" /> + </wsdl:message> + + <wsdl:message name="depositResponse"> + <wsdl:part element="account:depositResponse" + name="depositResponse" /> + </wsdl:message> + + <wsdl:message name="purchaseStockRequest"> + <wsdl:part element="account:purchaseStock" + name="purchaseStockRequest" /> + </wsdl:message> + + <wsdl:message name="purchaseStockResponse"> + <wsdl:part element="account:purchaseStockResponse" + name="purchaseStockResponse" /> + </wsdl:message> + + <wsdl:message name="sellStockRequest"> + <wsdl:part element="account:sellStock" name="sellStockRequest" /> + </wsdl:message> + + <wsdl:message name="createAccountRequest"> + <wsdl:part element="account:createAccount" name="createAccountRequest" /> + </wsdl:message> + + <wsdl:message name="createAccountResponse"> + <wsdl:part element="account:createAccountResponse" name="createAccountResponse" /> + </wsdl:message> + + <wsdl:message name="getAccountLogRequest"> + <wsdl:part element="account:getAccountLog" + name="getAccountLogRequest" /> + </wsdl:message> + + <wsdl:message name="getAccountLogResponse"> + <wsdl:part element="account:getAccountLogResponse" + name="getAccountLogResponse" /> + </wsdl:message> + + <wsdl:portType name="AccountService"> + <wsdl:operation name="getAccountReport"> + <wsdl:input message="account:getAccountReportRequest" /> + <wsdl:output message="account:getAccountReportResponse" /> + </wsdl:operation> + + <wsdl:operation name="getCustomerProfile"> + <wsdl:input message="account:getCustomerProfileRequest" /> + <wsdl:output message="account:getCustomerProfileResponse" /> + </wsdl:operation> + + <wsdl:operation name="withdraw"> + <wsdl:input message="account:withdrawRequest" /> + <wsdl:output message="account:withdrawResponse" /> + </wsdl:operation> + + <wsdl:operation name="deposit"> + <wsdl:input message="account:depositRequest" /> + <wsdl:output message="account:depositResponse" /> + </wsdl:operation> + + <wsdl:operation name="purchaseStock"> + <wsdl:input message="account:purchaseStockRequest" /> + <wsdl:output message="account:purchaseStockResponse" /> + </wsdl:operation> + + <wsdl:operation name="sellStock"> + <wsdl:input message="account:sellStockRequest" /> + <wsdl:output message="account:purchaseStockResponse" /> + </wsdl:operation> + + + <wsdl:operation name="createAccount"> + <wsdl:input message="account:createAccountRequest" /> + <wsdl:output message="account:createAccountResponse" /> + </wsdl:operation> + + <wsdl:operation name="getAccountLog"> + <wsdl:input message="account:getAccountLogRequest" /> + <wsdl:output message="account:getAccountLogResponse" /> + </wsdl:operation> + + </wsdl:portType> + + + + <wsdl:binding name="AccountServiceSOAP" type="account:AccountService"> + <soap:binding style="document" + transport="http://schemas.xmlsoap.org/soap/http" /> + <wsdl:operation name="getAccountReport"> + <soap:operation + soapAction="http://www.bigbank.com/account/getAccountReport" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + <wsdl:operation name="getCustomerProfile"> + <soap:operation + soapAction="http://www.bigbank.com/account/getCustomerProfile" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="withdraw"> + <soap:operation + soapAction="http://www.bigbank.com/account/withdraw" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="deposit"> + <soap:operation + soapAction="http://www.bigbank.com/account/deposit" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="purchaseStock"> + <soap:operation + soapAction="http://www.bigbank.com/account/purchaseStock" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="sellStock"> + <soap:operation + soapAction="http://www.bigbank.com/account/sellStock" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="createAccount"> + <soap:operation + soapAction="http://www.bigbank.com/account/createAccount" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="getAccountLog"> + <soap:operation + soapAction="http://www.bigbank.com/account/getAccountLog" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + </wsdl:binding> + <wsdl:service name="AccountService"> + <wsdl:port binding="account:AccountServiceSOAP" + name="AccountServiceSOAP"> + <soap:address + location="http://localhost:8080/services/AccountService1b2a3b4a" /> + </wsdl:port> + </wsdl:service> +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1b2a3b4b.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1b2a3b4b.wsdl new file mode 100644 index 0000000000..1ea8cd7453 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1b2a3b4b.wsdl @@ -0,0 +1,467 @@ +<?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:soap="http://schemas.xmlsoap.org/wsdl/soap/" + xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:account="http://www.bigbank.com/account" + targetNamespace="http://www.bigbank.com/account" + name="AccountService"> + + <wsdl:types> + <xsd:schema targetNamespace="http://www.bigbank.com/account" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:account="http://www.bigbank.com/account" + + > <!-- xmlns:sdojava="commonj.sdo/java" sdojava:package="org.apache.tuscany.samples.bigbank.account" --> + + +<!-- <xsd:complexType name="DataGraphRoot"> + <xsd:sequence> + <xsd:element name="customerProfileData" type="account:CustomerProfileData" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="StockSummaries" type="account:StockSummary" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="AccountSummaries" type="account:AccountSummary" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="StockLogEntries" type="account:StockLogEntry" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="AccountLogEntries" type="account:AccountLogEntry" maxOccurs="unbounded" minOccurs="0" /> + </xsd:sequence> + </xsd:complexType>--> + + + <xsd:element name="getAccountReport"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerID" + type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="getAccountReportResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountReport" + type="account:AccountReport" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="AccountReport"> + <xsd:sequence> + <xsd:element name="accountSummaries" + type="account:AccountSummary" maxOccurs="unbounded" /> + <xsd:element name="stockSummaries" + type="account:StockSummary" maxOccurs="unbounded" /> + + </xsd:sequence> + </xsd:complexType> + <xsd:complexType name="AccountSummary"> + <xsd:attribute name="accountNumber" type="xsd:string" /> + <xsd:attribute name="accountType" type="xsd:string" /> + <xsd:attribute name="balance" type="xsd:float" /> + </xsd:complexType> + + <xsd:complexType name="StockSummary"> + <!-- xsd:attribute name="id" type="xsd:int" / --> + <xsd:attribute name="purchaseLotNumber" type="xsd:int" /> + <!-- unique id for this purchase --> + <xsd:attribute name="symbol" type="xsd:string" /> + <xsd:attribute name="quantity" type="xsd:int" /> + <xsd:attribute name="purchaseDate" type="xsd:dateTime" /> + <xsd:attribute name="purchasePrice" type="xsd:float" /> + <xsd:attribute name="currentPrice" type="xsd:float" /> + <xsd:attribute name="company" type="xsd:string" /> + <xsd:attribute name="highPrice" type="xsd:float" /> + <xsd:attribute name="lowPrice" type="xsd:float" /> + + </xsd:complexType> + + <!-- Profile in data base --> + <xsd:element name="getCustomerProfile"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="loginID" type="xsd:string" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="CustomerProfileData"> + <xsd:sequence> + <xsd:element name="firstName" type="xsd:string" /> + <xsd:element name="lastName" type="xsd:string" /> + <xsd:element name="address" type="xsd:string" /> + <xsd:element name="email" type="xsd:string" /> + <xsd:element name="loginID" type="xsd:string" /> + <xsd:element name="password" type="xsd:string" /> + <xsd:element name="id" type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + + <xsd:element name="getCustomerProfileResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="withdraw"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountNumber" + type="xsd:string" /> + <xsd:element name="amount" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="withdrawResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="balance" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="deposit"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountNumber" + type="xsd:string" /> + <xsd:element name="amount" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="depositResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="balance" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="purchaseStock"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="id" type="xsd:int" /> + <xsd:element name="stock" type="account:StockSummary" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="purchaseStockResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="purchaseSummary" + type="account:StockSummary" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + + + <xsd:element name="sellStock"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="purchaseLotNumber" + type="xsd:int" /><!-- unique id for this purchase --> + <xsd:element name="quantity" type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="createAccount"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + <xsd:element name="createSavings" + type="xsd:boolean" /> + <xsd:element name="createCheckings" + type="xsd:boolean" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="createAccountResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + </xsd:sequence> + </xsd:complexType> + + </xsd:element> + + <xsd:element name="getAccountLog"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerID" + type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="getAccountLogResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountLog" + type="account:AccountLog" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="AccountLog"> + <xsd:sequence> + <xsd:element name="accountLogEntries" + type="account:AccountLogEntry" maxOccurs="unbounded" /> + <xsd:element name="stockLogEntries" + type="account:StockLogEntry" maxOccurs="unbounded" /> + + </xsd:sequence> + </xsd:complexType> + + <xsd:complexType name="AccountLogEntry"> + <xsd:attribute name="logSeqNo" type="xsd:int" /> + <xsd:attribute name="id" type="xsd:int" /> + <xsd:attribute name="accountNumber" type="xsd:string" /> + <xsd:attribute name="actionType" type="xsd:string" /> + <xsd:attribute name="amount" type="xsd:float" /> + </xsd:complexType> + + <xsd:complexType name="StockLogEntry"> + <xsd:attribute name="logSeqNo" type="xsd:int" /> + <xsd:attribute name="id" type="xsd:int" /> + <xsd:attribute name="symbol" type="xsd:string" /> + <xsd:attribute name="quantity" type="xsd:int" /> + <xsd:attribute name="actionType" type="xsd:string" /> + <xsd:attribute name="purchaseLotNumber" type="xsd:int" /> + </xsd:complexType> + + </xsd:schema> + </wsdl:types> + <wsdl:message name="getAccountReportRequest"> + <wsdl:part element="account:getAccountReport" + name="getAccountReportRequest" /> + </wsdl:message> + <wsdl:message name="getAccountReportResponse"> + <wsdl:part element="account:getAccountReportResponse" + name="getAccountReportResponse" /> + </wsdl:message> + + <wsdl:message name="getCustomerProfileRequest"> + <wsdl:part element="account:getCustomerProfile" + name="getCustomerProfile" /> + </wsdl:message> + <wsdl:message name="getCustomerProfileResponse"> + <wsdl:part element="account:getCustomerProfileResponse" + name="getCustomerProfileResponse" /> + </wsdl:message> + + <wsdl:message name="withdrawRequest"> + <wsdl:part element="account:withdraw" name="withdrawRequest" /> + </wsdl:message> + + <wsdl:message name="withdrawResponse"> + <wsdl:part element="account:withdrawResponse" + name="withdrawResponse" /> + </wsdl:message> + + <wsdl:message name="depositRequest"> + <wsdl:part element="account:deposit" name="depositRequest" /> + </wsdl:message> + + <wsdl:message name="depositResponse"> + <wsdl:part element="account:depositResponse" + name="depositResponse" /> + </wsdl:message> + + <wsdl:message name="purchaseStockRequest"> + <wsdl:part element="account:purchaseStock" + name="purchaseStockRequest" /> + </wsdl:message> + + <wsdl:message name="purchaseStockResponse"> + <wsdl:part element="account:purchaseStockResponse" + name="purchaseStockResponse" /> + </wsdl:message> + + <wsdl:message name="sellStockRequest"> + <wsdl:part element="account:sellStock" name="sellStockRequest" /> + </wsdl:message> + + <wsdl:message name="createAccountRequest"> + <wsdl:part element="account:createAccount" name="createAccountRequest" /> + </wsdl:message> + + <wsdl:message name="createAccountResponse"> + <wsdl:part element="account:createAccountResponse" name="createAccountResponse" /> + </wsdl:message> + + <wsdl:message name="getAccountLogRequest"> + <wsdl:part element="account:getAccountLog" + name="getAccountLogRequest" /> + </wsdl:message> + + <wsdl:message name="getAccountLogResponse"> + <wsdl:part element="account:getAccountLogResponse" + name="getAccountLogResponse" /> + </wsdl:message> + + <wsdl:portType name="AccountService"> + <wsdl:operation name="getAccountReport"> + <wsdl:input message="account:getAccountReportRequest" /> + <wsdl:output message="account:getAccountReportResponse" /> + </wsdl:operation> + + <wsdl:operation name="getCustomerProfile"> + <wsdl:input message="account:getCustomerProfileRequest" /> + <wsdl:output message="account:getCustomerProfileResponse" /> + </wsdl:operation> + + <wsdl:operation name="withdraw"> + <wsdl:input message="account:withdrawRequest" /> + <wsdl:output message="account:withdrawResponse" /> + </wsdl:operation> + + <wsdl:operation name="deposit"> + <wsdl:input message="account:depositRequest" /> + <wsdl:output message="account:depositResponse" /> + </wsdl:operation> + + <wsdl:operation name="purchaseStock"> + <wsdl:input message="account:purchaseStockRequest" /> + <wsdl:output message="account:purchaseStockResponse" /> + </wsdl:operation> + + <wsdl:operation name="sellStock"> + <wsdl:input message="account:sellStockRequest" /> + <wsdl:output message="account:purchaseStockResponse" /> + </wsdl:operation> + + + <wsdl:operation name="createAccount"> + <wsdl:input message="account:createAccountRequest" /> + <wsdl:output message="account:createAccountResponse" /> + </wsdl:operation> + + <wsdl:operation name="getAccountLog"> + <wsdl:input message="account:getAccountLogRequest" /> + <wsdl:output message="account:getAccountLogResponse" /> + </wsdl:operation> + + </wsdl:portType> + + + + <wsdl:binding name="AccountServiceSOAP" type="account:AccountService"> + <soap:binding style="document" + transport="http://schemas.xmlsoap.org/soap/http" /> + <wsdl:operation name="getAccountReport"> + <soap:operation + soapAction="http://www.bigbank.com/account/getAccountReport" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + <wsdl:operation name="getCustomerProfile"> + <soap:operation + soapAction="http://www.bigbank.com/account/getCustomerProfile" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="withdraw"> + <soap:operation + soapAction="http://www.bigbank.com/account/withdraw" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="deposit"> + <soap:operation + soapAction="http://www.bigbank.com/account/deposit" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="purchaseStock"> + <soap:operation + soapAction="http://www.bigbank.com/account/purchaseStock" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="sellStock"> + <soap:operation + soapAction="http://www.bigbank.com/account/sellStock" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="createAccount"> + <soap:operation + soapAction="http://www.bigbank.com/account/createAccount" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="getAccountLog"> + <soap:operation + soapAction="http://www.bigbank.com/account/getAccountLog" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + </wsdl:binding> + <wsdl:service name="AccountService"> + <wsdl:port binding="account:AccountServiceSOAP" + name="AccountServiceSOAP"> + <soap:address + location="http://localhost:8080/services/AccountService1b2a3b4b" /> + </wsdl:port> + </wsdl:service> +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1b2b3a4a.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1b2b3a4a.wsdl new file mode 100644 index 0000000000..af4a50551b --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1b2b3a4a.wsdl @@ -0,0 +1,467 @@ +<?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:soap="http://schemas.xmlsoap.org/wsdl/soap/" + xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:account="http://www.bigbank.com/account" + targetNamespace="http://www.bigbank.com/account" + name="AccountService"> + + <wsdl:types> + <xsd:schema targetNamespace="http://www.bigbank.com/account" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:account="http://www.bigbank.com/account" + + > <!-- xmlns:sdojava="commonj.sdo/java" sdojava:package="org.apache.tuscany.samples.bigbank.account" --> + + +<!-- <xsd:complexType name="DataGraphRoot"> + <xsd:sequence> + <xsd:element name="customerProfileData" type="account:CustomerProfileData" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="StockSummaries" type="account:StockSummary" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="AccountSummaries" type="account:AccountSummary" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="StockLogEntries" type="account:StockLogEntry" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="AccountLogEntries" type="account:AccountLogEntry" maxOccurs="unbounded" minOccurs="0" /> + </xsd:sequence> + </xsd:complexType>--> + + + <xsd:element name="getAccountReport"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerID" + type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="getAccountReportResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountReport" + type="account:AccountReport" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="AccountReport"> + <xsd:sequence> + <xsd:element name="accountSummaries" + type="account:AccountSummary" maxOccurs="unbounded" /> + <xsd:element name="stockSummaries" + type="account:StockSummary" maxOccurs="unbounded" /> + + </xsd:sequence> + </xsd:complexType> + <xsd:complexType name="AccountSummary"> + <xsd:attribute name="accountNumber" type="xsd:string" /> + <xsd:attribute name="accountType" type="xsd:string" /> + <xsd:attribute name="balance" type="xsd:float" /> + </xsd:complexType> + + <xsd:complexType name="StockSummary"> + <!-- xsd:attribute name="id" type="xsd:int" / --> + <xsd:attribute name="purchaseLotNumber" type="xsd:int" /> + <!-- unique id for this purchase --> + <xsd:attribute name="symbol" type="xsd:string" /> + <xsd:attribute name="quantity" type="xsd:int" /> + <xsd:attribute name="purchaseDate" type="xsd:dateTime" /> + <xsd:attribute name="purchasePrice" type="xsd:float" /> + <xsd:attribute name="currentPrice" type="xsd:float" /> + <xsd:attribute name="company" type="xsd:string" /> + <xsd:attribute name="highPrice" type="xsd:float" /> + <xsd:attribute name="lowPrice" type="xsd:float" /> + + </xsd:complexType> + + <!-- Profile in data base --> + <xsd:element name="getCustomerProfile"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="loginID" type="xsd:string" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="CustomerProfileData"> + <xsd:sequence> + <xsd:element name="firstName" type="xsd:string" /> + <xsd:element name="lastName" type="xsd:string" /> + <xsd:element name="address" type="xsd:string" /> + <xsd:element name="email" type="xsd:string" /> + <xsd:element name="loginID" type="xsd:string" /> + <xsd:element name="password" type="xsd:string" /> + <xsd:element name="id" type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + + <xsd:element name="getCustomerProfileResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="withdraw"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountNumber" + type="xsd:string" /> + <xsd:element name="amount" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="withdrawResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="balance" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="deposit"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountNumber" + type="xsd:string" /> + <xsd:element name="amount" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="depositResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="balance" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="purchaseStock"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="id" type="xsd:int" /> + <xsd:element name="stock" type="account:StockSummary" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="purchaseStockResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="purchaseSummary" + type="account:StockSummary" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + + + <xsd:element name="sellStock"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="purchaseLotNumber" + type="xsd:int" /><!-- unique id for this purchase --> + <xsd:element name="quantity" type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="createAccount"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + <xsd:element name="createSavings" + type="xsd:boolean" /> + <xsd:element name="createCheckings" + type="xsd:boolean" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="createAccountResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + </xsd:sequence> + </xsd:complexType> + + </xsd:element> + + <xsd:element name="getAccountLog"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerID" + type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="getAccountLogResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountLog" + type="account:AccountLog" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="AccountLog"> + <xsd:sequence> + <xsd:element name="accountLogEntries" + type="account:AccountLogEntry" maxOccurs="unbounded" /> + <xsd:element name="stockLogEntries" + type="account:StockLogEntry" maxOccurs="unbounded" /> + + </xsd:sequence> + </xsd:complexType> + + <xsd:complexType name="AccountLogEntry"> + <xsd:attribute name="logSeqNo" type="xsd:int" /> + <xsd:attribute name="id" type="xsd:int" /> + <xsd:attribute name="accountNumber" type="xsd:string" /> + <xsd:attribute name="actionType" type="xsd:string" /> + <xsd:attribute name="amount" type="xsd:float" /> + </xsd:complexType> + + <xsd:complexType name="StockLogEntry"> + <xsd:attribute name="logSeqNo" type="xsd:int" /> + <xsd:attribute name="id" type="xsd:int" /> + <xsd:attribute name="symbol" type="xsd:string" /> + <xsd:attribute name="quantity" type="xsd:int" /> + <xsd:attribute name="actionType" type="xsd:string" /> + <xsd:attribute name="purchaseLotNumber" type="xsd:int" /> + </xsd:complexType> + + </xsd:schema> + </wsdl:types> + <wsdl:message name="getAccountReportRequest"> + <wsdl:part element="account:getAccountReport" + name="getAccountReportRequest" /> + </wsdl:message> + <wsdl:message name="getAccountReportResponse"> + <wsdl:part element="account:getAccountReportResponse" + name="getAccountReportResponse" /> + </wsdl:message> + + <wsdl:message name="getCustomerProfileRequest"> + <wsdl:part element="account:getCustomerProfile" + name="getCustomerProfile" /> + </wsdl:message> + <wsdl:message name="getCustomerProfileResponse"> + <wsdl:part element="account:getCustomerProfileResponse" + name="getCustomerProfileResponse" /> + </wsdl:message> + + <wsdl:message name="withdrawRequest"> + <wsdl:part element="account:withdraw" name="withdrawRequest" /> + </wsdl:message> + + <wsdl:message name="withdrawResponse"> + <wsdl:part element="account:withdrawResponse" + name="withdrawResponse" /> + </wsdl:message> + + <wsdl:message name="depositRequest"> + <wsdl:part element="account:deposit" name="depositRequest" /> + </wsdl:message> + + <wsdl:message name="depositResponse"> + <wsdl:part element="account:depositResponse" + name="depositResponse" /> + </wsdl:message> + + <wsdl:message name="purchaseStockRequest"> + <wsdl:part element="account:purchaseStock" + name="purchaseStockRequest" /> + </wsdl:message> + + <wsdl:message name="purchaseStockResponse"> + <wsdl:part element="account:purchaseStockResponse" + name="purchaseStockResponse" /> + </wsdl:message> + + <wsdl:message name="sellStockRequest"> + <wsdl:part element="account:sellStock" name="sellStockRequest" /> + </wsdl:message> + + <wsdl:message name="createAccountRequest"> + <wsdl:part element="account:createAccount" name="createAccountRequest" /> + </wsdl:message> + + <wsdl:message name="createAccountResponse"> + <wsdl:part element="account:createAccountResponse" name="createAccountResponse" /> + </wsdl:message> + + <wsdl:message name="getAccountLogRequest"> + <wsdl:part element="account:getAccountLog" + name="getAccountLogRequest" /> + </wsdl:message> + + <wsdl:message name="getAccountLogResponse"> + <wsdl:part element="account:getAccountLogResponse" + name="getAccountLogResponse" /> + </wsdl:message> + + <wsdl:portType name="AccountService"> + <wsdl:operation name="getAccountReport"> + <wsdl:input message="account:getAccountReportRequest" /> + <wsdl:output message="account:getAccountReportResponse" /> + </wsdl:operation> + + <wsdl:operation name="getCustomerProfile"> + <wsdl:input message="account:getCustomerProfileRequest" /> + <wsdl:output message="account:getCustomerProfileResponse" /> + </wsdl:operation> + + <wsdl:operation name="withdraw"> + <wsdl:input message="account:withdrawRequest" /> + <wsdl:output message="account:withdrawResponse" /> + </wsdl:operation> + + <wsdl:operation name="deposit"> + <wsdl:input message="account:depositRequest" /> + <wsdl:output message="account:depositResponse" /> + </wsdl:operation> + + <wsdl:operation name="purchaseStock"> + <wsdl:input message="account:purchaseStockRequest" /> + <wsdl:output message="account:purchaseStockResponse" /> + </wsdl:operation> + + <wsdl:operation name="sellStock"> + <wsdl:input message="account:sellStockRequest" /> + <wsdl:output message="account:purchaseStockResponse" /> + </wsdl:operation> + + + <wsdl:operation name="createAccount"> + <wsdl:input message="account:createAccountRequest" /> + <wsdl:output message="account:createAccountResponse" /> + </wsdl:operation> + + <wsdl:operation name="getAccountLog"> + <wsdl:input message="account:getAccountLogRequest" /> + <wsdl:output message="account:getAccountLogResponse" /> + </wsdl:operation> + + </wsdl:portType> + + + + <wsdl:binding name="AccountServiceSOAP" type="account:AccountService"> + <soap:binding style="document" + transport="http://schemas.xmlsoap.org/soap/http" /> + <wsdl:operation name="getAccountReport"> + <soap:operation + soapAction="http://www.bigbank.com/account/getAccountReport" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + <wsdl:operation name="getCustomerProfile"> + <soap:operation + soapAction="http://www.bigbank.com/account/getCustomerProfile" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="withdraw"> + <soap:operation + soapAction="http://www.bigbank.com/account/withdraw" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="deposit"> + <soap:operation + soapAction="http://www.bigbank.com/account/deposit" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="purchaseStock"> + <soap:operation + soapAction="http://www.bigbank.com/account/purchaseStock" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="sellStock"> + <soap:operation + soapAction="http://www.bigbank.com/account/sellStock" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="createAccount"> + <soap:operation + soapAction="http://www.bigbank.com/account/createAccount" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="getAccountLog"> + <soap:operation + soapAction="http://www.bigbank.com/account/getAccountLog" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + </wsdl:binding> + <wsdl:service name="AccountService"> + <wsdl:port binding="account:AccountServiceSOAP" + name="AccountServiceSOAP"> + <soap:address + location="http://localhost:8080/services/AccountService1b2b3a4a" /> + </wsdl:port> + </wsdl:service> +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1b2b3a4b.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1b2b3a4b.wsdl new file mode 100644 index 0000000000..a9efab3bd9 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1b2b3a4b.wsdl @@ -0,0 +1,467 @@ +<?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:soap="http://schemas.xmlsoap.org/wsdl/soap/" + xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:account="http://www.bigbank.com/account" + targetNamespace="http://www.bigbank.com/account" + name="AccountService"> + + <wsdl:types> + <xsd:schema targetNamespace="http://www.bigbank.com/account" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:account="http://www.bigbank.com/account" + + > <!-- xmlns:sdojava="commonj.sdo/java" sdojava:package="org.apache.tuscany.samples.bigbank.account" --> + + +<!-- <xsd:complexType name="DataGraphRoot"> + <xsd:sequence> + <xsd:element name="customerProfileData" type="account:CustomerProfileData" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="StockSummaries" type="account:StockSummary" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="AccountSummaries" type="account:AccountSummary" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="StockLogEntries" type="account:StockLogEntry" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="AccountLogEntries" type="account:AccountLogEntry" maxOccurs="unbounded" minOccurs="0" /> + </xsd:sequence> + </xsd:complexType>--> + + + <xsd:element name="getAccountReport"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerID" + type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="getAccountReportResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountReport" + type="account:AccountReport" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="AccountReport"> + <xsd:sequence> + <xsd:element name="accountSummaries" + type="account:AccountSummary" maxOccurs="unbounded" /> + <xsd:element name="stockSummaries" + type="account:StockSummary" maxOccurs="unbounded" /> + + </xsd:sequence> + </xsd:complexType> + <xsd:complexType name="AccountSummary"> + <xsd:attribute name="accountNumber" type="xsd:string" /> + <xsd:attribute name="accountType" type="xsd:string" /> + <xsd:attribute name="balance" type="xsd:float" /> + </xsd:complexType> + + <xsd:complexType name="StockSummary"> + <!-- xsd:attribute name="id" type="xsd:int" / --> + <xsd:attribute name="purchaseLotNumber" type="xsd:int" /> + <!-- unique id for this purchase --> + <xsd:attribute name="symbol" type="xsd:string" /> + <xsd:attribute name="quantity" type="xsd:int" /> + <xsd:attribute name="purchaseDate" type="xsd:dateTime" /> + <xsd:attribute name="purchasePrice" type="xsd:float" /> + <xsd:attribute name="currentPrice" type="xsd:float" /> + <xsd:attribute name="company" type="xsd:string" /> + <xsd:attribute name="highPrice" type="xsd:float" /> + <xsd:attribute name="lowPrice" type="xsd:float" /> + + </xsd:complexType> + + <!-- Profile in data base --> + <xsd:element name="getCustomerProfile"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="loginID" type="xsd:string" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="CustomerProfileData"> + <xsd:sequence> + <xsd:element name="firstName" type="xsd:string" /> + <xsd:element name="lastName" type="xsd:string" /> + <xsd:element name="address" type="xsd:string" /> + <xsd:element name="email" type="xsd:string" /> + <xsd:element name="loginID" type="xsd:string" /> + <xsd:element name="password" type="xsd:string" /> + <xsd:element name="id" type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + + <xsd:element name="getCustomerProfileResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="withdraw"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountNumber" + type="xsd:string" /> + <xsd:element name="amount" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="withdrawResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="balance" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="deposit"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountNumber" + type="xsd:string" /> + <xsd:element name="amount" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="depositResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="balance" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="purchaseStock"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="id" type="xsd:int" /> + <xsd:element name="stock" type="account:StockSummary" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="purchaseStockResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="purchaseSummary" + type="account:StockSummary" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + + + <xsd:element name="sellStock"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="purchaseLotNumber" + type="xsd:int" /><!-- unique id for this purchase --> + <xsd:element name="quantity" type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="createAccount"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + <xsd:element name="createSavings" + type="xsd:boolean" /> + <xsd:element name="createCheckings" + type="xsd:boolean" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="createAccountResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + </xsd:sequence> + </xsd:complexType> + + </xsd:element> + + <xsd:element name="getAccountLog"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerID" + type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="getAccountLogResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountLog" + type="account:AccountLog" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="AccountLog"> + <xsd:sequence> + <xsd:element name="accountLogEntries" + type="account:AccountLogEntry" maxOccurs="unbounded" /> + <xsd:element name="stockLogEntries" + type="account:StockLogEntry" maxOccurs="unbounded" /> + + </xsd:sequence> + </xsd:complexType> + + <xsd:complexType name="AccountLogEntry"> + <xsd:attribute name="logSeqNo" type="xsd:int" /> + <xsd:attribute name="id" type="xsd:int" /> + <xsd:attribute name="accountNumber" type="xsd:string" /> + <xsd:attribute name="actionType" type="xsd:string" /> + <xsd:attribute name="amount" type="xsd:float" /> + </xsd:complexType> + + <xsd:complexType name="StockLogEntry"> + <xsd:attribute name="logSeqNo" type="xsd:int" /> + <xsd:attribute name="id" type="xsd:int" /> + <xsd:attribute name="symbol" type="xsd:string" /> + <xsd:attribute name="quantity" type="xsd:int" /> + <xsd:attribute name="actionType" type="xsd:string" /> + <xsd:attribute name="purchaseLotNumber" type="xsd:int" /> + </xsd:complexType> + + </xsd:schema> + </wsdl:types> + <wsdl:message name="getAccountReportRequest"> + <wsdl:part element="account:getAccountReport" + name="getAccountReportRequest" /> + </wsdl:message> + <wsdl:message name="getAccountReportResponse"> + <wsdl:part element="account:getAccountReportResponse" + name="getAccountReportResponse" /> + </wsdl:message> + + <wsdl:message name="getCustomerProfileRequest"> + <wsdl:part element="account:getCustomerProfile" + name="getCustomerProfile" /> + </wsdl:message> + <wsdl:message name="getCustomerProfileResponse"> + <wsdl:part element="account:getCustomerProfileResponse" + name="getCustomerProfileResponse" /> + </wsdl:message> + + <wsdl:message name="withdrawRequest"> + <wsdl:part element="account:withdraw" name="withdrawRequest" /> + </wsdl:message> + + <wsdl:message name="withdrawResponse"> + <wsdl:part element="account:withdrawResponse" + name="withdrawResponse" /> + </wsdl:message> + + <wsdl:message name="depositRequest"> + <wsdl:part element="account:deposit" name="depositRequest" /> + </wsdl:message> + + <wsdl:message name="depositResponse"> + <wsdl:part element="account:depositResponse" + name="depositResponse" /> + </wsdl:message> + + <wsdl:message name="purchaseStockRequest"> + <wsdl:part element="account:purchaseStock" + name="purchaseStockRequest" /> + </wsdl:message> + + <wsdl:message name="purchaseStockResponse"> + <wsdl:part element="account:purchaseStockResponse" + name="purchaseStockResponse" /> + </wsdl:message> + + <wsdl:message name="sellStockRequest"> + <wsdl:part element="account:sellStock" name="sellStockRequest" /> + </wsdl:message> + + <wsdl:message name="createAccountRequest"> + <wsdl:part element="account:createAccount" name="createAccountRequest" /> + </wsdl:message> + + <wsdl:message name="createAccountResponse"> + <wsdl:part element="account:createAccountResponse" name="createAccountResponse" /> + </wsdl:message> + + <wsdl:message name="getAccountLogRequest"> + <wsdl:part element="account:getAccountLog" + name="getAccountLogRequest" /> + </wsdl:message> + + <wsdl:message name="getAccountLogResponse"> + <wsdl:part element="account:getAccountLogResponse" + name="getAccountLogResponse" /> + </wsdl:message> + + <wsdl:portType name="AccountService"> + <wsdl:operation name="getAccountReport"> + <wsdl:input message="account:getAccountReportRequest" /> + <wsdl:output message="account:getAccountReportResponse" /> + </wsdl:operation> + + <wsdl:operation name="getCustomerProfile"> + <wsdl:input message="account:getCustomerProfileRequest" /> + <wsdl:output message="account:getCustomerProfileResponse" /> + </wsdl:operation> + + <wsdl:operation name="withdraw"> + <wsdl:input message="account:withdrawRequest" /> + <wsdl:output message="account:withdrawResponse" /> + </wsdl:operation> + + <wsdl:operation name="deposit"> + <wsdl:input message="account:depositRequest" /> + <wsdl:output message="account:depositResponse" /> + </wsdl:operation> + + <wsdl:operation name="purchaseStock"> + <wsdl:input message="account:purchaseStockRequest" /> + <wsdl:output message="account:purchaseStockResponse" /> + </wsdl:operation> + + <wsdl:operation name="sellStock"> + <wsdl:input message="account:sellStockRequest" /> + <wsdl:output message="account:purchaseStockResponse" /> + </wsdl:operation> + + + <wsdl:operation name="createAccount"> + <wsdl:input message="account:createAccountRequest" /> + <wsdl:output message="account:createAccountResponse" /> + </wsdl:operation> + + <wsdl:operation name="getAccountLog"> + <wsdl:input message="account:getAccountLogRequest" /> + <wsdl:output message="account:getAccountLogResponse" /> + </wsdl:operation> + + </wsdl:portType> + + + + <wsdl:binding name="AccountServiceSOAP" type="account:AccountService"> + <soap:binding style="document" + transport="http://schemas.xmlsoap.org/soap/http" /> + <wsdl:operation name="getAccountReport"> + <soap:operation + soapAction="http://www.bigbank.com/account/getAccountReport" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + <wsdl:operation name="getCustomerProfile"> + <soap:operation + soapAction="http://www.bigbank.com/account/getCustomerProfile" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="withdraw"> + <soap:operation + soapAction="http://www.bigbank.com/account/withdraw" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="deposit"> + <soap:operation + soapAction="http://www.bigbank.com/account/deposit" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="purchaseStock"> + <soap:operation + soapAction="http://www.bigbank.com/account/purchaseStock" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="sellStock"> + <soap:operation + soapAction="http://www.bigbank.com/account/sellStock" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="createAccount"> + <soap:operation + soapAction="http://www.bigbank.com/account/createAccount" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="getAccountLog"> + <soap:operation + soapAction="http://www.bigbank.com/account/getAccountLog" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + </wsdl:binding> + <wsdl:service name="AccountService"> + <wsdl:port binding="account:AccountServiceSOAP" + name="AccountServiceSOAP"> + <soap:address + location="http://localhost:8080/services/AccountService1b2b3a4b" /> + </wsdl:port> + </wsdl:service> +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1b2b3b4a.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1b2b3b4a.wsdl new file mode 100644 index 0000000000..8d4b924406 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1b2b3b4a.wsdl @@ -0,0 +1,467 @@ +<?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:soap="http://schemas.xmlsoap.org/wsdl/soap/" + xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:account="http://www.bigbank.com/account" + targetNamespace="http://www.bigbank.com/account" + name="AccountService"> + + <wsdl:types> + <xsd:schema targetNamespace="http://www.bigbank.com/account" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:account="http://www.bigbank.com/account" + + > <!-- xmlns:sdojava="commonj.sdo/java" sdojava:package="org.apache.tuscany.samples.bigbank.account" --> + + +<!-- <xsd:complexType name="DataGraphRoot"> + <xsd:sequence> + <xsd:element name="customerProfileData" type="account:CustomerProfileData" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="StockSummaries" type="account:StockSummary" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="AccountSummaries" type="account:AccountSummary" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="StockLogEntries" type="account:StockLogEntry" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="AccountLogEntries" type="account:AccountLogEntry" maxOccurs="unbounded" minOccurs="0" /> + </xsd:sequence> + </xsd:complexType>--> + + + <xsd:element name="getAccountReport"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerID" + type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="getAccountReportResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountReport" + type="account:AccountReport" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="AccountReport"> + <xsd:sequence> + <xsd:element name="accountSummaries" + type="account:AccountSummary" maxOccurs="unbounded" /> + <xsd:element name="stockSummaries" + type="account:StockSummary" maxOccurs="unbounded" /> + + </xsd:sequence> + </xsd:complexType> + <xsd:complexType name="AccountSummary"> + <xsd:attribute name="accountNumber" type="xsd:string" /> + <xsd:attribute name="accountType" type="xsd:string" /> + <xsd:attribute name="balance" type="xsd:float" /> + </xsd:complexType> + + <xsd:complexType name="StockSummary"> + <!-- xsd:attribute name="id" type="xsd:int" / --> + <xsd:attribute name="purchaseLotNumber" type="xsd:int" /> + <!-- unique id for this purchase --> + <xsd:attribute name="symbol" type="xsd:string" /> + <xsd:attribute name="quantity" type="xsd:int" /> + <xsd:attribute name="purchaseDate" type="xsd:dateTime" /> + <xsd:attribute name="purchasePrice" type="xsd:float" /> + <xsd:attribute name="currentPrice" type="xsd:float" /> + <xsd:attribute name="company" type="xsd:string" /> + <xsd:attribute name="highPrice" type="xsd:float" /> + <xsd:attribute name="lowPrice" type="xsd:float" /> + + </xsd:complexType> + + <!-- Profile in data base --> + <xsd:element name="getCustomerProfile"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="loginID" type="xsd:string" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="CustomerProfileData"> + <xsd:sequence> + <xsd:element name="firstName" type="xsd:string" /> + <xsd:element name="lastName" type="xsd:string" /> + <xsd:element name="address" type="xsd:string" /> + <xsd:element name="email" type="xsd:string" /> + <xsd:element name="loginID" type="xsd:string" /> + <xsd:element name="password" type="xsd:string" /> + <xsd:element name="id" type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + + <xsd:element name="getCustomerProfileResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="withdraw"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountNumber" + type="xsd:string" /> + <xsd:element name="amount" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="withdrawResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="balance" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="deposit"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountNumber" + type="xsd:string" /> + <xsd:element name="amount" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="depositResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="balance" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="purchaseStock"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="id" type="xsd:int" /> + <xsd:element name="stock" type="account:StockSummary" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="purchaseStockResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="purchaseSummary" + type="account:StockSummary" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + + + <xsd:element name="sellStock"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="purchaseLotNumber" + type="xsd:int" /><!-- unique id for this purchase --> + <xsd:element name="quantity" type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="createAccount"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + <xsd:element name="createSavings" + type="xsd:boolean" /> + <xsd:element name="createCheckings" + type="xsd:boolean" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="createAccountResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + </xsd:sequence> + </xsd:complexType> + + </xsd:element> + + <xsd:element name="getAccountLog"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerID" + type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="getAccountLogResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountLog" + type="account:AccountLog" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="AccountLog"> + <xsd:sequence> + <xsd:element name="accountLogEntries" + type="account:AccountLogEntry" maxOccurs="unbounded" /> + <xsd:element name="stockLogEntries" + type="account:StockLogEntry" maxOccurs="unbounded" /> + + </xsd:sequence> + </xsd:complexType> + + <xsd:complexType name="AccountLogEntry"> + <xsd:attribute name="logSeqNo" type="xsd:int" /> + <xsd:attribute name="id" type="xsd:int" /> + <xsd:attribute name="accountNumber" type="xsd:string" /> + <xsd:attribute name="actionType" type="xsd:string" /> + <xsd:attribute name="amount" type="xsd:float" /> + </xsd:complexType> + + <xsd:complexType name="StockLogEntry"> + <xsd:attribute name="logSeqNo" type="xsd:int" /> + <xsd:attribute name="id" type="xsd:int" /> + <xsd:attribute name="symbol" type="xsd:string" /> + <xsd:attribute name="quantity" type="xsd:int" /> + <xsd:attribute name="actionType" type="xsd:string" /> + <xsd:attribute name="purchaseLotNumber" type="xsd:int" /> + </xsd:complexType> + + </xsd:schema> + </wsdl:types> + <wsdl:message name="getAccountReportRequest"> + <wsdl:part element="account:getAccountReport" + name="getAccountReportRequest" /> + </wsdl:message> + <wsdl:message name="getAccountReportResponse"> + <wsdl:part element="account:getAccountReportResponse" + name="getAccountReportResponse" /> + </wsdl:message> + + <wsdl:message name="getCustomerProfileRequest"> + <wsdl:part element="account:getCustomerProfile" + name="getCustomerProfile" /> + </wsdl:message> + <wsdl:message name="getCustomerProfileResponse"> + <wsdl:part element="account:getCustomerProfileResponse" + name="getCustomerProfileResponse" /> + </wsdl:message> + + <wsdl:message name="withdrawRequest"> + <wsdl:part element="account:withdraw" name="withdrawRequest" /> + </wsdl:message> + + <wsdl:message name="withdrawResponse"> + <wsdl:part element="account:withdrawResponse" + name="withdrawResponse" /> + </wsdl:message> + + <wsdl:message name="depositRequest"> + <wsdl:part element="account:deposit" name="depositRequest" /> + </wsdl:message> + + <wsdl:message name="depositResponse"> + <wsdl:part element="account:depositResponse" + name="depositResponse" /> + </wsdl:message> + + <wsdl:message name="purchaseStockRequest"> + <wsdl:part element="account:purchaseStock" + name="purchaseStockRequest" /> + </wsdl:message> + + <wsdl:message name="purchaseStockResponse"> + <wsdl:part element="account:purchaseStockResponse" + name="purchaseStockResponse" /> + </wsdl:message> + + <wsdl:message name="sellStockRequest"> + <wsdl:part element="account:sellStock" name="sellStockRequest" /> + </wsdl:message> + + <wsdl:message name="createAccountRequest"> + <wsdl:part element="account:createAccount" name="createAccountRequest" /> + </wsdl:message> + + <wsdl:message name="createAccountResponse"> + <wsdl:part element="account:createAccountResponse" name="createAccountResponse" /> + </wsdl:message> + + <wsdl:message name="getAccountLogRequest"> + <wsdl:part element="account:getAccountLog" + name="getAccountLogRequest" /> + </wsdl:message> + + <wsdl:message name="getAccountLogResponse"> + <wsdl:part element="account:getAccountLogResponse" + name="getAccountLogResponse" /> + </wsdl:message> + + <wsdl:portType name="AccountService"> + <wsdl:operation name="getAccountReport"> + <wsdl:input message="account:getAccountReportRequest" /> + <wsdl:output message="account:getAccountReportResponse" /> + </wsdl:operation> + + <wsdl:operation name="getCustomerProfile"> + <wsdl:input message="account:getCustomerProfileRequest" /> + <wsdl:output message="account:getCustomerProfileResponse" /> + </wsdl:operation> + + <wsdl:operation name="withdraw"> + <wsdl:input message="account:withdrawRequest" /> + <wsdl:output message="account:withdrawResponse" /> + </wsdl:operation> + + <wsdl:operation name="deposit"> + <wsdl:input message="account:depositRequest" /> + <wsdl:output message="account:depositResponse" /> + </wsdl:operation> + + <wsdl:operation name="purchaseStock"> + <wsdl:input message="account:purchaseStockRequest" /> + <wsdl:output message="account:purchaseStockResponse" /> + </wsdl:operation> + + <wsdl:operation name="sellStock"> + <wsdl:input message="account:sellStockRequest" /> + <wsdl:output message="account:purchaseStockResponse" /> + </wsdl:operation> + + + <wsdl:operation name="createAccount"> + <wsdl:input message="account:createAccountRequest" /> + <wsdl:output message="account:createAccountResponse" /> + </wsdl:operation> + + <wsdl:operation name="getAccountLog"> + <wsdl:input message="account:getAccountLogRequest" /> + <wsdl:output message="account:getAccountLogResponse" /> + </wsdl:operation> + + </wsdl:portType> + + + + <wsdl:binding name="AccountServiceSOAP" type="account:AccountService"> + <soap:binding style="document" + transport="http://schemas.xmlsoap.org/soap/http" /> + <wsdl:operation name="getAccountReport"> + <soap:operation + soapAction="http://www.bigbank.com/account/getAccountReport" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + <wsdl:operation name="getCustomerProfile"> + <soap:operation + soapAction="http://www.bigbank.com/account/getCustomerProfile" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="withdraw"> + <soap:operation + soapAction="http://www.bigbank.com/account/withdraw" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="deposit"> + <soap:operation + soapAction="http://www.bigbank.com/account/deposit" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="purchaseStock"> + <soap:operation + soapAction="http://www.bigbank.com/account/purchaseStock" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="sellStock"> + <soap:operation + soapAction="http://www.bigbank.com/account/sellStock" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="createAccount"> + <soap:operation + soapAction="http://www.bigbank.com/account/createAccount" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="getAccountLog"> + <soap:operation + soapAction="http://www.bigbank.com/account/getAccountLog" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + </wsdl:binding> + <wsdl:service name="AccountService"> + <wsdl:port binding="account:AccountServiceSOAP" + name="AccountServiceSOAP"> + <soap:address + location="http://localhost:8080/services/AccountService1b2b3b4a" /> + </wsdl:port> + </wsdl:service> +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1b2b3b4b.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1b2b3b4b.wsdl new file mode 100644 index 0000000000..b792d414c1 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/AccountServiceC1b2b3b4b.wsdl @@ -0,0 +1,467 @@ +<?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:soap="http://schemas.xmlsoap.org/wsdl/soap/" + xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:account="http://www.bigbank.com/account" + targetNamespace="http://www.bigbank.com/account" + name="AccountService"> + + <wsdl:types> + <xsd:schema targetNamespace="http://www.bigbank.com/account" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:account="http://www.bigbank.com/account" + + > <!-- xmlns:sdojava="commonj.sdo/java" sdojava:package="org.apache.tuscany.samples.bigbank.account" --> + + +<!-- <xsd:complexType name="DataGraphRoot"> + <xsd:sequence> + <xsd:element name="customerProfileData" type="account:CustomerProfileData" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="StockSummaries" type="account:StockSummary" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="AccountSummaries" type="account:AccountSummary" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="StockLogEntries" type="account:StockLogEntry" maxOccurs="unbounded" minOccurs="0" /> + <xsd:element name="AccountLogEntries" type="account:AccountLogEntry" maxOccurs="unbounded" minOccurs="0" /> + </xsd:sequence> + </xsd:complexType>--> + + + <xsd:element name="getAccountReport"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerID" + type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="getAccountReportResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountReport" + type="account:AccountReport" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="AccountReport"> + <xsd:sequence> + <xsd:element name="accountSummaries" + type="account:AccountSummary" maxOccurs="unbounded" /> + <xsd:element name="stockSummaries" + type="account:StockSummary" maxOccurs="unbounded" /> + + </xsd:sequence> + </xsd:complexType> + <xsd:complexType name="AccountSummary"> + <xsd:attribute name="accountNumber" type="xsd:string" /> + <xsd:attribute name="accountType" type="xsd:string" /> + <xsd:attribute name="balance" type="xsd:float" /> + </xsd:complexType> + + <xsd:complexType name="StockSummary"> + <!-- xsd:attribute name="id" type="xsd:int" / --> + <xsd:attribute name="purchaseLotNumber" type="xsd:int" /> + <!-- unique id for this purchase --> + <xsd:attribute name="symbol" type="xsd:string" /> + <xsd:attribute name="quantity" type="xsd:int" /> + <xsd:attribute name="purchaseDate" type="xsd:dateTime" /> + <xsd:attribute name="purchasePrice" type="xsd:float" /> + <xsd:attribute name="currentPrice" type="xsd:float" /> + <xsd:attribute name="company" type="xsd:string" /> + <xsd:attribute name="highPrice" type="xsd:float" /> + <xsd:attribute name="lowPrice" type="xsd:float" /> + + </xsd:complexType> + + <!-- Profile in data base --> + <xsd:element name="getCustomerProfile"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="loginID" type="xsd:string" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="CustomerProfileData"> + <xsd:sequence> + <xsd:element name="firstName" type="xsd:string" /> + <xsd:element name="lastName" type="xsd:string" /> + <xsd:element name="address" type="xsd:string" /> + <xsd:element name="email" type="xsd:string" /> + <xsd:element name="loginID" type="xsd:string" /> + <xsd:element name="password" type="xsd:string" /> + <xsd:element name="id" type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + + <xsd:element name="getCustomerProfileResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="withdraw"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountNumber" + type="xsd:string" /> + <xsd:element name="amount" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="withdrawResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="balance" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="deposit"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountNumber" + type="xsd:string" /> + <xsd:element name="amount" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="depositResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="balance" type="xsd:float" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="purchaseStock"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="id" type="xsd:int" /> + <xsd:element name="stock" type="account:StockSummary" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="purchaseStockResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="purchaseSummary" + type="account:StockSummary" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + + + <xsd:element name="sellStock"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="purchaseLotNumber" + type="xsd:int" /><!-- unique id for this purchase --> + <xsd:element name="quantity" type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:element name="createAccount"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + <xsd:element name="createSavings" + type="xsd:boolean" /> + <xsd:element name="createCheckings" + type="xsd:boolean" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="createAccountResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerProfile" + type="account:CustomerProfileData" /> + </xsd:sequence> + </xsd:complexType> + + </xsd:element> + + <xsd:element name="getAccountLog"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="customerID" + type="xsd:int" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + <xsd:element name="getAccountLogResponse"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="accountLog" + type="account:AccountLog" /> + </xsd:sequence> + </xsd:complexType> + </xsd:element> + + <xsd:complexType name="AccountLog"> + <xsd:sequence> + <xsd:element name="accountLogEntries" + type="account:AccountLogEntry" maxOccurs="unbounded" /> + <xsd:element name="stockLogEntries" + type="account:StockLogEntry" maxOccurs="unbounded" /> + + </xsd:sequence> + </xsd:complexType> + + <xsd:complexType name="AccountLogEntry"> + <xsd:attribute name="logSeqNo" type="xsd:int" /> + <xsd:attribute name="id" type="xsd:int" /> + <xsd:attribute name="accountNumber" type="xsd:string" /> + <xsd:attribute name="actionType" type="xsd:string" /> + <xsd:attribute name="amount" type="xsd:float" /> + </xsd:complexType> + + <xsd:complexType name="StockLogEntry"> + <xsd:attribute name="logSeqNo" type="xsd:int" /> + <xsd:attribute name="id" type="xsd:int" /> + <xsd:attribute name="symbol" type="xsd:string" /> + <xsd:attribute name="quantity" type="xsd:int" /> + <xsd:attribute name="actionType" type="xsd:string" /> + <xsd:attribute name="purchaseLotNumber" type="xsd:int" /> + </xsd:complexType> + + </xsd:schema> + </wsdl:types> + <wsdl:message name="getAccountReportRequest"> + <wsdl:part element="account:getAccountReport" + name="getAccountReportRequest" /> + </wsdl:message> + <wsdl:message name="getAccountReportResponse"> + <wsdl:part element="account:getAccountReportResponse" + name="getAccountReportResponse" /> + </wsdl:message> + + <wsdl:message name="getCustomerProfileRequest"> + <wsdl:part element="account:getCustomerProfile" + name="getCustomerProfile" /> + </wsdl:message> + <wsdl:message name="getCustomerProfileResponse"> + <wsdl:part element="account:getCustomerProfileResponse" + name="getCustomerProfileResponse" /> + </wsdl:message> + + <wsdl:message name="withdrawRequest"> + <wsdl:part element="account:withdraw" name="withdrawRequest" /> + </wsdl:message> + + <wsdl:message name="withdrawResponse"> + <wsdl:part element="account:withdrawResponse" + name="withdrawResponse" /> + </wsdl:message> + + <wsdl:message name="depositRequest"> + <wsdl:part element="account:deposit" name="depositRequest" /> + </wsdl:message> + + <wsdl:message name="depositResponse"> + <wsdl:part element="account:depositResponse" + name="depositResponse" /> + </wsdl:message> + + <wsdl:message name="purchaseStockRequest"> + <wsdl:part element="account:purchaseStock" + name="purchaseStockRequest" /> + </wsdl:message> + + <wsdl:message name="purchaseStockResponse"> + <wsdl:part element="account:purchaseStockResponse" + name="purchaseStockResponse" /> + </wsdl:message> + + <wsdl:message name="sellStockRequest"> + <wsdl:part element="account:sellStock" name="sellStockRequest" /> + </wsdl:message> + + <wsdl:message name="createAccountRequest"> + <wsdl:part element="account:createAccount" name="createAccountRequest" /> + </wsdl:message> + + <wsdl:message name="createAccountResponse"> + <wsdl:part element="account:createAccountResponse" name="createAccountResponse" /> + </wsdl:message> + + <wsdl:message name="getAccountLogRequest"> + <wsdl:part element="account:getAccountLog" + name="getAccountLogRequest" /> + </wsdl:message> + + <wsdl:message name="getAccountLogResponse"> + <wsdl:part element="account:getAccountLogResponse" + name="getAccountLogResponse" /> + </wsdl:message> + + <wsdl:portType name="AccountService"> + <wsdl:operation name="getAccountReport"> + <wsdl:input message="account:getAccountReportRequest" /> + <wsdl:output message="account:getAccountReportResponse" /> + </wsdl:operation> + + <wsdl:operation name="getCustomerProfile"> + <wsdl:input message="account:getCustomerProfileRequest" /> + <wsdl:output message="account:getCustomerProfileResponse" /> + </wsdl:operation> + + <wsdl:operation name="withdraw"> + <wsdl:input message="account:withdrawRequest" /> + <wsdl:output message="account:withdrawResponse" /> + </wsdl:operation> + + <wsdl:operation name="deposit"> + <wsdl:input message="account:depositRequest" /> + <wsdl:output message="account:depositResponse" /> + </wsdl:operation> + + <wsdl:operation name="purchaseStock"> + <wsdl:input message="account:purchaseStockRequest" /> + <wsdl:output message="account:purchaseStockResponse" /> + </wsdl:operation> + + <wsdl:operation name="sellStock"> + <wsdl:input message="account:sellStockRequest" /> + <wsdl:output message="account:purchaseStockResponse" /> + </wsdl:operation> + + + <wsdl:operation name="createAccount"> + <wsdl:input message="account:createAccountRequest" /> + <wsdl:output message="account:createAccountResponse" /> + </wsdl:operation> + + <wsdl:operation name="getAccountLog"> + <wsdl:input message="account:getAccountLogRequest" /> + <wsdl:output message="account:getAccountLogResponse" /> + </wsdl:operation> + + </wsdl:portType> + + + + <wsdl:binding name="AccountServiceSOAP" type="account:AccountService"> + <soap:binding style="document" + transport="http://schemas.xmlsoap.org/soap/http" /> + <wsdl:operation name="getAccountReport"> + <soap:operation + soapAction="http://www.bigbank.com/account/getAccountReport" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + <wsdl:operation name="getCustomerProfile"> + <soap:operation + soapAction="http://www.bigbank.com/account/getCustomerProfile" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="withdraw"> + <soap:operation + soapAction="http://www.bigbank.com/account/withdraw" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="deposit"> + <soap:operation + soapAction="http://www.bigbank.com/account/deposit" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="purchaseStock"> + <soap:operation + soapAction="http://www.bigbank.com/account/purchaseStock" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="sellStock"> + <soap:operation + soapAction="http://www.bigbank.com/account/sellStock" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="createAccount"> + <soap:operation + soapAction="http://www.bigbank.com/account/createAccount" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + <wsdl:operation name="getAccountLog"> + <soap:operation + soapAction="http://www.bigbank.com/account/getAccountLog" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> + + </wsdl:binding> + <wsdl:service name="AccountService"> + <wsdl:port binding="account:AccountServiceSOAP" + name="AccountServiceSOAP"> + <soap:address + location="http://localhost:8080/services/AccountService1b2b3b4b" /> + </wsdl:port> + </wsdl:service> +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworld.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworld.wsdl new file mode 100644 index 0000000000..68174d1ecd --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworld.wsdl @@ -0,0 +1,80 @@ +<?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 targetNamespace="http://helloworld" xmlns:tns="http://helloworld" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" + name="helloworld"> + + <wsdl:types> + <schema elementFormDefault="qualified" targetNamespace="http://helloworld" xmlns="http://www.w3.org/2001/XMLSchema"> + + <element name="getGreetings"> + <complexType> + <sequence> + <element name="name" type="xsd:string"/> + </sequence> + </complexType> + </element> + + <element name="getGreetingsResponse"> + <complexType> + <sequence> + <element name="getGreetingsReturn" type="xsd:string"/> + </sequence> + </complexType> + </element> + + </schema> + </wsdl:types> + + <wsdl:message name="getGreetingsRequest"> + <wsdl:part element="tns:getGreetings" name="parameters"/> + </wsdl:message> + + <wsdl:message name="getGreetingsResponse"> + <wsdl:part element="tns:getGreetingsResponse" name="parameters"/> + </wsdl:message> + + <wsdl:portType name="HelloWorld"> + <wsdl:operation name="getGreetings"> + <wsdl:input message="tns:getGreetingsRequest" name="getGreetingsRequest"/> + <wsdl:output message="tns:getGreetingsResponse" name="getGreetingsResponse"/> + </wsdl:operation> + </wsdl:portType> + + <wsdl:binding name="HelloWorldSoapBinding" type="tns:HelloWorld"> + <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> + <wsdl:operation name="getGreetings"> + <wsdlsoap:operation soapAction=""/> + <wsdl:input name="getGreetingsRequest"> + <wsdlsoap:body use="literal"/> + </wsdl:input> + <wsdl:output name="getGreetingsResponse"> + <wsdlsoap:body use="literal"/> + </wsdl:output> + </wsdl:operation> + + </wsdl:binding> + + <wsdl:service name="HelloWorldService"> + <wsdl:port binding="tns:HelloWorldSoapBinding" name="HelloWorldSoapPort"> + <wsdlsoap:address location="http://localhost:8080/services/HelloWorldWebService"/> + </wsdl:port> + </wsdl:service> + +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1a2a3a4a.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1a2a3a4a.wsdl new file mode 100644 index 0000000000..84a5ae6c23 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1a2a3a4a.wsdl @@ -0,0 +1,80 @@ +<?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 targetNamespace="http://helloworld" xmlns:tns="http://helloworld" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" + name="helloworld"> + + <wsdl:types> + <schema elementFormDefault="qualified" targetNamespace="http://helloworld" xmlns="http://www.w3.org/2001/XMLSchema"> + + <element name="getGreetings"> + <complexType> + <sequence> + <element name="name" type="xsd:string"/> + </sequence> + </complexType> + </element> + + <element name="getGreetingsResponse"> + <complexType> + <sequence> + <element name="getGreetingsReturn" type="xsd:string"/> + </sequence> + </complexType> + </element> + + </schema> + </wsdl:types> + + <wsdl:message name="getGreetingsRequest"> + <wsdl:part element="tns:getGreetings" name="parameters"/> + </wsdl:message> + + <wsdl:message name="getGreetingsResponse"> + <wsdl:part element="tns:getGreetingsResponse" name="parameters"/> + </wsdl:message> + + <wsdl:portType name="HelloWorld"> + <wsdl:operation name="getGreetings"> + <wsdl:input message="tns:getGreetingsRequest" name="getGreetingsRequest"/> + <wsdl:output message="tns:getGreetingsResponse" name="getGreetingsResponse"/> + </wsdl:operation> + </wsdl:portType> + + <wsdl:binding name="HelloWorldSoapBinding" type="tns:HelloWorld"> + <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> + <wsdl:operation name="getGreetings"> + <wsdlsoap:operation soapAction=""/> + <wsdl:input name="getGreetingsRequest"> + <wsdlsoap:body use="literal"/> + </wsdl:input> + <wsdl:output name="getGreetingsResponse"> + <wsdlsoap:body use="literal"/> + </wsdl:output> + </wsdl:operation> + + </wsdl:binding> + + <wsdl:service name="HelloWorldService"> + <wsdl:port binding="tns:HelloWorldSoapBinding" name="HelloWorldSoapPort"> + <wsdlsoap:address location="http://localhost:8080/services/HelloWorldService1a2a3a4a"/> + </wsdl:port> + </wsdl:service> + +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1a2a3a4b.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1a2a3a4b.wsdl new file mode 100644 index 0000000000..9951878f5c --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1a2a3a4b.wsdl @@ -0,0 +1,80 @@ +<?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 targetNamespace="http://helloworld" xmlns:tns="http://helloworld" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" + name="helloworld"> + + <wsdl:types> + <schema elementFormDefault="qualified" targetNamespace="http://helloworld" xmlns="http://www.w3.org/2001/XMLSchema"> + + <element name="getGreetings"> + <complexType> + <sequence> + <element name="name" type="xsd:string"/> + </sequence> + </complexType> + </element> + + <element name="getGreetingsResponse"> + <complexType> + <sequence> + <element name="getGreetingsReturn" type="xsd:string"/> + </sequence> + </complexType> + </element> + + </schema> + </wsdl:types> + + <wsdl:message name="getGreetingsRequest"> + <wsdl:part element="tns:getGreetings" name="parameters"/> + </wsdl:message> + + <wsdl:message name="getGreetingsResponse"> + <wsdl:part element="tns:getGreetingsResponse" name="parameters"/> + </wsdl:message> + + <wsdl:portType name="HelloWorld"> + <wsdl:operation name="getGreetings"> + <wsdl:input message="tns:getGreetingsRequest" name="getGreetingsRequest"/> + <wsdl:output message="tns:getGreetingsResponse" name="getGreetingsResponse"/> + </wsdl:operation> + </wsdl:portType> + + <wsdl:binding name="HelloWorldSoapBinding" type="tns:HelloWorld"> + <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> + <wsdl:operation name="getGreetings"> + <wsdlsoap:operation soapAction=""/> + <wsdl:input name="getGreetingsRequest"> + <wsdlsoap:body use="literal"/> + </wsdl:input> + <wsdl:output name="getGreetingsResponse"> + <wsdlsoap:body use="literal"/> + </wsdl:output> + </wsdl:operation> + + </wsdl:binding> + + <wsdl:service name="HelloWorldService"> + <wsdl:port binding="tns:HelloWorldSoapBinding" name="HelloWorldSoapPort"> + <wsdlsoap:address location="http://localhost:8080/services/HelloWorldService1a2a3a4b"/> + </wsdl:port> + </wsdl:service> + +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1a2a3b4a.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1a2a3b4a.wsdl new file mode 100644 index 0000000000..cfc9c4815c --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1a2a3b4a.wsdl @@ -0,0 +1,80 @@ +<?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 targetNamespace="http://helloworld" xmlns:tns="http://helloworld" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" + name="helloworld"> + + <wsdl:types> + <schema elementFormDefault="qualified" targetNamespace="http://helloworld" xmlns="http://www.w3.org/2001/XMLSchema"> + + <element name="getGreetings"> + <complexType> + <sequence> + <element name="name" type="xsd:string"/> + </sequence> + </complexType> + </element> + + <element name="getGreetingsResponse"> + <complexType> + <sequence> + <element name="getGreetingsReturn" type="xsd:string"/> + </sequence> + </complexType> + </element> + + </schema> + </wsdl:types> + + <wsdl:message name="getGreetingsRequest"> + <wsdl:part element="tns:getGreetings" name="parameters"/> + </wsdl:message> + + <wsdl:message name="getGreetingsResponse"> + <wsdl:part element="tns:getGreetingsResponse" name="parameters"/> + </wsdl:message> + + <wsdl:portType name="HelloWorld"> + <wsdl:operation name="getGreetings"> + <wsdl:input message="tns:getGreetingsRequest" name="getGreetingsRequest"/> + <wsdl:output message="tns:getGreetingsResponse" name="getGreetingsResponse"/> + </wsdl:operation> + </wsdl:portType> + + <wsdl:binding name="HelloWorldSoapBinding" type="tns:HelloWorld"> + <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> + <wsdl:operation name="getGreetings"> + <wsdlsoap:operation soapAction=""/> + <wsdl:input name="getGreetingsRequest"> + <wsdlsoap:body use="literal"/> + </wsdl:input> + <wsdl:output name="getGreetingsResponse"> + <wsdlsoap:body use="literal"/> + </wsdl:output> + </wsdl:operation> + + </wsdl:binding> + + <wsdl:service name="HelloWorldService"> + <wsdl:port binding="tns:HelloWorldSoapBinding" name="HelloWorldSoapPort"> + <wsdlsoap:address location="http://localhost:8080/services/HelloWorldService1a2a3b4a"/> + </wsdl:port> + </wsdl:service> + +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1a2a3b4b.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1a2a3b4b.wsdl new file mode 100644 index 0000000000..9b293ebbae --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1a2a3b4b.wsdl @@ -0,0 +1,80 @@ +<?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 targetNamespace="http://helloworld" xmlns:tns="http://helloworld" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" + name="helloworld"> + + <wsdl:types> + <schema elementFormDefault="qualified" targetNamespace="http://helloworld" xmlns="http://www.w3.org/2001/XMLSchema"> + + <element name="getGreetings"> + <complexType> + <sequence> + <element name="name" type="xsd:string"/> + </sequence> + </complexType> + </element> + + <element name="getGreetingsResponse"> + <complexType> + <sequence> + <element name="getGreetingsReturn" type="xsd:string"/> + </sequence> + </complexType> + </element> + + </schema> + </wsdl:types> + + <wsdl:message name="getGreetingsRequest"> + <wsdl:part element="tns:getGreetings" name="parameters"/> + </wsdl:message> + + <wsdl:message name="getGreetingsResponse"> + <wsdl:part element="tns:getGreetingsResponse" name="parameters"/> + </wsdl:message> + + <wsdl:portType name="HelloWorld"> + <wsdl:operation name="getGreetings"> + <wsdl:input message="tns:getGreetingsRequest" name="getGreetingsRequest"/> + <wsdl:output message="tns:getGreetingsResponse" name="getGreetingsResponse"/> + </wsdl:operation> + </wsdl:portType> + + <wsdl:binding name="HelloWorldSoapBinding" type="tns:HelloWorld"> + <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> + <wsdl:operation name="getGreetings"> + <wsdlsoap:operation soapAction=""/> + <wsdl:input name="getGreetingsRequest"> + <wsdlsoap:body use="literal"/> + </wsdl:input> + <wsdl:output name="getGreetingsResponse"> + <wsdlsoap:body use="literal"/> + </wsdl:output> + </wsdl:operation> + + </wsdl:binding> + + <wsdl:service name="HelloWorldService"> + <wsdl:port binding="tns:HelloWorldSoapBinding" name="HelloWorldSoapPort"> + <wsdlsoap:address location="http://localhost:8080/services/HelloWorldService1a2a3b4b"/> + </wsdl:port> + </wsdl:service> + +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1a2b3a4a.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1a2b3a4a.wsdl new file mode 100644 index 0000000000..c8a7e3305f --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1a2b3a4a.wsdl @@ -0,0 +1,80 @@ +<?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 targetNamespace="http://helloworld" xmlns:tns="http://helloworld" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" + name="helloworld"> + + <wsdl:types> + <schema elementFormDefault="qualified" targetNamespace="http://helloworld" xmlns="http://www.w3.org/2001/XMLSchema"> + + <element name="getGreetings"> + <complexType> + <sequence> + <element name="name" type="xsd:string"/> + </sequence> + </complexType> + </element> + + <element name="getGreetingsResponse"> + <complexType> + <sequence> + <element name="getGreetingsReturn" type="xsd:string"/> + </sequence> + </complexType> + </element> + + </schema> + </wsdl:types> + + <wsdl:message name="getGreetingsRequest"> + <wsdl:part element="tns:getGreetings" name="parameters"/> + </wsdl:message> + + <wsdl:message name="getGreetingsResponse"> + <wsdl:part element="tns:getGreetingsResponse" name="parameters"/> + </wsdl:message> + + <wsdl:portType name="HelloWorld"> + <wsdl:operation name="getGreetings"> + <wsdl:input message="tns:getGreetingsRequest" name="getGreetingsRequest"/> + <wsdl:output message="tns:getGreetingsResponse" name="getGreetingsResponse"/> + </wsdl:operation> + </wsdl:portType> + + <wsdl:binding name="HelloWorldSoapBinding" type="tns:HelloWorld"> + <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> + <wsdl:operation name="getGreetings"> + <wsdlsoap:operation soapAction=""/> + <wsdl:input name="getGreetingsRequest"> + <wsdlsoap:body use="literal"/> + </wsdl:input> + <wsdl:output name="getGreetingsResponse"> + <wsdlsoap:body use="literal"/> + </wsdl:output> + </wsdl:operation> + + </wsdl:binding> + + <wsdl:service name="HelloWorldService"> + <wsdl:port binding="tns:HelloWorldSoapBinding" name="HelloWorldSoapPort"> + <wsdlsoap:address location="http://localhost:8080/services/HelloWorldService1a2b3a4a"/> + </wsdl:port> + </wsdl:service> + +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1a2b3a4b.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1a2b3a4b.wsdl new file mode 100644 index 0000000000..95e8af69fa --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1a2b3a4b.wsdl @@ -0,0 +1,80 @@ +<?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 targetNamespace="http://helloworld" xmlns:tns="http://helloworld" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" + name="helloworld"> + + <wsdl:types> + <schema elementFormDefault="qualified" targetNamespace="http://helloworld" xmlns="http://www.w3.org/2001/XMLSchema"> + + <element name="getGreetings"> + <complexType> + <sequence> + <element name="name" type="xsd:string"/> + </sequence> + </complexType> + </element> + + <element name="getGreetingsResponse"> + <complexType> + <sequence> + <element name="getGreetingsReturn" type="xsd:string"/> + </sequence> + </complexType> + </element> + + </schema> + </wsdl:types> + + <wsdl:message name="getGreetingsRequest"> + <wsdl:part element="tns:getGreetings" name="parameters"/> + </wsdl:message> + + <wsdl:message name="getGreetingsResponse"> + <wsdl:part element="tns:getGreetingsResponse" name="parameters"/> + </wsdl:message> + + <wsdl:portType name="HelloWorld"> + <wsdl:operation name="getGreetings"> + <wsdl:input message="tns:getGreetingsRequest" name="getGreetingsRequest"/> + <wsdl:output message="tns:getGreetingsResponse" name="getGreetingsResponse"/> + </wsdl:operation> + </wsdl:portType> + + <wsdl:binding name="HelloWorldSoapBinding" type="tns:HelloWorld"> + <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> + <wsdl:operation name="getGreetings"> + <wsdlsoap:operation soapAction=""/> + <wsdl:input name="getGreetingsRequest"> + <wsdlsoap:body use="literal"/> + </wsdl:input> + <wsdl:output name="getGreetingsResponse"> + <wsdlsoap:body use="literal"/> + </wsdl:output> + </wsdl:operation> + + </wsdl:binding> + + <wsdl:service name="HelloWorldService"> + <wsdl:port binding="tns:HelloWorldSoapBinding" name="HelloWorldSoapPort"> + <wsdlsoap:address location="http://localhost:8080/services/HelloWorldService1a2b3a4b"/> + </wsdl:port> + </wsdl:service> + +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1a2b3b4a.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1a2b3b4a.wsdl new file mode 100644 index 0000000000..a51c36f2bf --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1a2b3b4a.wsdl @@ -0,0 +1,80 @@ +<?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 targetNamespace="http://helloworld" xmlns:tns="http://helloworld" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" + name="helloworld"> + + <wsdl:types> + <schema elementFormDefault="qualified" targetNamespace="http://helloworld" xmlns="http://www.w3.org/2001/XMLSchema"> + + <element name="getGreetings"> + <complexType> + <sequence> + <element name="name" type="xsd:string"/> + </sequence> + </complexType> + </element> + + <element name="getGreetingsResponse"> + <complexType> + <sequence> + <element name="getGreetingsReturn" type="xsd:string"/> + </sequence> + </complexType> + </element> + + </schema> + </wsdl:types> + + <wsdl:message name="getGreetingsRequest"> + <wsdl:part element="tns:getGreetings" name="parameters"/> + </wsdl:message> + + <wsdl:message name="getGreetingsResponse"> + <wsdl:part element="tns:getGreetingsResponse" name="parameters"/> + </wsdl:message> + + <wsdl:portType name="HelloWorld"> + <wsdl:operation name="getGreetings"> + <wsdl:input message="tns:getGreetingsRequest" name="getGreetingsRequest"/> + <wsdl:output message="tns:getGreetingsResponse" name="getGreetingsResponse"/> + </wsdl:operation> + </wsdl:portType> + + <wsdl:binding name="HelloWorldSoapBinding" type="tns:HelloWorld"> + <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> + <wsdl:operation name="getGreetings"> + <wsdlsoap:operation soapAction=""/> + <wsdl:input name="getGreetingsRequest"> + <wsdlsoap:body use="literal"/> + </wsdl:input> + <wsdl:output name="getGreetingsResponse"> + <wsdlsoap:body use="literal"/> + </wsdl:output> + </wsdl:operation> + + </wsdl:binding> + + <wsdl:service name="HelloWorldService"> + <wsdl:port binding="tns:HelloWorldSoapBinding" name="HelloWorldSoapPort"> + <wsdlsoap:address location="http://localhost:8080/services/HelloWorldService1a2b3b4a"/> + </wsdl:port> + </wsdl:service> + +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1a2b3b4b.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1a2b3b4b.wsdl new file mode 100644 index 0000000000..d1e9a11251 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1a2b3b4b.wsdl @@ -0,0 +1,80 @@ +<?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 targetNamespace="http://helloworld" xmlns:tns="http://helloworld" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" + name="helloworld"> + + <wsdl:types> + <schema elementFormDefault="qualified" targetNamespace="http://helloworld" xmlns="http://www.w3.org/2001/XMLSchema"> + + <element name="getGreetings"> + <complexType> + <sequence> + <element name="name" type="xsd:string"/> + </sequence> + </complexType> + </element> + + <element name="getGreetingsResponse"> + <complexType> + <sequence> + <element name="getGreetingsReturn" type="xsd:string"/> + </sequence> + </complexType> + </element> + + </schema> + </wsdl:types> + + <wsdl:message name="getGreetingsRequest"> + <wsdl:part element="tns:getGreetings" name="parameters"/> + </wsdl:message> + + <wsdl:message name="getGreetingsResponse"> + <wsdl:part element="tns:getGreetingsResponse" name="parameters"/> + </wsdl:message> + + <wsdl:portType name="HelloWorld"> + <wsdl:operation name="getGreetings"> + <wsdl:input message="tns:getGreetingsRequest" name="getGreetingsRequest"/> + <wsdl:output message="tns:getGreetingsResponse" name="getGreetingsResponse"/> + </wsdl:operation> + </wsdl:portType> + + <wsdl:binding name="HelloWorldSoapBinding" type="tns:HelloWorld"> + <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> + <wsdl:operation name="getGreetings"> + <wsdlsoap:operation soapAction=""/> + <wsdl:input name="getGreetingsRequest"> + <wsdlsoap:body use="literal"/> + </wsdl:input> + <wsdl:output name="getGreetingsResponse"> + <wsdlsoap:body use="literal"/> + </wsdl:output> + </wsdl:operation> + + </wsdl:binding> + + <wsdl:service name="HelloWorldService"> + <wsdl:port binding="tns:HelloWorldSoapBinding" name="HelloWorldSoapPort"> + <wsdlsoap:address location="http://localhost:8080/services/HelloWorldService1a2b3b4b"/> + </wsdl:port> + </wsdl:service> + +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1b2a3a4a.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1b2a3a4a.wsdl new file mode 100644 index 0000000000..cb0a7db5d8 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1b2a3a4a.wsdl @@ -0,0 +1,80 @@ +<?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 targetNamespace="http://helloworld" xmlns:tns="http://helloworld" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" + name="helloworld"> + + <wsdl:types> + <schema elementFormDefault="qualified" targetNamespace="http://helloworld" xmlns="http://www.w3.org/2001/XMLSchema"> + + <element name="getGreetings"> + <complexType> + <sequence> + <element name="name" type="xsd:string"/> + </sequence> + </complexType> + </element> + + <element name="getGreetingsResponse"> + <complexType> + <sequence> + <element name="getGreetingsReturn" type="xsd:string"/> + </sequence> + </complexType> + </element> + + </schema> + </wsdl:types> + + <wsdl:message name="getGreetingsRequest"> + <wsdl:part element="tns:getGreetings" name="parameters"/> + </wsdl:message> + + <wsdl:message name="getGreetingsResponse"> + <wsdl:part element="tns:getGreetingsResponse" name="parameters"/> + </wsdl:message> + + <wsdl:portType name="HelloWorld"> + <wsdl:operation name="getGreetings"> + <wsdl:input message="tns:getGreetingsRequest" name="getGreetingsRequest"/> + <wsdl:output message="tns:getGreetingsResponse" name="getGreetingsResponse"/> + </wsdl:operation> + </wsdl:portType> + + <wsdl:binding name="HelloWorldSoapBinding" type="tns:HelloWorld"> + <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> + <wsdl:operation name="getGreetings"> + <wsdlsoap:operation soapAction=""/> + <wsdl:input name="getGreetingsRequest"> + <wsdlsoap:body use="literal"/> + </wsdl:input> + <wsdl:output name="getGreetingsResponse"> + <wsdlsoap:body use="literal"/> + </wsdl:output> + </wsdl:operation> + + </wsdl:binding> + + <wsdl:service name="HelloWorldService"> + <wsdl:port binding="tns:HelloWorldSoapBinding" name="HelloWorldSoapPort"> + <wsdlsoap:address location="http://localhost:8080/services/HelloWorldService1b2a3a4a"/> + </wsdl:port> + </wsdl:service> + +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1b2a3a4b.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1b2a3a4b.wsdl new file mode 100644 index 0000000000..b7b85fc83e --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1b2a3a4b.wsdl @@ -0,0 +1,80 @@ +<?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 targetNamespace="http://helloworld" xmlns:tns="http://helloworld" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" + name="helloworld"> + + <wsdl:types> + <schema elementFormDefault="qualified" targetNamespace="http://helloworld" xmlns="http://www.w3.org/2001/XMLSchema"> + + <element name="getGreetings"> + <complexType> + <sequence> + <element name="name" type="xsd:string"/> + </sequence> + </complexType> + </element> + + <element name="getGreetingsResponse"> + <complexType> + <sequence> + <element name="getGreetingsReturn" type="xsd:string"/> + </sequence> + </complexType> + </element> + + </schema> + </wsdl:types> + + <wsdl:message name="getGreetingsRequest"> + <wsdl:part element="tns:getGreetings" name="parameters"/> + </wsdl:message> + + <wsdl:message name="getGreetingsResponse"> + <wsdl:part element="tns:getGreetingsResponse" name="parameters"/> + </wsdl:message> + + <wsdl:portType name="HelloWorld"> + <wsdl:operation name="getGreetings"> + <wsdl:input message="tns:getGreetingsRequest" name="getGreetingsRequest"/> + <wsdl:output message="tns:getGreetingsResponse" name="getGreetingsResponse"/> + </wsdl:operation> + </wsdl:portType> + + <wsdl:binding name="HelloWorldSoapBinding" type="tns:HelloWorld"> + <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> + <wsdl:operation name="getGreetings"> + <wsdlsoap:operation soapAction=""/> + <wsdl:input name="getGreetingsRequest"> + <wsdlsoap:body use="literal"/> + </wsdl:input> + <wsdl:output name="getGreetingsResponse"> + <wsdlsoap:body use="literal"/> + </wsdl:output> + </wsdl:operation> + + </wsdl:binding> + + <wsdl:service name="HelloWorldService"> + <wsdl:port binding="tns:HelloWorldSoapBinding" name="HelloWorldSoapPort"> + <wsdlsoap:address location="http://localhost:8080/services/HelloWorldService1b2a3a4b"/> + </wsdl:port> + </wsdl:service> + +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1b2a3b4a.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1b2a3b4a.wsdl new file mode 100644 index 0000000000..dd7c687c35 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1b2a3b4a.wsdl @@ -0,0 +1,80 @@ +<?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 targetNamespace="http://helloworld" xmlns:tns="http://helloworld" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" + name="helloworld"> + + <wsdl:types> + <schema elementFormDefault="qualified" targetNamespace="http://helloworld" xmlns="http://www.w3.org/2001/XMLSchema"> + + <element name="getGreetings"> + <complexType> + <sequence> + <element name="name" type="xsd:string"/> + </sequence> + </complexType> + </element> + + <element name="getGreetingsResponse"> + <complexType> + <sequence> + <element name="getGreetingsReturn" type="xsd:string"/> + </sequence> + </complexType> + </element> + + </schema> + </wsdl:types> + + <wsdl:message name="getGreetingsRequest"> + <wsdl:part element="tns:getGreetings" name="parameters"/> + </wsdl:message> + + <wsdl:message name="getGreetingsResponse"> + <wsdl:part element="tns:getGreetingsResponse" name="parameters"/> + </wsdl:message> + + <wsdl:portType name="HelloWorld"> + <wsdl:operation name="getGreetings"> + <wsdl:input message="tns:getGreetingsRequest" name="getGreetingsRequest"/> + <wsdl:output message="tns:getGreetingsResponse" name="getGreetingsResponse"/> + </wsdl:operation> + </wsdl:portType> + + <wsdl:binding name="HelloWorldSoapBinding" type="tns:HelloWorld"> + <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> + <wsdl:operation name="getGreetings"> + <wsdlsoap:operation soapAction=""/> + <wsdl:input name="getGreetingsRequest"> + <wsdlsoap:body use="literal"/> + </wsdl:input> + <wsdl:output name="getGreetingsResponse"> + <wsdlsoap:body use="literal"/> + </wsdl:output> + </wsdl:operation> + + </wsdl:binding> + + <wsdl:service name="HelloWorldService"> + <wsdl:port binding="tns:HelloWorldSoapBinding" name="HelloWorldSoapPort"> + <wsdlsoap:address location="http://localhost:8080/services/HelloWorldService1b2a3b4a"/> + </wsdl:port> + </wsdl:service> + +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1b2a3b4b.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1b2a3b4b.wsdl new file mode 100644 index 0000000000..13c0f36c8b --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1b2a3b4b.wsdl @@ -0,0 +1,80 @@ +<?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 targetNamespace="http://helloworld" xmlns:tns="http://helloworld" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" + name="helloworld"> + + <wsdl:types> + <schema elementFormDefault="qualified" targetNamespace="http://helloworld" xmlns="http://www.w3.org/2001/XMLSchema"> + + <element name="getGreetings"> + <complexType> + <sequence> + <element name="name" type="xsd:string"/> + </sequence> + </complexType> + </element> + + <element name="getGreetingsResponse"> + <complexType> + <sequence> + <element name="getGreetingsReturn" type="xsd:string"/> + </sequence> + </complexType> + </element> + + </schema> + </wsdl:types> + + <wsdl:message name="getGreetingsRequest"> + <wsdl:part element="tns:getGreetings" name="parameters"/> + </wsdl:message> + + <wsdl:message name="getGreetingsResponse"> + <wsdl:part element="tns:getGreetingsResponse" name="parameters"/> + </wsdl:message> + + <wsdl:portType name="HelloWorld"> + <wsdl:operation name="getGreetings"> + <wsdl:input message="tns:getGreetingsRequest" name="getGreetingsRequest"/> + <wsdl:output message="tns:getGreetingsResponse" name="getGreetingsResponse"/> + </wsdl:operation> + </wsdl:portType> + + <wsdl:binding name="HelloWorldSoapBinding" type="tns:HelloWorld"> + <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> + <wsdl:operation name="getGreetings"> + <wsdlsoap:operation soapAction=""/> + <wsdl:input name="getGreetingsRequest"> + <wsdlsoap:body use="literal"/> + </wsdl:input> + <wsdl:output name="getGreetingsResponse"> + <wsdlsoap:body use="literal"/> + </wsdl:output> + </wsdl:operation> + + </wsdl:binding> + + <wsdl:service name="HelloWorldService"> + <wsdl:port binding="tns:HelloWorldSoapBinding" name="HelloWorldSoapPort"> + <wsdlsoap:address location="http://localhost:8080/services/HelloWorldService1b2a3b4b"/> + </wsdl:port> + </wsdl:service> + +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1b2b3a4a.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1b2b3a4a.wsdl new file mode 100644 index 0000000000..00cc052ac4 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1b2b3a4a.wsdl @@ -0,0 +1,80 @@ +<?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 targetNamespace="http://helloworld" xmlns:tns="http://helloworld" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" + name="helloworld"> + + <wsdl:types> + <schema elementFormDefault="qualified" targetNamespace="http://helloworld" xmlns="http://www.w3.org/2001/XMLSchema"> + + <element name="getGreetings"> + <complexType> + <sequence> + <element name="name" type="xsd:string"/> + </sequence> + </complexType> + </element> + + <element name="getGreetingsResponse"> + <complexType> + <sequence> + <element name="getGreetingsReturn" type="xsd:string"/> + </sequence> + </complexType> + </element> + + </schema> + </wsdl:types> + + <wsdl:message name="getGreetingsRequest"> + <wsdl:part element="tns:getGreetings" name="parameters"/> + </wsdl:message> + + <wsdl:message name="getGreetingsResponse"> + <wsdl:part element="tns:getGreetingsResponse" name="parameters"/> + </wsdl:message> + + <wsdl:portType name="HelloWorld"> + <wsdl:operation name="getGreetings"> + <wsdl:input message="tns:getGreetingsRequest" name="getGreetingsRequest"/> + <wsdl:output message="tns:getGreetingsResponse" name="getGreetingsResponse"/> + </wsdl:operation> + </wsdl:portType> + + <wsdl:binding name="HelloWorldSoapBinding" type="tns:HelloWorld"> + <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> + <wsdl:operation name="getGreetings"> + <wsdlsoap:operation soapAction=""/> + <wsdl:input name="getGreetingsRequest"> + <wsdlsoap:body use="literal"/> + </wsdl:input> + <wsdl:output name="getGreetingsResponse"> + <wsdlsoap:body use="literal"/> + </wsdl:output> + </wsdl:operation> + + </wsdl:binding> + + <wsdl:service name="HelloWorldService"> + <wsdl:port binding="tns:HelloWorldSoapBinding" name="HelloWorldSoapPort"> + <wsdlsoap:address location="http://localhost:8080/services/HelloWorldService1b2b3a4a"/> + </wsdl:port> + </wsdl:service> + +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1b2b3a4b.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1b2b3a4b.wsdl new file mode 100644 index 0000000000..00cc052ac4 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1b2b3a4b.wsdl @@ -0,0 +1,80 @@ +<?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 targetNamespace="http://helloworld" xmlns:tns="http://helloworld" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" + name="helloworld"> + + <wsdl:types> + <schema elementFormDefault="qualified" targetNamespace="http://helloworld" xmlns="http://www.w3.org/2001/XMLSchema"> + + <element name="getGreetings"> + <complexType> + <sequence> + <element name="name" type="xsd:string"/> + </sequence> + </complexType> + </element> + + <element name="getGreetingsResponse"> + <complexType> + <sequence> + <element name="getGreetingsReturn" type="xsd:string"/> + </sequence> + </complexType> + </element> + + </schema> + </wsdl:types> + + <wsdl:message name="getGreetingsRequest"> + <wsdl:part element="tns:getGreetings" name="parameters"/> + </wsdl:message> + + <wsdl:message name="getGreetingsResponse"> + <wsdl:part element="tns:getGreetingsResponse" name="parameters"/> + </wsdl:message> + + <wsdl:portType name="HelloWorld"> + <wsdl:operation name="getGreetings"> + <wsdl:input message="tns:getGreetingsRequest" name="getGreetingsRequest"/> + <wsdl:output message="tns:getGreetingsResponse" name="getGreetingsResponse"/> + </wsdl:operation> + </wsdl:portType> + + <wsdl:binding name="HelloWorldSoapBinding" type="tns:HelloWorld"> + <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> + <wsdl:operation name="getGreetings"> + <wsdlsoap:operation soapAction=""/> + <wsdl:input name="getGreetingsRequest"> + <wsdlsoap:body use="literal"/> + </wsdl:input> + <wsdl:output name="getGreetingsResponse"> + <wsdlsoap:body use="literal"/> + </wsdl:output> + </wsdl:operation> + + </wsdl:binding> + + <wsdl:service name="HelloWorldService"> + <wsdl:port binding="tns:HelloWorldSoapBinding" name="HelloWorldSoapPort"> + <wsdlsoap:address location="http://localhost:8080/services/HelloWorldService1b2b3a4a"/> + </wsdl:port> + </wsdl:service> + +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1b2b3b4a.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1b2b3b4a.wsdl new file mode 100644 index 0000000000..7579552aba --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1b2b3b4a.wsdl @@ -0,0 +1,80 @@ +<?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 targetNamespace="http://helloworld" xmlns:tns="http://helloworld" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" + name="helloworld"> + + <wsdl:types> + <schema elementFormDefault="qualified" targetNamespace="http://helloworld" xmlns="http://www.w3.org/2001/XMLSchema"> + + <element name="getGreetings"> + <complexType> + <sequence> + <element name="name" type="xsd:string"/> + </sequence> + </complexType> + </element> + + <element name="getGreetingsResponse"> + <complexType> + <sequence> + <element name="getGreetingsReturn" type="xsd:string"/> + </sequence> + </complexType> + </element> + + </schema> + </wsdl:types> + + <wsdl:message name="getGreetingsRequest"> + <wsdl:part element="tns:getGreetings" name="parameters"/> + </wsdl:message> + + <wsdl:message name="getGreetingsResponse"> + <wsdl:part element="tns:getGreetingsResponse" name="parameters"/> + </wsdl:message> + + <wsdl:portType name="HelloWorld"> + <wsdl:operation name="getGreetings"> + <wsdl:input message="tns:getGreetingsRequest" name="getGreetingsRequest"/> + <wsdl:output message="tns:getGreetingsResponse" name="getGreetingsResponse"/> + </wsdl:operation> + </wsdl:portType> + + <wsdl:binding name="HelloWorldSoapBinding" type="tns:HelloWorld"> + <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> + <wsdl:operation name="getGreetings"> + <wsdlsoap:operation soapAction=""/> + <wsdl:input name="getGreetingsRequest"> + <wsdlsoap:body use="literal"/> + </wsdl:input> + <wsdl:output name="getGreetingsResponse"> + <wsdlsoap:body use="literal"/> + </wsdl:output> + </wsdl:operation> + + </wsdl:binding> + + <wsdl:service name="HelloWorldService"> + <wsdl:port binding="tns:HelloWorldSoapBinding" name="HelloWorldSoapPort"> + <wsdlsoap:address location="http://localhost:8080/services/HelloWorldService1b2b3b4a"/> + </wsdl:port> + </wsdl:service> + +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1b2b3b4b.wsdl b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1b2b3b4b.wsdl new file mode 100644 index 0000000000..8bff3de3fd --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/main/resources/wsdl/helloworldC1b2b3b4b.wsdl @@ -0,0 +1,80 @@ +<?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 targetNamespace="http://helloworld" xmlns:tns="http://helloworld" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" + name="helloworld"> + + <wsdl:types> + <schema elementFormDefault="qualified" targetNamespace="http://helloworld" xmlns="http://www.w3.org/2001/XMLSchema"> + + <element name="getGreetings"> + <complexType> + <sequence> + <element name="name" type="xsd:string"/> + </sequence> + </complexType> + </element> + + <element name="getGreetingsResponse"> + <complexType> + <sequence> + <element name="getGreetingsReturn" type="xsd:string"/> + </sequence> + </complexType> + </element> + + </schema> + </wsdl:types> + + <wsdl:message name="getGreetingsRequest"> + <wsdl:part element="tns:getGreetings" name="parameters"/> + </wsdl:message> + + <wsdl:message name="getGreetingsResponse"> + <wsdl:part element="tns:getGreetingsResponse" name="parameters"/> + </wsdl:message> + + <wsdl:portType name="HelloWorld"> + <wsdl:operation name="getGreetings"> + <wsdl:input message="tns:getGreetingsRequest" name="getGreetingsRequest"/> + <wsdl:output message="tns:getGreetingsResponse" name="getGreetingsResponse"/> + </wsdl:operation> + </wsdl:portType> + + <wsdl:binding name="HelloWorldSoapBinding" type="tns:HelloWorld"> + <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> + <wsdl:operation name="getGreetings"> + <wsdlsoap:operation soapAction=""/> + <wsdl:input name="getGreetingsRequest"> + <wsdlsoap:body use="literal"/> + </wsdl:input> + <wsdl:output name="getGreetingsResponse"> + <wsdlsoap:body use="literal"/> + </wsdl:output> + </wsdl:operation> + + </wsdl:binding> + + <wsdl:service name="HelloWorldService"> + <wsdl:port binding="tns:HelloWorldSoapBinding" name="HelloWorldSoapPort"> + <wsdlsoap:address location="http://localhost:8080/services/HelloWorldService1b2b3b4b"/> + </wsdl:port> + </wsdl:service> + +</wsdl:definitions> diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/test/java/org/apache/tuscany/sca/itest/SDOWSDLTestCase.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/test/java/org/apache/tuscany/sca/itest/SDOWSDLTestCase.java new file mode 100644 index 0000000000..c74abc7223 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/test/java/org/apache/tuscany/sca/itest/SDOWSDLTestCase.java @@ -0,0 +1,97 @@ +/* + * 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.itest; + +import java.rmi.RemoteException; + +import junit.framework.TestCase; + +import org.apache.tuscany.api.SCARuntime; +import org.osoa.sca.CurrentCompositeContext; + +import bigbank.account.services.accountdata.AccountDataService; + +import com.bigbank.account.AccountFactory; +import com.bigbank.account.CustomerProfileData; + +/** + * Tests all the combinations of wiring services, components, and references + * which use either interface.java or interface.wsdl. + * + * The tests use a service (1) wired to a components (2) wired to another + * component (3) wired to a reference (4). Each of those uses either + * interface.java (a) or interface.wsdl (b). This results in 16 different + * combinations 1a2a3a4a thru 1b2b3b4b. + */ +public class SDOWSDLTestCase extends TestCase { + + public void testClient1a2a3a4a() throws RemoteException { + + doit("Client1a2a3a4a"); + doit("Client1a2a3a4b"); + doit("Client1a2a3b4a"); + doit("Client1a2a3b4b"); + doit("Client1a2b3a4a"); + doit("Client1a2b3a4b"); + doit("Client1a2b3b4a"); + doit("Client1a2b3b4b"); + doit("Client1b2a3a4a"); + doit("Client1b2a3a4b"); + doit("Client1b2a3b4a"); + doit("Client1b2a3b4b"); + +// TODO: TUSCANY-1135, service using wsdl wired to component using wsdl fails +// doit("Client1b2b3a4a"); +// doit("Client1b2b3a4b"); +// doit("Client1b2b3b4a"); +// doit("Client1b2b3b4b"); + } + + private void doit(String compName) throws RemoteException { + AccountDataService client = CurrentCompositeContext.getContext().locateService(AccountDataService.class, compName); + CustomerProfileData dataIn = AccountFactory.INSTANCE.createCustomerProfileData(); + dataIn.setAddress("home"); + dataIn.setEmail("petra@home"); + dataIn.setFirstName("petra"); + dataIn.setId(1); + dataIn.setLastName("A"); + dataIn.setLoginID("petra"); + dataIn.setPassword("ant"); + + CustomerProfileData dataOut = client.createAccount(dataIn , false, false); + + assertEquals(dataIn.getAddress(), dataOut.getAddress()); + assertEquals(dataIn.getEmail(), dataOut.getEmail()); + assertEquals(dataIn.getFirstName(), dataOut.getFirstName()); + assertEquals(dataIn.getId(), dataOut.getId()); + assertEquals(dataIn.getLastName(), dataOut.getLastName()); + assertEquals(dataIn.getLoginID(), dataOut.getLoginID()); + assertEquals(dataIn.getPassword(), dataOut.getPassword()); + } + + protected void setUp() throws Exception { + SCARuntime.start("SDOWSDLTest.composite"); + } + + protected void tearDown() throws Exception { + SCARuntime.stop(); + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/test/java/org/apache/tuscany/sca/itest/WSDLTestCase.java b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/test/java/org/apache/tuscany/sca/itest/WSDLTestCase.java new file mode 100644 index 0000000000..59c4c17b1c --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/itest/wsdl/src/test/java/org/apache/tuscany/sca/itest/WSDLTestCase.java @@ -0,0 +1,149 @@ +/* + * 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.itest; + +import helloworld.HelloWorldService; +import junit.framework.TestCase; + +import org.apache.tuscany.api.SCARuntime; +import org.osoa.sca.CurrentCompositeContext; + +/** + * Tests all the combinations of wiring services, components, and references + * which use either interface.java or interface.wsdl. + * + * The tests use a service (1) wired to a components (2) wired to another + * component (3) wired to a reference (4). Each of those uses either + * interface.java (a) or interface.wsdl (b). This results in 16 different + * combinations 1a2a3a4a thru 1b2b3b4b. + */ +public class WSDLTestCase extends TestCase { + + public void testClient1a2a3a4a() { + HelloWorldService client = CurrentCompositeContext.getContext().locateService(HelloWorldService.class, "Client1a2a3a4a"); + assertEquals("Hi petra", client.getGreetings("petra")); + HelloWorldService client1 = CurrentCompositeContext.getContext().locateService(HelloWorldService.class, "Client1a2a3a4b"); + assertEquals("Hi petra", client1.getGreetings("petra")); + HelloWorldService client2 = CurrentCompositeContext.getContext().locateService(HelloWorldService.class, "Client1a2a3b4a"); + assertEquals("Hi petra", client2.getGreetings("petra")); + HelloWorldService client3 = CurrentCompositeContext.getContext().locateService(HelloWorldService.class, "Client1a2a3b4b"); + assertEquals("Hi petra", client3.getGreetings("petra")); + HelloWorldService client4 = CurrentCompositeContext.getContext().locateService(HelloWorldService.class, "Client1a2b3a4a"); + assertEquals("Hi petra", client4.getGreetings("petra")); + HelloWorldService client5 = CurrentCompositeContext.getContext().locateService(HelloWorldService.class, "Client1a2b3a4b"); + assertEquals("Hi petra", client5.getGreetings("petra")); + HelloWorldService client6 = CurrentCompositeContext.getContext().locateService(HelloWorldService.class, "Client1a2b3b4a"); + assertEquals("Hi petra", client6.getGreetings("petra")); + HelloWorldService client7 = CurrentCompositeContext.getContext().locateService(HelloWorldService.class, "Client1a2b3b4b"); + assertEquals("Hi petra", client7.getGreetings("petra")); + HelloWorldService client8 = CurrentCompositeContext.getContext().locateService(HelloWorldService.class, "Client1b2a3a4a"); + assertEquals("Hi petra", client8.getGreetings("petra")); + HelloWorldService client9 = CurrentCompositeContext.getContext().locateService(HelloWorldService.class, "Client1b2a3a4b"); + assertEquals("Hi petra", client9.getGreetings("petra")); + HelloWorldService client10 = CurrentCompositeContext.getContext().locateService(HelloWorldService.class, "Client1b2a3b4a"); + assertEquals("Hi petra", client10.getGreetings("petra")); + HelloWorldService client11 = CurrentCompositeContext.getContext().locateService(HelloWorldService.class, "Client1b2a3b4b"); + assertEquals("Hi petra", client11.getGreetings("petra")); +//TODO: TUSCANY-1124 DataBindingInterceptor incorrect when binding.ws wired to java component using interface.wsdl +// HelloWorldService client12 = CurrentCompositeContext.getContext().locateService(HelloWorldService.class, "Client1b2b3a4a"); +// assertEquals("Hi petra", client12.getGreetings("petra")); +// HelloWorldService client13 = CurrentCompositeContext.getContext().locateService(HelloWorldService.class, "Client1b2b3a4b"); +// assertEquals("Hi petra", client13.getGreetings("petra")); +// HelloWorldService client14 = CurrentCompositeContext.getContext().locateService(HelloWorldService.class, "Client1b2b3b4a"); +// assertEquals("Hi petra", client14.getGreetings("petra")); +// HelloWorldService client15 = CurrentCompositeContext.getContext().locateService(HelloWorldService.class, "Client1b2b3b4b"); +// assertEquals("Hi petra", client15.getGreetings("petra")); + } + + // TODO: TUSCANY-1125, Testcases fail with out of heap space if too many individual test run in one testcase +// public void testClient1a2a3a4a() { +// HelloWorldService client = CurrentCompositeContext.getContext().locateService(HelloWorldService.class, "Client1a2a3a4a"); +// assertEquals("Hi petra", client.getGreetings("petra")); +// } +// public void testClient1a2a3a4b() { +// HelloWorldService client = CurrentCompositeContext.getContext().locateService(HelloWorldService.class, "Client1a2a3a4b"); +// assertEquals("Hi petra", client.getGreetings("petra")); +// } +// public void testClient1a2a3b4a() { +// HelloWorldService client = CurrentCompositeContext.getContext().locateService(HelloWorldService.class, "Client1a2a3b4a"); +// assertEquals("Hi petra", client.getGreetings("petra")); +// } +// public void testClient1a2a3b4b() { +// HelloWorldService client = CurrentCompositeContext.getContext().locateService(HelloWorldService.class, "Client1a2a3b4b"); +// assertEquals("Hi petra", client.getGreetings("petra")); +// } +// public void testClient1a2b3a4a() { +// HelloWorldService client = CurrentCompositeContext.getContext().locateService(HelloWorldService.class, "Client1a2b3a4a"); +// assertEquals("Hi petra", client.getGreetings("petra")); +// } +// public void testClient1a2b3a4b() { +// HelloWorldService client = CurrentCompositeContext.getContext().locateService(HelloWorldService.class, "Client1a2b3a4b"); +// assertEquals("Hi petra", client.getGreetings("petra")); +// } +// public void testClient1a2b3b4a() { +// HelloWorldService client = CurrentCompositeContext.getContext().locateService(HelloWorldService.class, "Client1a2b3b4a"); +// assertEquals("Hi petra", client.getGreetings("petra")); +// } +// public void testClient1a2b3b4b() { +// HelloWorldService client = CurrentCompositeContext.getContext().locateService(HelloWorldService.class, "Client1a2b3b4b"); +// assertEquals("Hi petra", client.getGreetings("petra")); +// } +// public void testClient1b2a3a4a() { +// HelloWorldService client = CurrentCompositeContext.getContext().locateService(HelloWorldService.class, "Client1b2a3a4a"); +// assertEquals("Hi petra", client.getGreetings("petra")); +// } +// public void testClient1b2a3a4b() { +// HelloWorldService client = CurrentCompositeContext.getContext().locateService(HelloWorldService.class, "Client1b2a3a4b"); +// assertEquals("Hi petra", client.getGreetings("petra")); +// } +// public void testClient1b2a3b4a() { +// HelloWorldService client = CurrentCompositeContext.getContext().locateService(HelloWorldService.class, "Client1b2a3b4a"); +// assertEquals("Hi petra", client.getGreetings("petra")); +// } +// public void testClient1b2a3b4b() { +// HelloWorldService client = CurrentCompositeContext.getContext().locateService(HelloWorldService.class, "Client1b2a3b4b"); +// assertEquals("Hi petra", client.getGreetings("petra")); +// } +// public void testClient1b2b3a4a() { +// HelloWorldService client = CurrentCompositeContext.getContext().locateService(HelloWorldService.class, "Client1b2b3a4a"); +// assertEquals("Hi petra", client.getGreetings("petra")); +// } +// public void testClient1b2b3a4b() { +// HelloWorldService client = CurrentCompositeContext.getContext().locateService(HelloWorldService.class, "Client1b2b3a4b"); +// assertEquals("Hi petra", client.getGreetings("petra")); +// } +// public void testClient1b2b3b4a() { +// HelloWorldService client = CurrentCompositeContext.getContext().locateService(HelloWorldService.class, "Client1b2b3b4a"); +// assertEquals("Hi petra", client.getGreetings("petra")); +// } +// public void testClient1b2b3b4b() { +// HelloWorldService client = CurrentCompositeContext.getContext().locateService(HelloWorldService.class, "Client1b2b3b4b"); +// assertEquals("Hi petra", client.getGreetings("petra")); +// } + + protected void setUp() throws Exception { + SCARuntime.start("WSDLTest.composite"); + } + + protected void tearDown() throws Exception { + SCARuntime.stop(); + } + +} diff --git a/sca-java-1.x/branches/sca-java-integration/testing/sca/pom.xml b/sca-java-1.x/branches/sca-java-integration/testing/sca/pom.xml new file mode 100644 index 0000000000..da333bc066 --- /dev/null +++ b/sca-java-1.x/branches/sca-java-integration/testing/sca/pom.xml @@ -0,0 +1,165 @@ +<?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> + <parent> + <groupId>org.apache.tuscany</groupId> + <artifactId>parent</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + </parent> + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.tuscany.testing</groupId> + <artifactId>tuscany-testing-sca</artifactId> + <version>0.1-integration-incubating-SNAPSHOT</version> + <packaging>pom</packaging> + <name>Apache Tuscany SCA tests</name> + <properties> + <testing.version>0.1-integration-incubating-SNAPSHOT</testing.version> + + <sca.version>0.1-integration-incubating-SNAPSHOT</sca.version> + <scaSpecVersion>1.0</scaSpecVersion> + + <scaKernelVersion>0.1-integration-incubating-SNAPSHOT</scaKernelVersion> + + <sdo.version>1.0-incubator-SNAPSHOT</sdo.version> + <specVersionSDO>2.1</specVersionSDO> + + </properties> + + <profiles> + + <!-- default profile --> + <profile> + <id>stable</id> + <activation> + <activeByDefault>true</activeByDefault> + </activation> + <modules> + <module>itest</module> + </modules> + </profile> + + <profile> + <id>integration</id> + <modules> + <module>itest</module> + </modules> + </profile> + + <profile> + <id>unstable</id> + <modules> + <module>itest</module> + <module>interop</module> + </modules> + </profile> + + </profiles> + + <build> + <defaultGoal>test</defaultGoal> + <pluginManagement> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-checkstyle-plugin</artifactId> + <dependencies> + <dependency> + <groupId>org.apache.tuscany</groupId> + <artifactId>buildtools</artifactId> + <version>${pom.version}</version> + </dependency> + </dependencies> + <executions> + <execution> + <id>process-sources</id> + <phase>process-sources</phase> + <configuration> + <configLocation>tuscany-checkstyle.xml</configLocation> + <suppressionsLocation>tuscany-suppressions.xml</suppressionsLocation> + <consoleOutput>true</consoleOutput> + <failsOnError>true</failsOnError> + <linkXRef>false</linkXRef> + <sourceDirectory>${basedir}/src</sourceDirectory> + <propertyExpansion>${checkstyle.properties}</propertyExpansion> + </configuration> + <goals> + <goal>checkstyle</goal> + </goals> + </execution> + </executions> + </plugin> + + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-pmd-plugin</artifactId> + <configuration> + <rulesets> + <ruleset>${basedir}/.ruleset</ruleset> + </rulesets> + <linkXRef>false</linkXRef> + <targetJdk>1.5</targetJdk> + </configuration> + <executions> + <execution> + <id>process-sources</id> + <phase>process-sources</phase> + <goals> + <goal>check</goal> + </goals> + </execution> + </executions> + </plugin> + + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-compiler-plugin</artifactId> + <version>2.0.2</version> + <configuration> + <source>1.5</source> + <target>1.5</target> + </configuration> + </plugin> + + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-surefire-plugin</artifactId> + <version>2.3</version> + <configuration> + <includes> + <include>**/*TestCase.java</include> + </includes> + <reportFormat>brief</reportFormat> + <useFile>false</useFile> + <forkMode>once</forkMode> + <argLine>-ea -Xmx128m</argLine> + </configuration> + </plugin> + + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-clover-plugin</artifactId> + <configuration> + <jdk>1.5</jdk> + </configuration> + </plugin> + </plugins> + </pluginManagement> + </build> +</project> |