diff options
author | Khurshid Fayzullaev <khurshidfayzullaev@yahoo.com> | 2014-04-15 17:48:33 -0400 |
---|---|---|
committer | Khurshid Fayzullaev <khurshidfayzullaev@yahoo.com> | 2014-04-15 17:48:33 -0400 |
commit | c5c60d7262e774eeb3314d5af5a432b26c8210cf (patch) | |
tree | 37cca4ace09d3056c9b4a8a4dfbebbd084f07f6c /src | |
parent | 6cd8c5548b0e6934e8b9b72a8a703f9541dd8c99 (diff) | |
download | trackermap-web-c5c60d7262e774eeb3314d5af5a432b26c8210cf.tar.gz trackermap-web-c5c60d7262e774eeb3314d5af5a432b26c8210cf.tar.bz2 trackermap-web-c5c60d7262e774eeb3314d5af5a432b26c8210cf.zip |
Update DataServiceImpl.java
Solves Problem #166 `merge()` erases the *Latest Position* field. That is why, Markers are disappearing. We have to upgrade the Device Details keeping that very field.
Diffstat (limited to 'src')
-rw-r--r-- | src/org/traccar/web/server/model/DataServiceImpl.java | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/org/traccar/web/server/model/DataServiceImpl.java b/src/org/traccar/web/server/model/DataServiceImpl.java index fb8724ae..db10bd5e 100644 --- a/src/org/traccar/web/server/model/DataServiceImpl.java +++ b/src/org/traccar/web/server/model/DataServiceImpl.java @@ -339,9 +339,11 @@ public class DataServiceImpl extends RemoteServiceServlet implements DataService if (results.isEmpty()) { entityManager.getTransaction().begin(); try { - device = entityManager.merge(device); + Device tmp_device = entityManager.find(Device.class, device.getId()); + tmp_device.setName(device.getName()); + tmp_device.setUniqueId(device.getUniqueId()); entityManager.getTransaction().commit(); - return device; + return tmp_device; } catch (RuntimeException e) { entityManager.getTransaction().rollback(); throw e; |