使用cxf搭建webservice服务需要的最精简jar包

论坛 期权论坛     
匿名小用户   2019-10-20 18:31   377   0
<div class="article_content csdn-tracking-statistics tracking-click" id="article_content" style="color:rgb(69,69,69);overflow:hidden;">
<p><span style="font-size:18px;"></span></p>
<p style="color:rgb(69,69,69);">
<span style="font-size:18px;">网上看了百度了好长时间,头都大了,还是没有把想要的最简jar包找到,不是jar仍然很多,就是jar包少了,导致报错。</span><span style="font-size:18px;">无奈之下,自己花了一个下午,采用用逆推法,总结了下</span><span style="font-size:18px;">cxf3.0.4结合spring搭建webservice服务端的框架必需的最少jar包。</span></p>
<p style="color:rgb(69,69,69);">
<span style="font-size:18px;">   方法很笨,但是很有效:直接先加载<span>cxf3.0.4中lib下的所有jar包,结合spring搭建一个最简单的webservice服务框架。然后逐个删除项目下的cxf相关的jar包。</span></span></p>
<p><span style="font-size:18px;">  下面是测试结果,只列出报错了的测试:</span></p>
<p><span style="font-size:18px;">1、org.apache.catalina.LifecycleException: A child container failed during start<br>
缺少:cxf-core-3.0.4.jar(最核心的包,不多说)<br><br><br>
2、java.lang.ClassNotFoundException: org.apache.cxf.binding.soap.SoapBindingConfiguration<br>
缺少:cxf-rt-bindings-soap-3.0.4.jar    (soap协议)<br><br></span></p>
<p><span style="font-size:18px;">3、org.apache.cxf.jaxb.JAXBDataBinding:<br>
缺少:cxf-rt-databinding-jaxb-3.0.4.jar   <br><br><br>
4、加载Application文件时出现Unable to locate Spring NamespaceHandler for XML schema namespace<br>
  [http://cxf.apache.org/jaxws]</span></p>
<p><span style="font-size:18px;">缺少:cxf-rt-frontend-jaxws-3.0.4.jar  (<span>frontend 前置的意思,你懂的)</span><br><br>
5、org/apache/cxf/frontend/spring/ClientProxyFactoryBeanDefinitionParser错误:<br>
缺少:cxf-rt-frontend-simple-3.0.4.jar<br><br><br>
6、class path resource [META-INF/cxf/cxf-servlet.xml] cannot be opened because it does not exist<br>
缺少:cxf-rt-transports-http-3.0.4.jar<br><br><br>
7、org.apache.cxf.BusException: No DestinationFactory was found for the namespace http://cxf.apache.org/transports/udp.<br>
缺少:cxf-rt-transports-udp-3.0.4.jar</span></p>
<p><span style="font-size:18px;"><br>
8、org.apache.cxf.ws.discovery.internal.WSDiscoveryServiceImpl startup<br>
警告: Could not start WS-Discovery Service.<br>
javax.xml.ws.WebServiceException: java.lang.NullPointerException<br>
不能初始化配置的bean服务,也就是运行到&lt;jaxws:server&gt;时出错<br><br>
缺少:cxf-rt-ws-addr-3.0.4.jar<br><br>
9、java.lang.ClassNotFoundException: org.apache.cxf.ws.policy.AssertionInfoMap<br>
缺少:cxf-rt-ws-policy-3.0.4.jar    <br><br><br>
10、java.lang.ClassNotFoundException: org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean<br>
缺少:cxf-rt-wsdl-3.0.4.jar<br><br>
11、java.lang.ClassNotFoundException: org.apache.neethi.AssertionBuilderFactory<br>
缺少:neethi-3.0.3.jar<br><br>
12、java.lang.ClassNotFoundException: org.slf4j.LoggerFactory<br>
缺少:slf4j-api-1.7.9.jar<br><br>
13、java.lang.ClassNotFoundException: org.apache.ws.commons.schema.resolver.URIResolver<br>
缺少:xmlschema-core-2.2.1.jar<br></span></p>
<p><span style="font-size:18px;"><br></span></p>
<p><span style="font-size:18px;">所以,总结cxf3.0.4框架必需的包为:<br>
cxf-core-3.0.4.jar<br>
cxf-rt-bindings-soap-3.0.4.jar<br>
cxf-rt-databinding-jaxb-3.0.4.jar<br>
cxf-rt-frontend-jaxws-3.0.4.jar<br>
cxf-rt-frontend-simple-3.0.4.jar<br>
cxf-rt-transports-http-3.0.4.jar<br>
cxf-rt-transports-udp-3.0.4.jar<br>
cxf-rt-ws-addr-3.0.4.jar<br>
cxf-rt-wsdl-3.0.4.jar<br>
cxf-rt-ws-policy-3.0.4.jar<br>
cxf-rt-wsdl-3.0.4.jar<br>
neethi-3.0.3.jar<br>
slf4j-api-1.7.9.jar<br>
xmlschema-core-2.2.1.jar</span></p>
<p><span style="font-size:18px;">注意:这里不包括spring依赖包和commoms下的jar包</span></p>
<p><span style="font-size:18px;"><br></span></p>
<p><span style="font-size:18px;">引入CXF Bean定义如下,早期的版本中使用,如果是servlet引入的话则下面三句不用了,因为框架引入了<br>
配置文件中不需要:<br>
&lt;import resource="classpath:META-INF/cxf/cxf.xml"/&gt;<br>
&lt;import resource="classpath:META-INF/cxf/cxf-servlet.xml"/&gt;<br>
&lt;import resource="classpath:META-INF/cxf/cxf-extension-soap.xml" /&gt;</span></p>
<p><span style="font-size:18px;"><span></span></span></p>
<div class="dp-highlighter bg_html" style="font-family:Consolas, 'Courier New', Courier, mono, serif;font-size:12px;">
<div class="bar">
<div class="tools" style="font-size:9px;line-height:normal;font-family:Verdana, Geneva, Arial, Helvetica, sans-serif;color:#C0C0C0;border-left:3px solid rgb(108,226,108);border-right:1px solid rgb(231,229,220);">
<strong>[html]</strong><a class="ViewSource" data-token="41a06dc5f7531d94f1e06efbe97f04d3" href="http://blog.csdn.net/w1014074794/article/details/47862163#" rel="nofollow" style="color:rgb(160,160,160);border:none;font-size:9px;display:inline-block;width:16px;text-indent:-2000px;" title="view plain">view
plain</a><span class="tracking-ad"><a class="CopyToClipboard" data-token="41a06dc5f7531d94f1e06efbe97f04d3" href="http://blog.csdn.net/w1014074794/article/details/47862163#" rel="nofollow" style="color:rgb(160,160,160);border:none;font-size:9px;display:inline-block;wid
分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:50
帖子:1079
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP