gpt4 book ai didi

mysql - 我无法使用 JAX-RS 处理异常

转载 作者:行者123 更新时间:2023-11-29 09:48:20 25 4
gpt4 key购买 nike

这是 NullPointerExceptionMapper 类

package com.sample.Exceptionhandler;

import javax.ws.rs.core.Response;
import javax.ws.rs.core.Response.Status;
import javax.ws.rs.ext.ExceptionMapper;
import javax.ws.rs.ext.Provider;
import response.Message;

@Provider
public class NullPointerExceptionMapper implements ExceptionMapper<NullPointerException> {

public Response toResponse(NullPointerException ex) {

Message message=new Message(500,ex.getMessage(),200);
return Response.status(Status.NOT_FOUND).entity(message)
.build();
}
}

这是消息类

package response;

public class Message {

private int status;
private String message;
private int code;

public Message() {
}

public Message(int status, String message, int code) {
super();
this.status = status;
this.message = message;
this.code = code;
}

public int getCode() {
return code;
}

public void setCode(int code) {
this.code = code;
}

public int getStatus() {
return status;
}

public void setStatus(int status) {
this.status = status;
}

public String getMessage() {
return message;
}

public void setMessage(String message) {
this.message = message;
}
}

这是 Controller 方法

@RequestMapping(value = "/getOrder", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE)
public List<PurchaseOrderHeaderDto> getOrders(){
String exceptionOccured="NULL_POINTER";
if(exceptionOccured.equalsIgnoreCase("NULL_POINTER")){
throw new NullPointerException("Null Pointer Exception");
}
return purchaseImpl.GetPurchaseOrder();
}

我无法处理抛出的异常,我正在使用 JAX-RS 来处理它,但它无法正常工作,欢迎任何建议来帮助我解决这个问题。

最佳答案

您正在将 JAX-RS 与 Spring MVC 混合。您的 Controller 代码是 Spring MVC,您尝试使用 ExceptionMapper 进行异常处理是 JAX-RS。这是两个完全不同且不兼容的框架。对于 Spring MVC,您想要使用 @ControllerAdvice类。

关于mysql - 我无法使用 JAX-RS 处理异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55253334/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com