DocumentBuilderFactory dbf = 
        DocumentBuilderFactory.newInstance();
      dbf.setNamespaceAware(true);
      dbf.setValidating(true);
      if (useSchema)
          dbf.setAttribute("http://java.sun.com/xml/jaxp/properties/schemaLanguage", 
                           "http://www.w3.org/2001/XMLSchema");
      DocumentBuilder db = dbf.newDocumentBuilder();

解决方案 »

  1.   

    to icy_csdn:
    感谢你的回复
    对xml进行schema的验证,通常有2种方法指定schema,一是在xml文档中指定,如同我的问题里面写的。另外是在程序里面通过setAttribute指定,如同你回复的一样。可是两种方法我都没搞定。当通过setAttribute来指定schema和schemalanguage之类的属性时,总提示no attributes are implemented at org.apache.crimson.jaxp.DocumentBuilderFactoryImp.setAttribute(Unknow Source).
    你有没有示例代码贴出来看看?多谢多谢
      

  2.   

    自己搞定了
    谢谢楼上诸位兄台.
    原因是我在j2sdk1.4.2的环境下,jaxp的版本过低
    需要较新的jaxp 库
    两种指定schema的方法都可以运行通过
    怪自己看的不够仔细
    结贴,接分