使用 Eclipse 和 Java SE 6 创建独立 Web Services 应用程序,第 2 部分: Web 服务客户端应用程序
2010-02-02 00:00:00 来源:WEB开发网Port 是远程服务器的端口号,例如 8080。
Type 是从浏览器发送的请求类型,有 HTTP 和 TCP/IP 两种选项。
Communication Timeout 是与服务器的 TCP/IP 连接可持续的时间长度,单位为毫秒。
单击 OK 保存更改。
更新客户端代码
接下来,需要对客户端代码作一些更改,以便通过 TCP/IP monitor 重定向 Web 服务。这里需要更改 Web 服务的端点,因为 TCP/IP monitor 侦听端口 8081。更新后的代码如清单 5 所示:
清单 5. 客户端应用程序
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:8081/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.");
}
}
更多精彩
赞助商链接