Author: doogie
Date: Tue Nov 17 08:30:46 2009 New Revision: 881192 URL: http://svn.apache.org/viewvc?rev=881192&view=rev Log: And generic condition planning. Added: ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ConditionPlan.java - copied, changed from r881191, ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLView.java ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ConditionPlanner.java - copied, changed from r881191, ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLStatement.java ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ParameterizedConditionException.java - copied, changed from r881191, ofbiz/trunk/framework/sql/src/org/ofbiz/sql/Planner.java Modified: ofbiz/trunk/framework/entity/src/org/ofbiz/entity/sql/EntityConditionPlanner.java ofbiz/trunk/framework/entity/src/org/ofbiz/entity/sql/EntityPlanner.java ofbiz/trunk/framework/entity/src/org/ofbiz/entity/sql/EntitySelectPlan.java ofbiz/trunk/framework/sql/src/org/ofbiz/sql/Main.java ofbiz/trunk/framework/sql/src/org/ofbiz/sql/Planner.java ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLDelete.java ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLInsert.java ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLSelect.java ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLStatement.java ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLUpdate.java ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLView.java ofbiz/trunk/framework/webslinger/websites/webslinger/www/TestSQL.groovy Modified: ofbiz/trunk/framework/entity/src/org/ofbiz/entity/sql/EntityConditionPlanner.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/entity/src/org/ofbiz/entity/sql/EntityConditionPlanner.java?rev=881192&r1=881191&r2=881192&view=diff ============================================================================== --- ofbiz/trunk/framework/entity/src/org/ofbiz/entity/sql/EntityConditionPlanner.java (original) +++ ofbiz/trunk/framework/entity/src/org/ofbiz/entity/sql/EntityConditionPlanner.java Tue Nov 17 08:30:46 2009 @@ -19,6 +19,7 @@ package org.ofbiz.entity.sql; import java.util.List; +import java.util.Map; import javolution.util.FastList; @@ -30,23 +31,26 @@ import org.ofbiz.sql.BooleanCondition; import org.ofbiz.sql.Condition; import org.ofbiz.sql.ConditionList; +import org.ofbiz.sql.ConditionPlan; +import org.ofbiz.sql.ConditionPlanner; import org.ofbiz.sql.FieldValue; import org.ofbiz.sql.Joiner; import org.ofbiz.sql.NumberValue; +import org.ofbiz.sql.ParameterizedConditionException; import org.ofbiz.sql.StringValue; import org.ofbiz.sql.Value; -public final class EntityConditionPlanner { - public EntityCondition buildCondition(Condition condition) { +public class EntityConditionPlanner implements ConditionPlanner<EntityCondition> { + public EntityCondition parse(Condition condition, Map<String, ? extends Object> params) throws ParameterizedConditionException { if (condition == null) return null; if (condition instanceof BooleanCondition) { BooleanCondition bc = (BooleanCondition) condition; - return EntityCondition.makeCondition(buildFieldValue(bc.getLeft()), EntityOperator.lookupComparison(bc.getOp()), buildValue(bc.getRight())); + return EntityCondition.makeCondition(buildFieldValue(bc.getLeft()), EntityOperator.lookupComparison(bc.getOp()), buildValue(bc.getRight(), params)); } else if (condition instanceof ConditionList) { ConditionList cl = (ConditionList) condition; List<EntityCondition> conditions = FastList.newInstance(); for (Condition subCondition: cl) { - conditions.add(buildCondition(subCondition)); + conditions.add(parse(subCondition, params)); } return EntityCondition.makeCondition(conditions, cl.getJoiner() == Joiner.AND ? EntityOperator.AND : EntityOperator.OR); } else { @@ -54,7 +58,7 @@ } } - public EntityFieldValue buildFieldValue(Value value) { + private static EntityFieldValue buildFieldValue(Value value) { if (value instanceof FieldValue) { FieldValue fv = (FieldValue) value; return EntityFieldValue.makeFieldValue(fv.getFieldName(), fv.getTableName(), null, null); @@ -62,7 +66,7 @@ throw new UnsupportedOperationException(value.toString()); } - public Object buildValue(Object value) { + private static Object buildValue(Object value, Map<String, ? extends Object> params) throws ParameterizedConditionException { if (value instanceof NumberValue) { return ((NumberValue) value).getNumber(); } else if (value instanceof StringValue) { @@ -73,7 +77,7 @@ } else if (value instanceof List) { List<Object> values = FastList.newInstance(); for (Object sqlValue: (List) value) { - values.add(buildValue(sqlValue)); + values.add(buildValue(sqlValue, params)); } return values; } Modified: ofbiz/trunk/framework/entity/src/org/ofbiz/entity/sql/EntityPlanner.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/entity/src/org/ofbiz/entity/sql/EntityPlanner.java?rev=881192&r1=881191&r2=881192&view=diff ============================================================================== --- ofbiz/trunk/framework/entity/src/org/ofbiz/entity/sql/EntityPlanner.java (original) +++ ofbiz/trunk/framework/entity/src/org/ofbiz/entity/sql/EntityPlanner.java Tue Nov 17 08:30:46 2009 @@ -63,8 +63,10 @@ import org.ofbiz.sql.TableName; import org.ofbiz.sql.Value; -public class EntityPlanner extends Planner<EntityPlanner, EntityDeletePlan, EntityInsertPlan, EntitySelectPlan, EntityUpdatePlan, EntityViewPlan> { - private final EntityConditionPlanner conditionPlanner = new EntityConditionPlanner(); +public class EntityPlanner extends Planner<EntityPlanner, EntityCondition, EntityDeletePlan, EntityInsertPlan, EntitySelectPlan, EntityUpdatePlan, EntityViewPlan> { + public EntityPlanner() { + super(new EntityConditionPlanner()); + } public EntityDeletePlan plan(SQLDelete<?> deleteStatement) { return null; @@ -92,7 +94,7 @@ for (FieldDef fieldDef: selectStatement.getFieldDefs()) { addFieldDef(dve, groupBy, fieldDef.getAlias(), fieldDef); } - return new EntitySelectPlan(dve, buildCondition(selectStatement.getWhereCondition()), buildCondition(selectStatement.getHavingCondition()), selectStatement.getOrderBy()); + return new EntitySelectPlan(dve, plan(selectStatement.getWhereCondition()), plan(selectStatement.getHavingCondition()), selectStatement.getOrderBy()); } public EntityUpdatePlan plan(SQLUpdate<?> updateStatement) { @@ -212,8 +214,4 @@ } return entityKeyMaps; } - - protected EntityCondition buildCondition(Condition condition) { - return conditionPlanner.buildCondition(condition); - } } Modified: ofbiz/trunk/framework/entity/src/org/ofbiz/entity/sql/EntitySelectPlan.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/entity/src/org/ofbiz/entity/sql/EntitySelectPlan.java?rev=881192&r1=881191&r2=881192&view=diff ============================================================================== --- ofbiz/trunk/framework/entity/src/org/ofbiz/entity/sql/EntitySelectPlan.java (original) +++ ofbiz/trunk/framework/entity/src/org/ofbiz/entity/sql/EntitySelectPlan.java Tue Nov 17 08:30:46 2009 @@ -38,25 +38,35 @@ import org.ofbiz.entity.util.EntityListIterator; import org.ofbiz.sql.SelectPlan; +import org.ofbiz.sql.ConditionPlan; +import org.ofbiz.sql.ParameterizedConditionException; public final class EntitySelectPlan extends SelectPlan<EntitySelectPlan> { private final DynamicViewEntity dve; - private final EntityCondition whereCondition; - private final EntityCondition havingCondition; + private final ConditionPlan<EntityCondition> wherePlan; + private final ConditionPlan<EntityCondition> havingPlan; private final List<String> orderBy; private final int offset = -1; private final int limit = -1; - public EntitySelectPlan(DynamicViewEntity dve, EntityCondition whereCondition, EntityCondition havingCondition, List<String> orderBy) { + public EntitySelectPlan(DynamicViewEntity dve, ConditionPlan<EntityCondition> wherePlan, ConditionPlan<EntityCondition> havingPlan, List<String> orderBy) { this.dve = dve; - this.whereCondition = whereCondition; - this.havingCondition = havingCondition; + this.wherePlan = wherePlan; + this.havingPlan = havingPlan; this.orderBy = orderBy; //this.offset = offset; //this.limit = limit; } - public EntityListIterator getEntityListIterator(Delegator delegator) throws GenericEntityException { + public EntityListIterator getEntityListIterator(Delegator delegator, Map<String, ? extends Object> params) throws GenericEntityException { + EntityCondition whereCondition; + EntityCondition havingCondition; + try { + whereCondition = wherePlan.getCondition(params); + havingCondition = havingPlan.getCondition(params); + } catch (ParameterizedConditionException e) { + throw (GenericEntityException) new GenericEntityException(e.getMessage()).initCause(e); + } return delegator.findListIteratorByCondition(dve, whereCondition, havingCondition, null, orderBy, null); } @@ -64,12 +74,12 @@ return dve; } - public EntityCondition getWhereCondition() { - return whereCondition; + public ConditionPlan<EntityCondition> getWherePlan() { + return wherePlan; } - public EntityCondition getHavingCondition() { - return havingCondition; + public ConditionPlan<EntityCondition> getHavingPlan() { + return havingPlan; } public List<String> getOrderBy() { @@ -84,16 +94,19 @@ return limit; } - public String toString() { - StringBuilder sb = new StringBuilder(); + public StringBuilder appendTo(StringBuilder sb) { sb.append("dve=" + dve); - if (whereCondition != null) { + if (wherePlan != null) { if (sb.length() > 0) sb.append(", "); - sb.append("where=(").append(whereCondition).append(")"); + sb.append("where=("); + wherePlan.appendTo(sb); + sb.append(")"); } - if (havingCondition != null) { + if (havingPlan != null) { if (sb.length() > 0) sb.append(", "); - sb.append("having=(").append(havingCondition).append(")"); + sb.append("having=("); + havingPlan.appendTo(sb); + sb.append(")"); } if (offset != -1) { if (sb.length() > 0) sb.append(", "); @@ -105,6 +118,6 @@ } sb.append("]"); sb.insert(0, "[").insert(0, super.toString()); - return sb.toString(); + return sb; } } Copied: ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ConditionPlan.java (from r881191, ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLView.java) URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ConditionPlan.java?p2=ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ConditionPlan.java&p1=ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLView.java&r1=881191&r2=881192&rev=881192&view=diff ============================================================================== --- ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLView.java (original) +++ ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ConditionPlan.java Tue Nov 17 08:30:46 2009 @@ -18,31 +18,24 @@ */ package org.ofbiz.sql; -public final class SQLView<P extends ViewPlan<P>> extends SQLStatement<SQLView<P>, P> { - private final String name; - private final SQLSelect sqlSelect; +import java.util.Map; - public SQLView(String name, SQLSelect sqlSelect) { - this.name = name; - this.sqlSelect = sqlSelect; +public final class ConditionPlan<C> extends SQLPlan<ConditionPlan<C>> { + private final ConditionPlanner<C> planner; + private final Condition originalCondition; + private final C condition; + + public ConditionPlan(ConditionPlanner<C> planner, Condition originalCondition, C condition) { + this.planner = planner; + this.originalCondition = originalCondition; + this.condition = condition; } - @SuppressWarnings("unchecked") - public <PP extends P> PP plan(Planner<?, ?, ?, ?, ?, ?> planner) { - return (PP) planner.plan(this); - } - - public String getName() { - return name; - } - - public SQLSelect getSelect() { - return sqlSelect; - } - - public StringBuilder appendTo(StringBuilder sb) { - sb.append("CREATE VIEW ").append(name).append(" AS "); - sqlSelect.appendTo(sb); - return sb; + public C getCondition(Map<String, ? extends Object> params) throws ParameterizedConditionException { + if (originalCondition != null) { + return planner.parse(originalCondition, params); + } else { + return condition; + } } } Copied: ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ConditionPlanner.java (from r881191, ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLStatement.java) URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ConditionPlanner.java?p2=ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ConditionPlanner.java&p1=ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLStatement.java&r1=881191&r2=881192&rev=881192&view=diff ============================================================================== --- ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLStatement.java (original) +++ ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ConditionPlanner.java Tue Nov 17 08:30:46 2009 @@ -18,6 +18,8 @@ */ package org.ofbiz.sql; -public abstract class SQLStatement<S extends SQLStatement<S, P>, P extends SQLPlan<P>> extends Atom { - public abstract <PP extends P> PP plan(Planner<?, ?, ?, ?, ?, ?> planner); +import java.util.Map; + +public interface ConditionPlanner<C> { + C parse(Condition originalCondition, Map<String, ? extends Object> params) throws ParameterizedConditionException; } Modified: ofbiz/trunk/framework/sql/src/org/ofbiz/sql/Main.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/sql/src/org/ofbiz/sql/Main.java?rev=881192&r1=881191&r2=881192&view=diff ============================================================================== --- ofbiz/trunk/framework/sql/src/org/ofbiz/sql/Main.java (original) +++ ofbiz/trunk/framework/sql/src/org/ofbiz/sql/Main.java Tue Nov 17 08:30:46 2009 @@ -22,7 +22,7 @@ public final class Main { public static void main(String[] args) throws Exception { - Planner<?, ?, ?, ?, ?, ?> planner = new DebugPlanner(); + Planner<?, ?, ?, ?, ?, ?, ?> planner = new DebugPlanner(); List<SQLStatement<?, ?>> statements = new Parser(System.in).SQLFile(); for (SQLStatement<?, ?> statement: statements) { run(statement, planner); @@ -36,6 +36,10 @@ } private final static class DebugPlanner extends Planner { + public DebugPlanner() { + super(null); + } + public SQLPlan plan(SQLStatement statement) { return null; } Copied: ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ParameterizedConditionException.java (from r881191, ofbiz/trunk/framework/sql/src/org/ofbiz/sql/Planner.java) URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ParameterizedConditionException.java?p2=ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ParameterizedConditionException.java&p1=ofbiz/trunk/framework/sql/src/org/ofbiz/sql/Planner.java&r1=881191&r2=881192&rev=881192&view=diff ============================================================================== --- ofbiz/trunk/framework/sql/src/org/ofbiz/sql/Planner.java (original) +++ ofbiz/trunk/framework/sql/src/org/ofbiz/sql/ParameterizedConditionException.java Tue Nov 17 08:30:46 2009 @@ -18,10 +18,22 @@ */ package org.ofbiz.sql; -public abstract class Planner<P extends Planner<P, D, I, S, U, V>, D extends DeletePlan<D>, I extends InsertPlan<I>, S extends SelectPlan<S>, U extends UpdatePlan<U>, V extends ViewPlan<V>> { - public abstract D plan(SQLDelete<?> deleteStatement); - public abstract I plan(SQLInsert<?> insertStatement); - public abstract S plan(SQLSelect<?> selectStatement); - public abstract U plan(SQLUpdate<?> updateStatement); - public abstract V plan(SQLView<?> viewStatement); +import org.ofbiz.base.util.GeneralException; + +public final class ParameterizedConditionException extends GeneralException { + public ParameterizedConditionException() { + super(); + } + + public ParameterizedConditionException(String msg) { + super(msg); + } + + public ParameterizedConditionException(String msg, Throwable nested) { + super(msg, nested); + } + + public ParameterizedConditionException(Throwable nested) { + super(nested); + } } Modified: ofbiz/trunk/framework/sql/src/org/ofbiz/sql/Planner.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/sql/src/org/ofbiz/sql/Planner.java?rev=881192&r1=881191&r2=881192&view=diff ============================================================================== --- ofbiz/trunk/framework/sql/src/org/ofbiz/sql/Planner.java (original) +++ ofbiz/trunk/framework/sql/src/org/ofbiz/sql/Planner.java Tue Nov 17 08:30:46 2009 @@ -18,7 +18,25 @@ */ package org.ofbiz.sql; -public abstract class Planner<P extends Planner<P, D, I, S, U, V>, D extends DeletePlan<D>, I extends InsertPlan<I>, S extends SelectPlan<S>, U extends UpdatePlan<U>, V extends ViewPlan<V>> { +public abstract class Planner<P extends Planner<P, C, D, I, S, U, V>, C, D extends DeletePlan<D>, I extends InsertPlan<I>, S extends SelectPlan<S>, U extends UpdatePlan<U>, V extends ViewPlan<V>> { + private final ConditionPlanner<C> conditionPlanner; + + protected Planner(ConditionPlanner<C> conditionPlanner) { + this.conditionPlanner = conditionPlanner; + } + + public ConditionPlanner<C> getConditionPlanner() { + return conditionPlanner; + } + + public ConditionPlan<C> plan(Condition condition) { + try { + return new ConditionPlan<C>(conditionPlanner, null, conditionPlanner.parse(condition, null)); + } catch (ParameterizedConditionException e) { + return new ConditionPlan<C>(conditionPlanner, condition, null); + } + } + public abstract D plan(SQLDelete<?> deleteStatement); public abstract I plan(SQLInsert<?> insertStatement); public abstract S plan(SQLSelect<?> selectStatement); Modified: ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLDelete.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLDelete.java?rev=881192&r1=881191&r2=881192&view=diff ============================================================================== --- ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLDelete.java (original) +++ ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLDelete.java Tue Nov 17 08:30:46 2009 @@ -28,7 +28,7 @@ } @SuppressWarnings("unchecked") - public <PP extends P> PP plan(Planner<?, ?, ?, ?, ?, ?> planner) { + public <PP extends P> PP plan(Planner<?, ?, ?, ?, ?, ?, ?> planner) { return (PP) planner.plan(this); } Modified: ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLInsert.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLInsert.java?rev=881192&r1=881191&r2=881192&view=diff ============================================================================== --- ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLInsert.java (original) +++ ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLInsert.java Tue Nov 17 08:30:46 2009 @@ -36,7 +36,7 @@ } @SuppressWarnings("unchecked") - public <PP extends P> PP plan(Planner<?, ?, ?, ?, ?, ?> planner) { + public <PP extends P> PP plan(Planner<?, ?, ?, ?, ?, ?, ?> planner) { return (PP) planner.plan(this); } Modified: ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLSelect.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLSelect.java?rev=881192&r1=881191&r2=881192&view=diff ============================================================================== --- ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLSelect.java (original) +++ ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLSelect.java Tue Nov 17 08:30:46 2009 @@ -52,7 +52,7 @@ } @SuppressWarnings("unchecked") - public <PP extends P> PP plan(Planner<?, ?, ?, ?, ?, ?> planner) { + public <PP extends P> PP plan(Planner<?, ?, ?, ?, ?, ?, ?> planner) { return (PP) planner.plan(this); } Modified: ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLStatement.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLStatement.java?rev=881192&r1=881191&r2=881192&view=diff ============================================================================== --- ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLStatement.java (original) +++ ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLStatement.java Tue Nov 17 08:30:46 2009 @@ -19,5 +19,5 @@ package org.ofbiz.sql; public abstract class SQLStatement<S extends SQLStatement<S, P>, P extends SQLPlan<P>> extends Atom { - public abstract <PP extends P> PP plan(Planner<?, ?, ?, ?, ?, ?> planner); + public abstract <PP extends P> PP plan(Planner<?, ?, ?, ?, ?, ?, ?> planner); } Modified: ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLUpdate.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLUpdate.java?rev=881192&r1=881191&r2=881192&view=diff ============================================================================== --- ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLUpdate.java (original) +++ ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLUpdate.java Tue Nov 17 08:30:46 2009 @@ -35,7 +35,7 @@ } @SuppressWarnings("unchecked") - public <PP extends P> PP plan(Planner<?, ?, ?, ?, ?, ?> planner) { + public <PP extends P> PP plan(Planner<?, ?, ?, ?, ?, ?, ?> planner) { return (PP) planner.plan(this); } Modified: ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLView.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLView.java?rev=881192&r1=881191&r2=881192&view=diff ============================================================================== --- ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLView.java (original) +++ ofbiz/trunk/framework/sql/src/org/ofbiz/sql/SQLView.java Tue Nov 17 08:30:46 2009 @@ -28,7 +28,7 @@ } @SuppressWarnings("unchecked") - public <PP extends P> PP plan(Planner<?, ?, ?, ?, ?, ?> planner) { + public <PP extends P> PP plan(Planner<?, ?, ?, ?, ?, ?, ?> planner) { return (PP) planner.plan(this); } Modified: ofbiz/trunk/framework/webslinger/websites/webslinger/www/TestSQL.groovy URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/webslinger/websites/webslinger/www/TestSQL.groovy?rev=881192&r1=881191&r2=881192&view=diff ============================================================================== --- ofbiz/trunk/framework/webslinger/websites/webslinger/www/TestSQL.groovy (original) +++ ofbiz/trunk/framework/webslinger/websites/webslinger/www/TestSQL.groovy Tue Nov 17 08:30:46 2009 @@ -33,7 +33,7 @@ TransactionUtil.doNewTransaction("Test", [call: { def eli try { - eli = sqlSelect.getEntityListIterator(delegator) + eli = sqlSelect.getEntityListIterator(delegator, null) def gv; while ((gv = eli.next()) != null) { response.writer.println("gv=$gv<br />") |
Free forum by Nabble | Edit this page |