*/
@Override
protected void createData(Connection con) throws SQLException {
FileHolder fileHolder;
String schema = "";
XmlReader xmlReader;
if (type == ImportType.TEXTS) {
fileHolder = (FileHolder)fetch.getObject("IMPORTTEXT_XMLTOIMPORT");
schema = XMLImporter.getSchema("textSchema");
xmlReader = new XmlTextReader();
} else if (type == ImportType.XLIFF) {
fileHolder = (FileHolder)fetch.getObject("IMPORTTEXT_XLIFFTOIMPORT");
schema = XMLImporter.getSchema("xliffSchema");
xmlReader = new XliffReader();
} else {
fileHolder = (FileHolder)fetch.getObject("IMPORTVARIABLES_XMLTOIMPORT");
//Get the schema from context.xml
schema = XMLImporter.getSchema("variableSchema");
xmlReader = new XmlVariableReader();
}
if (fileHolder != null && fileHolder.getFileContent() != null) {
ByteArrayInputStream is = null;
InputStream schemaIs = null;
URL schemaUrl = null;
try {
is = new ByteArrayInputStream(fileHolder.getFileContent());
//Read and insert texts into database
ClassLoader loader = Thread.currentThread().getContextClassLoader();
schemaIs = loader.getResourceAsStream(schema);
if(schemaIs == null){
schemaUrl = new URL(schema);
schemaIs = schemaUrl.openStream();
}
XmlFileResult result = xmlReader.readFile(is, con, schemaIs);
Document errorDoc = null;
if (result.hasErrors()) {
errorDoc = styleDocument(result.getErrorDoc(),
pageContext.getServletContext().getResourceAsStream("xmlError.xsl"));
} else {