public void failFastValidate(XmlObject xmlObject) throws XmlObjectValidationException { FailFastErrorHandler failFastErrorHandler = new FailFastErrorHandler(); try { validate(xmlObject, failFastErrorHandler); } catch (FailFastValidationException ffve) { throw new XmlObjectValidationException("xml object is not valid!", ffve.getCause()); } }
@Override public IProjectInstanceMetaData getMetaData(File file, IProjectInstanceFormat format) throws ServiceException { XmlContext context = new XmlContextFactory().newContext(); XmlObjectReader reader = context.createReader(); XmlObjectValidator validator = context.createValidator(); Schema xsd; try { xsd = reader.readDocument(new FileInputStream(file), Schema.class); validator.failFastValidate(xsd); } catch (FileNotFoundException e) { e.printStackTrace(); return null; } catch (XmlObjectReadException e) { e.printStackTrace(); return null; } catch (XmlObjectValidationException e) { e.printStackTrace(); throw new ServiceException("Invalid XSD file : "+e.getMessage()); } String location = WebEditorService.ATTACHMENTS_DIR + File.separator + file.getName(); XSDImportBean impt = ImportAdapter.adaptSchemaImport(getPrefix(), location, xsd); SchemaProjectInstanceMetaData metaData = new SchemaProjectInstanceMetaData(impt); return metaData; }
return null; } catch (XmlObjectValidationException e) { e.printStackTrace(); throw new ServiceException("Invalid BPMN file : "+e.getMessage());
@Override public IProjectInstanceMetaData getMetaData(File file, IProjectInstanceFormat format) throws ServiceException { XmlContext context = new XmlContextFactory().newContext(); XmlObjectReader reader = context.createReader(); XmlObjectValidator validator = context.createValidator(); Definitions defs; try { defs = reader.readDocument(new FileInputStream(file), Definitions.class); validator.failFastValidate(defs); checkWSDLCompatibility(defs); } catch (FileNotFoundException e) { e.printStackTrace(); return null; } catch (XmlObjectReadException e) { e.printStackTrace(); return null; } catch (XmlObjectValidationException e) { e.printStackTrace(); throw new ServiceException("Invalid WSDL file : "+e.getMessage()); } catch (IncompatibleWSDLException e) { throw new ServiceException("Incompatible WSDL file : "+e.getMessage()); } String location = WebEditorService.ATTACHMENTS_DIR + File.separator + file.getName(); WSDLImportBean impt = (WSDLImportBean) ImportAdapter.adaptWSDLImport(getPrefix(), location, defs); WSDLProjectInstanceMetaData metaData = new WSDLProjectInstanceMetaData(impt); return metaData; }