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

Modified Files:
      Tag: MMBase-1_8
        FieldInfoTag.java mmbase-taglib.xml 
Added Files:
      Tag: MMBase-1_8
        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


DataTypeTag.java is new



Index: FieldInfoTag.java
===================================================================
RCS file: 
/var/cvs/applications/taglib/src/org/mmbase/bridge/jsp/taglib/FieldInfoTag.java,v
retrieving revision 1.97.2.6
retrieving revision 1.97.2.7
diff -u -b -r1.97.2.6 -r1.97.2.7
--- FieldInfoTag.java   3 Apr 2008 16:28:18 -0000       1.97.2.6
+++ FieldInfoTag.java   19 Aug 2008 09:38:07 -0000      1.97.2.7
@@ -43,7 +43,7 @@
  * @author Michiel Meeuwissen
  * @author Jaco de Groot
  * @author Gerard van de Looi
- * @version $Id: FieldInfoTag.java,v 1.97.2.6 2008/04/03 16:28:18 michiel Exp $
+ * @version $Id: FieldInfoTag.java,v 1.97.2.7 2008/08/19 09:38:07 michiel Exp $
  */
 public class FieldInfoTag extends FieldReferrerTag implements Writer {
     private static Logger log;
@@ -164,11 +164,23 @@
      * @since MMBase-1.8
      */
     public DataType getDataType() throws JspTagException {
-        String dataTypeName = dataType.getString(this);
-        if (dataTypeName.equals("")) {
+        if (dataType != Attribute.NULL) {
+            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 '" + name + "'");
+            }
+            return dt;
+        } else {
             return null;
         }
-        return DataTypes.getDataType(dataTypeName);
     }
 
     /**


Index: mmbase-taglib.xml
===================================================================
RCS file: 
/var/cvs/applications/taglib/src/org/mmbase/bridge/jsp/taglib/mmbase-taglib.xml,v
retrieving revision 1.374.2.30
retrieving revision 1.374.2.31
diff -u -b -r1.374.2.30 -r1.374.2.31
--- mmbase-taglib.xml   18 Aug 2008 14:37:51 -0000      1.374.2.30
+++ mmbase-taglib.xml   19 Aug 2008 09:38:07 -0000      1.374.2.31
@@ -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.374.2.30 2008/08/18 14:37:51 michiel Exp $
+version: $Id: mmbase-taglib.xml,v 1.374.2.31 2008/08/19 09:38:07 michiel Exp $
 
 -->
 <taglib author="MMBase community">
@@ -8431,7 +8431,6 @@
     </attribute>
   </tag>
 
-  <!--
   <tag>
     <name>datatype</name>
     <extends>contextreferrer</extends>
@@ -8439,13 +8438,17 @@
     <bodycontent>JSP</bodycontent>
     <info>
     </info>
-    <since>MMBase-1.8.5</since>
+    <since>MMBase-1.8.7</since>
     <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