博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
webservice2
阅读量:6372 次
发布时间:2019-06-23

本文共 2282 字,大约阅读时间需要 7 分钟。

 

按照

当然,里面没写清楚如何配置第三方jar

结果一访问就报错:org.codehaus.xfire.transport.http.XFireConfigurableServlet

 

4年前就搞过ws的了,结果只是个helloworld, 当时也是没有完全弄明白,而且一直没有总结,所以,再次碰到ws还是有所不明白,这不,现在连helloworld 都做不出来了。。。悲剧!

 

 

 

 —— 

参照Eclipse的帮助文档,第一个webservice helloworld 就做出来了。(其实这样的helloworld我很久之前就搞过了,当然,仅仅是helloworld,没有更深了。。)

中间还有小插曲,就是,在 Select web service creation scenario 这个页面, 我选择了Bottom up scenario ,但是下面的Create new Java Bean 没有勾选,导致下一步里一直提示  Service interface does not exist , 而当时我就非常迷糊了,最后,当然,还是仔细看了帮助文档才发现小问题。得以继续。

 

总结一下其中的几个步骤:

1 创建Web service project,(注意Web service  & J2EE details  Framework那里选择XFire框架即可),一直点下一步直到finish。 ——JAX-WS 和 XFire 的区别暂时不管。。—— 这样,一个空壳的Web service project就创建好了,但是什么内容都没。

2 创建Web service : project选之前创建的Web service project(必须是ws project,否则下一步没法继续); Framework选XFire(保持一致);Strategy 选 Bottom up scenario (除此之外还有Top-down选项) 。同时根据情况勾选Create new Java Bean。__这是一个有意思的选项,选中之后会生成接口和实现类,默认会生成public String example(String message);这样的一个接口。 否则只能从已有的接口、实现类中选择。

  Bottom up / Top-down 的理解:

 

  

 

3 下一步: 输入ws名字,在Web service Implementation中选择上面的或下面的 —— 如果是下面的:java class implementation only 不知道什么意思。。。

  : 如果是后者,则生成的ws xml 如:

BottomupWS
com.lk.wa.Test123
------------ 相对而言少了implementationClass标签,可以理解为此时的
serviceClass与implementationClass 合二为一了吗??            
literal
    
application

 

  SOAP & Servlet configuration 保持默认,稍后解释。然后就是finish了。向导结束,services.xml文件会发生变化。

 

 services.xml 的说明

其中<service>的格式,表明了提供的ws的个数,此时的ws(Web service) 是一个具体的概念。

 

启动Web service project后就可以访问ws了,如何访问ws?

3种方式:

1 Web浏览器 

  具体:

    a 格式: http://ip:port/ws project名字/services/ws名字(从services.xml可知)?wsdl 如http://localhost:8080/HelloWS/services/HelloWSsss?wsdl

 

2 Eclipse内置的Web Services Explorer

  具体:WSDL Page - 左边的WSDL Main - 右侧的 Actions - 下面的Open WSDL - Enter the URL of a WSDL document and click Go to explore

3 java程序(当然,不一定是java语言,只要是提供了相关ws能力的都可以)

  具体:需要导入Xfire http client libraries

    

1 Service srvcModel = new ObjectServiceFactory()                .create(IHelloWSsss.class); XFireProxyFactory factory = new XFireProxyFactory(XFireFactory                .newInstance().getXFire());2 IHelloWSsss srvc = (IHelloWSsss) factory.create(                    srvcModel, helloWorldURL);3 String result = srvc.example(" world"); ———— get the ws

 

 

 

 

转载地址:http://vguqa.baihongyu.com/

你可能感兴趣的文章
poj 3468 A Simple Problem with Integers
查看>>
OOA/OOD/OOP细讲
查看>>
Tomcat 系统架构与设计模式_ 设计模式分析
查看>>
Quartz的使用
查看>>
微服务接口设计规范和统一异常处理策略
查看>>
自研服务治理框架----服务端/客户端配置
查看>>
51CTO学院优惠版
查看>>
xcode实用快捷键
查看>>
我的友情链接
查看>>
根据数据结果集,自定义展示highchart图
查看>>
django manage.py 扩展
查看>>
从Exchange 通往Office 365系列(二)Office 365简介
查看>>
hadoop集群对机器名大小写敏感
查看>>
linux 内核升级
查看>>
jeesite 通用的 启动流程方法
查看>>
Spring MVC系列:(6)添加用户的小案例
查看>>
我的友情链接
查看>>
Elasticsearch内存分配设置详解
查看>>
Solaris
查看>>
怎么提高电脑运行速度?怎样提高?如何提高?
查看>>