Я получаю исключение IllegalArgumentException в Hibernate One to One Mapping Project - PullRequest
1 голос
/ 17 июня 2019

Я новичок в hibernate и изучаю отображения hibernate, я создал демонстрационный код отображения hibernate One-One, я все правильно определил в соответствии с моим пониманием, но я получаю "IllegalArgumentException произошла, вызывая getter of", Я правильно определил Mapping в файле hbm, Мои классы POJO прекрасно содержат геттеры и сеттеры, но я не понимаю, что я делаю неправильно. Было бы здорово, если бы кто-то мог ответить на мой вопрос.

Это класс My Pojo, для которого есть переменная int idCompany, из-за этого я получаю сообщение об ошибке, так как "IllegalArgumentException произошел вызов вызывающего метода com.dto.Company.idCompany".


public class Company {

    int idCompany;
    String name;
    String initials;
    String email;
    int contact;
    private Address add;

    public Address getAdd() {
        return this.add;
    }

    public void setAdd(Address add) {
        this.add = add;
    }

    public int getIdCompany() {
        return idCompany;
    }

    public void setIdCompany(int idCompany) {
        this.idCompany = idCompany;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getInitials() {
        return initials;
    }

    public void setInitials(String initials) {
        this.initials = initials;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public int getContact() {
        return contact;
    }

    public void setContact(int contact) {
        this.contact = contact;
    }

}

Вот файл hbm моей компании


<class name="com.dto.Company" table="company">
<id name="idCompany" column="idCompany">
<generator class="assigned">
<param name="property">add</param>
</generator>
</id>
<property name="name" column="name"></property>
<property name="initials" column="initials"></property>
<property name="email" column="email"></property>
<property name="contact" column="contact"></property>
<one-to-one name="add" class="com.dto.Company" cascade="all" ></one-to-one>
</class>

</hibernate-mapping>

Я сохраняю такой объект -

        address.setCountry("India");
        address.setDistrict("Barwani");
        address.setLine1("One Line");
        address.setLine2("Second Line");
        address.setPin(1234);
        address.setState("MP");

        company.setIdCompany(201);
        company.setContact(984545454);
        company.setEmail("ab@mail.com");
        company.setInitials("AB");
        company.setName("Amit");
        company.setAdd(address);

        Transaction transaction = session.beginTransaction();
        session.save(company);
        transaction.commit();
        session.close(); 

Пожалуйста, опишите мне, почему я получаю эту проблему, чтобы я изучил ее и никогда не позволил этой проблеме повториться. Благодарю вас. :)

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