aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorKhurshid Fayzullaev <khurshidfayzullaev@yahoo.com>2014-04-15 17:48:33 -0400
committerKhurshid Fayzullaev <khurshidfayzullaev@yahoo.com>2014-04-15 17:48:33 -0400
commitc5c60d7262e774eeb3314d5af5a432b26c8210cf (patch)
tree37cca4ace09d3056c9b4a8a4dfbebbd084f07f6c /src
parent6cd8c5548b0e6934e8b9b72a8a703f9541dd8c99 (diff)
downloadtrackermap-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.java6
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;