قم بإرجاع خطأ HTTP من واجهة RESTeasy
-
13-12-2019 - |
سؤال
هل من الممكن إرجاع خطأ HTTP من واجهة RESTeasy؟أستخدم حاليًا مرشحات الويب المتسلسلة لهذا ولكن أريد معرفة ما إذا كان ذلك ممكنًا مباشرة من الواجهة...
مثال كود سودو:
@Path("/foo")
public class FooBar {
@GET
@Path("/bar")
@Produces("application/json")
public Object testMethod(@HeaderParam("var_1") @DefaultValue("") String var1,
@HeaderParam("var_2") @DefaultValue("") String var2 {
if (var1.equals(var2)) {
return "All Good";
} else {
return HTTP error 403;
}
}
}
المحلول
وجدت الحل وانها بسيطة للغاية:
giveacodicetagpre.حتى:
giveacodicetagpre.نصائح أخرى
يمكنك أيضًا طرح استثناءات Java ضمن طريقتك ثم تقديم javax.ws.rs.ext.ExceptionMapper
لتعيين ذلك لخطأ المتشعب.تحتوي المدونة التالية على المزيد من التفاصيل، خاصة الخطوة رقم 2:
https://www.javacodegeeks.com/2012/06/resteasy-tutorial-part-3-exception.html
إرجاع javax.ws.rs.core.Response
لتعيين رمز الاستجابة.
سيوفر لك StackTrace المرتبطة باستثناء.
لا تنتمي إلى StackOverflow