`
java_lk
  • 浏览: 40114 次
  • 性别: Icon_minigender_1
  • 来自: 沈阳
社区版块
存档分类
最新评论

第二个web service例子

    博客分类:
  • jee
阅读更多

和第一个的发布方式不一样,那位高人能告诉我这两个分别属于什么方式!
调用是使用java!


原文地址:http://bbs.w3china.org/dispbbs.asp?boardID=10&ID=21737


原文开始:



HelloWorld.java

public class HelloWorld {
  public String sayHello()
  {
    return "HELLO WORLD!";
  }
}

将HelloWorld.java编译成HelloWorld.class,放到%TOMCAT_HOME%\webapps\axis\WEB-INF\classes

      下

2、在%TOMCAT_HOME%\webapps\axis\WEB-INF下新建deploy.wsdd文件,即SOAP服务发布描述文件

     deploy.wsdd

<deployment xmlns="http://xml.apache.org/axis/wsdd/" xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
    <service name="HelloWorld" provider="java:RPC">
        <parameter name="className" value="HelloWorld"/>
        <parameter name="allowedMethods" value="sayHello"/>
    </service>
</deployment>

在DOS下转换目录到%TOMCAT_HOME%\webapps\axis\WEB-INF,命令:

java -cp %AXISCLASSPATH% org.apache.axis.client.AdminClient deploy.wsdd

你会发现目录下多了一个server-config.wsdd文件,这就是AXIS的配置文件,以后所有的服务发布描述都会在里面找到。(当然,你可以直接修改它,不用再写deploy.wsdd)然后打开浏览器http://localhost:8080/axis/servlet/AxisServlet,你就会看到你的服务已发布

同样用客户端程序访问一下:(注意和上边的差别!!)

HelloClient.java

import org.apache.axis.client.Call;
import org.apache.axis.client.Service;

public class HelloClient
{
   public static void main(String [] args) throws Exception {

       String endpoint = "http://localhost:" +"8080"+ "/axis/services/HelloWorld";//注意!差别仅仅在这里!!

       Service  service = new Service();
       Call     call    = (Call) service.createCall();
       call.setTargetEndpointAddress( new java.net.URL(endpoint) );
        call.setOperationName("sayHello"  );

         String res = (String) call.invoke( new Object[] {} );

                         System.out.println( res );
   }
}


原文结束!

其他参考:http://www.cnblogs.com/bjzhanghao/archive/2004/10/09/50216.html

原文结束!


本人遇到的错误:
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/axis/clien

解决方法:路径配置错误把
AXIS_HOME      tomcat/webapps/axis目录
AXIS_LIB      %AXIS_HOME%/lib
AXISCLASSPATH %AXIS_LIB%\axis.jar;%AXIS_LIB%\commons-discovery-0.2.jar;%AXIS_LIB%\commons-logging-1.0.4.jar;%AXIS_LIB%\jaxrpc.jar;%AXIS_LIB%\saaj.jar;%AXIS_LIB%\log4j-1.2.8.jar

全部重配!


注意:
java/lib 的tools.jar要复制到tomcat的common/lib。

WebServive只能返回简单类型:整型、字符型、数组型。(也许还有其他的)。

要有xml包。


分享到:
评论
1 楼 hnzhoujunmei 2011-02-28  
good,很详细,尤其是目录指示,thanks!

相关推荐

    web service 客户端java例子

    二、Java Web Service客户端开发工具 1. JAX-WS(Java API for XML Web Services):这是Java官方提供的用于创建和使用SOAP Web服务的标准库。它包含一系列API,如JAXB(Java Architecture for XML Binding)用于XML...

    xfire开发Web Service接口详解

    在"xfire开发Web Service接口第一个程序"这个文件中,你可能会找到一个简单的示例,展示如何创建一个计算两个数相加的Web Service。这个例子可能包括定义服务接口、实现接口、配置服务以及启动服务的步骤。通过分析...

    WebService大讲堂之Axis2及其它web service资料

    本讲堂重点探讨的是 Axis2,一个强大的Web Service框架,它是Apache软件基金会开发的第二代Web Service引擎。 一、什么是Axis2? Axis2是Apache Axis的升级版,它提供了更高效、更灵活的服务架构。Axis2基于模块化...

    SAP XI中WEB SERVICE的应用

    第二个业务场景(Scenario 2:非SAP系统 (WebService) =&gt; XI =&gt; SAP (IDOC))涉及非SAP系统(如Java或.NET应用)向XI发送Web服务请求,再由XI转换并发送IDOC到ECC6生成PO。在这个例子中,我们使用XMLSPY工具作为非...

    通向架构师的道路(第十一天)之Axis2 Web Service(二).docx

    在“通向架构师的道路(第十一天)之Axis2 Web Service(二)”的主题中,我们主要探讨了如何使用Axis2框架创建和部署Web服务,并且使用简单Java类型来定义服务接口。以下是关于这个主题的详细知识讲解: 1. **Axis2 ...

    通向架构师的道路(第十四天)Axis2 Web Service安全之rampart.docx

    通向架构师的道路(第十四天)Axis2 Web Service安全之rampart 本篇文章主要讲述了Axis2 Web Service安全之rampart的知识点,包括加密保护Web Service传输、基本概念、对称加密、非对称加密、数字签名等内容。 一...

    了解 Web 服务规范_第 7 部分:Web 服务业务流程执行语言

    WS-BPEL 是一种基于XML的标准语言,旨在定义和执行涉及多个Web服务的业务流程。它允许开发者通过编写脚本来协调不同的Web服务,从而实现复杂的业务逻辑。相比传统的编程方式,使用WS-BPEL可以更高效地管理业务流程,...

    ASP.Net 开发手册

    本站的又一力作《ASP.Net ...第二章 一个简单的Web Service案例 第三章 数据交换 第四章 存取站点对象 第六篇 性能优化 第七篇 高级应用 第一章 XML及其应用 第二章 三层结构及其应用 第三章 使用MSMQ

    SAP Restful Service

    在这个例子中,仅使用第二个参数(日期字符串20101208)作为输入,将其转换为日期对象,并传递给DATE_GET_WEEK函数模块。 在HANDLE_REQUEST方法的实现中,我们需要解析URL中的参数,将日期字符串转换为SAP内建的...

    通向架构师的道路(第十一天)之Axis2_Web_Service(二)

    在“通向架构师的道路(第十一天)之Axis2_Web_Service(二)”的主题中,我们继续探讨如何使用Axis2框架构建和使用Web服务。在前一天的讲解中,我们了解了如何生成一个基于Axis2的WebService,以及四种不同的客户端调用...

    《ASP.Net 手册》。金桥网络信息服务网

    《ASP.Net 手册》现已成功推出,供广大...第二章 一个简单的Web Service案例 第三章 数据交换 第四章 存取站点对象 第六篇 性能优化 第七篇 高级应用 第一章 XML及其应用 第二章 三层结构及其应用 第三章 使用MSMQ

    webservice测试

    第二个示例可能涉及更复杂的数据交换,如文件上传或下载;第三个示例可能涉及到错误处理和异常管理,展示如何在出现问题时优雅地处理。 对于"webservicTest"主程序,它可能是一个客户端应用,用于发起对WebService...

    webservice例子(客户端和服务器端和tomcat部署).zip

    在本压缩包中,"webservice例子(客户端和服务器端和tomcat部署).zip" 提供了一个完整的Web服务示例,包括客户端、服务器端的实现以及在Tomcat服务器上的部署过程。 一、Web Service基础 Web Service的核心技术包括...

    HPROSE例子 一个服务端,两个客户端

    2. **hproseClient02**:第二个客户端示例可能与第一个类似,但可能包含不同的调用逻辑或测试更多的服务接口。这有助于验证服务端接口的稳定性和性能。 总结,这个HPROSE例子为我们展示了如何在实际项目中部署和...

    Asp.net中文手册(CHM)

    第一章 Web service简介 第二章 一个简单的Web Service案例 第三章 数据交换 第四章 存取站点对象 第六篇 性能优化 第七篇 高级应用 第一章 XML及其应用 第二章 三层结构及其应用 第三...

    vb6.0调用webservice详解

    调用Web服务的第一步是确保你已经安装了相应的服务,并且能够通过浏览器访问Web服务的WSDL(Web Service Description Language)文档,这个文档定义了服务提供的所有方法和参数。例如,在航天金税开票服务中,你需要...

    webService+Xfire入门

    2. **创建Web Service工程**:在MyEclipse中,你可以通过“Web Service Project”向导创建一个Web Service项目。这个向导会帮你生成必要的项目结构、配置文件以及添加所需的类库。 - **Page-1**:在向导的第一步,...

    ASP.NET完全入门

    第二章一个简单的Web Service案例 第三章数据交换 第四章存取站点对象 第六篇性能优化 第七篇高级应用 第一章XML及其应用 第二章三层结构及其应用 第三章使用 COM 第四章使用 MTS 第五章使用 MSMQ 第六章在 ASP中...

    web容器---servlet

    1. 加载和初始化:当Web容器接收到第一个针对Servlet的请求时,会加载Servlet类并创建一个Servlet实例。然后调用`init()`方法进行初始化,可以在这个方法中进行配置初始化或者资源加载。 2. 服务:初始化后,每当有...

Global site tag (gtag.js) - Google Analytics