From fceecb89a459f34500d1b3ea6dc1466ba8d29fd7 Mon Sep 17 00:00:00 2001 From: jsdelfino Date: Wed, 20 Aug 2008 00:23:33 +0000 Subject: Added a helloworld-ws-reference-lean sample which shows different ways to use a reference in a client program without having to use a different component class. I'll add more comments describing the various options demonstrated in the sample to JIRA TUSCANY-2556, which I've created for this work. git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@687208 13f79535-47bb-0310-9956-ffa450edef68 --- .../src/main/java/helloworld/HelloWorldClient.java | 47 +++++++++++ .../main/java/helloworld/HelloWorldClient2.java | 53 +++++++++++++ .../main/java/helloworld/HelloWorldClient3.java | 47 +++++++++++ .../main/java/helloworld/HelloWorldService.java | 29 +++++++ .../main/resources/helloworldwsclient.composite | 49 ++++++++++++ .../src/main/resources/logging.properties | 30 +++++++ .../src/main/resources/wsdl/helloworld.wsdl | 92 ++++++++++++++++++++++ 7 files changed, 347 insertions(+) create mode 100644 java/sca/samples/helloworld-ws-reference-lean/src/main/java/helloworld/HelloWorldClient.java create mode 100644 java/sca/samples/helloworld-ws-reference-lean/src/main/java/helloworld/HelloWorldClient2.java create mode 100644 java/sca/samples/helloworld-ws-reference-lean/src/main/java/helloworld/HelloWorldClient3.java create mode 100644 java/sca/samples/helloworld-ws-reference-lean/src/main/java/helloworld/HelloWorldService.java create mode 100644 java/sca/samples/helloworld-ws-reference-lean/src/main/resources/helloworldwsclient.composite create mode 100644 java/sca/samples/helloworld-ws-reference-lean/src/main/resources/logging.properties create mode 100644 java/sca/samples/helloworld-ws-reference-lean/src/main/resources/wsdl/helloworld.wsdl (limited to 'java/sca/samples/helloworld-ws-reference-lean/src/main') diff --git a/java/sca/samples/helloworld-ws-reference-lean/src/main/java/helloworld/HelloWorldClient.java b/java/sca/samples/helloworld-ws-reference-lean/src/main/java/helloworld/HelloWorldClient.java new file mode 100644 index 0000000000..f8d66876fa --- /dev/null +++ b/java/sca/samples/helloworld-ws-reference-lean/src/main/java/helloworld/HelloWorldClient.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 helloworld; + +import org.apache.tuscany.sca.host.embedded.SCADomain; +import org.osoa.sca.annotations.EagerInit; +import org.osoa.sca.annotations.Reference; +import org.osoa.sca.annotations.Scope; + +/** + * The HelloWorld client implementation + */ +@Scope("COMPOSITE") @EagerInit +public class HelloWorldClient { + + static HelloWorldService helloWorldService; + + @Reference + public void setHelloWorldService(HelloWorldService service) { + helloWorldService = service; + } + + public final static void main(String[] args) throws Exception { + SCADomain scaDomain = SCADomain.newInstance("helloworldwsclient.composite"); + + String value = helloWorldService.getGreetings("World"); + System.out.println(value); + + scaDomain.close(); + } +} \ No newline at end of file diff --git a/java/sca/samples/helloworld-ws-reference-lean/src/main/java/helloworld/HelloWorldClient2.java b/java/sca/samples/helloworld-ws-reference-lean/src/main/java/helloworld/HelloWorldClient2.java new file mode 100644 index 0000000000..276083437d --- /dev/null +++ b/java/sca/samples/helloworld-ws-reference-lean/src/main/java/helloworld/HelloWorldClient2.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 helloworld; + +import org.apache.tuscany.sca.host.embedded.SCADomain; +import org.osoa.sca.annotations.EagerInit; +import org.osoa.sca.annotations.Reference; +import org.osoa.sca.annotations.Scope; + +/** + * The HelloWorld client implementation + */ +@Scope("COMPOSITE") @EagerInit +public class HelloWorldClient2 { + + private static HelloWorldClient2 main; + + @Reference + public HelloWorldService helloWorldService; + + public HelloWorldClient2() { + main = this; + } + + public final static void main(String[] args) throws Exception { + SCADomain scaDomain = SCADomain.newInstance("helloworldwsclient.composite"); + + main.doit(args); + + scaDomain.close(); + } + + private void doit(String[] args) { + String value = helloWorldService.getGreetings("World"); + System.out.println(value); + } +} \ No newline at end of file diff --git a/java/sca/samples/helloworld-ws-reference-lean/src/main/java/helloworld/HelloWorldClient3.java b/java/sca/samples/helloworld-ws-reference-lean/src/main/java/helloworld/HelloWorldClient3.java new file mode 100644 index 0000000000..cd8bf27c5f --- /dev/null +++ b/java/sca/samples/helloworld-ws-reference-lean/src/main/java/helloworld/HelloWorldClient3.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 helloworld; + +import org.apache.tuscany.sca.host.embedded.SCADomain; +import org.osoa.sca.annotations.EagerInit; +import org.osoa.sca.annotations.Reference; +import org.osoa.sca.annotations.Scope; + +/** + * The HelloWorld client implementation + */ +@Scope("COMPOSITE") @EagerInit +public class HelloWorldClient3 { + + @Reference + public HelloWorldService helloWorldService; + + public final static void main(String[] args) throws Exception { + SCADomain scaDomain = SCADomain.newInstance("helloworldwsclient.composite"); + + scaDomain.getService(HelloWorldClient3.class, "HelloWorldClient3").doit(args); + + scaDomain.close(); + } + + public void doit(String[] args) { + String value = helloWorldService.getGreetings("World"); + System.out.println(value); + } +} \ No newline at end of file diff --git a/java/sca/samples/helloworld-ws-reference-lean/src/main/java/helloworld/HelloWorldService.java b/java/sca/samples/helloworld-ws-reference-lean/src/main/java/helloworld/HelloWorldService.java new file mode 100644 index 0000000000..db0c947cf7 --- /dev/null +++ b/java/sca/samples/helloworld-ws-reference-lean/src/main/java/helloworld/HelloWorldService.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 helloworld; + +import org.osoa.sca.annotations.Remotable; + +/** + * The interface for the helloworld service + */ +@Remotable +public interface HelloWorldService { + public String getGreetings(String name); +} diff --git a/java/sca/samples/helloworld-ws-reference-lean/src/main/resources/helloworldwsclient.composite b/java/sca/samples/helloworld-ws-reference-lean/src/main/resources/helloworldwsclient.composite new file mode 100644 index 0000000000..b3cd07a94e --- /dev/null +++ b/java/sca/samples/helloworld-ws-reference-lean/src/main/resources/helloworldwsclient.composite @@ -0,0 +1,49 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/java/sca/samples/helloworld-ws-reference-lean/src/main/resources/logging.properties b/java/sca/samples/helloworld-ws-reference-lean/src/main/resources/logging.properties new file mode 100644 index 0000000000..3dca310cdb --- /dev/null +++ b/java/sca/samples/helloworld-ws-reference-lean/src/main/resources/logging.properties @@ -0,0 +1,30 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# +# $Rev$ $Date$ +# + +# Custom logging configuration for Tuscany samples +# By default, only INFO level logging is enabled and ALL messages get sent to the console +# For more messages from the runtime, uncomment specific settings at the end of this file +handlers = java.util.logging.ConsoleHandler +java.util.logging.ConsoleHandler.level = ALL +java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter +.level=INFO + +# Uncomment the next setting to get all Tuscany messages (this will be a lot) +#org.apache.tuscany.level=FINEST diff --git a/java/sca/samples/helloworld-ws-reference-lean/src/main/resources/wsdl/helloworld.wsdl b/java/sca/samples/helloworld-ws-reference-lean/src/main/resources/wsdl/helloworld.wsdl new file mode 100644 index 0000000000..662c9affac --- /dev/null +++ b/java/sca/samples/helloworld-ws-reference-lean/src/main/resources/wsdl/helloworld.wsdl @@ -0,0 +1,92 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -- cgit v1.2.3