Tôi sử dụng Resteasy kết hợp với Google Guice bằng Resteasy-Guice. Tôi đã tìm cách để xác nhận các cơ quan yêu cầu của mình. Tôi muốn làm ví dụ:Cách thích hợp để xác thực yêu cầu với Resteasy là gì?
public static class MyPojo {
@NotEmpty private String contents;
}
Và sau đó sử dụng trong tài nguyên của tôi
@POST
@ValidateRequest
public void doPost(@Valid MyPojo myPojo) {
// use myPojo only if valid
}
Tôi đã được làm việc với các nhà cung cấp validator-resteasy-ngủ đông-. Nhưng kể từ khi tôi chuyển sang phiên bản mới hơn, điều này đã giới thiệu sự phụ thuộc (không mong muốn) đối với EJB. Xem thêm: RESTEASY-1056. Trong các nhận xét được thông báo rằng bạn nên chuyển sang trình xác thực-11 mới hơn thay thế:
Chuyển sang resteasy-validator-provider-11, thực hiện đặc tả Bean Validation 1.1 mới hơn.
Các docs nói:
Validation được bật theo mặc định (giả sử resteasy-validator-cung cấp-11-.jar có sẵn), mặc dù tham số và xác nhận giá trị trả về có thể được tắt hoặc sửa đổi trong tệp cấu hình validation.xml. Xem tài liệu Hibernate Validator để biết chi tiết.
tuy nhiên tôi không quản lý để có được điều này làm việc với cấu hình của tôi, bởi vì tôi thấy mình trong đó có phụ thuộc như hibernate-validator
, javax.el-api
, javax.el
và hibernate-validator-cdi
và chú thích như ValidateOnExecution
. Tuy nhiên, tôi không tìm thấy bất kỳ yêu cầu nào trong số này được yêu cầu ngay lập tức hoặc không hợp lệ bị từ chối.
Cách ưa thích, trọng lượng nhẹ và hoạt động để xác thực với Resteasy là gì?
Tôi đã gỡ bỏ tất cả phụ thuộc xác nhận và sau đó chèn của bạn với cùng một phiên bản. Tuy nhiên, bây giờ tôi đã gặp vấn đề sau: https://issues.jboss.org/browse/RESTEASY-826 –