WEB开发网
开发学院软件开发Java 使用 Eclipse 和 Java SE 6 创建独立 Web Service... 阅读

使用 Eclipse 和 Java SE 6 创建独立 Web Services 应用程序,第 2 部分: Web 服务客户端应用程序

 2010-02-02 00:00:00 来源:WEB开发网   
核心提示: 注意:若要在 linux 上运行,必须首先设置 JAVA_HOME;在命令行输入:set JAVA_HOME=<your/java/home>新的 build.xml 有两个新的目标:runServer 和 runClient,使用 Eclipse 和 Java SE 6 创建独立

注意:若要在 linux 上运行,必须首先设置 JAVA_HOME;在命令行输入:set JAVA_HOME=<your/java/home>

新的 build.xml 有两个新的目标:runServer 和 runClient。您可能已经注意到,第一行中还更新了 default 目标值,使之不运行 wsimport 任务,而是运行 runClient 目标。而且,注意 runClient 对 pause 有依赖,这意味着虽然默认值为 runClient,但首先会运行 pause。pause 任务依赖于 runServer。这样便允许在客户端运行之前进行暂停,以便适当地启动服务器。所以 runServer 将首先运行。还有一点要注意的是 os 值。这个值表明将执行哪个操作系统(OS)命令,它由 Java Virtual Machine(JVM)决定。OS 是在 os.name 系统属性中设置的。修改后的 build.xml 脚本只包括 Windows 和 Linux,但是必要时可以增加适合您环境的其他操作系统,并更改 Ant <exec> 任务。

注意加粗的 <echo> 部分没有像其他行那样缩进。这是因为所有字符都会返回,包括空格字符。这意味着在 console 窗口中显示的消息将不会有前导空格(图 11)。当脚本运行时,它将显示可以从控制台运行的用于运行服务器应用程序的命令。

为了测试脚本的执行,可以对客户端应用程序作一些修改,以便可以运行它,直到退出。修改如下:

双击 SayHelloClient.java,编辑该文件,如以下清单所示:

清单 4. 修改后的 SayHelloClient.java 文件

package com.myfirst.wsClient; 
 
import java.io.BufferedReader; 
import java.io.IOException; 
import java.io.InputStreamReader; 
 
import javax.xml.ws.BindingProvider; 
import com.myfirst.wsClient.SayHello; 
import com.myfirst.wsClient.SayHelloService; 
 
public class SayHelloClient { 
 
  public static void main(String[] args) { 
  
    SayHelloService shs = new SayHelloService(); 
    SayHello sh = (SayHello) shs.getSayHelloPort(); 
    ((BindingProvider) sh )。getRequestContext()。put( 
      BindingProvider.ENDPOINT_ADDRESS_PROPERTY, 
      "http://localhost:8080/wsServerExample"); 
    System.out.println(((BindingProvider) sh)。toString()); 
 
    String userName = null; 
    boolean exit = false; 
    while (!exit) { 
      System.out.print("\nPlease enter your name 
        (type 'quit' to exit): "); 
      BufferedReader br = new BufferedReader( 
        new InputStreamReader(System.in)); 
      try { 
        userName = br.readLine(); 
      } catch (IOException e) { 
        System.out.println("Error reading name."); 
        System.exit(1); 
      } 
      if (!(exit = userName.trim()。equalsIgnoreCase("quit") || 
          userName.trim()。equalsIgnoreCase("exit"))) { 
        System.out.println(sh.getGreeting(userName)); 
      } 
    } 
    System.out.println("\nThank you for running the client."); 
  } 
} 

上一页  2 3 4 5 6 7 8 9 10  下一页

Tags:使用 Eclipse Java

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接