Update of /var/cvs/applications/taglib/src/org/mmbase/bridge/jsp/taglib
In directory james.mmbase.org:/tmp/cvs-serv19794
Modified Files:
FormatterTag.java
Log Message:
This formatter tag was broken if you happen to have an xinclude incapable xml
parser (like the ancient xerces 2.6)
See also:
http://cvs.mmbase.org/viewcvs/applications/taglib/src/org/mmbase/bridge/jsp/taglib
Index: FormatterTag.java
===================================================================
RCS file:
/var/cvs/applications/taglib/src/org/mmbase/bridge/jsp/taglib/FormatterTag.java,v
retrieving revision 1.79
retrieving revision 1.80
diff -u -b -r1.79 -r1.80
--- FormatterTag.java 4 Sep 2008 12:31:07 -0000 1.79
+++ FormatterTag.java 1 Apr 2009 14:12:52 -0000 1.80
@@ -42,7 +42,7 @@
*
* @since MMBase-1.6
* @author Michiel Meeuwissen
- * @version $Id: FormatterTag.java,v 1.79 2008/09/04 12:31:07 michiel Exp $
+ * @version $Id: FormatterTag.java,v 1.80 2009/04/01 14:12:52 michiel Exp $
*/
public class FormatterTag extends CloudReferrerTag implements ParamHandler {
@@ -114,8 +114,11 @@
try {
javax.xml.parsers.DocumentBuilderFactory dfactory =
javax.xml.parsers.DocumentBuilderFactory.newInstance();
-
+ try {
dfactory.setXIncludeAware(true);
+ } catch (UnsupportedOperationException uoe) {
+ log.warn("DocumentBuilderFactory implementation does not
suppoer xinclude: " + dfactory.getClass() + ": " + uoe.getMessage());
+ }
dfactory.setNamespaceAware(false);
documentBuilder = dfactory.newDocumentBuilder();
dfactory.setNamespaceAware(true);
@@ -127,7 +130,7 @@
documentBuilderNS.setErrorHandler(handler);
documentBuilderNS.setEntityResolver(resolver);
} catch (Exception e) {
- log.error(e.toString());
+ log.error(e.getMessage(), e);
}
}
@@ -353,7 +356,6 @@
if (encoding == null) encoding = "UTF-8"; // it _must_ be
XML.
javax.servlet.http.HttpServletRequest request =
(javax.servlet.http.HttpServletRequest)pageContext.getRequest();
DocumentBuilder db = namespaceAware.getBoolean(this,
true) ? documentBuilderNS : documentBuilder;
- log.debug("xinclude " + db.isXIncludeAware());
doc = db.parse(new
java.io.ByteArrayInputStream(body.getBytes(encoding)),
pageContext.getServletContext().getResource(request.getServletPath()).toString()
);
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs