Bson не может найти кодек - PullRequest
       37

Bson не может найти кодек

0 голосов
/ 12 марта 2020

Я использую Quarkus для создания веб-службы, которая принимает входные данные, обрабатывает их и сохраняет некоторые результаты в виде объектов в MongoDB. Тем не менее, я получаю сообщение об ошибке «Bson не может найти код c». Я считаю, что это должно быть связано с тем, как построен мой объект.

Пример атрибутов моего объекта:

public class ResultsResponse{
    //Job id for tracking if using db to store
    private String jobId;
    private Boolean matched;
    private long timeElapsedInMillis;
    private String source1;
    private String source2;
    private Double absoluteTolerance;
    private Integer maxResultsLimit;
    private List<List<String>> missingRows;
    private List<String> headers;
    private List<List<String>> acceptableRows;

Из-за того, что я выполнил поиск в Google, я считаю, что это потому, что Bson не может отобразить List<List<String> в тип данных mongodb. Я также следовал документации quarkus здесь , чтобы создать провайдера нестандартного кода c, но я не совсем понимаю, как именно я могу это сделать.

Благодарим вас за то, что кто-то может предоставить какие-либо материалы, и не стесняйтесь запрашивать дополнительную информацию, если это необходимо. Спасибо!

1 Ответ

0 голосов
/ 15 марта 2020

Я столкнулся с той же проблемой при использовании PanacheMon go. Решением для меня было сделать поля опубликованными c. Для Panache требуются поля c.

И, определяя геттеры / сеттеры, вы гарантируете инкапсуляцию:

"И благодаря нашей перезаписи доступа к полям, когда ваши пользователи читают person.name, они фактически вызывают ваш метод доступа getName (), и аналогично для записи полей и установщика. Это обеспечивает надлежащую инкапсуляцию во время выполнения, поскольку все вызовы полей будут заменены соответствующими вызовами получателя / установщика. "

См. https://quarkus.io/guides/mongodb-panache для получения дополнительной информации

Если вы не используете MongoPanache, вы можете игнорировать меня. или возможно это также исправляет это для нормального пн go.

...