一、工具

myEclipse

tomcat  6.0 以上版本

axis-bin-1_4.zip

二、即时发布

1、解压 axis-bin-1_4.zip

2、axis-bin-1_4.zip\axis-1_4\webapps\axis     把axis发布到tomcat服务器下,及拷贝到webapps目录下

axis 为列子项目

3、启动tomcat,访问如下即发布sucess

List 就是发布的接口位置。

5、编写java 代码,,提供方法。如下

把HelloWs.java 文件,.java 改为.jws  即 HelloWs.jws   拷贝到tomcat 项目axis下,重启服务器。

public class HelloWs {
public String Welcome(String name){
String result= "Welcome to learning WebSerice"+name;
return result;
}
}

6、访问 HelloWs.jws 如下,即SUCESS

<?xml version="1.0" encoding="UTF-8"?>

-<wsdl:definitions xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:intf="http://localhost:8080/axis/HelloWs.jws" xmlns:impl="http://localhost:8080/axis/HelloWs.jws" xmlns:apachesoap="http://xml.apache.org/xml-soap" targetNamespace="http://localhost:8080/axis/HelloWs.jws">

<!--WSDL created by Apache Axis version: 1.4 Built on Apr 22, 2006 (06:55:48 PDT)-->

-<wsdl:message name="WelcomeRequest">

<wsdl:part name="name" type="xsd:string"/>

</wsdl:message>

-<wsdl:message name="WelcomeResponse">

<wsdl:part name="WelcomeReturn" type="xsd:string"/>

</wsdl:message>

-<wsdl:portType name="HelloWs">

-<wsdl:operation name="Welcome" parameterOrder="name">

<wsdl:input name="WelcomeRequest" message="impl:WelcomeRequest"/>

<wsdl:output name="WelcomeResponse" message="impl:WelcomeResponse"/>

</wsdl:operation>

</wsdl:portType>

-<wsdl:binding name="HelloWsSoapBinding" type="impl:HelloWs">

<wsdlsoap:binding transport="http://schemas.xmlsoap.org/soap/http" style="rpc"/>

-<wsdl:operation name="Welcome">

<wsdlsoap:operation soapAction=""/>

-<wsdl:input name="WelcomeRequest">

<wsdlsoap:body use="encoded" namespace="http://DefaultNamespace" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>

</wsdl:input>

-<wsdl:output name="WelcomeResponse">

<wsdlsoap:body use="encoded" namespace="http://localhost:8080/axis/HelloWs.jws" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>

</wsdl:output>

</wsdl:operation>

</wsdl:binding>

-<wsdl:service name="HelloWsService">

-<wsdl:port name="HelloWs" binding="impl:HelloWsSoapBinding">

<wsdlsoap:address location="http://localhost:8080/axis/HelloWs.jws"/>

</wsdl:port>

</wsdl:service>

</wsdl:definitions>

wsdl文件代码

测试代码:

public static void main(String[] args) {
//请求地址
String url="http://localhost:8080/axis/HelloWs.jws";
//、创建服务
Service service =new Service();
try {
//调用服务
Call call=(Call) service.createCall();
//服务地址
call.setTargetEndpointAddress(url);
//请求方法
call.setOperationName(new QName(url,"Welcome"));
//执行调用
String result=(String) call.invoke(new Object[]{" Mrwanggang"});
System.out.println(result);
} catch (ServiceException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (RemoteException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} }

即时发布完成

二、定制发布(WSDD)

1、编写java代码,,即要发布的方法。

 public String Wel(String name){
return "欢迎您: "+name;
}

2、把编译后的文件(带包路径)拷贝到 (本地服务器)apache-tomcat-7.0.42\webapps\axis\WEB-INF\classes下

3、修改server-config.wsdd文件 (server-config.wsdd  据了解这个文件需要先写自己的.wsdd文件,然后在Axis\web-inf\下执行命令生成的)

java  org.apache.axis.client.AdminClient*.wsdd  生成的。

写自己的.wsdd文件参照如下文件deploy.wsdd

重点关注

     <!--配置服务接口-->
<service name="HelloWsdd" provider="java:RPC"> <!-- HelloWsdd 接口名称 -->
<parameter name="className" value="com.wg.wsdd.HelloWsdd"/> <!--接口文件位置-->
<parameter name="allowedMethods" value="*"/> <!--* 代表所有方法,也可单个指明,发布的方法-->
</service>
<?xml version="1.0" encoding="UTF-8"?>
<deployment xmlns="http://xml.apache.org/axis/wsdd/" xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
<globalConfiguration>
<parameter name="adminPassword" value="admin"/>
<parameter name="attachments.implementation" value="org.apache.axis.attachments.AttachmentsImpl"/>
<parameter name="sendXsiTypes" value="true"/>
<parameter name="sendMultiRefs" value="true"/>
<parameter name="sendXMLDeclaration" value="true"/>
<parameter name="axis.sendMinimizedElements" value="true"/>
<requestFlow>
<handler type="java:org.apache.axis.handlers.JWSHandler">
<parameter name="scope" value="session"/>
</handler>
<handler type="java:org.apache.axis.handlers.JWSHandler">
<parameter name="scope" value="request"/>
<parameter name="extension" value=".jwr"/>
</handler>
</requestFlow>
</globalConfiguration>
<handler name="LocalResponder" type="java:org.apache.axis.transport.local.LocalResponder"/>
<handler name="URLMapper" type="java:org.apache.axis.handlers.http.URLMapper"/>
<handler name="Authenticate" type="java:org.apache.axis.handlers.SimpleAuthenticationHandler"/>
<!--配置服务接口-->
<service name="HelloWsdd" provider="java:RPC">
<parameter name="className" value="com.wg.wsdd.HelloWsdd"/>
<parameter name="allowedMethods" value="*"/> <!--* 代表所有方法,也可单个指明
<beanMapping languageSpecificType="java:anni.Order" qname="ns1:Order" xmlns:ns1="BeanService"/>-->
</service> <transport name="http">
<requestFlow>
<handler type="URLMapper"/>
<handler type="java:org.apache.axis.handlers.http.HTTPAuthHandler"/>
</requestFlow>
</transport>
<transport name="local">
<responseFlow>
<handler type="LocalResponder"/>
</responseFlow>
</transport>
</deployment>

3、拷贝  server-config.wsdd  到——>apache-tomcat-7.0.42\webapps\axis\WEB-INF 下即可。

4、重新启动服务器,访问 http://localhost:8080/axis/   点击 List  如下即是你发布的位置

5、测试代码

 */
public static void main(String[] args) {
//请求地址
String url="http://localhost:8080/axis/services/HelloWsdd";
//、创建服务
Service service =new Service();
try {
//调用服务
Call call=(Call) service.createCall();
//服务地址
call.setTargetEndpointAddress(url);
//请求方法
call.setOperationName(new QName(url,"Wel"));
//执行调用
String result=(String) call.invoke(new Object[]{"Mrwangg"});
System.out.println(result);
} catch (ServiceException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (RemoteException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} }

定制发布完成

Webservice学习之——即时发布与定制发布的更多相关文章

  1. WebService学习之旅(三)JAX-WS与Spring整合发布WebService

    Spring本身就提供了对JAX-WS的支持,有兴趣的读者可以研究下Spring的Spring-WS项目,项目地址: http://docs.spring.io/spring-ws/sites/1.5 ...

  2. WebService学习总结(六)--CXF 与Spring结合+tomcat发布

    该项目在上文   WebService学习总结(四)--基于CXF的服务端开发  的基础上修改为spring上发布的webservice接口 1.新建web project 工程 2.导入spring ...

  3. WebService学习之旅(七)Axis2发布WebService的几种方式

    前面几篇文章中简单的介绍了如何使用Axis2发布WebService及如何使用Axis2实现Web服务的客户端调用,本节將详细介绍Axis2发布WebService的几种方式. 一.使用aar包方式发 ...

  4. RabbitMQ学习总结 第四篇:发布/订阅 Publish/Subscribe

    目录 RabbitMQ学习总结 第一篇:理论篇 RabbitMQ学习总结 第二篇:快速入门HelloWorld RabbitMQ学习总结 第三篇:工作队列Work Queue RabbitMQ学习总结 ...

  5. JavaWeb和WebGIS学习笔记(三)——GeoServer 发布shp数据地图

    系列链接: Java web与web gis学习笔记(一)--Tomcat环境搭建 Java web与web gis学习笔记(二)--百度地图API调用 JavaWeb和WebGIS学习笔记(三)-- ...

  6. Java学习之道:Java项目打包发布

    Java项目打包发布 如果只想发布为一个可执行的jar包,使用eclipse的Export功能就可以了 使用eclipse的Export功能,将项目中的所有package打包为一个pet.jar文件, ...

  7. Java WebService学习笔记 - Axis(一)

    WebService 简介 实际开发中,很多系统都是基于历史遗留系统进行开发,有时,这些系统基于不同的语言,如C,C++,C#,java,PHP等等.为了实现历史系统的再利用,或向外部程序暴露调用接口 ...

  8. webService学习之路(三):springMVC集成CXF后调用已知的wsdl接口

    webService学习之路一:讲解了通过传统方式怎么发布及调用webservice webService学习之路二:讲解了SpringMVC和CXF的集成及快速发布webservice 本篇文章将讲 ...

  9. 关于wcf,webservice,webapi或者其他服务或者接口有什么区别 WCF、WebAPI、WebService之间的区别 【转载】HTTP和SOAP完全就是两个不同的协议 WebService学习总结(一)——WebService的相关概念

    wcf,webservice采用的是rpc协议,这个协议很复杂,所以每次要传递.要校验的内容也很复杂,别看我们用的很简单,但实际是frame帮我们做掉了rpc生成.解析的事情webapi遵循是rest ...

随机推荐

  1. nmon for linux

    nmon(为Nigel's performance Monitor的简写) for linux工具是 IBM开源的在POWER, x86, x86_64, Mainframe & now AR ...

  2. VS2010+WINDBG+VMWARE9.0和fatal error RC1106: invalid option: -ologo错误

    提供属性配置文件一份: http://pan.baidu.com/s/1iS1Ix <?xml version="1.0" encoding="utf-8" ...

  3. 关于this的小总结

    关于对this目前有几点小理解 ①this指向调用它的元素.就是谁调用它,它就指向谁. ②可以通过call()和apply()改变this的指向 ③setInterval和setTimeout中的th ...

  4. [POJ2484]A Funny Game

    Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 4533   Accepted: 2780 Description Alice ...

  5. Vim 的粘贴复制功能

    Vim作为最好用的文本编辑器之一,使用vim来编文档,写代码实在是很惬意的事情.每当学会了vim的一个新功能,就会很大地提高工作效率.有人使用vim几十年,还没有完全掌握vim的功能,这也说明了vim ...

  6. [转载]DOS循环:bat/批处理for命令详解 (史上虽详尽的总结和说明~~)

    --本文来源于TTT BLOG: http://www.yoyotao.net/ttt/, 原文地址:http://www.yoyotao.net/ttt/post/139.html 前言: 虽然以前 ...

  7. IIS ASP.NETWEB站点部署时遇到的问题记录

    最近由于工作的需要,需要自己部署一些ASP.NET站点,但中间出现了一点小小的问题. 由于自己才疏学浅,此问题折腾了我将近一个小时,最后还是百度出了解决这个问题的方法,先记录如下,仅供自己记忆用. 我 ...

  8. HDU 2509

    与HDU 1907一样... #include<cstdio> #include<cstring> #include<cstdlib> #include<io ...

  9. Tyvj P1729 文艺平衡树 Splay

    题目: http://tyvj.cn/p/1729 P1729 文艺平衡树 时间: 1000ms / 空间: 131072KiB / Java类名: Main 背景 此为平衡树系列第二道:文艺平衡树 ...

  10. Java 并发之线程安全

    写线程安全的代码,说白了就是管理一个类的共享的.可变的状态.只要有多于 1 个线程对类的状态进行写入,那么就必须用同步来协调这多个线程对状态的访问.对于一个没有状态的类来说(简单的理解就是只有方法没有 ...