У нас есть приложение, которое мы разрабатываем, и мы рассматриваем возможность поддержки двух разных реализаций JPA.
На данный момент мы используем openjpa и имеем довольно хорошо протестированный код.
Я поменял местами toplink, запустил тесты и обнаружил кучу сбоев.
Вы могли бы подумать, что, поскольку JPA является стандартом, не должно быть никаких отличий!
Обоснование поддержки двух реализаций JPA заключается в том, что мы можем работать на нескольких серверах приложений.
Итак, во-первых, правда ли, что между реализацией и сервером существует взаимно-однозначное сопоставление. например, я могу использовать toplink на WAS или openjpa на Glassfish?
Второй вопрос, прежде чем я продолжу исследовать различные сбои, заключается в том, является ли спецификация JPA настолько широкой, чтобы сделать поддержку двух реализаций непрактичной? Стоит ли пытаться заставить код работать с обоими?