details: /erp/devel/pi/rev/02f28176ed17
changeset: 13111:02f28176ed17
user: Asier Lostalé <asier.lostale <at> openbravo.com>
date: Wed Jul 06 10:51:48 2011 +0200
summary: fixed bug 17913: Navigation to blank tab
details: /erp/devel/pi/rev/d9a6f9688511
changeset: 13112:d9a6f9688511
user: Asier Lostalé <asier.lostale <at> openbravo.com>
date: Wed Jul 06 11:01:20 2011 +0200
summary: fixed bug 17903: Error when displaying a record created/modified by
a deleted user
diffstat:
modules/org.openbravo.service.json/src/org/openbravo/service/json/DataToJsonConverter.java
| 10 +++++++++-
modules/org.openbravo.service.json/src/org/openbravo/service/json/DefaultJsonDataService.java
| 9 +++++++--
2 files changed, 16 insertions(+), 3 deletions(-)
diffs (50 lines):
diff -r 85f9a3b6d9e7 -r d9a6f9688511
modules/org.openbravo.service.json/src/org/openbravo/service/json/DataToJsonConverter.java
---
a/modules/org.openbravo.service.json/src/org/openbravo/service/json/DataToJsonConverter.java
Tue Jul 05 16:42:36 2011 +0200
+++
b/modules/org.openbravo.service.json/src/org/openbravo/service/json/DataToJsonConverter.java
Wed Jul 06 11:01:20 2011 +0200
@@ -28,6 +28,7 @@
import org.codehaus.jettison.json.JSONException;
import org.codehaus.jettison.json.JSONObject;
+import org.hibernate.ObjectNotFoundException;
import org.openbravo.base.model.Entity;
import org.openbravo.base.model.Property;
import org.openbravo.base.model.domaintype.EncryptedStringDomainType;
@@ -215,7 +216,14 @@
String propertyName, Property referencedProperty, BaseOBObject obObject)
throws JSONException {
// jsonObject.put(propertyName, toJsonObject(obObject,
DataResolvingMode.SHORT));
if (referencedProperty != null) {
- jsonObject.put(propertyName, obObject.get(referencedProperty.getName()));
+ try {
+ jsonObject.put(propertyName,
obObject.get(referencedProperty.getName()));
+ } catch (ObjectNotFoundException e) {
+ // Referenced object does not exist, set UUID
+ jsonObject.put(propertyName, e.getIdentifier());
+ jsonObject.put(propertyName + "." + JsonConstants.IDENTIFIER,
e.getIdentifier());
+ return;
+ }
} else {
jsonObject.put(propertyName, obObject.getId());
}
diff -r 85f9a3b6d9e7 -r d9a6f9688511
modules/org.openbravo.service.json/src/org/openbravo/service/json/DefaultJsonDataService.java
---
a/modules/org.openbravo.service.json/src/org/openbravo/service/json/DefaultJsonDataService.java
Tue Jul 05 16:42:36 2011 +0200
+++
b/modules/org.openbravo.service.json/src/org/openbravo/service/json/DefaultJsonDataService.java
Wed Jul 06 11:01:20 2011 +0200
@@ -241,12 +241,17 @@
}
final String sortBy = parameters.get(JsonConstants.SORTBY_PARAMETER);
+ String orderBy = "";
if (sortBy != null) {
- queryService.setOrderBy(sortBy);
+ orderBy = sortBy;
} else if (parameters.get(JsonConstants.ORDERBY_PARAMETER) != null) {
- queryService.setOrderBy(parameters.get(JsonConstants.ORDERBY_PARAMETER));
+ orderBy = parameters.get(JsonConstants.ORDERBY_PARAMETER);
}
+ // Always append id to the orderby to make a predictable sorting
+ orderBy += (orderBy.isEmpty() ? "" : ",") + "id";
+ queryService.setOrderBy(orderBy);
+
// compute a new startrow if the targetrecordid was passed in
int targetRowNumber = -1;
if (parameters.containsKey(JsonConstants.TARGETRECORDID_PARAMETER)) {
------------------------------------------------------------------------------
All of the data generated in your IT infrastructure is seriously valuable.
Why? It contains a definitive record of application performance, security
threats, fraudulent activity, and more. Splunk takes this data and makes
sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-d2d-c2
_______________________________________________
Openbravo-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openbravo-commits