Java 未调用域对象上的hibernate setter

Java 未调用域对象上的hibernate setter,java,mysql,eclipse,hibernate,Java,Mysql,Eclipse,Hibernate,我试图发布这样的请求: <event><name>test</name><description>event description</description></event> 我不明白为什么即使描述有效,事件名称的setter也不会被调用。下面是我如何调用我的方法 资源类post方法: ... //add event a method in my service class //getEventName is null,

我试图发布这样的请求:

<event><name>test</name><description>event description</description></event>
我不明白为什么即使描述有效,事件名称的setter也不会被调用。下面是我如何调用我的方法

资源类post方法:

...
//add event a method in my service class
//getEventName is null, getDescription gets description
myservice.addEvent(event.getEventName(),event.getDescription());
...
域类:

@Entity
@Table( name = "events" )
@XmlRootElement(name = "event")
public class Event {
    @XmlAttribute
    private Long id;
    private String eventName;
    private String description;

    public Event() {
        // this form used by Hibernate
    }

    public Event(String eventName, String description) {
        this.description = description;
        this.eventName = eventName;
    }

    @Id
    @GeneratedValue(generator="increment")
    @GenericGenerator(name="increment", strategy = "increment")
    public Long getId() {
        return id;
    }

    private void setId(Long id) {
        System.out.println("id " + id); //prints id correctly
        this.id = id;
    }

    @Column(name="name")
    public String getEventName() {
        return eventName;
    }

    public void setEventName(String eventName) {
        System.out.println("here event" + eventName); //prints nothing
        this.eventName = eventName;
    }

    @Column(name="description")
    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        System.out.println("here desc " + description); //prints correctly
        this.description = description;
    }
}
控制台中的输出:

here desc event description
id 3

是什么导致我的setEventName被忽略?控制台中未显示任何错误

您的属性名为
eventName
。XML使用名为
name
的元素。那不匹配。而且您没有自定义XML元素名称而不是使用
eventName
的JAXB注释。您的属性名为
eventName
。XML使用名为
name
的元素。那不匹配。而且您没有定制XML元素名称而不是使用
eventName
的JAXB注释。
here desc event description
id 3