加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

利用resteasy框架构建rest webservice----第四波:resteasy与spr

发布时间:2020-12-16 23:27:06 所属栏目:安全 来源:网络整理
导读:思路:这节我们把resteasy和spring结合了(非spring mvc),我的理解就是资源都交给spring来管理了,我们需要的资源需要到spring容器之中去获取 问题汇总:一直出现org.jboss.resteasy.plugins.spring.SpringContextLoaderListener这个类找不到,而实际上本地仓

思路:这节我们把resteasy和spring结合了(非spring mvc),我的理解就是资源都交给spring来管理了,我们需要的资源需要到spring容器之中去获取



问题汇总:一直出现org.jboss.resteasy.plugins.spring.SpringContextLoaderListener这个类找不到,而实际上本地仓库是已经有了,经过检查eclipse映射的发布项目

发现没有resteasy-spring这个JAR包拿过去

1.? <context-param>
?? ???? <param-name>resteasy.scan.resources</param-name>???? ?
?? ???? <param-value>true</param-value>
??? </context-param> -->


这个东西可能不能写,写了发现有问题,原因不详


2.如果使用m2eclipse的话,可能必须在m2eclipse中执行eclipse命令


3.不得已的话添加MAVEN依赖试试








原本以为根据文档集成resteasy与spring很简单,但是却还是花费的一定时间,避免大家走弯路----现在网上有的相关的集成都只是,spring加入进项目,木有与resteasy真正集成

老规矩,先上MAVEN的配置文件中依赖包:

[html] view plain copy
  1. ?<dependencies>??
  2. ???<!--?core?library?-->??
  3. ???<dependency>??
  4. ??????<groupId>org.jboss.resteasy</groupId>??
  5. ??????<artifactId>resteasy-jaxrs</artifactId>??
  6. ??????<version>2.2.1.GA</version>??
  7. ???</dependency>??
  8. ??
  9. ???<!--?optional?modules?-->??
  10. ?????<!--?Spring?integration?-->??
  11. ???<dependency>??
  12. ??????<groupId>org.jboss.resteasy</groupId>??
  13. ??????<artifactId>resteasy-spring</artifactId>??
  14. ??????<version>2.2.1.GA</version>??
  15. ???</dependency>??
  16. ??????
  17. ???<!--?JAXB?support?-->??
  18. ???<dependency>??
  19. ??????<groupId>org.jboss.resteasy</groupId>??
  20. ??????<artifactId>resteasy-jaxb-provider</artifactId>??
  21. ??????<version>2.2.1.GA</version>??
  22. ???</dependency>??
  23. ??????
  24. ???<!--?spring?-->??
  25. ????????????<dependency>??
  26. ????????????????<groupId>org.springframework</groupId>??
  27. ????????????????<artifactId>spring</artifactId>??
  28. ????????????????????????????????<version>2.5.6.SEC03</version>??
  29. ???????????????????????</dependency>??
  30. </dependencies>??

注意上图中得resteasy-spring模块依赖,和spring依赖

resteasy-spring直接配置似乎不能自动下载,如果不行可以自己去官网下载然后安装到私服仓库

还有spring的依赖必须是要有的,resteasy-spring只是提供集成代码

2.关键的web.xml中得配置

[html] view plain copy
  1. <!DOCTYPE?web-app?PUBLIC??
  2. ?"-//Sun?Microsystems,?Inc.//DTD?Web?Application?2.3//EN"??
  3. ?"http://java.sun.com/dtd/web-app_2_3.dtd"?>??
  4. ??
  5. <web-app>??
  6. ??<display-name>Archetype?Created?Web?Application</display-name>??
  7. ??<context-param>??
  8. ????????<param-name>contextConfigLocation</param-name>??
  9. ????????<param-value>classpath*:applicationContext*.xml</param-value>??
  10. ????</context-param>??
  11. ??<!--??
  12. ??????
  13. ????<context-param>??????
  14. ??????
  15. ????????<param-name>resteasy.scan.resources</param-name>??????
  16. ????????<param-value>true</param-value>??
  17. ????</context-param>??????
  18. ????-->??
  19. ??<listener>??
  20. ??????<listener-class>org.jboss.resteasy.plugins.server.servlet.ResteasyBootstrap</listener-class>??
  21. ???</listener>??
  22. ??
  23. <listener>??
  24. ????<listener-class>org.jboss.resteasy.plugins.spring.SpringContextLoaderListener</listener-class>??
  25. ??</listener>??
  26. ???<servlet>??
  27. ??????<servlet-name>Resteasy</servlet-name>??
  28. ??????<servlet-class>org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher</servlet-class>??
  29. ???</servlet>??
  30. ??
  31. ???<servlet-mapping>??
  32. ??????<servlet-name>Resteasy</servlet-name>??
  33. ??????<url-pattern>/*</url-pattern>??
  34. ???</servlet-mapping>??
  35. ????
  36. </web-app>??

相比原来的配置文件多了
[html] view plain copy
  1. <listener-class>org.jboss.resteasy.plugins.spring.SpringContextLoaderListener</listener-class>??

[html] view plain copy
  1. <context-param>??
  2. ????????<param-name>contextConfigLocation</param-name>??
  3. ????????<param-value>classpath*:applicationContext*.xml</param-value>??
  4. ????</context-param>??

3.application.xml的配置

[html] view plain copy
  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. xsi:schemaLocation="http://www.springframework.org/schema/beans??
  5. http://www.springframework.org/schema/beans/spring-beans-3.0.xsd?">???
  6. ????<!--?service?point?-->??
  7. ????<bean?id="testServicePoint"?class="com.jd.interfacce.service.point.TestServicePoint">??
  8. ????????<property?name="manager"?ref="manager"?/>??
  9. ????</bean>??
  10. ????<!--?MANAGER?-->??
  11. ????<bean?id="manager"?class="com.jd.interfacce.manager.impl.ManagerImpl"/>??
  12. </beans>??

其中
[html] view plain copy
  1. testServicePoint??

是我们的资源resouce也就是发布接口的类

4.资源类

[java] view plain copy
  1. package?com.jd.interfacce.service.point;??
  2. ??
  3. import?javax.ws.rs.GET;??
  4. import?javax.ws.rs.Path;??
  5. import?javax.ws.rs.PathParam;??
  6. ??
  7. import?com.jd.interfacce.manager.Manager;??
  8. /**?
  9. ?*?service?point?endpoint?
  10. ?*?@author??
  11. ?*?
  12. ?*/??
  13. @Path(value?=?"/")??
  14. public?class?TestServicePoint?{??
  15. ????Manager?manager;??
  16. ??????
  17. ????@GET??
  18. ????@Path(value?=?"/echo/{message}")??
  19. ????public?String?getMessage(@PathParam(value?=?"message")?String?message)??
  20. ????{??
  21. //??????return?message;??
  22. ????????return?manager.getMessage(message);??
  23. ????}??
  24. ??????
  25. ????public?Manager?getManager()?{??
  26. ????????return?manager;??
  27. ????}??
  28. ????public?void?setManager(Manager?manager)?{??
  29. ????????this.manager?=?manager;??
  30. ????}??
  31. }??

5.manager类
[java] view plain copy
  1. package?com.jd.interfacce.manager.impl;??
  2. ??
  3. import?com.jd.interfacce.manager.Manager;??
  4. ??
  5. public?class?ManagerImpl?implements?Manager{??
  6. ????@Override??
  7. ????public?String?getMessage(String?message)??
  8. ????{??
  9. ????????return?message;??
  10. ????}??
  11. }?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读