diff options
Diffstat (limited to '')
3 files changed, 270 insertions, 0 deletions
diff --git a/sca-java-2.x/branches/2.0-Beta1/itest/ws-jaxws/external-client/src/main/java/org/apache/tuscany/sca/binding/ws/jaxws/external/client/HelloWorldClientLauncher.java b/sca-java-2.x/branches/2.0-Beta1/itest/ws-jaxws/external-client/src/main/java/org/apache/tuscany/sca/binding/ws/jaxws/external/client/HelloWorldClientLauncher.java new file mode 100644 index 0000000000..da40a7f442 --- /dev/null +++ b/sca-java-2.x/branches/2.0-Beta1/itest/ws-jaxws/external-client/src/main/java/org/apache/tuscany/sca/binding/ws/jaxws/external/client/HelloWorldClientLauncher.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.binding.ws.jaxws.external.client; + +import java.io.File; +import java.net.URL; + +import javax.xml.namespace.QName; +import javax.xml.ws.Service; + +import org.apache.tuscany.sca.binding.ws.jaxws.sca.Exception_Exception; +import org.apache.tuscany.sca.binding.ws.jaxws.sca.HelloWorldImpl; + +public class HelloWorldClientLauncher { + + public HelloWorldImpl wsProxy; + + public HelloWorldClientLauncher(){ + } + + public void createClient() throws Exception{ + System.out.println(">>> Starting external JAXWS client "); + + // default JVM JAXWS support + QName serviceName = new QName("http://jaxws.ws.binding.sca.tuscany.apache.org/", "HelloWorldImplService"); + QName portName = new QName("http://jaxws.ws.binding.sca.tuscany.apache.org/", "HelloWorldImplPort"); + //URL wsdlLocation = new File("../external-client/target/classes/helloworld-sca.wsdl").toURL(); + URL wsdlLocation = new File("../external-client/target/classes/HelloWorldImplService.wsdl").toURL(); + javax.xml.ws.Service webService = Service.create(wsdlLocation, serviceName); + wsProxy = (HelloWorldImpl) webService.getPort(portName, HelloWorldImpl.class); + } + + public void destroyClient(){ + System.out.println(">>> Stopping external JAXWS client: "); + // TODO + } + + public String getGreetings(String name){ + System.out.println("Entering External Client HelloWorld.getGreetings: " + name); + String response = wsProxy.getGreetings(name); + System.out.println("Leaving External Client HelloWorld.getGreetings: " + response); + return response; + } + + public String getGreetingsException(String name) throws Exception_Exception { + return wsProxy.getGreetingsException(name); + } + + public static void main(String[] args) throws Exception { + HelloWorldClientLauncher launcher = new HelloWorldClientLauncher(); + launcher.createClient(); + launcher.getGreetings("Fred"); + launcher.destroyClient(); + } + +} diff --git a/sca-java-2.x/branches/2.0-Beta1/itest/ws-jaxws/external-client/src/main/resources/HelloWorldImplService.wsdl b/sca-java-2.x/branches/2.0-Beta1/itest/ws-jaxws/external-client/src/main/resources/HelloWorldImplService.wsdl new file mode 100644 index 0000000000..11ed0a3353 --- /dev/null +++ b/sca-java-2.x/branches/2.0-Beta1/itest/ws-jaxws/external-client/src/main/resources/HelloWorldImplService.wsdl @@ -0,0 +1,104 @@ +<?xml version="1.0" encoding="UTF-8" standalone="yes"?> +<!-- + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. +--> +<!-- Generated by JAX-WS RI at http://jax-ws.dev.java.net. RI's version is JAX-WS RI 2.1.7-b01-. --> +<definitions targetNamespace="http://jaxws.ws.binding.sca.tuscany.apache.org/" name="HelloWorldImplService" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:tns="http://jaxws.ws.binding.sca.tuscany.apache.org/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"> + <types> + <xsd:schema> + <xsd:import namespace="http://jaxws.ws.binding.sca.tuscany.apache.org/" schemaLocation="HelloWorldImplService_schema1.xsd"/> + </xsd:schema> + </types> + <message name="getGreetings"> + <part name="parameters" element="tns:getGreetings"/> + </message> + <message name="getGreetingsResponse"> + <part name="parameters" element="tns:getGreetingsResponse"/> + </message> + <message name="getGreetingsException"> + <part name="parameters" element="tns:getGreetingsException"/> + </message> + <message name="getGreetingsExceptionResponse"> + <part name="parameters" element="tns:getGreetingsExceptionResponse"/> + </message> + <message name="Exception"> + <part name="fault" element="tns:Exception"/> + </message> + <message name="getGreetingsComplex"> + <part name="parameters" element="tns:getGreetingsComplex"/> + </message> + <message name="getGreetingsComplexResponse"> + <part name="parameters" element="tns:getGreetingsComplexResponse"/> + </message> + <portType name="HelloWorldImpl"> + <operation name="getGreetings"> + <input message="tns:getGreetings"/> + <output message="tns:getGreetingsResponse"/> + </operation> + <operation name="getGreetingsException"> + <input message="tns:getGreetingsException"/> + <output message="tns:getGreetingsExceptionResponse"/> + <fault message="tns:Exception" name="Exception"/> + </operation> + <operation name="getGreetingsComplex"> + <input message="tns:getGreetingsComplex"/> + <output message="tns:getGreetingsComplexResponse"/> + </operation> + </portType> + <binding name="HelloWorldImplPortBinding" type="tns:HelloWorldImpl"> + <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/> + <operation name="getGreetings"> + <soap:operation soapAction=""/> + <input> + <soap:body use="literal"/> + </input> + <output> + <soap:body use="literal"/> + </output> + </operation> + <operation name="getGreetingsException"> + <soap:operation soapAction=""/> + <input> + <soap:body use="literal"/> + </input> + <output> + <soap:body use="literal"/> + </output> + <fault name="Exception"> + <soap:fault name="Exception" use="literal"/> + </fault> + </operation> + <operation name="getGreetingsComplex"> + <soap:operation soapAction=""/> + <input> + <soap:body use="literal"/> + </input> + <output> + <soap:body use="literal"/> + </output> + </operation> + </binding> + <service name="HelloWorldImplService"> + <port name="HelloWorldImplPort" binding="tns:HelloWorldImplPortBinding"> + <soap:address location="http://localhost:8085/HelloWorldService/HelloWorld"/> + </port> + </service> +</definitions> + + + diff --git a/sca-java-2.x/branches/2.0-Beta1/itest/ws-jaxws/external-client/src/main/resources/HelloWorldImplService_schema1.xsd b/sca-java-2.x/branches/2.0-Beta1/itest/ws-jaxws/external-client/src/main/resources/HelloWorldImplService_schema1.xsd new file mode 100644 index 0000000000..3c347570a0 --- /dev/null +++ b/sca-java-2.x/branches/2.0-Beta1/itest/ws-jaxws/external-client/src/main/resources/HelloWorldImplService_schema1.xsd @@ -0,0 +1,93 @@ +<?xml version="1.0" encoding="UTF-8" standalone="yes"?> +<!-- + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. +--> +<xs:schema version="1.0" targetNamespace="http://jaxws.ws.binding.sca.tuscany.apache.org/" xmlns:tns="http://jaxws.ws.binding.sca.tuscany.apache.org/" xmlns:xs="http://www.w3.org/2001/XMLSchema"> + + <xs:element name="Exception" type="tns:Exception"/> + + <xs:element name="getGreetings" type="tns:getGreetings"/> + + <xs:element name="getGreetingsComplex" type="tns:getGreetingsComplex"/> + + <xs:element name="getGreetingsComplexResponse" type="tns:getGreetingsComplexResponse"/> + + <xs:element name="getGreetingsException" type="tns:getGreetingsException"/> + + <xs:element name="getGreetingsExceptionResponse" type="tns:getGreetingsExceptionResponse"/> + + <xs:element name="getGreetingsResponse" type="tns:getGreetingsResponse"/> + + <xs:complexType name="getGreetingsException"> + <xs:sequence> + <xs:element name="arg0" type="xs:string" minOccurs="0"/> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="getGreetingsExceptionResponse"> + <xs:sequence> + <xs:element name="return" type="xs:string" minOccurs="0"/> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="Exception"> + <xs:sequence> + <xs:element name="message" type="xs:string" minOccurs="0"/> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="getGreetings"> + <xs:sequence> + <xs:element name="arg0" type="xs:string" minOccurs="0"/> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="getGreetingsResponse"> + <xs:sequence> + <xs:element name="return" type="xs:string" minOccurs="0"/> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="getGreetingsComplex"> + <xs:sequence> + <xs:element name="arg0" type="tns:foo" minOccurs="0"/> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="foo"> + <xs:sequence> + <xs:element name="bars" type="tns:bar" nillable="true" minOccurs="0" maxOccurs="unbounded"/> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="bar"> + <xs:sequence> + <xs:element name="b" type="xs:boolean" minOccurs="0"/> + <xs:element name="s" type="xs:string" minOccurs="0"/> + <xs:element name="x" type="xs:int"/> + <xs:element name="y" type="xs:int" minOccurs="0"/> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="getGreetingsComplexResponse"> + <xs:sequence> + <xs:element name="return" type="tns:foo" minOccurs="0"/> + </xs:sequence> + </xs:complexType> +</xs:schema> + |