问题原因:在使用jserey搭建rest服务时出现的问题,提示信息:本身系统需要加载的是JAXB2.1,但实际加载的是2.0。
解决:查看了类路径,发现使用的就是jaxb2.1的jar包,因此需要替换掉目前加载的老版本。
步骤:
1.在java类中加入:System.out.println(System.getProperty("java.endorsed.dirs"));
2.在对应目录下加入下面两个jar。
3.重新启动项目,解决问题。
jaxb-api-2.1.jar,jaxb-impl-2.1.13.jar
PS. 还有就是客户端网页请求参数为汉字时的乱码,解决方法为:修改tomcat conf 目录下 server.xml 中下面部分:
~~~~~~~~~~~~~~~~~~~~~~
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
~~~~~~~~~~~~~~~~~~~~~~~
增加 :URIEncoding="UTF-8"
修改为:
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8"/>