记一次在Eclipse中用Axis生成webservice服务端的过程中出现的问题
问题一、
Unable to find config file. Creating new servlet engine config file: /WEB-INF/server-config.wsdd
找不到这个.wsdd的配置文件,没有自动生成!
原因是使用Eclipse自动生成axis服务端时没有执行的最后一步!如图:
当进行的这一步时,需要接着点击启动服务的按钮,之后Next按钮就会可用,点击Next按钮后就会自动生成这个.wsdd文件!
问题二、
AxisFault
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.generalException
faultSubcode:
faultString: makeTypeElement() was told to create a type......
这个是在发布服务后点击wsdl链接查看http://127....?wsdl文档时发生的错误,但是访问时不输入?wsdl就是一切正常!
出现这个错误是因为接口方法中的参数是一个复杂类型且这个参数的构造函数中还有复杂类型! eq:
<xs:element name="OrderList" minOccurs="0"><xs:complexType><xs:sequence><xs:element name="Order" type="tns:OrderType" minOccurs="0" maxOccurs="unbounded"/></xs:sequence></xs:complexType></xs:element>
上面代码中OrderList是接口方法中的参数且是一个复杂类型,Order也是一个复杂类型。
这个问题不影响Axis的服务端与客户端的调用,这个据说是Axis的一个bug,而且好像不是每次都会出现!不知道什么时候出现,也可能与浏览器有关!......
为了正常显示,也可以对此进行修改, 提取出复杂类型,并给OrderList添加type参数。 eg:
<xs:element name="OrderList" minOccurs="0" type="tns:OrderListType"></xs:element> <xs:complexType name="OrderListType"><xs:sequence><xs:element name="Order" type="tns:OrderType" maxOccurs="unbounded"/></xs:sequence></xs:complexType>
2:)wsdl无法正常显示会影响cxf的一般调用,因cxf的客户端是以wsdl为基础生成的!一般调用方法如下:
Service ss = new Service (wsdlURL, SERVICE_NAME);PortType port = ss.getPort();port.getInfo();
其中wsdl为重点,wsdl的显示会影响调用。
为了避开这个影响,CXF客户端调用服务端时可以适应另一种方法:eq:
JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean(); factory.setServiceClass(PortType.class); factory.setAddress(studioTaskUrl); port = (PortType)factory.create();
UP.
问题三、
忘记了,想起了再说。
转载于:https://www.cnblogs.com/liangblog/p/5417489.html
记一次在Eclipse中用Axis生成webservice服务端的过程中出现的问题相关推荐
- java cxf服务端代码_【JAVA】 cxf 生成 webservice 服务端代码
CXF Apache CXF = Celtix + XFire.CXF 继承了 Celtix 和 XFire 两大开源项目的精华,提供了对 JAX-WS 全面的支持,并且提供了多种 Binding . ...
- 使用Eclipse和Tomcat搭建Android服务端
作为一名Android开发者,不懂一点服务端的知识有时候真的不行.比如你做好了用户登录请求的功能,想找服务端验证一下是否正确.服务端同事告诉你他很忙,等他把接口写完了再验证.这时候呢,我们完全可以自己 ...
- eclipse android 不能生成r类 appt错误,Ubuntu中Eclipse新建Android project提示缺失R文件的原因及解决办法...
环境: 64位Ubuntu12.04进行Android开发,sun-JDK1.7,官网下载的最新ADT-Eclipse-SDK集成包.JDK配置正确.SDK已更新,版本一致 问题: 第一次启动Ecli ...
- SAP ABAP 报表新增字段,重新生成维护视图,以及过程中产生的问题处理
生成新的维护视图: 问题:新生成的维护视图在SM30无法正常进入维护(忘记保存问题截图了) 处理办法: (1)新建一个维护视图,与原来的维护视图比较,将报错代码进行对比修改 (2)修改代码一致之后,仍 ...
- 倚天鸿蒙系统,倚天记征服篇三职业暗黑微变传奇服务端_技能宠物_铭文洗练【GEE引擎】...
补丁大小:2.11GB,测试客户端:17周年纯净端. 游戏比例:[元宝1=100元宝 [网银多送100%] [ 充值点1:1][网站充值多冲多送] 游戏介绍:道士可学习"召唤骷髅" ...
- cmd命令生成webservice_根据wsdl文件生成WebService客户端代码
有时候在项目中,一个项目可能有好几个公司在做.系统之间难免会出现互相调用接口的现象,这时候有一种办法就是使用webService.本篇文章将介绍如何将对接系统提供的WebService接口,根据对方提 ...
- axis调用webservice客户端开发
第一步:wsdl2Java.bat文件编写 Axis_Lib表示依赖的jar包路径 Output_Path表示生成的class路径 Package包名 还需要手动更改 -p %Package%表示we ...
- wsimport命令生成webservice客户端
一.排除问题 1.今天接到一个任务,我做为客户端,调用服务端接口,通过生成wsdl文件的方式,所以用了wsimport命令,后台提示不支持soap编码 . 2.我看网上说,jdk1.7及以后就不在支持 ...
- 13.Axis创建webservice客户端和服务端
转自:https://blog.csdn.net/chenghui0317/article/details/9318317 一.Axis的介绍 Web Service是现在最适合实现SOA的技术,而A ...
- swagger生成对应的客户端、服务端代码
根据yaml文件生成对应的客户端.服务端代码 前言 对于早期的webservice接口,我们可以根据wsdl文件生成对应的客户端和服务端代码.那么同样的针对于Restful风格的接口,也有同样的根 ...
最新文章
- Haskell 斐波那契 数列 递归实现
- 1034 Head of a Gang (30 分) 【难度: 中 / 知识点: 并查集】
- 3DSlicer11:体系结构2
- C++11 中STL库中新增内容
- Java的容器的线程安全
- 【排错】net::ERR_ABORTED 404
- ASP.NET 2.0中控件的简单异步回调
- java以Blob形式存储,读取图片并在jsp页面显示图片流
- C#并发编程之异步编程(二)
- [Java基础]获取Class类的对象
- html怎样获取用户手机号码,小程序如何获取用户手机号?
- java replace stringbuilder_Java StringBuilder replace()方法
- Sharding-JDBC读写分离_MySql主从配置(2)_Sharding-Sphere,Sharding-JDBC分布式_分库分表工作笔记016
- JavaScript之变量对象
- 算法知识点——(2)模型评估
- 数据库课程设计实验报告--图书管理系统
- linux面板带csf防火墙,linux csf 防火墙 防止少量的ddos cc攻击很有效
- 在线html编辑器 菜鸟,菜鸟教程
- 当下流行架构中的一些技术思考
- UIKit基础:6.UIView的常用属性 - SuperView和SubViews基本认识