- 浏览: 765217 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (208)
- Java (77)
- JavaScript (16)
- UML (1)
- Spring (24)
- Hibernate (11)
- J2EE部署 (18)
- 操作系统 (13)
- struts (11)
- jsp (3)
- J2EE (34)
- 数据库 (22)
- tomcat (4)
- apache (2)
- MyEclipse (13)
- Linux (14)
- Ext (6)
- Weblogic (2)
- 数据库 Oracle 空表导出 (1)
- Oracle (3)
- 编码 乱码 (1)
- 多线程 (5)
- jQuery (2)
- Apache Mina (1)
- ibatis (6)
- abator (1)
- svn (1)
- jvm (1)
- ERwin (2)
- mysql (2)
- ant (1)
- memcache (1)
- dubbo (1)
- PowerDesigner (1)
最新评论
-
di1984HIT:
Shallow heap & Retained heap -
tinguo002:
非常感谢 , 太棒了。
Spring注解方式,异常 'sessionFactory' or 'hibernateTemplate' is required的解决方法 -
白天看黑夜:
Apache Mina Server 2.0 中文参考手册(带 ...
Apache Mina – 简单的客户端/服务端应用示例 -
wumingxingzhe:
好文
Shallow heap & Retained heap -
di1984HIT:
学习了!!
工作流(Workflow)和BPM的不同
编程发布WebService方式的完整例子
WS服务端:
(1)HelloWorld.java接口
(2)实现类HelloWorldImpl.java
(3)发布web service
(4)运行RunCXFServer
http://localhost:8002/helloWorld?wsdl就可以看到输出的saop envelope了.
编写客户端调用WebService
其实只要有了wsdl,客户端的代码是可以用axis生成的,生产的代码中需要用到的类全都有了。帖子中的只是调用方式之一
WS服务端:
(1)HelloWorld.java接口
package com.xxx.ws.code.server; import javax.jws.WebService; @WebService public interface HelloWorld { String sayHi(String text); }
(2)实现类HelloWorldImpl.java
package com.xxx.ws.code.server.impl; import javax.jws.WebService; import com.xxx.ws.code.server.HelloWorld; @WebService(endpointInterface = "com.xxx.ws.code.server.HelloWorld", serviceName = "HelloWorld") public class HelloWorldImpl implements HelloWorld { public String sayHi(String text) { System.out.println("sayHi called"); return "Hello " + text; } }
(3)发布web service
package com.xxx.ws.code.server; //import javax.xml.ws.Endpoint; import org.apache.cxf.interceptor.LoggingInInterceptor; import org.apache.cxf.interceptor.LoggingOutInterceptor; import org.apache.cxf.jaxws.JaxWsServerFactoryBean; import com.xxx.ws.code.server.impl.HelloWorldImpl; public class RunCXFServer { protected RunCXFServer() throws Exception { // START SNIPPET: publish System.out.println("Starting Server"); HelloWorldImpl implementor = new HelloWorldImpl(); JaxWsServerFactoryBean svrFactory = new JaxWsServerFactoryBean(); svrFactory.setServiceClass(HelloWorld.class); svrFactory.setAddress("http://localhost:8002/helloWorld"); svrFactory.setServiceBean(implementor); svrFactory.getInInterceptors().add(new LoggingInInterceptor()); svrFactory.getOutInterceptors().add(new LoggingOutInterceptor()); svrFactory.create(); // END SNIPPET: publish } public static void main(String args[]) throws Exception { new RunCXFServer(); System.out.println("Server ready..."); } }
(4)运行RunCXFServer
http://localhost:8002/helloWorld?wsdl就可以看到输出的saop envelope了.
编写客户端调用WebService
package com.xxx.ws.code.client; //import javax.xml.namespace.QName; //import javax.xml.ws.Service; //import javax.xml.ws.soap.SOAPBinding; import org.apache.cxf.jaxws.JaxWsProxyFactoryBean; import org.apache.cxf.interceptor.LoggingInInterceptor; import org.apache.cxf.interceptor.LoggingOutInterceptor; import com.xxx.ws.code.server.HelloWorld; public class RunCXFCodeClient { public static void main(String args[]) throws Exception { JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean(); factory.getInInterceptors().add(new LoggingInInterceptor()); factory.getOutInterceptors().add(new LoggingOutInterceptor()); factory.setServiceClass(HelloWorld.class); factory.setAddress("http://localhost:8002/helloWorld"); HelloWorld client = (HelloWorld) factory.create(); String reply = client.sayHi("HI"); System.out.println("Server said: " + reply); } }
评论
3 楼
bjyzxxds
2012-08-19
ak_47ab 写道
楼主,请问你,Client端 main方法里面的
factory.setServiceClass(HelloWorld.class); HelloWorld 是服务端的类名,如果在不知道类名的情况下怎么处理呢??
factory.setServiceClass(HelloWorld.class); HelloWorld 是服务端的类名,如果在不知道类名的情况下怎么处理呢??
其实只要有了wsdl,客户端的代码是可以用axis生成的,生产的代码中需要用到的类全都有了。帖子中的只是调用方式之一
2 楼
ak_47ab
2012-08-18
楼主,请问你,Client端 main方法里面的
factory.setServiceClass(HelloWorld.class); HelloWorld 是服务端的类名,如果在不知道类名的情况下怎么处理呢??
factory.setServiceClass(HelloWorld.class); HelloWorld 是服务端的类名,如果在不知道类名的情况下怎么处理呢??
1 楼
lg_asus
2012-06-21
你这并不全是jax-ws, 后面的发布和客户端调用你用的是cxf。
你前面的接口和实现类不用WebService注解应该也可以的。
你前面的接口和实现类不用WebService注解应该也可以的。
发表评论
-
Eclipse,javaw 通过Proxifile代理ipv6协议问题解决
2015-03-17 18:06 2755myeclipse2010升级到myeclipse2014之后 ... -
初始化EHcache CacheManager时报java.net.UnknownHostException
2014-11-13 11:45 12467工程启动时,报一下异常: [wdfportal] [201 ... -
tomcat7可能带来的问题
2013-06-27 00:31 9491、struts标签校验更加严格,如果struts标签中存在嵌 ... -
iBatis执行insert后返回主键
2013-01-18 23:55 1614iBatis插入数据后,返回主键。级联操作很有用。省去了一次的 ... -
Shallow heap & Retained heap
2012-05-16 17:09 49020所有包含Heap Profling功能的工具(MAT, You ... -
什么是两阶段提交协议
2012-05-08 16:58 1030两阶段提交协议 实现分布式事务的关键就是两阶段提交协议。在此 ... -
Abator —— IBatis 代码生成工具
2012-04-03 18:31 18911、在eclipse安装abator插件http://ibat ... -
使用Eclipse远程调试Tomcat
2012-03-23 22:56 1472有些时候,调试不得不用外网,比如说做支付宝的支付接口,服务器后 ... -
Java compiler level does not match the version of the installed Java project fac
2012-03-02 11:32 1277问题现象:项目图标报错“Java compiler level ... -
WebService的事务处理
2012-03-01 15:03 1527如果你只是要解决两个系统之间的事务同步问题,可以采用判断服务是 ... -
线程池(java.util.concurrent.ThreadPoolExecutor)的使用
2012-02-29 15:50 2481一、简介 线程池类为 j ... -
myeclipse 颜色设置(保护视力)
2012-02-28 09:29 20461.window -> Preferences -> ... -
Quartz表达式解析
2012-02-08 14:40 776字段 允许值 允许的特 ... -
使用iBatis中报 java.sql.SQLException: 无效的列类型异常
2011-12-15 14:46 2201<!--Content表 插入应的 ... -
非常有用的proxool属性详细解说
2011-12-13 16:19 1582Proxool连接池是sourceforge下的一个开源项目, ... -
在工程中查找自己修改的所有代码
2011-12-09 17:41 1019在工程中查找自己修改的所有代码的方法: 1.工程右键 -&g ... -
如何在Eclipse中安装和使用ibatis插件Abator
2011-12-01 21:26 49421、获得abator: http://ibatis. ... -
newCachedThreadPool线程池
2011-11-20 11:35 42981public static ExecutorService n ... -
Apache Mina – 简单的客户端/服务端应用示例
2011-11-19 23:49 5483转自http://javasight.net/2011/05/ ... -
Class.forName()、Class.forName().newInstance() 、New 三者区别!
2011-11-15 09:18 1222终于明白为什么加载数据库驱动只用Class.forName() ...
相关推荐
使用JAX-WS(JWS)发布WebService 使用myeclipse开发java的webservice的两种方式 方式一: (此方式只能作为调试,有以下bug:jdk1.6u17?以下编译器不支持以Endpoint.publish方式发布document方式的soap,必须在...
JAX-WS方式开发和部署webservice应用,JAX-WS方式开发和部署webservice应用,JAX-WS方式开发和部署webservice应用,JAX-WS方式开发和部署webservice应用,JAX-WS方式开发和部署webservice应用
MyEclipse8_0中使用 JAX-WS 部署 WebService 实例 - 外衣 - 博客频道 - CSDN_NET.mht
NULL 博文链接:https://liuyunlong1229.iteye.com/blog/1678559
基于jax-ws 实现的web service client和server端的demo程序。 注:如果使用的是 myeclipse 时 server 部署到tomcat 启动的时候会报错 解决办法:找到myeclipse安装目录下的 plugins 目录里 查找 webservices-rt.jar,...
webService部署tomcat需要的jax-ws 的完整jar包
jax-ws webservice完整demo,包含所有jax-ws 2.2jar包。
JAX-WS使用教程 1、JAX-WS概述 2、创建Web Service 2.1 从java开始 2.1.1 运行wsgen 2.1.2 生成的WSDL和XSD 2.1.3 目录结构 2.2 从WSDL开始 2.2.1 运行wsimport 2.2.2 生成的java代码 2.3发布Web ...
使用 Eclipse JavaEE 开发 WebService 时,若选择手动创建原生的JAX-WS服务,需要导入此jar资源(教程详见我的博文https://blog.csdn.net/weixin_50604409/article/details/116399530)。 如果您同时装有 IntelliJ ...
JAX-WS 2.2 RI 所包含的JAR包集合,包含25个JAR包,列表如下: FastInoset.jar gmbal-api-only.jar ha-api.jar javax.annotation.jar javax.mail_1.4.jar jaxb-api.jar jaxb-impl.jar jaxb-xjc.jar jaxws-api...
亲测可用,Jax-ws所需要的JAR包,拷贝到tomcat安装路径的lib里,实现了webservice发布到tomcat,赞!
NULL 博文链接:https://hgxs-org.iteye.com/blog/1940916
jax-ws客户端与服务端工程.rar-------------
The Java API for XML Web Services (JAX-WS) is a Java programming language API for creating web ... JAX-WS is one of the Java XML programming APIs. It's a part of the Java SE and Java EE platforms.
欢迎下载JAX-WS实现WebService.zip。本压缩文件介绍了如何使用JAX-WS技术实现WebService 参考博客:http://blog.csdn.net/gaohuanjie/article/details/50523517
MyEclipse6_5上基于JAX-WS开发Webservice(中文示例)
如果基于一个JAX-WS进行WebService开发,有很多教程,但是具体怎么更自动地生成一些文件,实现客户端与服务端的交互,都讲得不大清楚,为了让大家更方便地部署,我将服务端、客户端文件的生成与部署全过程以及测试...
以jdk1.6以上自带的jax-ws来发布webservice,压缩包里包含服务端和客户端,下载导入即可启动运行测试,有疑问的话欢迎咨询哈
利用myeclipse创建的 jax-ws demo
MyEclipse基于JAX-WS开发Webservice+WebserviceClient客户端调用.zip