import javax.persistence.column, javax.persistence.entity, javax.persistence.Id - and so on - cannot be resolved

50,405

This fixed my issue:

    <dependency>
        <groupId>org.hibernate.javax.persistence</groupId>
        <artifactId>hibernate-jpa-2.0-api</artifactId>
        <version>1.0.1.Final</version>
    </dependency>

Not exactly sure why I need it whereas it is not mentioned in the tutorial at all.

Share:
50,405
Adrien Be
Author by

Adrien Be

Think twice.

Updated on September 14, 2020

Comments

  • Adrien Be
    Adrien Be over 3 years

    I am trying to follow this tutorial. Instead of starting by using the downloadable project I thought I'd start from a simple "spring MVC - Maven - eclipse" project I did before. This project was running fine.

    So, as indicated in that tutorial, I started creating the packages. Then, I created my first class called Contact.java that contains various annotations. See the class below.

    package sphbmveclp.contact.form;
    
    import javax.persistence.Column;
    import javax.persistence.Entity;
    import javax.persistence.GeneratedValue;
    import javax.persistence.Id;
    import javax.persistence.Table;
    
    @Entity
    @Table(name="CONTACTS")
    public class Contact {
    
        @Id
        @Column(name="ID")
        @GeneratedValue
        private Integer id;
    
        @Column(name="FIRSTNAME")
        private String firstname;
    
        @Column(name="LASTNAME")
        private String lastname;
    
        @Column(name="EMAIL")
        private String email;
    
        @Column(name="TELEPHONE")
        private String telephone;
    
        public String getEmail() {
            return email;
        }
        public String getTelephone() {
            return telephone;
        }
        public void setEmail(String email) {
            this.email = email;
        }
        public void setTelephone(String telephone) {
            this.telephone = telephone;
        }
        public String getFirstname() {
            return firstname;
        }
        public String getLastname() {
            return lastname;
        }
        public void setFirstname(String firstname) {
            this.firstname = firstname;
        }
        public void setLastname(String lastname) {
            this.lastname = lastname;
        }
        public Integer getId() {
            return id;
        }
        public void setId(Integer id) {
            this.id = id;
        }
    }
    

    I added the following dependency thinking it'd do the job as these annotations are "standard JPA annotations"

    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>servlet-api</artifactId>
        <version>2.5</version>
    </dependency>
    

    However, eclipse says

    The import javax.persistence.Column cannot be resolved" for the first import.
    The import javax.persistence.Entity cannot be resolved" for the second import.
    

    and so on.

    Here is the list of dependencies defined in my pom.xml:

      <properties>
            <org.springframework.version>3.0.5.RELEASE</org.springframework.version>
            <javax.servlet.jstl.version>1.2</javax.servlet.jstl.version>
        </properties>
    
      <dependencies>
            <dependency>
                <groupId>javax.servlet</groupId>
                <artifactId>servlet-api</artifactId>
                <version>2.5</version>
            </dependency>
    
           <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>spring-context</artifactId>
                <version>${org.springframework.version}</version>
           </dependency>
            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>spring-webmvc</artifactId>
                <version>${org.springframework.version}</version>
            </dependency>
            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>spring-web</artifactId>
                <version>${org.springframework.version}</version>
            </dependency>
            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>spring-test</artifactId>
                <version>${org.springframework.version}</version>
                <scope>test</scope>
            </dependency>
    
            <dependency>
                <groupId>javax.servlet</groupId>
                <artifactId>jstl</artifactId>
                <version>${javax.servlet.jstl.version}</version>
            </dependency>
    
           <dependency>
                <groupId>log4j</groupId>
                <artifactId>log4j</artifactId>
                <version>1.2.16</version>
            </dependency>
    
           <dependency>
             <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.8.1</version>
            <scope>test</scope>
           </dependency>
      </dependencies>