java - DTO Java Spring java.lang.ClassNotFoundException:javax.xml.bind.DatatypeConverter
问题描述
我正在使用 JWT,我已经添加了登录端点并添加了 DTO
public class UserDto {
private String user;
private String password;
public String getUser() {
return user;
}
public void setUser(String user) {
this.user = user;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
@PostMapping("user")
@ResponseStatus(HttpStatus.CREATED)
@ResponseBody
public User login(@RequestBody UserDto user) {
String token = getJWTToken(user.getUser());
User newuser = new User();
newuser.setUsername(user.getPassword());
newuser.setToken(token);
return newuser;
}
但是当我调用端点时:
2021-06-03 16:46:56.848 错误 94126 --- [nio-8080-exec-4] oaccC[.[.[/].[dispatcherServlet]:Servlet.service() 用于 servlet [dispatcherServlet] path [] 抛出异常 [Handler dispatch failed; 嵌套异常是 java.lang.NoClassDefFoundError: javax/xml/bind/DatatypeConverter] 的根本原因
java.lang.ClassNotFoundException:java.base/jdk.internal.loader.BuiltinClassLoader.loadClass 的 javax.xml.bind.DatatypeConverter(BuiltinClassLoader.java:636) ~[na:na] 在 java.base/jdk.internal.loader .ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:182) ~[na:na] at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:519) ~[na:na] at io.jsonwebtoken.impl .Base64Codec.encode(Base64Codec.java:21) ~[jjwt-0.9.1.jar:0.9.1] at io.jsonwebtoken.impl.Base64UrlCodec.encode(Base64UrlCodec.java:22) ~[jjwt-0.9.1.罐子:0。
解决方案
推荐阅读
- assembly - 从另一个文件调用过程
- javascript - 请求用户 ID [Microsoft.AspNet.Identity] 时返回“null”
- wix - 为 Wix / Windows Installer 安装的文件指定权限时如何包含继承权限?
- immutable.js - 如何使用 immutable.js 设置带有条件的变量
- python-3.x - 处理用于计算 SVD 的大型非稀疏矩阵
- java - AWS Lambda 和 Java 反射 (Guava)
- excel - 如果单元格包含特定缩进,则 VBA 代码移动单元格
- angular - Angular 7 - 解析器 API 和分页器逻辑?
- powershell - 从 2 个变量中导出匹配结果
- excel - 如何使用数字列 VBA 从范围中添加数据验证