Update of /var/cvs/src/org/mmbase/framework/basic
In directory james.mmbase.org:/tmp/cvs-serv20962
Modified Files:
ChainedUrlConverter.java
Log Message:
made urlconverter parameter resistant against non existing classes
See also: http://cvs.mmbase.org/viewcvs/src/org/mmbase/framework/basic
Index: ChainedUrlConverter.java
===================================================================
RCS file: /var/cvs/src/org/mmbase/framework/basic/ChainedUrlConverter.java,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -b -r1.14 -r1.15
--- ChainedUrlConverter.java 27 Oct 2008 17:27:37 -0000 1.14
+++ ChainedUrlConverter.java 27 Oct 2008 17:42:31 -0000 1.15
@@ -13,6 +13,7 @@
import javax.servlet.http.HttpServletRequest;
+import org.mmbase.bridge.*;
import org.mmbase.framework.*;
import org.mmbase.util.functions.Parameters;
import org.mmbase.util.functions.Parameter;
@@ -27,7 +28,7 @@
* outcome of a converter can be added to the outcome of its preceder.
*
* @author André van Toly
- * @version $Id: ChainedUrlConverter.java,v 1.14 2008/10/27 17:27:37 michiel
Exp $
+ * @version $Id: ChainedUrlConverter.java,v 1.15 2008/10/27 17:42:31 michiel
Exp $
* @since MMBase-1.9
*/
public class ChainedUrlConverter implements UrlConverter {
@@ -35,7 +36,19 @@
private static final Logger log =
Logging.getLoggerInstance(ChainedUrlConverter.class);
- public static Parameter<Class> URLCONVERTER_PARAM = new
Parameter<Class>("urlconverter", Class.class);
+ public static Parameter<Class> URLCONVERTER_PARAM = new
Parameter<Class>("urlconverter", new
org.mmbase.datatypes.BasicDataType<Class>("class", Class.class) {
+ protected Class cast(Object value, Cloud cloud, Node node, Field
field) throws org.mmbase.datatypes.CastException {
+ try {
+ Object preCast = preCast(value, cloud, node, field);
+ if (preCast == null) return null;
+ Class cast = org.mmbase.util.Casting.toType(Class.class,
cloud, preCast);
+ return cast;
+ } catch (IllegalArgumentException iae) {
+ log.info(iae.getMessage());
+ return null;
+ }
+ }
+ });
public static String URLCONVERTER = "org.mmbase.urlconverter";
/**
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs