appfuse2 集成 cxf

 

pom.xml配置

先把官方文档
http://cwiki.apache.org/CXF20DOC/building-your-cxf-project-with-maven.html
集成到我们的pom.xml中
运行后发现依赖关系复杂。追查下去,发现还需要添加以下依赖

         <dependency>  
             <groupId>org.slf4j</groupId>  
             <artifactId>slf4j-api</artifactId>  
             <version>1.5.6</version>  
         </dependency>  
         <dependency>  
             <groupId>org.slf4j</groupId>  
             <artifactId>slf4j-log4j12</artifactId>  
             <version>1.5.6</version>  
         </dependency>
         <dependency>  
             <groupId>org.slf4j</groupId>  
             <artifactId>slf4j-jdk14</artifactId>  
             <version>1.5.6</version>  
         </dependency>
        
         <dependency>
            <groupId>org.apache.ws.commons.schema</groupId>
            <artifactId>XmlSchema</artifactId>
            <version>1.4.5</version>
         </dependency>
         <dependency>
            <groupId>cglib</groupId>
            <artifactId>cglib</artifactId>
            <version>2.1_3</version>
            <scope>provided</scope>
         </dependency>
         <dependency>
            <groupId>cglib</groupId>
            <artifactId>cglib-nodep</artifactId>
            <version>2.1_3</version>
         </dependency>

错误是一步一步调试处理的,google了全世界的网页,花费了一个2-3小时,最终总算集成成功!
总结如下:

  1. spring 和hibernate的冲突 集中 表现在 cglib版本的不同
  2. xmlSchema的升级到1.4.5
  3. slf4j 依赖升级

 

web.xml配置

添加以下代码

    <servlet>
        <servlet-name>CXFServlet</servlet-name>
        <display-name>CXF Servlet</display-name>
        <servlet-class>
            org.apache.cxf.transport.servlet.CXFServlet
        </servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>

    <servlet-mapping>
        <servlet-name>CXFServlet</servlet-name>
        <url-pattern>/cxf/*</url-pattern>
    </servlet-mapping>

 

demo测试

使用的是cxf 2.2.1中自带的example (java_first_spring_support)
配置拿到tomcat下测试通过

你可能感兴趣的:(spring,Hibernate,servlet,测试,slf4j,Appfuse)