Author: simoneg
Date: Wed Dec 16 16:30:44 2009
New Revision: 891291
URL: http://svn.apache.org/viewvc?rev=891291&view=rev
Log:
LABS-502 : fix for custom filters on SmartList
Modified:
labs/magma/trunk/website-beansview/src/main/java/org/apache/magma/website/beansview/SmartList.java
Modified:
labs/magma/trunk/website-beansview/src/main/java/org/apache/magma/website/beansview/SmartList.java
URL:
http://svn.apache.org/viewvc/labs/magma/trunk/website-beansview/src/main/java/org/apache/magma/website/beansview/SmartList.java?rev=891291&r1=891290&r2=891291&view=diff
==============================================================================
---
labs/magma/trunk/website-beansview/src/main/java/org/apache/magma/website/beansview/SmartList.java
(original)
+++
labs/magma/trunk/website-beansview/src/main/java/org/apache/magma/website/beansview/SmartList.java
Wed Dec 16 16:30:44 2009
@@ -52,6 +52,7 @@
private String query = null;
private Object[] queryParams = null;
+ private MagmaBeanSupport tempQbe = null;
private MagmaBeanSupport sessionReservedQbe = null;
private QueryByExampleBuilder qbuilder = null;
@@ -93,7 +94,7 @@
public <T extends MagmaBeanSupport> SmartList(Class<T> beanClass,
MagmaBeanSupport qbe) {
this.myclass = beanClass;
- this.sessionReservedQbe = qbe;
+ this.tempQbe = qbe;
}
public HtmlProducer do_default() {
@@ -172,7 +173,7 @@
public HtmlProducer doShow() {
checkSortables();
if (this.withFilter) {
- if (this.sessionReservedQbe == null) {
+ if (this.sessionReservedQbe == null && this.tempQbe ==
null) {
if (this.query == null || this.query.length()
== 0) {
try {
this.sessionReservedQbe =
this.myclass.newInstance();
@@ -182,6 +183,8 @@
} else {
throw new MagmaException("You required
a filter but also provided a query, you should either provide an empty query or
provide a query by example to use with the filter.");
}
+ } else if (this.tempQbe != null) {
+ this.sessionReservedQbe = this.tempQbe;
}
}
Database db = new Database();
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]