您好,登录后才能下订单哦!
今天就跟大家聊聊有关怎样使用cxf3.0.4搭建webservice服务需要的最精简jar包,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
下面是测试结果,只列出报错了的测试:
1、org.apache.catalina.LifecycleException: A child container failed during start 缺少:cxf-core-3.0.4.jar(最核心的包,不多说)
2、java.lang.ClassNotFoundException: org.apache.cxf.binding.soap.SoapBindingConfiguration 缺少:cxf-rt-bindings-soap-3.0.4.jar (soap协议)
3、org.apache.cxf.jaxb.JAXBDataBinding: 缺少:cxf-rt-databinding-jaxb-3.0.4.jar
4、加载Application文件时出现Unable to locate Spring NamespaceHandler for XML schema namespace [http://cxf.apache.org/jaxws]
缺少:cxf-rt-frontend-jaxws-3.0.4.jar (frontend 前置的意思,你懂的)
5、org/apache/cxf/frontend/spring/ClientProxyFactoryBeanDefinitionParser错误: 缺少:cxf-rt-frontend-simple-3.0.4.jar
6、class path resource [META-INF/cxf/cxf-servlet.xml] cannot be opened because it does not exist 缺少:cxf-rt-transports-http-3.0.4.jar
7、org.apache.cxf.BusException: No DestinationFactory was found for the namespace http://cxf.apache.org/transports/udp. 缺少:cxf-rt-transports-udp-3.0.4.jar
8、org.apache.cxf.ws.discovery.internal.WSDiscoveryServiceImpl startup 警告: Could not start WS-Discovery Service. javax.xml.ws.WebServiceException: java.lang.NullPointerException 不能初始化配置的bean服务,也就是运行到jaxws:server时出错
缺少:cxf-rt-ws-addr-3.0.4.jar
9、java.lang.ClassNotFoundException: org.apache.cxf.ws.policy.AssertionInfoMap 缺少:cxf-rt-ws-policy-3.0.4.jar
10、java.lang.ClassNotFoundException: org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean 缺少:cxf-rt-wsdl-3.0.4.jar
11、java.lang.ClassNotFoundException: org.apache.neethi.AssertionBuilderFactory 缺少:neethi-3.0.3.jar
12、java.lang.ClassNotFoundException: org.slf4j.LoggerFactory 缺少:slf4j-api-1.7.9.jar
13、java.lang.ClassNotFoundException: org.apache.ws.commons.schema.resolver.URIResolver 缺少:xmlschema-core-2.2.1.jar
所以,总结cxf3.0.4框架必需的包为: cxf-core-3.0.4.jar cxf-rt-bindings-soap-3.0.4.jar cxf-rt-databinding-jaxb-3.0.4.jar cxf-rt-frontend-jaxws-3.0.4.jar cxf-rt-frontend-simple-3.0.4.jar cxf-rt-transports-http-3.0.4.jar cxf-rt-transports-udp-3.0.4.jar cxf-rt-ws-addr-3.0.4.jar cxf-rt-wsdl-3.0.4.jar cxf-rt-ws-policy-3.0.4.jar cxf-rt-wsdl-3.0.4.jar neethi-3.0.3.jar slf4j-api-1.7.9.jar xmlschema-core-2.2.1.jar
注意:这里不包括spring依赖包和commoms下的jar包
引入CXF Bean定义如下,早期的版本中使用,如果是servlet引入的话则下面三句不用了,因为框架引入了 配置文件中不需要: <import resource="classpath:META-INF/cxf/cxf.xml"/> <import resource="classpath:META-INF/cxf/cxf-servlet.xml"/> <import resource="classpath:META-INF/cxf/cxf-extension-soap.xml" />
[html] view plain copy
<!-- scope="singleton"单例 -->
<bean id="userServiceBean" class="com.winit.webservice.UserWebService"> </bean> <!-- 注意下面的address,这里的address的名称就是访问的WebService的name --> <jaxws:server id="userService" serviceClass="com.winit.webservice.IUserWebService" address="/Users"> <jaxws:serviceBean> <!-- 要暴露的 bean 的引用 --> <ref bean="userServiceBean"/> </jaxws:serviceBean> </jaxws:server>
web.xml中添加cxf的servlet
[html] view plain copy
<servlet> <servlet-name>CXFService</servlet-name> <servlet-class>org.apache.cxf.transport.servlet.CXFServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>CXFService</servlet-name> <url-pattern>/webservice/*</url-pattern> </servlet-mapping>
看完上述内容,你们对怎样使用cxf3.0.4搭建webservice服务需要的最精简jar包有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注亿速云行业资讯频道,感谢大家的支持。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。