myeclips自定义工程.doc
窗体顶端重重的壳裹着轻轻的仰望Yesterday is history,tomorrow is a mystery ,but today is a gift ,that is why it is called present· 博客园 · 闪存 · 首页 · 新随笔 · 联系 · 管理 · 订阅 随笔- 69 文章- 0 评论- 129 使用myEclipse,tomcat 和Axis发布webService 一准备工作:1. 安装axis。去官方网站http:/ws.apache.org/axis/下载axis包,然后解压到任何一个目录。本例使用的是axis-bin-1_4.tar.gz ,解压到E:axis-bin-1_4axis-1_4。2. 开发环境准备。本例使用MyEclipse6.0 ,java j2ee 1.4库,web server用tomcat6。二创建web工程:1 MyEclipse中新建web工程,名称为testAxis。工程目录为:D:JavaProjecttestAxis。2 把testAxis部署到tomcat。3 引入axis包: 把axis目录下的E:axis-bin-1_4axis-1_4 lib下的所有jar包拷贝到工程下面的WebRootWEB-INFlib下,myelipse会自动添加到引用库:4. 修改web.xml:如果没有特殊情况,最简单的方法就是用axis解压包中的web.xml直接替换testAxis工程的web.xml。例如本例,就用E: axis-bin-1_4axis-1_4webappsaxisWEB-INFweb.xml替换工程testAxis下的web.xml。三创建webservice:1. 在工程testAxis里新建要实现方法的接口:本例新建sayHelloToCkp.java,放在com.ckp包中。 package com.ckp; public interface sayHelloToCkp public String sayHello ();2. 把该类生成wsdl文件:Axis里有一个Java2WSDL方法,用于把java类生成wsdl。当然你可以写命令行手动执行这个方法。这里讲下使用MyEclipse来运行这个方法。在sayHelloToCkp.java类文件上右键,Run AsOpen Run Dialog:弹出窗口,新建一个configuration,下图1处,然后Main选项卡中的main class 输入: org.apache.axis.wsdl.Java2WSDL;Arguments选项卡中的program arguments输入,如下图-o ckp.wsdl-l "http:/localhost:8080/testAxis/services/ckp"-n "urn:ckp"-p"com.ckp" "urn:ckp"com.ckp.sayHelloToCkp 然后点击Run。会在工程目录D:JavaProjecttestAxis下生成ckp.wsdl文件。 3. 用wsdl生成服务类axis里面有WSDL2Java的方法(与Java2WSDL相反),用于把wsdl文件生成java service类。当然你还可以写命令行手动执行这个方法。这里讲下使用MyEclipse来运行这个方法。同上,还是右键Run AsOpen Run Dialog,弹出窗口,新建configuration。这次使用org.apache.axis.wsdl.WSDL2Java ,参数是-t -B -v -D -s -p com.ckp.server D:JavaProjecttestAixsckp.wsdl 如下图: Run后,将在项目的根目录下生成相关的服务类、build.xml和deploy.wsdd,undesploy.wsdd等。我们把他们拷贝到工程里的src下即可(注意包的位置):4. 服务的部署和生成server_config.wsdd:先启动tomcat,然后运行命令行cmd,到达web服务器里类和deploy.wsdd所在的目录,如本例的是c:apache-tomcat-6.0.14webappstestAxisWEB-INFclassescomckpserver执行如下命令:java -Djava.ext.dirs= E:axis-bin-1_4axis-1_4lib org.apache.axis.client.AdminClient -lhttp:/localhost:8080/testAxis/services/ckp?wsdl deploy.wsdd前面的路径是axis解压路径里的lib路径,后面是未来的service的wsdl地址。生成成功后,c:apache-tomcat-6.0.14webappstestAxisWEB-INF下便可看到server-config.wsdd文件。5. 测试:在WebService的实现类CkpSoapBindingImpl.java里添加如下代码:package com.ckp.server; public class CkpSoapBindingImpl implements com.ckp.server.SayHellowToCkp public java.lang.String sayHello() throws java.rmi.RemoteException return "hello you" 重启tomcat,输入http:/localhost:8080/testAxis/services 访问。四生成客户端:有了WSDL文件,与生成服务器代码相同,只是参数不同,也是生成在项目根目录下:如下图: 注:本例中,如果不想保留原来的接口类sayHelloToCkp.java,完全可以在最开始时就把接口类放在com.ckp.server下,然后在第三步第3小步中,再把它覆盖。分类: JAVA标签: java, axis, myeclipse, webservice绿色通道:好文要顶关注我收藏该文与我联系 MichaelChen关注 - 0粉丝 - 6+加关注20(请您对文章做出评价)« 博主前一篇:Flex中的this指向» 博主后一篇:使用Axis简单快速创建Webservice(含串行化的实现)posted 2009-10-27 17:02 MichaelChen 阅读(3661) 评论(0) 编辑 收藏刷新评论列表刷新页面返回顶部注册用户登录后才能发表评论,请 登录 或 注册,访问网站首页。程序员问答社区,解决您的IT难题简洁阅读版式网站首页博问新闻闪存程序员招聘知识库 最新IT新闻:· 中软国际与华为建合资公司 预计第三年营收36亿· 专注的艺术· 日本开发出能与海报人物接吻的装置· WP7 生态系统下的主力开发者:学生?· 58同城盈利模式受质疑» 更多新闻. 最新知识库文章:· 五个非常重要的移动Web内容适应设计理念· 函数式编程初探· 心如止水的程序员· 解决问题,不要解决问题· 你所知道的学习方法,都是错的!» 更多知识库文章. China-pub 2011秋季教材巡展China-Pub 计算机绝版图书按需印刷服务公告昵称:MichaelChen园龄:3年11个月粉丝:6关注:0 +加关注<2009年10月>日一二三四五六27282930123456789101112131415161718192021222324252627282930311234567搜索 常用链接· 我的随笔 · 我的评论 · 我的参与 · 最新评论 · 我的标签 · 更多链接 最新随笔· 1. 英语学习之宗教(religion) · 2. Ubuntu 之旅(六)安装subversion(svn)+apache2 · 3. Ubuntu 之旅(五)中文输入法 · 4. Ubuntu 之旅(四)安装JDK和eclipse · 5. Ubuntu 之旅(三)安装通讯工具 随笔分类· AJAX(11) (rss) · C#(8) (rss) · English Learning(1) (rss) · flex&as3(5) (rss) · JAVA(8) (rss) · LINUX(7) (rss) · PMP(2) (rss) · ubuntu 之旅(6) (rss) · WPF (rss) · 设计模式(design patterns)(5) (rss) · 项目管理(3) (rss) 随笔档案· 2010年12月 (1) · 2010年7月 (6) · 2010年5月 (1) · 2010年4月 (1) · 2009年11月 (1) · 2009年10月 (1) · 2009年8月 (6) · 2009年5月 (2) · 2009年1月 (1) · 2008年12月 (12) · 2008年11月 (8) · 2008年10月 (5) · 2008年6月 (5) · 2008年5月 (19) 积分与排名· 积分 - 37336 · 排名 - 2904 最新评论· 1. Re:关于父类引用指向子类对象· 不错,写的比较浅显易懂· -xrzs1986· 2. Re:java中三种主流数据库数据库(sqlserver,db2,oracle)的jdbc连接总结· 不错,谢了!· -l_u阅读排行榜· 1. Redhat Enterprise Linux 5 实战系列(六)为RHEL5开启samba(4113)· 2. 使用myEclipse,tomcat 和Axis发布webService(3661)· 3. 觉得有必要记一下的东西关于翻译(2979)· 4. Redhat Enterprise Linux 5 实战系列(二)RHEL5未识别的网卡安装(2415)· 5. Ext 实现grid之间的拖放(D&D between 2 grids)(2327)评论排行榜· 1. 觉得有必要记一下的东西关于翻译(82)· 2. 关于父类引用指向子类对象(8)· 3. 一句话概括.net和java程序员(7)· 4. PMP考试通过!(6)· 5. 设计模式学习之简单工厂(simple facotry)、工厂方法(actory method)、抽象工厂(abstract factory)(5)推荐排行榜· 1. 使用myEclipse,tomcat 和Axis发布webService(2)· 2. PMP考试通过!(2)· 3. as3学习笔记(一)概述(2)· 4. gxt-2.1.1(EXT-GWT)+GWT 2.0 集成说明(2)· 5. JFileChooser在MAC OS里面的问题(1)Copyright ©2012 MichaelChen 窗体底端