Nov 19

You can specify a schema for validation when configuring the DocumentBuilderFactory that is used to parse the XML

static final String JAXP_SCHEMA_LANGUAGE =
    "http://java.sun.com/xml/jaxp/properties/schemaLanguage";
static final String W3C_XML_SCHEMA =
    "http://www.w3.org/2001/XMLSchema";

DocumentBuilderFactory factory = 
   DocumentBuilderFactory.newInstance();
factory.setNamespaceAware(true);
factory.setValidating(true);
factory.setAttribute(JAXP_SCHEMA_LANGUAGE, W3C_XML_SCHEMA);

DocumentBuilder builder = factory.newDocumentBuilder();
Document document = builder.parse(url.openStream()); 

written by objects \\ tags: , , , , ,

Oct 24

Recently added a Facebook Fan/Like box widget to one of our sites. We used the following code and it worked great in our development environment when we tested it on Firefox and Safari.

<fb:fan href="http://www.facebook.com/obiweb"
   profileID="115185598512736"
   width="210" height="600" connections="0"></fb:fan>

But as is all too often the case when we tested it on IE it failed. No errors just a big blank space.

After some investigation it turns out that IE needs the Facebook namespace defined in the html tag. Adding the namespace as shown below fixed the problem.

<html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://www.facebook.com/2008/fbml">

The end result can be found on the Obiweb blog.

written by objects \\ tags: , , , , ,