# HG changeset patch # User Raimund Renkert # Date 1373895414 -7200 # Node ID 7a1bbd96cecde11c928d482ead2228457322c789 # Parent 1963f002e4c051f901a9f7592ecb803174593d07 Get id for LKommentarM manually from database. diff -r 1963f002e4c0 -r 7a1bbd96cecd src/main/java/de/intevation/lada/model/LKommentarMId.java --- a/src/main/java/de/intevation/lada/model/LKommentarMId.java Mon Jul 15 13:22:55 2013 +0200 +++ b/src/main/java/de/intevation/lada/model/LKommentarMId.java Mon Jul 15 15:36:54 2013 +0200 @@ -12,13 +12,13 @@ public class LKommentarMId implements java.io.Serializable { private String probeId; - private short messungsId; + private Integer messungsId; private int KId; public LKommentarMId() { } - public LKommentarMId(String probeId, short messungsId, int KId) { + public LKommentarMId(String probeId, Integer messungsId, int KId) { this.probeId = probeId; this.messungsId = messungsId; this.KId = KId; @@ -34,11 +34,11 @@ } @Column(name = "messungs_id", nullable = false) - public short getMessungsId() { + public Integer getMessungsId() { return this.messungsId; } - public void setMessungsId(short messungsId) { + public void setMessungsId(Integer messungsId) { this.messungsId = messungsId; } diff -r 1963f002e4c0 -r 7a1bbd96cecd src/main/java/de/intevation/lada/rest/LKommentarMService.java --- a/src/main/java/de/intevation/lada/rest/LKommentarMService.java Mon Jul 15 13:22:55 2013 +0200 +++ b/src/main/java/de/intevation/lada/rest/LKommentarMService.java Mon Jul 15 15:36:54 2013 +0200 @@ -1,15 +1,20 @@ package de.intevation.lada.rest; +import java.math.BigInteger; import java.util.ArrayList; +import java.util.List; import javax.enterprise.context.RequestScoped; import javax.inject.Inject; import javax.inject.Named; +import javax.persistence.Query; import javax.ws.rs.Consumes; +import javax.ws.rs.DELETE; import javax.ws.rs.GET; import javax.ws.rs.POST; import javax.ws.rs.PUT; import javax.ws.rs.Path; +import javax.ws.rs.PathParam; import javax.ws.rs.Produces; import javax.ws.rs.core.Context; import javax.ws.rs.core.HttpHeaders; @@ -21,6 +26,7 @@ import de.intevation.lada.data.QueryBuilder; import de.intevation.lada.data.Repository; import de.intevation.lada.model.LKommentarM; +import de.intevation.lada.model.LKommentarMId; /** * This class produces a RESTful service to read, write and update @@ -132,6 +138,15 @@ try { String probeId = kommentar.getProbeId(); if (authentication.hasAccess(headers, probeId)) { + LKommentarMId id = new LKommentarMId(); + Query q = + repository.getEntityManager().createNativeQuery( + "select nextval('kommentar_m_id_seq')"); + BigInteger seqId = (BigInteger)q.getSingleResult(); + id.setKId(seqId.intValue()); + id.setMessungsId(kommentar.getMessungsId()); + id.setProbeId(probeId); + kommentar.setId(id); return repository.create(kommentar); } return new Response(false, 698, new ArrayList());