2012-04-09 1 views
0

Ich habe eine Employee-Tabelle mit Feldern EmpId, EmpName, Dept, DOJ, DoB, Sex, Qualifikation in meiner Datenbank und viele Datensätze.Wie kann man mit Hilfe von JAXB nur ein paar Tabellenspalten von der Datenbank über Hibernate und Marshal holen?

Ich habe Service und Dao Klassen und meine EMP Java-Ressource-Klasse ist als

@Entity 
@Table(name="EMP") 
@XmlRootElement(name = "EmpResource") 
public class Employee{ 

    private String empId; 
    private String empName; 
    private String href; // this field doesn't exist in the database table. 

    @XmlElement 
    public String getEmpId(){ 
     return empId; 
    } 

    @XmlElement 
    public String getEmpName(){ 
     return empId; 
    } 

    @XmlAttribute 
    public String getHref(){ 
     return "http://host/rest/v1/employees/" + empId; 
    } 

} 


Ich arbeite eine REST-basierte URL zu erstellen, in dem die mit alle mit nur EmpID Aufzeichnungen holen url http://host/rest/v1/employees folgt, EmpName und href Felder, aber wenn ich versuche, die Anwendung ich diesen Fehler

javax.xml.bind.JAXBException: class com.vargo.EmpResource nor any of its super class is known to this context.

erhalten laufen

Irgendwelche Hilfe?

Grüße, Kicha

+0

Das folgende Beispiel kann helfen: http://blog.bdoughan.com/2010/08/creating-restful-web-service-part-45.html –

Antwort

0

gut scheint, wie das Problem in dem Abwarten des xml ist, die die Daten enthalten (im nicht, dass Code zu sehen), aber stellen Sie sicher, dass Sie in dem richtigen Weg bereitstellt:

JAXBContext jc = JAXBContext.newInstance("pathWhereYourGeneratedJaxbClassesAre");

hoffe dies hilfreich zu sein.