我有一个对象,它通过json POST请求获取参数,以便在数据库中创建一个新条目,但我得到以下错误:
{
"email": "user@gmail.com"
}
这是控制器
@PostMapping("/forgot_password")
public ResponseEntity<?> processForgotPassword(@RequestBody HttpServletRequest request, Model model, User user) {
String email = (String) request.getAttribute(user.getEmail());
String token = RandomString.make(30);
try {
userService.updateResetPasswordToken(token, email);
String resetPasswordLink = Utility.getSiteURL(request) + "/reset_password?token=" + token;
sendEmail(email, resetPasswordLink);
model.addAttribute("message", "We have sent a reset password link to your email. Please check.");
} catch (ResourceNotFoundException ex) {
model.addAttribute("error", ex.getMessage());
} catch (UnsupportedEncodingException | MessagingException e) {
model.addAttribute("error", "Error while sending email");
}
return ResponseEntity.ok("Reset link sent Successfully");
}
服务
public class UserService {
@Autowired
private UserRepository userRepository;
public void updateResetPasswordToken(String token, String email) throws ResourceNotFoundException {
User user = userRepository.findByEmail(email);
if (user != null) {
user.setResetPasswordToken(token);
userRepository.save(user);
} else {
throw new ResourceNotFoundException("Could not find any user with the email " + email);
}
}
下面是一个示例,HttpServletRequest
注入了不需要的@RequestBody
,因此只需删除该注释即可。
@PostMapping("/forgot_password")
public ResponseEntity<?> processForgotPassword(HttpServletRequest request) {
// do something
{
@requestbody
表示从HTTP请求的主体构建一个对象,但HttpServletRequest
是整个HTTP请求。是不匹配导致了错误。
这是对象: 这是控制器方法:
我有一个自定义dto类: 和一个使用Web Api(4.5. net框架)的控制器 客户端只有4.0.net框架,因此我将无法使用PostAsJsonAsync()方法。将对象从客户端传递到服务器的解决方案是什么? 我尝试了如下方法: 然而它给了我一个例外: 难道不能使用牛顿软件库吗?
我已经发布了带有endpoint的JAX-WSWeb服务。在开发过程中发布。是否存在(JAX-RS中)用于在jersey中发布RESTWeb服务的此类实用程序类?我参考了几篇文章,其中大部分都是基于在一些容器中发布web服务,如Jetty、Grizzly等。
问题内容: 就像我们使用__ToString一样,有没有一种方法来定义铸造方法? 问题答案: 无需在php中键入强制类型转换。 编辑: 由于这个话题似乎引起一些混乱,我想我要详细说明一下。 在Java之类的语言中,有两种可能带有类型。编译器有一个关于类型的概念,而运行时还有一个关于类型的想法。编译器的类型与变量相关,而运行时引擎则跟踪值的类型(已将其分配给变量)。变量类型在编译时是已知的,而值类型
资源 ComplexObject类只是一个带有字符串的类。当我点击URL:http://localhost:8080/simple-service-webapp/webapi/myresource/This work时,我得到的是“get it!” 但是当我点击:http://localhost:8080/simple-service-webapp/webapi/myresource/comple
控制器: 当post执行时,我会得到以下错误: servlet[dispatcherServlet]的servlet.service()在路径[]上下文中抛出异常[请求处理失败;嵌套异常是org.springframework.http.converter.httpmessageConversionException:类型定义错误:[simple Type,class de.lukas.broet