学习Axis——即时发布

2024-06-08 10:08
文章标签 学习 发布 axis 即时

本文主要是介绍学习Axis——即时发布,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

今天开始学习webservice,webservice主要有axis(或axis2)、XFire和CXF这三种框架。现在开始学习axis。

即时发布的手段:

先下载axis1.4.rar,地址为:http://pan.baidu.com/share/link?shareid=669784307&uk=2365951750

把这个压缩包解压到tomcat的webapps目录中,启动tomcat,就可以在浏览器里面输入地址:http://localhost:8089/axis/  端口号根据自己的来修改

显示为:

编写一段简单的java代码:Hello.java

public class Hello{

       //定制一个服务:方法

       publicString test(String a,String b){

              Stringresult = "a=" + a + "b= " + b ;

              return"server response ok,you send " + result ;

       }

}

直接把Hello.java的后缀名改为jws,也就是Hello.jws,把这个文件放到axis目录中。

重启tomcat。刷新页面,输入地址:http://localhost:8089/axis/Hello.jws,也就是在后面加上Hello.jws而已。出现如下画面:


也就是这个方法的wsdl文件了

现在可以编辑客户端代码引用这个方法了。

在myeclipse里面新建一个java项目,导入axis相关jar包(在\axis\WEB-INF\lib)里面有。建一个包,在包里新建一个java类:ClientJWS.java

代码如下:

import javax.xml.namespace.QName;

import org.apache.axis.client.Call;

import org.apache.axis.client.Service;

 

publicclassClientJWS {

 

   publicstaticvoid main(String[] args) {

     try{

        //定义字符串,描述要访问服务的地址

        Stringurl = "http://localhost:8089/axis/Hello.jws" ;

        //创建一个Web Service服务

        Serviceservice = newService() ;

        //创建一个调用

        Callcall = (Call) service.createCall() ;

        //指定服务的来源

        call.setTargetEndpointAddress(url);

        //指明调用的具体方法名

        call.setOperationName(new QName(url,"test")) ;

        //执行远端的调用

        Stringresult = (String) call.invoke(new Object[]{"Student","Teacher"});

        System.out.println(result);

     }catch(Exception e){

        e.printStackTrace();

     }

   }

}

 

包里新执行这个程序,就会在控制台上打印如下语句:

- Unable to find requiredclasses (javax.activation.DataHandler and javax.mail.internet.MimeMultipart).Attachment support is disabled.

server response ok,you send a=Studentb=Teacher

 

总结:

即时发布

       1、编写java代码:定制服务(编写类--方法)

       2、修改文件的后缀为jws

       3、发布web service服务

       4、编写客户端

注意(缺点):如果没有java源码(只有class/jar/程序存在package结构)--不能使用



这篇关于学习Axis——即时发布的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1041878

相关文章

修复已被利用的高危漏洞! macOS Sequoia 15.6.1发布

《修复已被利用的高危漏洞!macOSSequoia15.6.1发布》苹果公司于今日发布了macOSSequoia15.6.1更新,这是去年9月推出的macOSSequoia操作... MACOS Sequoia 15.6.1 正式发布!此次更新修复了一个已被黑客利用的严重安全漏洞,并解决了部分中文用户反馈的

Unity新手入门学习殿堂级知识详细讲解(图文)

《Unity新手入门学习殿堂级知识详细讲解(图文)》Unity是一款跨平台游戏引擎,支持2D/3D及VR/AR开发,核心功能模块包括图形、音频、物理等,通过可视化编辑器与脚本扩展实现开发,项目结构含A... 目录入门概述什么是 UnityUnity引擎基础认知编辑器核心操作Unity 编辑器项目模式分类工程

Python学习笔记之getattr和hasattr用法示例详解

《Python学习笔记之getattr和hasattr用法示例详解》在Python中,hasattr()、getattr()和setattr()是一组内置函数,用于对对象的属性进行操作和查询,这篇文章... 目录1.getattr用法详解1.1 基本作用1.2 示例1.3 原理2.hasattr用法详解2.

Go学习记录之runtime包深入解析

《Go学习记录之runtime包深入解析》Go语言runtime包管理运行时环境,涵盖goroutine调度、内存分配、垃圾回收、类型信息等核心功能,:本文主要介绍Go学习记录之runtime包的... 目录前言:一、runtime包内容学习1、作用:① Goroutine和并发控制:② 垃圾回收:③ 栈和

Android学习总结之Java和kotlin区别超详细分析

《Android学习总结之Java和kotlin区别超详细分析》Java和Kotlin都是用于Android开发的编程语言,它们各自具有独特的特点和优势,:本文主要介绍Android学习总结之Ja... 目录一、空安全机制真题 1:Kotlin 如何解决 Java 的 NullPointerExceptio

macOS Sequoia 15.5 发布: 改进邮件和屏幕使用时间功能

《macOSSequoia15.5发布:改进邮件和屏幕使用时间功能》经过常规Beta测试后,新的macOSSequoia15.5现已公开发布,但重要的新功能将被保留到WWDC和... MACOS Sequoia 15.5 正式发布!本次更新为 Mac 用户带来了一系列功能强化、错误修复和安全性提升,进一步增

重新对Java的类加载器的学习方式

《重新对Java的类加载器的学习方式》:本文主要介绍重新对Java的类加载器的学习方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、介绍1.1、简介1.2、符号引用和直接引用1、符号引用2、直接引用3、符号转直接的过程2、加载流程3、类加载的分类3.1、显示

Maven 依赖发布与仓库治理的过程解析

《Maven依赖发布与仓库治理的过程解析》:本文主要介绍Maven依赖发布与仓库治理的过程解析,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下... 目录Maven 依赖发布与仓库治理引言第一章:distributionManagement配置的工程化实践1

Java学习手册之Filter和Listener使用方法

《Java学习手册之Filter和Listener使用方法》:本文主要介绍Java学习手册之Filter和Listener使用方法的相关资料,Filter是一种拦截器,可以在请求到达Servl... 目录一、Filter(过滤器)1. Filter 的工作原理2. Filter 的配置与使用二、Listen

使用Python构建一个Hexo博客发布工具

《使用Python构建一个Hexo博客发布工具》虽然Hexo的命令行工具非常强大,但对于日常的博客撰写和发布过程,我总觉得缺少一个直观的图形界面来简化操作,下面我们就来看看如何使用Python构建一个... 目录引言Hexo博客系统简介设计需求技术选择代码实现主框架界面设计核心功能实现1. 发布文章2. 加