WSDLToJava Error: Thrown by JAXB : undefined element declaration 's:schema'

    今天使用cxf的一个小工具--wsdl2java,打算将一个网上发布的wsdl文件转换成对应的java类,结果控制台却抛出了这个异常:WSDLToJava Error: Thrown by JAXB : undefined element declaration 's:schema'。

感觉不太甘心,后来又把这个wsdl保存下来成为我本地磁盘上的wsdl文件(保存路径与wsdl2java.bin的路径一致),然后再次使用wsdl2java,这次却反而抛出了另一个异常,这个异常Cause by : null。

上网找了一下,始终没有这个新异常相关的资料。后来突然有一种直觉,它告诉我可能是wsdl2java这个小工具找不到这个wsdl文件(由于路径中存在中文字符),于是就把这个wsdl文件拷贝到磁盘根目录下,再次运行wsdl2java,新的异常终于消失了,但WSDLToJava Error: Thrown by JAXB : undefined element declaration 's:schema' 仍然冤魂不散。

后来又从网上搜了一下,看到某篇文章说到这个问题,下面将别人的文章摘录下来:

--------------------摘要部分-----------------------

cmd 运行到该目录

如E:\apache-cxf-2.0.9\apache-cxf-2.0.9\bin>wsdl2java sms.wsdl

中途遇到WSDLToJava Error: Thrown by JAXB : undefined element declaration 's:schema'异常

意思是未定义的元素声明,本来<s:import namespace="http://www.w3.org/2001/XMLSchema" />这句是声明的,但不知是何原因,就是无效。所以解决方法:把wsdl文件中的<s:element ref="s:schema" />都删除,还有声明这句。就ok了。弄了半天,才搞定。

--------------------摘要部分-----------------------

    然而,我保存下来的wsdl文件与上面提及的有些出入,就是我的没有<s:import namespace="http://www.w3.org/2001/XMLSchema" />这句,不过文件中还是的的确确出现了<s:element ref="s:schema" />一句,并且控制台也提示在XX行XX列出现了问题,该行正好对应了<s:element ref="s:schema" />一句。于是立下狠心地把这一句删了!不过再次执行wsdl2java时,又一次报同样的错误,原来wsdl文件中不止一处有<s:element ref="s:schema" />一句,删除要删干净啊!!!再次执行wsdl2java,太阳终于出来了(这时貌似已经是凌晨1:06了......),java类生成成功!!!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值