您现在的位置是: 首页 > 汽车资讯 汽车资讯

cxf spring 整合_spring cxf 配置_1

ysladmin 2024-08-01 人已围观

简介cxf spring 整合_spring cxf 配置       非常感谢大家对cxf spring 整合问题集合的贡献。我会努力给出简明扼要的回答,并根据需要提供一些具体实例来支持我的观点,希望这能给大家带来

cxf spring 整合_spring cxf 配置

       非常感谢大家对cxf spring 整合问题集合的贡献。我会努力给出简明扼要的回答,并根据需要提供一些具体实例来支持我的观点,希望这能给大家带来一些新的思路。

1.maven整合cxf应该引哪些jar包

2.如何正确地在Axis,Axis2和Apache CXF之间抉择

3.学习Ja的最佳路线

cxf spring 整合_spring cxf 配置

maven整合cxf应该引哪些jar包

       服务端代码:

编辑pom.xml文件,引入所需jar文件:

       <build>

       <plugins>

       <plugin>

       <groupId>org.apache.men.plugins</groupId>

       <artifactId>men-compiler-plugin</artifactId>

       <configuration>

       <source>1.7</source>

       <target>1.7</target>

       <encoding>UTF-8</encoding>

       </configuration>

       </plugin>

       <plugin>

       <groupId>org.apache.men.plugins</groupId>

       <artifactId>men-surefire-plugin</artifactId>

       <configuration>

       <!--?跳过测试单元?-->

       <skip>true</skip>

       </configuration>

       </plugin>

       </plugins>

       </build>

       <properties>

       <junit.version>4.11</junit.version>

       <cxf.version>2.2.3</cxf.version>

       <spring.version>3.2.3.RELEASE</spring.version>

       <slf4j.version>1.7.7</slf4j.version>

       </properties>

       <dependencies>

       <dependency>

       <groupId>junit</groupId>

       <artifactId>junit</artifactId>

       <version>${junit.version}</version>

       </dependency>

       <!--?CXF?Dependencies?-->

       <dependency>

       <groupId>org.apache.cxf</groupId>

       <artifactId>cxf-rt-frontend-jaxws</artifactId>

       <version>${cxf.version}</version>

       </dependency>

       <dependency>

       <groupId>org.apache.cxf</groupId>

       <artifactId>cxf-rt-transports-</artifactId>

       <version>${cxf.version}</version>

       </dependency>

       <!--?Jetty?is?needed?if?you're?are?not?using?the?CXFServlet?-->

       <dependency>

       <groupId>org.apache.cxf</groupId>

       <artifactId>cxf-rt-transports--jetty</artifactId>

       <version>${cxf.version}</version>

       </dependency>

       <!--?End?of?CXF?Dependencies?-->

       <!--?Spring?Dependencies?${spring.version}?-->

       <dependency>

       <groupId>org.springframework</groupId>

       <artifactId>spring-context</artifactId>

       <version>${spring.version}</version>

       </dependency>

       <dependency>

       <groupId>org.springframework</groupId>

       <artifactId>spring-web</artifactId>

       <version>${spring.version}</version>

       </dependency>

       <dependency>

       <groupId>org.slf4j</groupId>

       <artifactId>slf4j-log4j12</artifactId>

       <version>${slf4j.version}</version>

       <type>jar</type>

       <scope>compile</scope>

       </dependency>

       </dependencies>

       </project>

如何正确地在Axis,Axis2和Apache CXF之间抉择

       正好现在在学webService.可以共同进步啊

        Web Services 框架如 Axis2、CXF 都是由现有的项目中逐渐演化而来的,Axis2 是由 Axis 1.x 系列演化过来,而 Apache CXF 则是由 Celtix 和 XFire 项目整合而生,并且刚刚发布了 2.0.2 的最新版本,不过仍是 Apache 的一个孵化项目。

        Axis2 是对 Axis 进行了彻底的重写的一个新项目了,它使用了新的模块化架构,更方便于功能性的扩展等等。

       Apache CXF 则是由 XFire 和 Celtix 两个现有的项目进行了重组。

       先比较一下它们的不同之处:

        1、Apache CXF 支持 WS-Addressing、WS-Policy、WS-RM、WS-Security和WS-I BasicProfile

        2、Axis2 支持 WS-Addressing、WS-RM、WS-Security和WS-I BasicProfile,WS-Policy将在新版本里得到支持

        3、Apache CXF 是根据Spring哲学来进行编写的,即可以无缝地与Spring进行整合

        4、Axis2 不是

        5、Axis2 支持更多的 data bindings,包括 XMLBeans、JiBX、JaxMe 和 JaxBRI,以及它原生的 data binding(ADB)。

        6、Apache CXF 目前仅支持 JAXB 和 Aegis,并且默认是 JAXB 2.0,与 XFire 默认是支持 Aegis 不同,XMLBeans、JiBX 和 Castor 将在 CXF 2.1 版本中得到支持,目前版本是 2.0.2

        7、Axis2 支持多种语言,它有 C/C++ 版本。

        8、Apache CXF 提供方便的Spring整合方法,可以通过注解、Spring标签式配置来暴露Web Services和消费Web Services

       如何抉择:

       1、如果应用程序需要多语言的支持,Axis2 应当是首选了;

       2、如果应用程序是遵循 Spring 哲学路线的话,Apache CXF 是一种更好的选择,特别对嵌入式的 Web Services 来说;

       3、如果应用程序没有新的特性需要的话,就仍是用原来项目所用的框架,比如 Axis1,XFire,Celtrix 或 BEA 等等厂家自己的 Web Services 实现,就别劳民伤财了

        因为CXF可以和Spring无缝的进行结合,而我的项目用到了spring ,所以我选的是CXF

学习Ja的最佳路线

       新一代的 Web Services 框架如 Axis2、CXF 都是由现有的项目中逐渐演化而来的,Axis2 是由大家熟悉的 Axis 1.x 系列演化过来,而 Apache CXF 则是由 Celtix 和 XFire 项目整合而生,并且刚刚发布了 2.0.2 的最新版本,不过仍是 Apache 的一个孵化项目。

       Axis2 是对 Axis 进行了彻底的重写的一个新项目了,它使用了新的模块化架构,更方便于功能性的扩展等等。

       Apache CXF 则是由 XFire 和 Celtix 两个现有的项目进行了重组。

       问题:如果现有的应用程序是基于 Axis 1.x、XFire 或者 Celtix 的话,那应该怎么办?都迁移到这些新的框架上去吗?但是即使是要迁移,那应该迁移到哪个框架上去呢?

       如果是编写一个新的 Web Services 应用程序的话,就不存在迁移的问题了,但是哪个框架是你应当选择进行使用的呢?哪个比哪个更好呢?

       对于现在的应用程序的迁移,如果你的应用程序是稳定而成熟的,并且在可预知的未来的情况下,只要很少的一些需求变更要做的话,那么保存你的体力,不要去做“劳民伤财“的迁移工作了。

       如果你的现有应用程序BUG缠身,性能,功能等等都一片糟糕的话,那就要考虑迁移了,那选哪个框架呢?先比较一下它们的不同之处:

       1、Apache CXF 支持 WS-Addressing、WS-Policy、WS-RM、WS-Security和WS-I BasicProfile

       2、Axis2 支持 WS-Addressing、WS-RM、WS-Security和WS-I BasicProfile,WS-Policy将在新版本里得到支持

       3、Apache CXF 是根据Spring哲学来进行编写的,即可以无缝地与Spring进行整合

       4、Axis2 不是

       5、Axis2 支持更多的 data bindings,包括 XMLBeans、JiBX、JaxMe 和 JaxBRI,以及它原生的 data binding(ADB)。

       6、Apache CXF 目前仅支持 JAXB 和 Aegis,并且默认是 JAXB 2.0,与 XFire 默认是支持 Aegis 不同,XMLBeans、JiBX 和 Castor 将在 CXF 2.1 版本中得到支持,目前版本是 2.0.2

       7、Axis2 支持多种语言,它有 C/C++ 版本。

       8、Apache CXF 提供方便的Spring整合方法,可以通过注解、Spring标签式配置来暴露Web Services和消费Web Services

       如何抉择:

       1、如果应用程序需要多语言的支持,Axis2 应当是首选了;

       2、如果应用程序是遵循 Spring 哲学路线的话,Apache CXF 是一种更好的选择,特别对嵌入式的 Web Services 来说;

       3、如果应用程序没有新的特性需要的话,就仍是用原来项目所用的框架,比如 Axis1,XFire,Celtrix 或 BEA 等等厂家自己的 Web Services 实现,就别劳民伤财了。

       Axis和很多开源包使用的xml解析器都冲突,每次用都遇到问题,特别是再websphere下部署webservice就是恶梦. 有时间看看 CXF!

       是的,axis和jfreechart就有冲突.

       CXF应该是Apache的孵化项目吧。

       这里补充两句

       CXF通过了JAXWS2.0的TCK,目前正在进行JAXWS2.1的开发工作。

       CXF的编程模型比AIXS2简单,而且在Stand alone的方式下执行效率比AXIS2要高很多。

       如果你要用JAVA开发Web Services,那用JAXWS API开发可以保证你的代码在大多数Web Services Framework上正常运行。还有就是如果你还是在使用RPC/Encoding的方式,AXIS 1.x 是你唯一的选择了。 因为XFire , CXF 以及AXIS2 都不支持RPC/Encoding的编码方式,要说原因吗?那主要是在JAXWS 规范中已经把RPC/Encoding的方式抛弃掉了,因为这种编码方式的互操作性太差了。

       首先先搞懂JaSE的部分,Swing和swt部分就可以少看或不看,因为现在用的比较少。重点是看懂Ja中的面向对象、集合框架、JDBC、异常、IO、线程和网络编程。JaSE搞定后再学习Servlet、JSP,然后才是经典的Struts2、Hibernate和Spring,学习框架时重点理解框架的运行原理,甚至可以尝试自己写个轻量级的框架。理解运行原理的最好方法就是阅读源代码,还是要感谢Ja中的开源项目。这期间还要多找各种大小的项目去完成,不一定要大,但是要精致,功能要完整,这样可以练习所学知识,并且可以在做项目中发现自己的知识体系中不足的地方。关于看,我不推荐,很多同学一天到晚就知道看,殊不知,编程真理在于“练习,练习,不停练习”!

推荐看看这个学习路线,规划的很棒:

       再补充下:当学习Ja的期间,会碰到各种各样的异常,请积累这些异常信息,以及如何出现的异常和如何处理的,因为ja中常见的异常就那么几种,积累的多了,处理问题的能力就提高,这样水平会提高的很快!

       SpringMVC 这几年的占有率迅速的提高,可能之后会取代 Struts2,但是无论怎么变化,这些还都是 MVC 模式,理解了这个模式,上手任何的?MVC框架都应该很快。

       企业需要的变化还体现在大数据方面,因为 Hadoop 的流行,Ja 的应用场景又多了一个。所以,不喜欢 web 的可以考虑学习大数据方面的知识。

       另一个流行的场景自然就是 Android,学习 Android 依然需要你有 JaSE 的底子+HTTP 协议的理解,再配合上 Linux 的知识就可以开始了。

       再说下找项目的问题,初学者可能会碰到不知道做什么的问题,其实最开始大家都是从模仿开始的,例如你学会了 jsp+Servlet,那就可以模仿一个 v2ex 这样的论坛出来。学会了 SpringMVC,那就试着将论坛的代码重构,提供restful接口供客户端访问(Android、IOS 、web 等)。论坛做的没难度了,那就模仿一个团购网站,依然是不一定要做全部的功能,但是做出的功能要稳定,要精致。或者一个微信公众平台的开发都是不错的项目。

       初学者看源代码有的人推荐看 Struts2、spring 的,但是我相信10个初学者9个看不懂,那就从简单的开始,例如 Apache 的 Commons 库,例如 lang、dbutils、io 等,这些都是非常不错的代码,类的数量不多而且质量也不错,这些看懂之后,你的基础水平增长的不是一点点。

       再次提醒初学者,学习编程没有你想的那么简单,必须要多练习,多思考,最主要的是你对这个有兴趣。现在不少网站和媒体都宣传1个月学会前端、3个月入职 BAT 的口号,那也就是口号而已,别太认真。这条路没有捷径,写你的代码就是了!

       非常高兴能与大家分享这些有关“cxf spring 整合”的信息。在今天的讨论中,我希望能帮助大家更全面地了解这个主题。感谢大家的参与和聆听,希望这些信息能对大家有所帮助。