📄 schemavalidator.java
字号:
/**
* Validator.java
*
* Created on 2003-5-18 11:14:19
*/
package com.liuyang.ejb.xml.validation;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import org.iso_relax.verifier.Verifier;
import org.iso_relax.verifier.VerifierConfigurationException;
import org.iso_relax.verifier.VerifierFactory;
import org.jdom.Document;
import org.jdom.transform.JDOMSource;
import org.w3c.dom.Node;
import org.xml.sax.InputSource;
import org.xml.sax.SAXException;
import com.sun.msv.driver.textui.ReportErrorHandler;
/**
* @author
* <a href="mailto:jdcyang@yahoo.com.cn">刘洋</a>
*/
public class SchemaValidator extends Validator {
private Verifier verifier = null;
/**
* @param xsd
*/
public SchemaValidator(File xsd) {
// TODO Auto-generated constructor stub
VerifierFactory factory = new com.sun.msv.verifier.jarv.TheFactoryImpl();
try {
verifier = factory.newVerifier(xsd);
} catch (VerifierConfigurationException e) {
// TODO Auto-generated catch block
xsdok =false;
e.printStackTrace();
return;
} catch (SAXException e) {
// TODO Auto-generated catch block
xsdok =false;
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
xsdok =false;
e.printStackTrace();
}
verifier.setErrorHandler( new ReportErrorHandler() );
}
/**
* @param xsd
*/
public SchemaValidator(InputSource xsd) {
// TODO Auto-generated constructor stub
VerifierFactory factory = new com.sun.msv.verifier.jarv.TheFactoryImpl();
try {
verifier = factory.newVerifier(xsd);
} catch (VerifierConfigurationException e) {
// TODO Auto-generated catch block
xsdok =false;
e.printStackTrace();
return;
} catch (SAXException e) {
// TODO Auto-generated catch block
xsdok =false;
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
xsdok =false;
e.printStackTrace();
}
verifier.setErrorHandler( new ReportErrorHandler() );
}
/**
* @param xsd
*/
public SchemaValidator(InputStream xsd) {
// TODO Auto-generated constructor stub
VerifierFactory factory = new com.sun.msv.verifier.jarv.TheFactoryImpl();
try {
verifier = factory.newVerifier(xsd);
} catch (VerifierConfigurationException e) {
// TODO Auto-generated catch block
xsdok =false;
e.printStackTrace();
return;
} catch (SAXException e) {
// TODO Auto-generated catch block
xsdok =false;
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
xsdok =false;
e.printStackTrace();
}
verifier.setErrorHandler( new ReportErrorHandler() );
}
/**
* @param xsd
*/
public SchemaValidator(String xsd) {
// TODO Auto-generated constructor stub
VerifierFactory factory = new com.sun.msv.verifier.jarv.TheFactoryImpl();
try {
verifier = factory.newVerifier(xsd);
} catch (VerifierConfigurationException e) {
// TODO Auto-generated catch block
xsdok =false;
e.printStackTrace();
return;
} catch (SAXException e) {
// TODO Auto-generated catch block
xsdok =false;
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
xsdok =false;
e.printStackTrace();
}
verifier.setErrorHandler( new ReportErrorHandler() );
}
/**
* @return
*/
public Verifier getVerifier() {
return verifier;
}
/**
* @param verifier
*/
public void setVerifier(Verifier verifier) {
this.verifier = verifier;
}
/* (non-Javadoc)
* @see com.liuy.commons.schema.Validater#validate(java.io.File)
*/
public boolean validate(File xmlinstance) {
// TODO Auto-generated method stub
if(xsdok == false)return false;
boolean result = false;
try {
result = verifier.verify(xmlinstance);
} catch (SAXException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return result;
}
/* (non-Javadoc)
* @see com.liuy.commons.schema.Validater#validate(org.xml.sax.InputSource)
*/
public boolean validate(InputSource xmlinstance) {
// TODO Auto-generated method stub
if(xsdok == false)return false;
boolean result = false;
try {
result = verifier.verify(xmlinstance);
} catch (SAXException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return result;
}
/* (non-Javadoc)
* @see com.liuy.commons.schema.Validater#validate(org.w3c.dom.Node)
*/
public boolean validate(Node xmlinstance) {
// TODO Auto-generated method stub
if(xsdok == false)return false;
boolean result = false;
try {
result = verifier.verify(xmlinstance);
} catch (SAXException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return result;
}
/**
* @param xmlinstance
* @return
*/
public boolean validate(Document xmlinstance) {
// TODO Auto-generated method stub
if(xsdok == false)return false;
boolean result = false;
try {
result = verifier.verify(new JDOMSource(xmlinstance).getInputSource());
} catch (SAXException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return result;
}
/**
* @param xmlinstance
* @return
*/
public boolean validate(String xmlinstance) {
// TODO Auto-generated method stub
if(xsdok == false)return false;
boolean result = false;
try {
result = verifier.verify(xmlinstance);
} catch (SAXException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return result;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -