用 JAX-RPC 构建 RPC 服务和客户机(下)
2010-04-06 00:00:00 来源:WEB开发网清单 23. 为服务调用设置端点和操作
public Object[] search(String keyword) throws IOException {
try {
if (service == null) {
service = new Service();
}
if (call == null) {
call = (Call)service.createCall();
}
if (serviceUrl == null) {
serviceUrl = new URL(SERVICE_URL);
}
call.setTargetEndpointAddress(serviceUrl);
// Select operation to call
call.setOperationName(new QName("http://soapinterop.org/",
"search"));
// placeholder
return new Object[];
} catch (MalformedURLException e) {
throw new IOException("Error creating service URL at " + SERVICE_URL);
} catch (ServiceException e) {
throw new IOException("Error creating service call: " + e.getMessage());
}
}
获得结果
下面就要执行实际调用(使用 Call 对象)并获得结果。这要用 invoke() 方法来完成,这个方法以一个对象数组作为参数:(Object[])。按照次序把参数放在这个数组中。对于 search() 方法,只有一个参数(关键字),所以像下面这样创建对象数组:
Object[] params = new Object[] { keyword };
如果要传递多个参数,比如在 addBook() 方法中,就要使用下面这样的代码:
- ››构建Windows 8风格应用23-App Bar概述及使用规范
- ››构建域名服务器(DNS)
- ››构建Android平台Google Map应用
- ››构建WinForm 通用速选(全选、反选、清空)组件
- ››构建Wordpress网站首选的5家国外主机
- ››构建高性能和高弹性 WebSphere eXtreme Scale 应用...
- ››构建前端UI组件的新思路
- ››构建 Android 开发环境
- ››JAXP 全面介绍,第 1 部分:XML 处理工具包使解析...
- ››JAXP 全部内容,第 2 部分:使用 Sun 的 XML 处理...
- ››构建 pureXML 和 JSON 应用程序,第 3 部分: 为 p...
- ››构建 ESB 中介来将分隔文件转换为服务调用
更多精彩
赞助商链接