I have a problem with inheritance in my axis2 project. I have two
classes, employee and person. If I call the service getEmployee i get
the following error message.

Does somebody have an idea? It's possible to have inheritance in axis2?

--axisfault--
org.apache.axis2.AxisFault: org.apache.axis2.databinding.ADBException:
Unexpected subelement firstname
--

--person--
import javax.persistence.Column;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Inheritance;
import javax.persistence.InheritanceType;
import javax.persistence.Table;
import javax.persistence.Entity;

@Entity
@Table(name = "\"tbl_Person\"")
@Inheritance(strategy = InheritanceType.JOINED)
public class Person
{
    @Id
    @GeneratedValue
    @Column(name = "fld_perId")
    private Long         personId;

    @Column(name = "fld_perFirstname")
    private String       firstname;

    @Column(name = "fld_perLastname")
    private String       lastname;

    @Column(name = "fld_perEmail")
    private String       mail;

    //@Column(name = "fld_perUserId")
    //private User       userId;        

    public String getFirstname()
    {
        return firstname;
    }
    public void setFirstname(String firstname)
    {
        this.firstname = firstname;
    }
    public String getLastname()
    {
        return lastname;
    }
    public void setLastname(String lastname)
    {
        this.lastname = lastname;
    }
    public String getMail()
    {
        return mail;
    }
    public void setMail(String email)
    {
        this.mail = email;
    }
    public Long getPersonId()
    {
        return personId;
    }
    public void setPersonId(Long personId)
    {
        this.personId = personId;
    }
}

--

--employee--
import java.util.List;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.PrimaryKeyJoinColumn;
import javax.persistence.Table;

import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.AnnotationConfiguration;

@Entity
@Table(name = "\"tbl_Employee\"")
@PrimaryKeyJoinColumn(name = "fld_empId")
public class Employee extends Person
{

    @Column(name = "fld_empDepartment")
    private String department;

    @Column(name = "fld_empJob")
    private String job;

    private static SessionFactory sessionFactory;

    public static Employee[] getEmployee()
    {

        Transaction tx = null;
        sessionFactory = new
AnnotationConfiguration().configure().buildSessionFactory();
        Session session = sessionFactory.getCurrentSession();

        tx = session.beginTransaction();
        Query query = session.createQuery("SELECT emp " +
                                          "FROM Employee emp ");

        List empList =  query.list();   

        Employee[] emp = (Employee[]) empList.toArray(new 
Employee[empList.size()]);
        
        tx.commit();
        sessionFactory.close();

        return emp;
    }

    public String getDepartment()
    {
        return department;
    }

    public void setDepartment(String department)
    {
        this.department = department;
    }

    public String getJob()
    {
        return job;
    }

    public void setJob(String job)
    {
        this.job = job;
    }

}

--

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to