锁定老帖子 主题:初学CXF的疑惑
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2011-09-21
1.开发个借口和实现类,比如UserService和UserServiceImpl 2.通过一系列配置将UserService暴露出去 3.通过CXF提供的java2wsdl命令行生成WSDL文件或者是把服务发布到Web容器,由Web容器自动生成WSDL文件 这个看起来貌似没什么问题 但在客户端: 看了很多代码,不关事用Spring或者什么的,最终都要获取一个服务器端服务的一个实例,如上述UserServiceImpl的实例,也就是说在客户端代码中必须import UserServiceImpl。那么我客户端就必须把服务器端所有代码打JAR包放进来。 那我的问题就是,既然都把这些代码拿过来了,那还要之前那些步骤搞毛,直接new 一个UserServiceImpl不就可以了吗? 比如像这样的客户端代码我就很费解 import UserServiceImpl public void test(){ UserServiceImpl uss=new UserServiceImpl(new URL("file:d:\\ws\\UserServiceService.wsdl"),new QName("http://cxf.demo/","UserServiceImpl")); } 求解!!! 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2011-09-21
看来 如果服务器端和客户端 都是基于java平台,那么上述的客户端调用的可行,变态的是服务器端还需要把接口打包,放到客户端的程序下面。
感觉太不爽了。 |
|
返回顶楼 | |
发表时间:2011-09-21
最后修改:2011-09-21
另外一种调用方式 :生成stub,不关服务器端是java还是.net平台,都可以通过生成stub来实现,很多文章这样说。但尼玛什么是“生成stub”,写文章是要负责任的,写出来要让绝大部分的人看懂不然放出来搞毛。
所谓的生成stub,貌似就是指用wsdl2java命令来生成代码的过程..... |
|
返回顶楼 | |
发表时间:2011-09-21
(╰_╯)#.已经背离了webservice
|
|
返回顶楼 | |
发表时间:2011-09-21
你可以提供 wsdl 然后客户端根据wsdl生成java,或者 不提供wsdl 只提供接口jar
|
|
返回顶楼 | |
发表时间:2011-09-22
zhushidan100 写道 (╰_╯)#.已经背离了webservice
这样的回复我觉得毫无意义...不知道你是懂呢还是不懂... |
|
返回顶楼 | |
发表时间:2011-09-22
waitingmyself 写道 你可以提供 wsdl 然后客户端根据wsdl生成java,或者 不提供wsdl 只提供接口jar
兄弟...你的认识和我一样...简单起见我正在项目中采用第二种方式.现在需要考虑加入Security了.... |
|
返回顶楼 | |
发表时间:2011-09-22
ws传递的是数据,
数据的类型由wsdl描述, 如果服务端、客户端都是java,则客户端导入服务端的jar包就可以, 如果服务端是非java,而客户端是java,则需要使用wsdl来生成相应的数据类型,这也是wsdl本职工作。 |
|
返回顶楼 | |
发表时间:2011-09-22
客户端只需要UserService接口,不需要Impl.
|
|
返回顶楼 | |
发表时间:2011-09-22
可以通过wsdl生成对应的代理文件,就算是需要提供也只是接口而已,而客户端所谓的实现,只是一个代理接口的封装罢了
|
|
返回顶楼 | |