javajackson忽略了重要的属性
我有两个实体类,praum和praumgruppe。 这些类是hibernate和JavaJackson映射器 我在mvc中使用spring/jersey进行开发 在类praum中使用类praumgruppe。类praumgruppe还返回praum对象的列表 来自类praumgruppe的代码javajackson忽略了重要的属性,java,json,jackson,ignore,Java,Json,Jackson,Ignore,我有两个实体类,praum和praumgruppe。 这些类是hibernate和JavaJackson映射器 我在mvc中使用spring/jersey进行开发 在类praum中使用类praumgruppe。类praumgruppe还返回praum对象的列表 来自类praumgruppe的代码 package de.decon.flaeche.model; import java.util.ArrayList; import java.util.List; import javax.per
package de.decon.flaeche.model;
import java.util.ArrayList;
import java.util.List;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Inheritance;
import javax.persistence.InheritanceType;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import org.codehaus.jackson.annotate.JsonAutoDetect;
import org.codehaus.jackson.annotate.JsonBackReference;
import org.codehaus.jackson.annotate.JsonIgnoreProperties;
import org.codehaus.jackson.annotate.JsonManagedReference;
import org.codehaus.jackson.annotate.JsonProperty;
import org.hibernate.annotations.Cascade;
import org.hibernate.annotations.LazyCollection;
import org.hibernate.annotations.LazyCollectionOption;
import de.decon.catalogs.model.DeconKatEintragModel;
import de.decon.catalogs.model.KatKostenstelleModel;
import de.decon.flaeche.model.interfaces.PraumgruppeModelInterface;
@Entity
@Table(name = "p_raumgruppe")
@Inheritance(strategy = InheritanceType.JOINED)
@JsonAutoDetect
@JsonIgnoreProperties(ignoreUnknown = true)
public class PraumgruppeModel implements PraumgruppeModelInterface {
@OneToMany(mappedBy = "praumgruppe", fetch = FetchType.LAZY, cascade = CascadeType.ALL, targetEntity = PraumModel.class)
@LazyCollection(LazyCollectionOption.EXTRA)
@Cascade({org.hibernate.annotations.CascadeType.DELETE_ORPHAN})
private List<PraumModel> listPraum = new ArrayList<PraumModel>();
@JsonManagedReference
public List<PraumModel> getListPraum() {
return listPraum;
}
public void setListPraum(List<PraumModel> listPraum) {
this.listPraum = listPraum;
}
}
来自PraumController方法的代码
@Path("/load/{id}")
@GET
@Produces(MediaType.APPLICATION_JSON + ";charset=utf-8")
public Response loadPraum(@PathParam("id") String id) {
Long praumId = Long.parseLong(id);
PraumModelInterface praum = praumService.getObjectById(praumId);
return Response.status(200).entity(praum).build();
}
在响应中,始终缺少属性praumgruppe
{
"name": "test 15.2.3.1.1.3.1",
"parent": {
"name": "test 15.2.3.1.1.3",
"parent": null,
"id": 30088,
"nr": "3",
"notiz": null,
"fertigstellung": null,
"schwachstrom": null,
"nrArchitekt": null,
"bodenFlaeche": 0,
"deckeFlaeche": 0,
"wandFlaeche": 0,
"vollreinigung": null,
"sichtreinigung": null,
"katDin2771": null,
"katDin2772": null,
"katDin2773": null,
"katDin130801": null,
"katDin130802": null,
"katDin130803": null,
"katRaumBoden": null,
"katRaumDecke": null,
"katRaumWand": null,
"katRaumKriteriumBoden": null,
"katRaumKriteriumDecke": null,
"katRaumKriteriumWand": null,
"bgf": 0,
"cadId": null,
"ngf": 0,
"umfang": 0,
"hud": 0,
"hrd": 0,
"sanitaer": null,
"heizung": null,
"lueftung": null,
"elektro": null
},
"id": 30087,
"nr": "1",
"notiz": null,
"fertigstellung": null,
"schwachstrom": null,
"nrArchitekt": null,
"bodenFlaeche": 0,
"deckeFlaeche": 0,
"wandFlaeche": 0,
"vollreinigung": null,
"sichtreinigung": null,
"katDin2771": null,
"katDin2772": null,
"katDin2773": null,
"katDin130801": null,
"katDin130802": null,
"katDin130803": null,
"katRaumBoden": null,
"katRaumDecke": null,
"katRaumWand": null,
"katRaumKriteriumBoden": null,
"katRaumKriteriumDecke": null,
"katRaumKriteriumWand": null,
"bgf": 0,
"cadId": null,
"ngf": 0,
"umfang": 0,
"hud": 0,
"hrd": 0,
"sanitaer": null,
"heizung": null,
"lueftung": null,
"elektro": null
}
有什么问题
非常感谢您的帮助。尝试将jackson注释放在Getter上。您在此处发布了很多代码。也许你可以简化一下?请参阅。代码已降至最低,并与问题相关,
{
"name": "test 15.2.3.1.1.3.1",
"parent": {
"name": "test 15.2.3.1.1.3",
"parent": null,
"id": 30088,
"nr": "3",
"notiz": null,
"fertigstellung": null,
"schwachstrom": null,
"nrArchitekt": null,
"bodenFlaeche": 0,
"deckeFlaeche": 0,
"wandFlaeche": 0,
"vollreinigung": null,
"sichtreinigung": null,
"katDin2771": null,
"katDin2772": null,
"katDin2773": null,
"katDin130801": null,
"katDin130802": null,
"katDin130803": null,
"katRaumBoden": null,
"katRaumDecke": null,
"katRaumWand": null,
"katRaumKriteriumBoden": null,
"katRaumKriteriumDecke": null,
"katRaumKriteriumWand": null,
"bgf": 0,
"cadId": null,
"ngf": 0,
"umfang": 0,
"hud": 0,
"hrd": 0,
"sanitaer": null,
"heizung": null,
"lueftung": null,
"elektro": null
},
"id": 30087,
"nr": "1",
"notiz": null,
"fertigstellung": null,
"schwachstrom": null,
"nrArchitekt": null,
"bodenFlaeche": 0,
"deckeFlaeche": 0,
"wandFlaeche": 0,
"vollreinigung": null,
"sichtreinigung": null,
"katDin2771": null,
"katDin2772": null,
"katDin2773": null,
"katDin130801": null,
"katDin130802": null,
"katDin130803": null,
"katRaumBoden": null,
"katRaumDecke": null,
"katRaumWand": null,
"katRaumKriteriumBoden": null,
"katRaumKriteriumDecke": null,
"katRaumKriteriumWand": null,
"bgf": 0,
"cadId": null,
"ngf": 0,
"umfang": 0,
"hud": 0,
"hrd": 0,
"sanitaer": null,
"heizung": null,
"lueftung": null,
"elektro": null
}