try Object value = Expressions.instance().createValueExpression(expression).getValue(); if (value != null) builder.append(value);
protected void parseEjbql() { if (parsedEjbql==null || parsedRestrictions==null) { QueryParser qp = new QueryParser( getEjbql() ); queryParameters = qp.getParameterValueBindings(); parsedEjbql = qp.getEjbql(); List<ValueExpression> restrictionFragments = getRestrictions(); parsedRestrictions = new ArrayList<String>( restrictionFragments.size() ); restrictionParameters = new ArrayList<ValueExpression>( restrictionFragments.size() ); for ( ValueExpression restriction: restrictionFragments ) { QueryParser rqp = new QueryParser( restriction.getExpressionString(), queryParameters.size() + restrictionParameters.size() ); if ( rqp.getParameterValueBindings().size()!=1 ) { throw new IllegalArgumentException("there should be exactly one value binding in a restriction: " + restriction); } parsedRestrictions.add( rqp.getEjbql() ); restrictionParameters.addAll( rqp.getParameterValueBindings() ); } } }
log.debug("adding consequence exception handler: " + consequenceExceptionHandler.getExpressionString()); RuleBaseConfiguration rbconf = new RuleBaseConfiguration(); rbconf.setConsequenceExceptionHandler(consequenceExceptionHandler.getValue().toString()); ruleBase = RuleBaseFactory.newRuleBase( rbconf );
result = Expressions.instance().createValueExpression(name).getValue();
Object result = valueBinding.getValueBinding().getValue(); return handleFactoryMethodResult(name, null, result, valueBinding.getScope());
return valueExpression.getValue();
try invalidValues = Validators.instance().validate( valueExpression.toUnifiedValueExpression(), elContext, value );
/** * Get the current value of a page or redirection parameter * from the model, and convert to a String */ public String getStringValueFromModel(FacesContext facesContext) { Object value = getValueExpression().getValue(); if (value==null) { return null; } else { Converter converter = null; try { converter = getConverter(); } catch (RuntimeException re) { //YUCK! due to bad JSF/MyFaces error handling log.warn("could not create converter for: " + name, re); return null; } return converter==null ? value.toString() : converter.getAsString( facesContext, facesContext.getViewRoot(), value ); } }
private Long getProcessOrTaskId(String paramName, String el) { Object id; if ( Strings.isEmpty(paramName) ) { id = Expressions.instance().createValueExpression(el).getValue(); } else { String[] values = Parameters.instance().getRequestParameters().get(paramName); id = values!=null && values.length==1 ? values[0] : null; } if (id==null) { throw new IllegalStateException("task/process id may not be null"); } else if (id instanceof Long) { return (Long) id; } else if (id instanceof String) { return new Long( (String) id ); } else { throw new IllegalArgumentException("task/process id must be a string or long"); } }
/** * Create a new instance of the entity. * <br /> * Utility method called by {@link #initInstance()} to create a new instance * of the entity. */ protected E createInstance() { if (newInstance!=null) { return (E) newInstance.getValue(); } else if (getEntityClass()!=null) { try { return getEntityClass().newInstance(); } catch (Exception e) { throw new RuntimeException(e); } } else { return null; } }
protected Object handleCreateQueryWithString(Method method, Object[] args) throws Throwable { if (args[0] == null) { //return method.invoke(getDelegate(method), args); return method.invoke(delegate, args); } String ejbql = (String) args[0]; if (ejbql.indexOf('#') > 0) { QueryParser qp = new QueryParser(ejbql); Object[] newArgs = args.clone(); newArgs[0] = qp.getEjbql(); //Query query = (Query) method.invoke(getDelegate(method), newArgs); Query query = (Query) method.invoke(delegate, newArgs); for (int i = 0; i < qp.getParameterValueBindings().size(); i++) { query.setParameter(QueryParser.getParameterName(i), qp.getParameterValueBindings().get(i).getValue()); } return query; } else { return method.invoke(delegate, args); } }
/** * Obtains a PlatformTransactionManager from either the name or expression * specified. */ protected PlatformTransactionManager getPlatformTransactionManager() { if (((platformTransactionManagerName == null || "".equals(platformTransactionManagerName)) && platformTransactionManager == null) || (platformTransactionManagerName != null && !"".equals(platformTransactionManagerName)) && platformTransactionManager != null) { throw new IllegalArgumentException("When configuring spring:spring-transaction you must specify either platformTransactionManager or platformTransactionManagerName."); } if ((platformTransactionManagerName == null || "".equals(platformTransactionManagerName))) { return platformTransactionManager.getValue(); } BeanFactory beanFactory = findBeanFactory(); if (beanFactory == null) { log.debug("BeanFactory either not found or not yet available."); return null; } PlatformTransactionManager ptm = (PlatformTransactionManager) beanFactory.getBean(platformTransactionManagerName); return ptm; }
@Override public void enableFilter(Filter f, EntityManager entityManager) { try { org.hibernate.Filter filter = getSession(entityManager).enableFilter( f.getName() ); for ( Map.Entry<String, ValueExpression> me: f.getParameters().entrySet() ) { Object filterValue = me.getValue().getValue(); if ( filterValue instanceof Collection ) { filter.setParameterList(me.getKey(), (Collection) filterValue); } else { filter.setParameter(me.getKey(), filterValue); } } filter.validate(); } catch (NotHibernateException nhe) { super.enableFilter(f, entityManager); } }
public Object getValue(Class type) { Object value; if ( type.equals(ValueExpression.class) ) { value = createValueExpression(); } else if ( type.equals(MethodExpression.class) ) { value = createMethodExpression(); } else { value = createValueExpression().getValue(); } if (converter!=null && value instanceof String) { return converter.toObject( new Conversions.FlatPropertyValue( (String) value ), parameterType ); } else if (converter!=null && value instanceof String[]) { return converter.toObject( new Conversions.MultiPropertyValue( (String[]) value, null), parameterType ); } else { return value; } }
protected Object handleCreateQueryWithString(Method method, Object[] args) throws Throwable { if (args[0] == null) { return method.invoke(delegate, args); } String ejbql = (String) args[0]; if (ejbql.indexOf('#') > 0) { QueryParser qp = new QueryParser(ejbql); Object[] newArgs = args.clone(); newArgs[0] = qp.getEjbql(); Query query = (Query) method.invoke(delegate, newArgs); for (int i = 0; i < qp.getParameterValueBindings().size(); i++) { query.setParameter(QueryParser.getParameterName(i), qp.getParameterValueBindings().get(i).getValue()); } return query; } else { return method.invoke(delegate, args); } }
protected String getRenderedEjbql() { StringBuilder builder = new StringBuilder().append(parsedEjbql); for (int i=0; i<getRestrictions().size(); i++) { Object parameterValue = restrictionParameters.get(i).getValue(); if ( isRestrictionParameterSet(parameterValue) ) { if ( WHERE_PATTERN.matcher(builder).find() ) { builder.append(" ").append(getRestrictionLogicOperator()).append(" "); } else { builder.append(" where "); } builder.append( parsedRestrictions.get(i) ); } } if (getGroupBy()!=null) { builder.append(" group by ").append(getGroupBy()); } if (getOrder()!=null) { builder.append(" order by ").append( getOrder() ); } return builder.toString(); }
@Override public boolean navigate(FacesContext context) { addFacesMessage(message, severity, control); Map<String, Object> parameters = new HashMap<String, Object>(); for ( Param parameter: params ) { String value = parameter.getStringValueFromModel(context); //render it even if the value is null, since we want it //to override page parameter values which would be //appended by the redirect filter //if (value!=null) //{ parameters.put( parameter.getName(), value ); //} } if (url != null) { redirectExternal(url.getValue()); } else { redirect(viewId == null ? null : viewId.getValue(), parameters, includePageParams); } return true; }
/** * Apply page parameters passed as view root attributes or request parameters to the model */ private void applyConvertedValidatedValuesToModel(FacesContext facesContext) { String viewId = getViewId(facesContext); for ( Page page: getPageStack(viewId) ) { for ( Param pageParameter: page.getParameters() ) { ValueExpression valueExpression = pageParameter.getValueExpression(); if (valueExpression!=null) { Object object = Contexts.getEventContext().get( pageParameter.getName() ); if (object!=null) { valueExpression.setValue(object); } } } } }