首页 | IT新闻 | 硬件 | 操作系统 | 开发 | 网络编程 | 数据库 | 热门框架 | 网络安全 | 组网 | 建站指南 | 网页制作 | 特效 | 实用技巧 | 服务器 | 办公 | QQ | 探索 | 社区

  • 技术部落
  • 部落首页 > 热门框架 > NetBeans开发工具 > 正文
  • Web服务的NetBeans IDE 4.1快速入门指南
      2007-2-26  来源:网络资源  编辑:Jsbulo  热度:

     

    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),然后执行以下操作之一:

    ◆在“类别”下选择“Web”。在“项目”下选择“Web应用程序”。单击“下一步”。

    ◆在“类别”下选择“企业”。在“项目”下选择“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操作的主体中将“returnnull;”替换为以下代码;

    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消息处理程序的配置。

    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),然后执行以下操作之一:

    ◆在“类别”下选择“Web”。在“项目”下选择“Web应用程序”。单击“下一步”。

    ◆在“类别”下选择“企业”。在“项目”下选择“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操作的主体中将“returnnull;”替换为以下代码;

    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消息处理程序的配置。

    包装应用程序

    (可选)可以在EAR文件中包装应用程序并对其进行部署。或者,也可以单独部署Web服务和Web服务客户机。

    创建J2EE应用程序项目

    1.选择“文件”>“新建项目”(Ctrl-Shift-N)。在“类别”下选择“企业”。在“项目”下选择“空的企业应用程序”。将项目命名为HiApp,然后将“项目文件夹”更改为计算机中的任意文件夹。单击“完成”。

    2.展开HiApp项目节点,然后右键单击“J2EE模块”节点。选择“添加J2EE模块”。选择“HiWSClient”并单击“确定”。然后重复此步骤并选择“HiWS”。

    部署J2EE应用程序

    1.在“项目”窗口中右键单击HiApp项目节点,然后选择“属性”。在“项目属性”对话框中,选择“执行”。确保在“客户机模块URI”文本框中填写了HiWSClient.war。在“相对URL”文本框中键入/HiServlet。单击“确定”。

    2.在“项目”窗口中右键单击HiApp项目,然后选择“运行项目”。

    您可能会收到一条类似于以下内容的错误消息:

    Deploying application in domain failed; Cannot deploy.

    Application already exists.

    Please select the redeploy option. ; requested operation

    cannot be completed

    如果收到此错误消息,请在“运行环境”窗口的“服务器注册”节点中展开Sun Java System Application Server 8节点。然后展开“应用程序”节点,再展开“企业应用程序”节点和“Web应用程序”节点。如果列出了HiApp、HiWS或HWSClient,则需要将其卸下。右键单击这些节点,然后选择“卸下”。在“项目”窗口中,再次运行HiApp项目。

    将启动符合J2EE的服务器,对应用程序进行部署,并在IDE的缺省Web浏览器中显示部署结果。

    3.如果在应用程序中添加了用户接口(如前一部分所述),请输入一个名称,然后单击“提交”。客户机将使用Web服务中的“Hi”和“!”字符串,在其中插入您所输入的名称,并在浏览器中显示问候语。如果未添加用户接口,浏览器将显示消息“HiLudwig!”。