Update of /var/cvs/applications/taglib/src/org/mmbase/bridge/jsp/taglib
In directory james.mmbase.org:/tmp/cvs-serv9279

Modified Files:
        FieldInfoTag.java mmbase-taglib.xml 
Added Files:
        DataTypeTag.java 
Log Message:
  MMB-1589


See also: 
http://cvs.mmbase.org/viewcvs/applications/taglib/src/org/mmbase/bridge/jsp/taglib
See also: http://www.mmbase.org/jira/browse/MMB-1589




Index: FieldInfoTag.java
===================================================================
RCS file: 
/var/cvs/applications/taglib/src/org/mmbase/bridge/jsp/taglib/FieldInfoTag.java,v
retrieving revision 1.112
retrieving revision 1.113
diff -u -b -r1.112 -r1.113
--- FieldInfoTag.java   14 Aug 2008 13:59:34 -0000      1.112
+++ FieldInfoTag.java   19 Aug 2008 09:41:24 -0000      1.113
@@ -43,7 +43,7 @@
  * @author Michiel Meeuwissen
  * @author Jaco de Groot
  * @author Gerard van de Looi
- * @version $Id: FieldInfoTag.java,v 1.112 2008/08/14 13:59:34 michiel Exp $
+ * @version $Id: FieldInfoTag.java,v 1.113 2008/08/19 09:41:24 michiel Exp $
  */
 public class FieldInfoTag extends FieldReferrerTag implements Writer {
     private static Logger log;
@@ -170,8 +170,18 @@
      */
     public DataType getDataType() throws JspTagException {
         if (dataType != Attribute.NULL) {
-            DataType dt =  DataTypes.getDataType(dataType.getString(this));
-            if (dt == null) throw new JspTagException("No datatype '" + 
dataType + "'");
+            String name = dataType.getString(this);
+            DataType dt = null;
+            DataTypeCollector collector = (DataTypeCollector) 
pageContext.getAttribute(DataTypeTag.KEY, DataTypeTag.SCOPE);
+            if (collector != null) {
+                dt = collector.getDataType(name);
+            }
+            if (dt == null) {
+                dt =  DataTypes.getDataType(name);
+            }
+            if (dt == null) {
+                throw new JspTagException("No datatype '" + dataType + "'");
+            }
             return dt;
         } else {
             return null;


Index: mmbase-taglib.xml
===================================================================
RCS file: 
/var/cvs/applications/taglib/src/org/mmbase/bridge/jsp/taglib/mmbase-taglib.xml,v
retrieving revision 1.435
retrieving revision 1.436
diff -u -b -r1.435 -r1.436
--- mmbase-taglib.xml   18 Aug 2008 14:38:06 -0000      1.435
+++ mmbase-taglib.xml   19 Aug 2008 09:41:24 -0000      1.436
@@ -39,7 +39,7 @@
 Use one or more possiblevalue tags if you want to list all possible values. Use
 one or more examplevalue tags is you want to give some example values.
 
-version: $Id: mmbase-taglib.xml,v 1.435 2008/08/18 14:38:06 michiel Exp $
+version: $Id: mmbase-taglib.xml,v 1.436 2008/08/19 09:41:24 michiel Exp $
 
 -->
 <taglib author="MMBase community">
@@ -8836,9 +8836,9 @@
   </tag>
 
   <tag>
+    <name>escape</name>
     <extends>cloudreferrer</extends>
     <type>util.html</type>
-    <name>escape</name>
     <tagclass>org.mmbase.bridge.jsp.taglib.EscapeTag</tagclass>
     <info>
       Simply escapes it's body.
@@ -8854,6 +8854,24 @@
     </attribute>
   </tag>
 
+  <tag>
+    <name>datatype</name>
+    <extends>contextreferrer</extends>
+    <tagclass>org.mmbase.bridge.jsp.taglib.DataTypeTag</tagclass>
+    <bodycontent>JSP</bodycontent>
+    <info>This tag defines a new datatype with a lifetime of the current 
request. It's body is XML as used in datatypes.xml and builder xml's.</info>
+    <since>MMBase-1.8.7</since>
+    <see tag="fieldinfo" attribute="datatype" />
+    <attribute>
+      <name>base</name>
+      <required>true</required>
+    </attribute>
+    <attribute>
+      <name>id</name>
+      <required>true</required>
+    </attribute>
+  </tag>
+
   <!--
   <tag>
     <name>test</name>
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs

Reply via email to