Java Code Examples for org.apache.commons.beanutils.PropertyUtils

The following examples show how to use org.apache.commons.beanutils.PropertyUtils. These examples are extracted from open source projects. You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source Project: nubes   Source File: DefaultParameterAdapter.java    License: Apache License 2.0 6 votes vote down vote up
@Override
public Object adaptParams(MultiMap params, Class<?> parameterClass) {
  Object instance;
  try {
    instance = parameterClass.newInstance();
    Field[] fields = parameterClass.getDeclaredFields();
    for (Field field : fields) {
      String requestValue = params.get(field.getName());
      if (requestValue != null) {
        Object value = adaptParam(requestValue, field.getType());
        PropertyUtils.setProperty(instance, field.getName(), value);
      }
    }
  } catch (InstantiationException | IllegalAccessException | NoSuchMethodException | InvocationTargetException e) {
    throw new IllegalArgumentException(e);
  }
  return instance;
}
 
Example 2
Source Project: occurrence   Source File: DwcaContactsUtil.java    License: Apache License 2.0 6 votes vote down vote up
/**
 * Checks the contacts of a dataset and finds the preferred contact that should be used as the main author
 * of a dataset.
 *
 * @return preferred author contact or null
 */
public static Optional<Contact> getContentProviderContact(Dataset dataset) {
  return findFirstAuthor(dataset).map(author-> {
            Contact provider = null;
            try {
              provider = new Contact();
              PropertyUtils.copyProperties(provider, author);
              provider.setKey(null);
              provider.setType(ContactType.CONTENT_PROVIDER);
              provider.setPrimary(false);
            } catch (IllegalAccessException | InvocationTargetException | NoSuchMethodException e) {
              LOG.error("Error setting provider contact", e);
            }
            return provider;
            }
          );

}
 
Example 3
public void copyTo(T aObject) {

		ModelProperties theProperties = aObject.getProperties();

		try {
			for (PropertyDescriptor theDescriptor : PropertyUtils.getPropertyDescriptors(this)) {
				if (theDescriptor.getReadMethod() != null && theDescriptor.getWriteMethod() != null) {
					Object theValue = PropertyUtils.getProperty(this, theDescriptor.getName());
					if (theValue != null) {
						theProperties.setProperty(theDescriptor.getName(), theValue.toString());
					} else {
						theProperties.setProperty(theDescriptor.getName(), null);
					}
				}
			}
		} catch (Exception e) {
			throw new RuntimeException(e);
		}
	}
 
Example 4
Source Project: iaf   Source File: JmsRealm.java    License: Apache License 2.0 6 votes vote down vote up
/**
 * copies matching properties to any other class
 */
public void copyRealm(Object destination) {
	String logPrefixDest=destination.getClass().getName()+" ";
	if (destination instanceof INamedObject) {
		INamedObject namedDestination = (INamedObject) destination;
		logPrefixDest += "["+namedDestination.getName()+"] ";
	}
	try {
		BeanMap thisBeanMap = new BeanMap(this);
		BeanMap destinationBeanMap = new BeanMap(destination);
		Iterator<String> iterator = thisBeanMap.keyIterator();
		while (iterator.hasNext()) {
			String key = iterator.next();
			Object value = thisBeanMap.get(key);
			if (value != null && !key.equals("class") && destinationBeanMap.containsKey(key)) {
				PropertyUtils.setProperty(destination, key, value);
			}
		}
	}catch (Exception e) {
		log.error(logPrefixDest+"unable to copy properties of JmsRealm", e);
	}
	log.info(logPrefixDest+"loaded properties from jmsRealm ["+toString()+"]");
}
 
Example 5
public void get(IValidatable bean) {
	try {
		String text = _textArea.getText();

		if (!text.equals("")) {
			String[] items = text.split("\n");
			List<Object> list = new ArrayList<Object>();

			for (int i = 0; i < items.length; i++) {
				list.add(items[i]);
			}

			PropertyUtils.setProperty(bean, _property, list);
		} else {
			PropertyUtils.setProperty(bean, _property, null);
		}
	} catch (Exception e) {
		throw new BindingException(e);
	}
}
 
Example 6
public <T extends JpaObject> List<T> fetchAll(Class<T> clz, List<String> attributes) throws Exception {
	List<T> list = new ArrayList<>();
	List<String> fields = ListTools.trim(attributes, true, true, JpaObject.id_FIELDNAME);
	EntityManager em = this.get(clz);
	CriteriaBuilder cb = em.getCriteriaBuilder();
	CriteriaQuery<Tuple> cq = cb.createQuery(Tuple.class);
	Root<T> root = cq.from(clz);
	List<Selection<?>> selections = new ArrayList<>();
	for (String str : fields) {
		selections.add(root.get(str));
	}
	for (Tuple o : em.createQuery(cq.multiselect(selections)).getResultList()) {
		T t = clz.newInstance();
		for (int i = 0; i < fields.size(); i++) {
			PropertyUtils.setProperty(t, attributes.get(i), o.get(selections.get(i)));
		}
		list.add(t);
	}
	return list;
}
 
Example 7
Source Project: mogu_blog_v2   Source File: HighlightResultHelper.java    License: Apache License 2.0 6 votes vote down vote up
@Override
public <T> T mapSearchHit(SearchHit searchHit, Class<T> clazz) {
    List<T> results = new ArrayList<>();
    for (HighlightField field : searchHit.getHighlightFields().values()) {
        T result = null;
        if (StringUtils.hasText(searchHit.getSourceAsString())) {
            result = JSONObject.parseObject(searchHit.getSourceAsString(), clazz);
        }
        try {
            PropertyUtils.setProperty(result, field.getName(), concat(field.fragments()));
        } catch (IllegalAccessException | InvocationTargetException | NoSuchMethodException e) {
            log.error("设置高亮字段异常:{}", e.getMessage(), e);
        }
        results.add(result);
    }
    return null;
}
 
Example 8
Source Project: spring-boot-quickstart   Source File: Collections3.java    License: Apache License 2.0 6 votes vote down vote up
/**
 * 提取集合中的对象的两个属性(通过Getter函数), 组合成Map.
 * 
 * @param collection 来源集合.
 * @param keyPropertyName 要提取为Map中的Key值的属性名.
 * @param valuePropertyName 要提取为Map中的Value值的属性名.
 */
public static Map extractToMap(final Collection collection, final String keyPropertyName,
		final String valuePropertyName) {
	Map map = new HashMap(collection.size());

	try {
		for (Object obj : collection) {
			map.put(PropertyUtils.getProperty(obj, keyPropertyName),
					PropertyUtils.getProperty(obj, valuePropertyName));
		}
	} catch (Exception e) {
		throw Reflections.convertReflectionExceptionToUnchecked(e);
	}

	return map;
}
 
Example 9
Source Project: frpMgr   Source File: BeanUtils.java    License: MIT License 6 votes vote down vote up
/**
 * list转map(1对多)
 */
public static <K, V> Map<K, List<V>> list2Map2(List<V> list, String keyField) {
    Map<K, List<V>> map = new HashMap<>();
    if (list != null && !list.isEmpty()) {
        try {
            for (V s : list) {
                K val = (K) PropertyUtils.getProperty(s, keyField);
                if (map.containsKey(val)) {
                    map.get(val).add(s);
                } else {
                    List<V> listv = new ArrayList<>();
                    listv.add(s);
                    map.put(val, listv);
                }
            }
        } catch (Exception e) {
            logger.error(String.format("keyField [%s] not found !", keyField));
            throw new IllegalArgumentException(String.format("keyField [%s] not found !", keyField));
        }
    }
    return map;
}
 
Example 10
/**
 * 查询上一页的信息数据,直接调用Factory里的方法
 * @param id
 * @param count
 * @param sequence
 * @param wrapIn
 * @return
 * @throws Exception
 */
public List<OkrCenterWorkInfo> listPrevWithFilter( String id, Integer count, WorkCommonQueryFilter wrapIn ) throws Exception {
	Business business = null;
	Object sequence = null;
	try ( EntityManagerContainer emc = EntityManagerContainerFactory.instance().create()) {
		business = new Business(emc);
		if( id != null && !"(0)".equals(id) && id.trim().length() > 20 ){
			if (!StringUtils.equalsIgnoreCase(id, StandardJaxrsAction.EMPTY_SYMBOL)) {
				sequence = PropertyUtils.getProperty( emc.find( id, OkrCenterWorkInfo.class ),  JpaObject.sequence_FIELDNAME );
			}
		}
		return business.okrCenterWorkInfoFactory().listPrevWithFilter(id, count, sequence, wrapIn);
	} catch ( Exception e ) {
		throw e;
	}
}
 
Example 11
Source Project: minnal   Source File: BaseResourceTest.java    License: Apache License 2.0 6 votes vote down vote up
public <T> boolean compare(T model1, T model2, int depth) {
    if (model1 == null || model2 == null) {
        return false;
    }
    for (PropertyDescriptor descriptor : PropertyUtils.getPropertyDescriptors(model1)) {
        if (PropertyUtil.isSimpleProperty(descriptor.getPropertyType())) {
            try {
                Object property1 = PropertyUtils.getProperty(model1, descriptor.getName());
                Object property2 = PropertyUtils.getProperty(model2, descriptor.getName());
                if (property1 != null && property2 != null && !property1.equals(property2)) {
                    return false;
                }
            } catch (Exception e) {
                logger.info(e.getMessage(), e);
            }
        }
    }
    return true;
}
 
Example 12
Source Project: TranskribusCore   Source File: CustomTag.java    License: GNU General Public License v3.0 6 votes vote down vote up
public Class<?> getAttributeType(String name) {
	if (!hasAttribute(name))
		return null;

	if (isPredefinedAttribute(name)) { // get type via reflection for
										// predefined attributes
		try {
			return PropertyUtils.getPropertyType(this, name);
		} catch (IllegalAccessException | InvocationTargetException | NoSuchMethodException e) {
			logger.error(e.getMessage(), e);
			return null;
		}
	} else {
		CustomTagAttribute att = getAttribute(name);
		return att.getType();
	}
}
 
Example 13
Source Project: jeecg-cloud   Source File: QueryGenerator.java    License: Apache License 2.0 6 votes vote down vote up
/**
  * 根据权限相关配置 组装mp需要的权限
 * @param queryWrapper
 * @param clazz
 * @return
 */
public static void installAuthMplus(QueryWrapper<?> queryWrapper,Class<?> clazz) {
	//权限查询
	Map<String,SysPermissionDataRuleModel> ruleMap = getRuleMap();
	PropertyDescriptor origDescriptors[] = PropertyUtils.getPropertyDescriptors(clazz);
	for (String c : ruleMap.keySet()) {
		if(oConvertUtils.isNotEmpty(c) && c.startsWith(SQL_RULES_COLUMN)){
			queryWrapper.and(i ->i.apply(getSqlRuleValue(ruleMap.get(c).getRuleValue())));
		}
	}
	String name;
	for (int i = 0; i < origDescriptors.length; i++) {
		name = origDescriptors[i].getName();
		if (judgedIsUselessField(name)) {
			continue;
		}
		if(ruleMap.containsKey(name)) {
			addRuleToQueryWrapper(ruleMap.get(name), name, origDescriptors[i].getPropertyType(), queryWrapper);
		}
	}
}
 
Example 14
Source Project: dubai   Source File: Collections3.java    License: MIT License 6 votes vote down vote up
/**
 * 提取集合中的对象的两个属性(通过Getter函数), 组合成Map.
 * 
 * @param collection 来源集合.
 * @param keyPropertyName 要提取为Map中的Key值的属性名.
 * @param valuePropertyName 要提取为Map中的Value值的属性名.
 */
public static Map extractToMap(final Collection collection, final String keyPropertyName,
		final String valuePropertyName) {
	Map map = new HashMap(collection.size());

	try {
		for (Object obj : collection) {
			map.put(PropertyUtils.getProperty(obj, keyPropertyName),
					PropertyUtils.getProperty(obj, valuePropertyName));
		}
	} catch (Exception e) {
		throw Reflections.convertReflectionExceptionToUnchecked(e);
	}

	return map;
}
 
Example 15
/**
 * 查询下一页的信息数据,直接调用Factory里的方法
 * @param id
 * @param count
 * @param sequence
 * @param wrapIn
 * @return
 * @throws Exception
 */
public List<OkrCenterWorkInfo> listNextWithFilter( String id, Integer count, WorkCommonQueryFilter wrapIn ) throws Exception {
	Business business = null;
	Object sequence = null;
	try ( EntityManagerContainer emc = EntityManagerContainerFactory.instance().create()) {
		business = new Business(emc);
		if( id != null && !"(0)".equals(id) && id.trim().length() > 20 ){
			if ( !StringUtils.equalsIgnoreCase(id, StandardJaxrsAction.EMPTY_SYMBOL)) {
				sequence = PropertyUtils.getProperty( emc.find( id, OkrCenterWorkInfo.class ),  JpaObject.sequence_FIELDNAME );
			}
		}
		return business.okrCenterWorkInfoFactory().listNextWithFilter(id, count, sequence, wrapIn);
	} catch ( Exception e ) {
		throw e;
	}
}
 
Example 16
private void toggleFavorite() {
    try {
        if (isFavorite()) {
            favoriteBtn.removeStyleName("favorite-btn-selected");
            favoriteBtn.addStyleName("favorite-btn");
        } else {
            favoriteBtn.addStyleName("favorite-btn-selected");
            favoriteBtn.removeStyleName("favorite-btn");
        }
        FavoriteItem favoriteItem = new FavoriteItem();
        favoriteItem.setExtratypeid(CurrentProjectVariables.getProjectId());
        favoriteItem.setType(getType());
        favoriteItem.setTypeid(PropertyUtils.getProperty(beanItem, "id").toString());
        favoriteItem.setSaccountid(AppUI.getAccountId());
        favoriteItem.setCreateduser(UserUIContext.getUsername());
        FavoriteItemService favoriteItemService = AppContextUtil.getSpringBean(FavoriteItemService.class);
        favoriteItemService.saveOrDelete(favoriteItem);
    } catch (Exception e) {
        LOG.error("Error while set favorite flag to bean", e);
    }
}
 
Example 17
Source Project: sdk-rest   Source File: TestStandardBullhornApiRestAssociations.java    License: MIT License 6 votes vote down vote up
@Test
public void testAssociateCandidate() throws IllegalAccessException, InvocationTargetException, NoSuchMethodException {
    Candidate entity = bullhornData.findEntity(Candidate.class, testEntities.getCandidateId(), getAssociationFieldSet(AssociationFactory.candidateAssociations()));
    for (AssociationField<Candidate, ? extends BullhornEntity> association : AssociationFactory.candidateAssociations().allAssociations()) {

        Set<Integer> associationIds = new HashSet<Integer>();
        OneToMany<? extends BullhornEntity> linkedIds = (OneToMany<? extends BullhornEntity>) PropertyUtils.getProperty(entity,
            association.getAssociationFieldName());
        if (linkedIds != null && !linkedIds.getData().isEmpty()) {

            associationIds.add(linkedIds.getData().get(0).getId());
            testAssociation(Candidate.class, testEntities.getCandidateId(), associationIds, association);

        }
    }

}
 
Example 18
Source Project: kfs   Source File: ObjectUtil.java    License: GNU Affero General Public License v3.0 6 votes vote down vote up
/**
 * Populate the given fields of the target object with the values of an array
 * 
 * @param targetObject the target object
 * @param sourceObject the given array
 * @param keyFields the given fields of the target object that need to be popluated
 */
public static void buildObject(Object targetObject, Object[] sourceObject, List<String> keyFields) {
    int indexOfArray = 0;
    for (String propertyName : keyFields) {
        if (PropertyUtils.isWriteable(targetObject, propertyName) && indexOfArray < sourceObject.length) {
            try {
                Object value = sourceObject[indexOfArray];
                String propertyValue = value != null ? value.toString() : StringUtils.EMPTY;

                String type = getSimpleTypeName(targetObject, propertyName);
                Object realPropertyValue = valueOf(type, propertyValue);

                if (realPropertyValue != null && !StringUtils.isEmpty(realPropertyValue.toString())) {
                    PropertyUtils.setProperty(targetObject, propertyName, realPropertyValue);
                }
                else {
                    PropertyUtils.setProperty(targetObject, propertyName, null);
                }
            }
            catch (Exception e) {
                LOG.debug(e);
            }
        }
        indexOfArray++;
    }
}
 
Example 19
Source Project: bean-query   Source File: ClassSelector.java    License: Apache License 2.0 6 votes vote down vote up
/**
 * @param clazz
 *          null will cause the select methods returning an empty Map or a
 *          list of Empty map as the result.
 */
public ClassSelector(Class<?> clazz) {
  if (null == clazz) {
    logger.warn("Input class is null");
    return;
  }
  PropertyDescriptor[] propertyDescriptors = PropertyUtils.getPropertyDescriptors(clazz);
  for (PropertyDescriptor propertyDescriptor : propertyDescriptors) {
    boolean propertyReadable = propertyDescriptor.getReadMethod() != null;
    String propertyName = propertyDescriptor.getName();
    // ignore the class property
    if ("class".equals(propertyName)) {
      continue;
    }

    if (propertyReadable) {
      PropertySelector propertySelector = new PropertySelector(propertyDescriptor.getName());
      propertySelectors.add(propertySelector);
      compositeSelector.addSubSelector(propertySelector);
    }
  }
}
 
Example 20
Source Project: excelReader   Source File: ExcelWorkSheetHandler.java    License: MIT License 6 votes vote down vote up
private void assignValue(Object targetObj, String cellReference, String value) {
  if (null == targetObj || StringUtils.isEmpty(cellReference) || StringUtils.isEmpty(value)) {
    return;
  }

  try {
    String propertyName = this.cellMapping.get(cellReference);
    if (null == propertyName) {
      LOG.error("Cell mapping doesn't exists!");
    } else {
      PropertyUtils.setSimpleProperty(targetObj, propertyName, value);
    }
  } catch (IllegalAccessException iae) {
    LOG.error(iae.getMessage());
  } catch (InvocationTargetException ite) {
    LOG.error(ite.getMessage());
  } catch (NoSuchMethodException nsme) {
    LOG.error(nsme.getMessage());
  }
}
 
Example 21
Source Project: sakai   Source File: PersistableHelper.java    License: Educational Community License v2.0 6 votes vote down vote up
public void modifyPersistableFields(Persistable persistable)
{
	Date now = new Date(); // time sensitive
	if (log.isDebugEnabled())
	{
		log.debug("modifyPersistableFields(Persistable " + persistable + ")");
	}
	if (persistable == null) throw new IllegalArgumentException("Illegal persistable argument passed!");

	try
	{
		String actor = getActor();

		PropertyUtils.setProperty(persistable, LASTMODIFIEDBY, actor);
		PropertyUtils.setProperty(persistable, LASTMODIFIEDDATE, now);
	}
	catch (NoSuchMethodException | IllegalAccessException | InvocationTargetException e)
	{
		log.error(e.getMessage());
		throw new RuntimeException(e);
	}
}
 
Example 22
private boolean compareVal(T value1, T value2) {
    if (value1 == null && value2 == null) {
        return true;
    } else if (value1 == null || value2 == null) {
        return false;
    } else {
        try {
            Integer field1 = (Integer) PropertyUtils.getProperty(value1, "id");
            Integer field2 = (Integer) PropertyUtils.getProperty(value2, "id");
            return field1.equals(field2);
        } catch (final Exception e) {
            LOG.error("Error when compare value", e);
            return false;
        }
    }
}
 
Example 23
/**
 * 上一页
 * @param id
 * @param count
 * @param wrapIn
 * @return
 * @throws Exception 
 */
public List<OkrWorkReportBaseInfo> listPrevWithFilter( String id, Integer count, WrapInFilter wrapIn ) throws Exception {
	Business business = null;
	Object sequence = null;
	List<OkrWorkReportBaseInfo> okrWorkReportBaseInfoList = new ArrayList<OkrWorkReportBaseInfo>();
	if( count == null ){
		count = 20;
	}
	if( wrapIn == null ){
		throw new Exception( "wrapIn is null!" );
	}
	try ( EntityManagerContainer emc = EntityManagerContainerFactory.instance().create()) {
		business = new Business(emc);
		if( id != null && !"(0)".equals(id) && id.trim().length() > 20 ){
			if (!StringUtils.equalsIgnoreCase(id, StandardJaxrsAction.EMPTY_SYMBOL)) {
				sequence = PropertyUtils.getProperty( emc.find( id, OkrWorkReportBaseInfo.class ),  JpaObject.sequence_FIELDNAME );
			}
		}
		okrWorkReportBaseInfoList = business.okrWorkReportBaseInfoFactory().listPrevWithFilter( id, count, sequence, wrapIn );
	} catch ( Exception e ) {
		throw e;
	}
	return okrWorkReportBaseInfoList;
}
 
Example 24
public void put(IValidatable bean) {
	try {
		List<?> list = (List<?>) PropertyUtils.getProperty(bean, _property);
		StringBuffer sb = new StringBuffer();

		if (list != null) {
			for (int i = 0; i < list.size(); i++) {
				sb.append(list.get(i));
				if (i < list.size() - 1) {
					sb.append("\n");
				}
			}
		}

		_textArea.setText(sb.toString());
	} catch (Exception e) {
		throw new BindingException(e);
	}
}
 
Example 25
Source Project: o2oa   Source File: ListTools.java    License: GNU Affero General Public License v3.0 6 votes vote down vote up
@SuppressWarnings("unchecked")
public static <T> List<T> addWithProperty(Object obj, String propertyName, boolean ignoreNull, List<T> ts)
		throws Exception {
	List<T> list = new ArrayList<>();
	ListOrderedSet<T> set = new ListOrderedSet<T>();
	Object o = PropertyUtils.getProperty(obj, propertyName);
	if (null != o) {
		set.addAll((List<T>) o);
	}
	if (null != ts) {
		for (T t : ts) {
			if (null == t && ignoreNull) {
				continue;
			}
			if (!set.contains(t)) {
				set.add(t);
				list.add(t);
			}
		}
	}
	PropertyUtils.setProperty(obj, propertyName, set.asList());
	return list;
}
 
Example 26
/**
 * 查询下一页的信息数据,直接调用Factory里的方法
 * 
 * @param id
 * @param count
 * @param sequence
 * @param wrapIn
 * @return
 * @throws Exception
 */
public List<OkrWorkChat> listChatNextWithFilter(String id, Integer count, String workId, String sequenceField,
		String order) throws Exception {

	Business business = null;
	Object sequence = null;
	if (workId == null) {
		throw new Exception("workId is null!");
	}
	try (EntityManagerContainer emc = EntityManagerContainerFactory.instance().create()) {
		business = new Business(emc);
		if (id != null && !"(0)".equals(id) && id.trim().length() > 20) {
			if (!StringUtils.equalsIgnoreCase(id, StandardJaxrsAction.EMPTY_SYMBOL)) {
				sequence = PropertyUtils.getProperty(emc.find(id, OkrWorkChat.class),  JpaObject.sequence_FIELDNAME);
			}
		}
		return business.okrWorkChatFactory().listNextWithFilter(id, count, sequence, workId, sequenceField, order);

	} catch (Exception e) {
		throw e;
	}
}
 
Example 27
/**
 * 查询下一页的信息数据,直接调用Factory里的方法
 * 
 * @param id
 * @param count
 * @param sequence
 * @param wrapIn
 * @return
 * @throws Exception
 */
public List<OkrWorkBaseInfo> listNextWithFilter(String id, Integer count, WrapInFilter wrapIn) throws Exception {
	Business business = null;
	Object sequence = null;
	try (EntityManagerContainer emc = EntityManagerContainerFactory.instance().create()) {
		business = new Business(emc);
		if (id != null && !"(0)".equals(id) && id.trim().length() > 20) {
			if (!StringUtils.equalsIgnoreCase(id, StandardJaxrsAction.EMPTY_SYMBOL)) {
				sequence = PropertyUtils.getProperty(emc.find(id, OkrWorkBaseInfo.class),  JpaObject.sequence_FIELDNAME);
			}
		}
		return business.okrWorkBaseInfoFactory().listNextWithFilter(id, count, sequence, wrapIn);
	} catch (Exception e) {
		throw e;
	}
}
 
Example 28
public <T extends JpaObject> List<T> fetchIsMember(Class<T> clz, List<String> attributes, String attribute,
		Object value) throws Exception {
	List<T> list = new ArrayList<>();
	List<String> fields = ListTools.trim(attributes, true, true, JpaObject.id_FIELDNAME);
	EntityManager em = this.get(clz);
	CriteriaBuilder cb = em.getCriteriaBuilder();
	CriteriaQuery<Tuple> cq = cb.createQuery(Tuple.class);
	Root<T> root = cq.from(clz);
	List<Selection<?>> selections = new ArrayList<>();
	for (String str : fields) {
		selections.add(root.get(str));
	}
	Predicate p = cb.isMember(value, root.get(attribute));
	cq.multiselect(selections).where(p);
	for (Tuple o : em.createQuery(cq).getResultList()) {
		T t = clz.newInstance();
		for (int i = 0; i < fields.size(); i++) {
			PropertyUtils.setProperty(t, fields.get(i), o.get(selections.get(i)));
		}
		list.add(t);
	}
	return list;
}
 
Example 29
/**
 * 上一页
 * @param id
 * @param count
 * @param wrapIn
 * @return
 * @throws Exception 
 */
public List<OkrWorkReportBaseInfo> listPrevWithFilter( String id, Integer count, WrapInFilter wrapIn ) throws Exception {
	Business business = null;
	Object sequence = null;
	List<OkrWorkReportBaseInfo> okrWorkReportBaseInfoList = new ArrayList<OkrWorkReportBaseInfo>();
	if( count == null ){
		count = 20;
	}
	if( wrapIn == null ){
		throw new Exception( "wrapIn is null!" );
	}
	try ( EntityManagerContainer emc = EntityManagerContainerFactory.instance().create()) {
		business = new Business(emc);
		if( id != null && !"(0)".equals(id) && id.trim().length() > 20 ){
			if (!StringUtils.equalsIgnoreCase(id, StandardJaxrsAction.EMPTY_SYMBOL)) {
				sequence = PropertyUtils.getProperty( emc.find( id, OkrWorkReportBaseInfo.class ),  JpaObject.sequence_FIELDNAME );
			}
		}
		okrWorkReportBaseInfoList = business.okrWorkReportBaseInfoFactory().listPrevWithFilter( id, count, sequence, wrapIn );
	} catch ( Exception e ) {
		throw e;
	}
	return okrWorkReportBaseInfoList;
}
 
Example 30
/**
 * 上一页
 * @param id
 * @param count
 * @param wrapIn
 * @return
 * @throws Exception 
 */
public List<OkrWorkReportPersonLink> listPrevWithFilter( String id, Integer count, WorkPersonSearchFilter wrapIn ) throws Exception {
	Business business = null;
	Object sequence = null;
	List<OkrWorkReportPersonLink> okrWorkReportPersonLinkList = new ArrayList<OkrWorkReportPersonLink>();
	if( count == null ){
		count = 20;
	}
	if( wrapIn == null ){
		throw new Exception( "wrapIn is null!" );
	}
	try ( EntityManagerContainer emc = EntityManagerContainerFactory.instance().create()) {
		business = new Business(emc);
		if( id != null && !"(0)".equals(id) && id.trim().length() > 20 ){
			if (!StringUtils.equalsIgnoreCase(id, StandardJaxrsAction.EMPTY_SYMBOL)) {
				sequence = PropertyUtils.getProperty( emc.find( id, OkrWorkReportPersonLink.class ),  JpaObject.sequence_FIELDNAME );
			}
		}
		okrWorkReportPersonLinkList = business.okrWorkReportPersonLinkFactory().listPrevWithFilter( id, count, sequence, wrapIn );
	} catch ( Exception e ) {
		throw e;
	}
	return okrWorkReportPersonLinkList;
}