| ページ一覧 | ブログ | twitter |  書式 | 書式(表) |

MyMemoWiki

Apache CXF JAX-RS

提供: MyMemoWiki
2020年2月16日 (日) 04:22時点におけるPiroto (トーク | 投稿記録)による版
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
ナビゲーションに移動 検索に移動

Apache CXF JAX-RS

手順のまとめ

Memo

Maven dependencies

  1. <dependency>
  2. <groupId>org.apache.cxf</groupId>
  3. <artifactId>cxf-rt-frontend-jaxrs</artifactId>
  4. <version>2.4.1</version>
  5. </dependency>

Web.xml

Spring ContextLoaderListener

  1. <?xml version="1.0" encoding="ISO-8859-1"?>
  2.  
  3. <!DOCTYPE web-app
  4. PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
  5. "http://java.sun.com/dtd/web-app_2_3.dtd">
  6. <web-app>
  7. <context-param>
  8. <param-name>contextConfigLocation</param-name>
  9. <param-value>WEB-INF/beans.xml</param-value>
  10. </context-param>
  11.  
  12. <listener>
  13. <listener-class>
  14. org.springframework.web.context.ContextLoaderListener
  15. </listener-class>
  16. </listener>
  17.  
  18. <servlet>
  19. <servlet-name>CXFServlet</servlet-name>
  20. <display-name>CXF Servlet</display-name>
  21. <servlet-class>
  22. org.apache.cxf.transport.servlet.CXFServlet
  23. </servlet-class>
  24. <load-on-startup>1</load-on-startup>
  25. </servlet>
  26.  
  27. <servlet-mapping>
  28. <servlet-name>CXFServlet</servlet-name>
  29. <url-pattern>/*</url-pattern>
  30. </servlet-mapping>
  31. </web-app>
beans.xml
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <beans xmlns="http://www.springframework.org/schema/beans"
  3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4. xmlns:jaxrs="http://cxf.apache.org/jaxrs"
  5. xsi:schemaLocation="
  6. http://www.springframework.org/schema/beans
  7. http://www.springframework.org/schema/beans/spring-beans.xsd
  8. http://cxf.apache.org/jaxrs
  9. http://cxf.apache.org/schemas/jaxrs.xsd">
  10.  
  11. <!-- do not use import statements if CXFServlet init parameters link to this beans.xml -->
  12.  
  13. <import resource="classpath:META-INF/cxf/cxf.xml" />
  14. <import resource="classpath:META-INF/cxf/cxf-servlet.xml" />
  15.  
  16. <jaxrs:server id="customerService" address="/service1">
  17. <jaxrs:serviceBeans>
  18. <ref bean="customerBean" />
  19. </jaxrs:serviceBeans>
  20. </jaxrs:server>
  21.  
  22. <bean id="customerBean" class="demo.jaxrs.server.CustomerService" />
  23. </beans>

CXFServlet init parameters

  1. <?xml version="1.0" encoding="ISO-8859-1"?>
  2.  
  3. <!DOCTYPE web-app
  4. PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
  5. "http://java.sun.com/dtd/web-app_2_3.dtd">
  6. <web-app>
  7. <servlet>
  8. <servlet-name>CXFServlet1</servlet-name>
  9. <display-name>CXF Servlet1</display-name>
  10. <servlet-class>
  11. org.apache.cxf.transport.servlet.CXFServlet
  12. </servlet-class>
  13. <init-param>
  14. <param-name>config-location</param-name>
  15. <param-value>/WEB-INF/beans1.xml</param-value>
  16. </init-param>
  17. <load-on-startup>1</load-on-startup>
  18. </servlet>
  19.  
  20. <servlet>
  21. <servlet-name>CXFServlet2</servlet-name>
  22. <display-name>CXF Servlet2</display-name>
  23. <servlet-class>
  24. org.apache.cxf.transport.servlet.CXFServlet
  25. </servlet-class>
  26. <init-param>
  27. <param-name>config-location</param-name>
  28. <param-value>/WEB-INF/beans2.xml</param-value>
  29. </init-param>
  30. <load-on-startup>1</load-on-startup>
  31. </servlet>
  32.  
  33.  
  34. <servlet-mapping>
  35. <servlet-name>CXFServlet1</servlet-name>
  36. <url-pattern>/1/*</url-pattern>
  37. </servlet-mapping>
  38.  
  39. <servlet-mapping>
  40. <servlet-name>CXFServlet2</servlet-name>
  41. <url-pattern>/2/*</url-pattern>
  42. </servlet-mapping>
  43. </web-app>

DataBinding