Java 如何返回400状态码,但返回int

Java 如何返回400状态码,但返回int,java,web-services,http-status-code-400,Java,Web Services,Http Status Code 400,我希望这样做,而不是在java方法中出现空指针异常 返回新的响应属性(HttpStatus.BAD_请求) 但是我的方法返回一个int而不是字符串。 我想做的主要事情是返回400状态码。 我能做什么 我尝试了抛出新的IllegalArgumentException(arg+“不是有效参数;应为正值”) 但这会返回一个500状态码,并显示一条好消息。 如果有帮助的话,我会在web服务上这样做 我还尝试了返回新的ResponseEntity(HttpStatus.BAD_请求),但这似乎也不起作用。

我希望这样做,而不是在java方法中出现空指针异常
返回新的响应属性(HttpStatus.BAD_请求)
但是我的方法返回一个int而不是字符串。
我想做的主要事情是返回400状态码。
我能做什么

我尝试了
抛出新的IllegalArgumentException(arg+“不是有效参数;应为正值”)
但这会返回一个500状态码,并显示一条好消息。
如果有帮助的话,我会在web服务上这样做


我还尝试了
返回新的ResponseEntity(HttpStatus.BAD_请求),但这似乎也不起作用。

您使用什么Web服务技术?在Jersey,我通过从WebApplicationException派生我自己的异常来实现这一点,并在构造函数中传递状态代码。在web方法中,您只需抛出此自定义异常。我使用的是Jave EE,Spring MVC?重复问题我猜:他返回的是字符串,但我尝试了整数,不起作用:/您必须返回ResponseEntity而不是int。您必须查看接受的答案。