Вызывается: org.hibernate.DuplicateMappingException: дублирование сопоставления запросов - PullRequest
0 голосов
/ 10 октября 2019

Это приложение с начальной загрузкой 2.

Сущность, имеющая 2 именованных запроса, которая вызывает исключение при запуске сервера, например "Caused by: org.hibernate.DuplicateMappingException: Duplicate query mapping EstCredentials.findAppDepartment"

@Entity
@Table(name = EntityConstants.TABLE_EST_CREDENTIALS)
@NamedNativeQueries({

        @NamedNativeQuery(name = "Credentials.findAppDepartment", query = "SELECT (deptmast.deptid) as deptId, deptname as deptName"
                + " FROM deptmast, doctdept" + " WHERE deptmast.deptid = doctdept.deptid ", resultSetMapping = "APP_DEPARTMENT"),
        @NamedNativeQuery(name = "Credentials.findAppClinic", query = "SELECT   A.DOCTDEPTID as doctdeptId, A.DOCTDEPTNAME as doctDeptName, "
                + " FROM DOCTDEPT A, DEPTMAST B" 
                + "  WHERE A.WORKING = 1", resultSetMapping = CommonConstants.APP_CLINIC_RESULT_MAP) })


@SqlResultSetMappings({
        @SqlResultSetMapping(name = "APP_DEPARTMENT", classes = {
                @ConstructorResult(targetClass = InstituteDepartmentDto.class, columns = {
                        @ColumnResult(name = "deptId", type = Long.class),
                        @ColumnResult(name = "deptName", type = String.class) }) }),
        @SqlResultSetMapping(name = CommonConstants.APP_CLINIC_RESULT_MAP, classes = {
                @ConstructorResult(targetClass = InstituteDoctorDepartmentDto.class, columns = {
                        @ColumnResult(name = "docDeptId", type = Long.class),
                        @ColumnResult(name = "doctDeptname", type = String.class) }) })

})

public class Credentials {

    private Long estCode;
    private String dbUserName;
    private String dbPassword;


    public Credentials() {

    }

}

Дайте мне знатьесли нужны какие-либо другие детали.

1 Ответ

1 голос
/ 10 октября 2019

Обычно стоит предположить, что сообщения об ошибках верны.

В этом случае у вас есть дублирующее сопоставление для запроса с именем: "EstCredentials.findAppDepartment". Вы определили это имя в CommonConstants.APP_DEPARTMENT_RESULT_MAP, а затем использовали его дважды для двух разных сопоставлений.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...