ฉันกำลังพัฒนาแอป Dropwizard และกำลังเผชิญกับข้อผิดพลาดแปลกๆ ในคำขอ GET หลังจากที่ฉันได้รวม mongojack.
ฉันมีแบบสอบถาม GET แบบง่าย ๆ โดยมี ID เป็นพารามิเตอร์เส้นทาง มันใช้งานได้ก่อนที่ฉันจะรวม mongojack และเพิ่มคำอธิบายประกอบสองรายการให้กับเอนทิตีของฉัน:
public class Bill {
@javax.persistence.Id @org.mongojack.ObjectId
private String id;
@javax.persistence.Id @org.mongojack.ObjectId
public String getId() { return id; }
//...
}
สิ่งที่ทำให้ฉันงงมากที่สุดก็คือคำขอนั้นได้รับการยอมรับแล้วจริงๆ เมื่อฉันแก้ไขข้อบกพร่อง ฉันสามารถเข้าสู่วิธีการได้ เอนทิตีถูกโหลดจาก MongoDB ลงในหน่วยความจำและดูดี ดังนั้นฉันสงสัยว่านี่อาจเป็นปัญหาการทำให้เป็นอนุกรมจริง ๆ แต่ตอนนี้ฉันติดอยู่ มีความคิดอะไรบ้าง?
อัปเดต
ดูเหมือนว่าจะเป็นปัญหา mongojack ที่ทราบแล้ว: https://github.com/devbliss/mongojack/issues/26. หลังจากนั้นฉันต้องการใช้ DTO แบบกำหนดเองโดยไม่มี ObjectIds สำหรับ GET ของฉัน ดังนั้นสิ่งนี้จึงไม่เกี่ยวข้องอีกต่อไป สิ่งที่ฉันยังไม่เข้าใจคือเหตุใด Dropwizard จึงแมปสิ่งนี้กับการตอบกลับ 400 ครั้ง...