try {
edmEntityType = resultsView.getTargetEntitySet().getEntityType();
List<Map<String, Object>> edmEntityList = new ArrayList<Map<String, Object>>();
Map<String, Object> edmPropertyValueMap = null;
JPAEntityParser jpaResultParser = new JPAEntityParser();
final List<SelectItem> selectedItems = resultsView.getSelect();
if (selectedItems != null && selectedItems.size() > 0) {
for (Object jpaEntity : jpaEntities) {
edmPropertyValueMap =
jpaResultParser.parse2EdmPropertyValueMap(jpaEntity, buildSelectItemList(selectedItems, edmEntityType));
edmEntityList.add(edmPropertyValueMap);
}
} else {
for (Object jpaEntity : jpaEntities) {
edmPropertyValueMap = jpaResultParser.parse2EdmPropertyValueMap(jpaEntity, edmEntityType);
edmEntityList.add(edmPropertyValueMap);
}
}
expandList = resultsView.getExpand();
if (expandList != null && expandList.size() != 0) {
int count = 0;
for (Object jpaEntity : jpaEntities) {
Map<String, Object> relationShipMap = edmEntityList.get(count);
HashMap<String, Object> navigationMap =
jpaResultParser.parse2EdmNavigationValueMap(jpaEntity, constructListofNavProperty(expandList));
relationShipMap.putAll(navigationMap);
count++;
}
}