lỗi của bạn có thể đúng như những gì nó nói trong ngoại lệ của bạn:ConversionFailed Exception
gây ra bởi ai đó / điều gì đó đang cố gắng chuyển đổi từ ArrayList
tới một LinkedHashMap
; nhưng không có công cụ chuyển đổi phù hợp cho điều đó (ConverterNotFoundException
).
Không thể nói chính xác điều này đang xảy ra ở đâu vì bạn chỉ đăng rất ít mã. tôi không thể tìm thấy Chuỗi "myString" trong mã của bạn, nhưng nó được đề cập trong lỗi.
dữ liệu mùa xuân thường sử dụng bộ chuyển đổi trong quá trình ánh xạ của nó. để có nhiều quyền kiểm soát hơn đối với quá trình ánh xạ, một số người thích triển khai và đăng ký một trình chuyển đổi tùy chỉnh cho các lớp của họ.
bạn có thể đọc về trình chuyển đổi tại đây
và ở đây
có lẽ điều này đã đủ để bạn tự sửa lỗi.
Chỉnh sửa:một nhận xét ngắn về dòng này:
potentialCandidatesObj.setPotentialcandidates((DBObject)JSON.parse(valStr));
bạn đang truyền tới DBObject trước khi gọi bộ thiết lập, bởi vì bộ thiết lập lấy một DBObject. điều này thật tệ, bạn nên tạo một trình thiết lập khác cho JSON và thực hiện truyền ở đó, nếu không bạn sẽ thực hiện thao tác truyền đó ở mọi nơi trong mã của mình; đó không phải là rất KHÔ.
còn có một thứ gọi là DBRefs trong dữ liệu mùa xuân:The mapping framework doesn't have to store child objects embedded within the document. You can also store them separately and use a DBRef to refer to that document. When the object is loaded from MongoDB, those references will be eagerly resolved and you will get back a mapped object that looks the same as if it had been stored embedded within your master document.
bạn có thể thích điều này hơn một DBObject được nhúng.