diff options
author | rfeng <rfeng@13f79535-47bb-0310-9956-ffa450edef68> | 2009-01-28 00:52:19 +0000 |
---|---|---|
committer | rfeng <rfeng@13f79535-47bb-0310-9956-ffa450edef68> | 2009-01-28 00:52:19 +0000 |
commit | 16f076c0b598f2b29df466eb452ba1419b0d0d6f (patch) | |
tree | 1600e73fb773f84791197623e7c7856643a90dad /java/sca/samples/binding-ws-calculator/src/main | |
parent | c34b55373044d9d1f35251afebce5cda2a01fa12 (diff) |
Fork a client thread to call the service after it's ready
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@738326 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java/sca/samples/binding-ws-calculator/src/main')
-rw-r--r-- | java/sca/samples/binding-ws-calculator/src/main/java/calculator/CalculatorClient.java | 29 |
1 files changed, 18 insertions, 11 deletions
diff --git a/java/sca/samples/binding-ws-calculator/src/main/java/calculator/CalculatorClient.java b/java/sca/samples/binding-ws-calculator/src/main/java/calculator/CalculatorClient.java index af01e58e62..50b81ace2a 100644 --- a/java/sca/samples/binding-ws-calculator/src/main/java/calculator/CalculatorClient.java +++ b/java/sca/samples/binding-ws-calculator/src/main/java/calculator/CalculatorClient.java @@ -40,17 +40,24 @@ public class CalculatorClient { @Init public void calculate() { - - // Calculate - try { - System.out.println("SCA API ClassLoader: " + print(Reference.class.getClassLoader())); - System.out.println("3 + 2=" + calculatorService.add(3, 2)); - System.out.println("3 - 2=" + calculatorService.subtract(3, 2)); - System.out.println("3 * 2=" + calculatorService.multiply(3, 2)); - System.out.println("3 / 2=" + calculatorService.divide(3, 2)); - } catch (Throwable e) { - e.printStackTrace(); - } + // The calls cannot be done in the same thread as the services are starting + // Fork a new thread + Thread thread = new Thread() { + public void run() { + // Calculate + try { + Thread.sleep(3000); + System.out.println("SCA API ClassLoader: " + print(Reference.class.getClassLoader())); + System.out.println("3 + 2=" + calculatorService.add(3, 2)); + System.out.println("3 - 2=" + calculatorService.subtract(3, 2)); + System.out.println("3 * 2=" + calculatorService.multiply(3, 2)); + System.out.println("3 / 2=" + calculatorService.divide(3, 2)); + } catch (Throwable e) { + e.printStackTrace(); + } + } + }; + thread.start(); } private static String print(ClassLoader cl) { |