添加订单的接口报错
使用swagger测试,因为方法里要获取请求头中的token然后解析用户id出来,所以使用swagger会出问题
于是使用前端的页面,用浏览器查看,发现请求成功,但是返回数据为空
到后端控制台上查看,发现报Handler dispatch failed
最后知道是jdk版本问题,是由于缺少jaxb-api包导致的。在Java 8以及以前的版本,是默认包含jaxb这个jar包的;我使用的jdk9就不再包含着个包了,如果使用则需要手动引进。
<!--解决Handler dispatch failed;nested exception is java.lang.NoClassDefFoundError: javax/xml/bind/DatatypeConverter-->
<dependency>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
<version>2.3.0</version>
</dependency>
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-impl</artifactId>
<version>2.3.0</version>
</dependency>
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-core</artifactId>
<version>2.3.0</version>
</dependency>
<dependency>
<groupId>javax.activation</groupId>
<artifactId>activation</artifactId>
<version>1.1.1</version>
</dependency>
将上面代码复制到order模块的pom中
解决报错问题。
补充:最后还报了个gmt_create为空的错误,因为数据库中该字段为非空
一、可以选择去掉解决报错,但是会没有时间,二是去order实体类中加上自动创建的注解,因为使用代码生成器它没加有