Web 服务是分布式应用程序组件,它们符合一定的标准,因而可供外部使用。分布式环境的激增对企业提出了新的要求,企业必须能够通过开放式网络将某个应用程序的全部或部分功能向其他应用程序公开。使用 Web 服务,可以解决独立开发并在各种不同软件和硬件平台上运行的应用程序的集成问题。
NetBeans IDE 4.1 与基于 JSR-109 的 Web 服务支持捆绑在一起,JSR-109 是一种开发范例,它适用于基于 JAX-RPC (JSR-101) 的 J2EE 开发。NetBeans IDE 4.1 中的 Web 服务功能是端到端 J2EE 功能集的一部分。在 NetBeans IDE 4.1 中使用 Web 服务要比在 NetBeans IDE 4.0 中使用容易得多。例如,NetBeans IDE 4.1 提供了创建 Web 服务和 Web 服务客户机的向导。
在本教程中,将创建一个包含以下内容之一的 J2EE 应用程序:
Web 应用程序(使用 Servlet 公开的服务)
EJB 模块(使用会话 Bean 公开的服务)
请注意,您必须选择要生成这两个方案中的哪一个。可以使用本教程创建 Web 应用程序或 EJB 模块。
本教程介绍了以下主题:
设置环境
开发 Web 服务
公开 Web 服务
使用 Web 服务
包装应用程序
设置环境
在开始编写代码之前,您必须确保安装了所需的所有软件并且正确设置了服务器。
安装软件
在开始安装之前,需要在计算机中安装以下软件:
· NetBeans IDE 4.1(下载)
· Sun Java System (SJS) Application Server Platform Edition 8 2005Q1(下载)
· Java Standard Development Kit (JDKTM) 1.4.2 版(下载)或 5.0 版(下载)
注册 Sun Java System Application Server
在编译 Web 服务之前,必须先注册 SJS Application Server 的本地实例。如果安装了 NetBeans IDE 4.1/SJS Application Server 包,则会自动注册本地应用服务器。
1. 从主窗口中选择“工具”>“服务器管理器”。
2. 单击“添加服务器”。选择 "Sun Java Systems Application Server 8.1",并为此实例指定一个名称。然后单击“下一步”。
3. 指定服务器信息、应用服务器本地实例的位置以及要部署的域。
开发 Web 服务
对 Web 服务进行编码非常容易。IDE 会处理所有实现细节,因此您可以集中精力对 Web 服务的业务逻辑进行编码。
创建项目
1. 决定是将 Web 服务作为 Web 应用程序实现,还是作为会话 Bean 实现。
2. 选择“文件”>“新建项目”(Ctrl-Shift-N),然后执行以下操作之一:
o 在“类别”下选择 "Web"。在“项目”下选择“Web 应用程序”。单击“下一步”。
o 在“类别”下选择“企业”。在“项目”下选择“Enterprise JavaBeans 模块”。单击“下一步”。
3. 将项目命名为 HiWS,将“项目文件夹”更改为计算机中的任意文件夹,并确保在“服务器”下拉列表中选择了 "Sun Java System Application Server"。单击“完成”。
创建 Web 服务
1. 右键单击项目节点,然后选择“新建”>“Web 服务”。将 Web 服务命名为 HiWS,在“包”字段中键入 org.me.hi,然后单击“完成”。将在源编辑器中打开一个名为 HiWSImpl.java 的实现类(在 Web 应用程序中),或者打开一个名为 HiWSBean.java 的会话 Bean(在 EJB 模块中)。
2. 在“项目”窗口中,展开“Web 服务”节点,右键单击 HiWS Web 服务节点,然后选择“添加操作”。在“名称”字段中键入 sayHi,然后在“类型”组合框中选择“字符串”。单击“添加”,定义一个名为 s 的 java.lang.String 型参数。单击“确定”创建操作框架。
3. 展开“源包”节点和 org.me.hi 节点。双击 HiWSSEI.java 节点,可以注意到已经在接口类中声明了操作。
4. 在源编辑器中,将操作框架填写到实现类或会话 Bean 中。要执行此操作,请在 sayHi 操作的主体中将 "return null;" 替换为以下代码:
5. return "Hi " + s + "!";
6. 现在代码应如下所示:
package org.me.hi;
public class HiWSImpl implements HiWSSEI {
public String sayHi(java.lang.String s) {
return "Hi " + s + "!";
}
}
生成和配置 SOAP 消息处理程序
1. 右键单击项目节点并选择“新建”>“文件/文件夹”。在“类别”下选择“Web 服务”。在“文件类型”下选择“消息处理程序”。单击“下一步”。
2. 将消息处理程序命名为 HiWSLogger,在“包”下拉列表中选择 org.me.hi,然后单击“完成”。将创建一个名为 HiWSLogger.java 的实现类,并在源编辑器中将其打开。
3. 在 handleRequest 方法中,请注意按如下方式定义要记录的消息:
4. StringBuffer message = new StringBuffer();
5. while (childElems.hasNext()) {
6. child = (SOAPElement) childElems.next();
7. message.append(new Date().toString() + "--");
8. formLogMessage(child, message);
9. }
10.
11. System.out.println("message: " + message.toString());
12.
13. 在“项目”窗口中,展开“Web 服务”节点,右键单击该 Web 服务的节点,然后选择“配置处理程序”。在“配置 SOAP 消息处理程序”对话框中,单击“添加”,然后浏览到 HiWSLogger 类。单击“确定”。
将在对话框中列出消息处理程序类。
单击“确定”完成 SOAP 消息处理程序的配置。
1
2
下一页>>