details: https://code.openbravo.com/erp/devel/pi/rev/965c58c02c48 changeset: 35467:965c58c02c48 user: Asier Lostalé <asier.lostale <at> openbravo.com> date: Fri Feb 22 10:24:47 2019 +0100 summary: fixed issue 40194: HQL based windows don't support Image reference
When a image reference column was included in a HQL window, ClassCastException was thrown trying to cast SearchDomainType to PrimitiveDomainType. This was caused by an incorrect assumption that all non primitive properties must extend ForeignKeyUIDefinition. Now if a propoerty is primitive is checked by looking its domain type. diffstat: modules/org.openbravo.service.datasource/src/org/openbravo/service/datasource/HQLDataSourceService.java | 5 ++--- 1 files changed, 2 insertions(+), 3 deletions(-) diffs (29 lines): diff -r e654aac2941d -r 965c58c02c48 modules/org.openbravo.service.datasource/src/org/openbravo/service/datasource/HQLDataSourceService.java --- a/modules/org.openbravo.service.datasource/src/org/openbravo/service/datasource/HQLDataSourceService.java Fri Feb 22 09:25:44 2019 +0100 +++ b/modules/org.openbravo.service.datasource/src/org/openbravo/service/datasource/HQLDataSourceService.java Fri Feb 22 10:24:47 2019 +0100 @@ -11,7 +11,7 @@ * under the License. * The Original Code is Openbravo ERP. * The Initial Developer of the Original Code is Openbravo SLU - * All portions are Copyright (C) 2014-2018 Openbravo SLU + * All portions are Copyright (C) 2014-2019 Openbravo SLU * All Rights Reserved. * Contributor(s): ______________________________________. ************************************************************************ @@ -48,7 +48,6 @@ import org.openbravo.client.application.window.ApplicationDictionaryCachedStructures; import org.openbravo.client.kernel.ComponentProvider; import org.openbravo.client.kernel.reference.EnumUIDefinition; -import org.openbravo.client.kernel.reference.ForeignKeyUIDefinition; import org.openbravo.client.kernel.reference.IDUIDefinition; import org.openbravo.client.kernel.reference.NumberUIDefinition; import org.openbravo.client.kernel.reference.UIDefinition; @@ -119,7 +118,7 @@ dsProperty.setId(false); } dsProperty.setBoolean(uiDefinition instanceof YesNoUIDefinition); - dsProperty.setPrimitive(!(uiDefinition instanceof ForeignKeyUIDefinition)); + dsProperty.setPrimitive(uiDefinition.getDomainType() instanceof PrimitiveDomainType); dsProperty.setUIDefinition(uiDefinition); if (dsProperty.isPrimitive()) { dsProperty.setPrimitiveObjectType( _______________________________________________ Openbravo-commits mailing list Openbravo-commits@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbravo-commits