本文整理汇总了Java中org.apache.xerces.xs.XSLoader类的典型用法代码示例。如果您正苦于以下问题:Java XSLoader类的具体用法?Java XSLoader怎么用?Java XSLoader使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
XSLoader类属于org.apache.xerces.xs包,在下文中一共展示了XSLoader类的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: SchemaLoader
import org.apache.xerces.xs.XSLoader; //导入依赖的package包/类
/**
* Constructor to build a Schema instance around a given nodeName
*
* @param schemaFileURI a schema file URI.
* @param nodeName the local name of the target node.
* @throws Exception if there is an error loading the schema or if the root element count in the schema is less than
* one.
*/
public SchemaLoader(String schemaFileURI, String nodeName) throws Exception {
this.setSchemaFileURI(schemaFileURI);
targetNode = nodeName;
// get DOM Implementation using DOM Registry
System.setProperty(DOMImplementationRegistry.PROPERTY, DOMXSImplementationSourceImpl.class.getName());
impRegistry = DOMImplementationRegistry.newInstance();
XSImplementation impl = (XSImplementation) impRegistry.getDOMImplementation("XS-Loader");
XSLoader schemaLoader = impl.createXSLoader(null);
// schemaLoader.getConfig().setParameter("validate", Boolean.TRUE);
String[] soapenvSchemaPath = { schemaFileURI, this.getClass().getResource(SOAP_11_SCHEMA_PATH).toExternalForm() };
StringList schemaList = new StringListImpl(soapenvSchemaPath, 2);
xsModel = schemaLoader.loadURIList(schemaList);
this.referenceNodes = new SchemaHelper(xsModel);
if (nodeName != null && 0 < nodeName.trim().length()) {
nodeChoiceList = referenceNodes.getAncestors(nodeName);
}
}
示例2: createXSLoader
import org.apache.xerces.xs.XSLoader; //导入依赖的package包/类
public XSLoader createXSLoader(StringList versions) throws XSException {
XSLoader loader = new XSLoaderImpl();
if (versions == null){
return loader;
}
for (int i=0; i<versions.getLength();i++){
if (!versions.item(i).equals("1.0")){
String msg =
DOMMessageFormatter.formatMessage(
DOMMessageFormatter.DOM_DOMAIN,
"FEATURE_NOT_SUPPORTED",
new Object[] { versions.item(i) });
throw new XSException(XSException.NOT_SUPPORTED_ERR, msg);
}
}
return loader;
}
示例3: initModel
import org.apache.xerces.xs.XSLoader; //导入依赖的package包/类
private XSModel initModel(String fileName) throws Exception {
System.setProperty(DOMImplementationRegistry.PROPERTY, "org.apache.xerces.dom.DOMXSImplementationSourceImpl");
DOMImplementationRegistry registry = DOMImplementationRegistry.newInstance();
XSImplementation impl = (XSImplementation) registry.getDOMImplementation("XS-Loader");
XSLoader schemaLoader = impl.createXSLoader(null);
DOMConfiguration config = schemaLoader.getConfig();
config.setParameter("validate", Boolean.TRUE);
return schemaLoader.loadURI(fileName);
}
示例4: registerModel
import org.apache.xerces.xs.XSLoader; //导入依赖的package包/类
/**
* registers bunch of node path's specified in the XML schema (XSD)
*
* @param model String; schema in plain text
* @throws BagriException in case of any error
*/
@Override
public void registerModel(String model) throws BagriException {
XSImplementation impl = (XSImplementation) new DOMXSImplementationSourceImpl().getDOMImplementation("XS-Loader LS");
XSLoader schemaLoader = impl.createXSLoader(null);
LSInput lsi = ((DOMImplementationLS) impl).createLSInput();
lsi.setStringData(model);
XSModel schema = schemaLoader.load(lsi);
processModel(schema);
}
示例5: registerModels
import org.apache.xerces.xs.XSLoader; //导入依赖的package包/类
/**
* registers bunch of schemas located in the schemaUri folder
*
* @param modelsUri String; the folder containing schemas to register
* @throws BagriException in case of any error
*/
//@Override
public void registerModels(String modelsUri) throws BagriException {
XSImplementation impl = (XSImplementation) new DOMXSImplementationSourceImpl().getDOMImplementation("XS-Loader LS");
XSLoader schemaLoader = impl.createXSLoader(null);
java.nio.file.Path catalog = Paths.get(modelsUri);
List<String> files = new ArrayList<>();
processCatalog(catalog, files);
if (files.size() > 0) {
StringList schemas = impl.createStringList(files.toArray(new String[files.size()]));
XSModel schema = schemaLoader.loadURIList(schemas);
processModel(schema);
}
}
示例6: registerModelUri
import org.apache.xerces.xs.XSLoader; //导入依赖的package包/类
/**
* registers bunch of schemas located in the schemaUri folder
*
* @param modelUri String; the folder containing schemas to register
* @throws BagriException in case of any error
*/
@Override
public void registerModelUri(String modelUri) throws BagriException {
XSImplementation impl = new XSImplementationImpl();
XSLoader schemaLoader = impl.createXSLoader(null);
XSModel schema = schemaLoader.loadURI(modelUri);
processModel(schema);
}
示例7: main
import org.apache.xerces.xs.XSLoader; //导入依赖的package包/类
/**
* @param args
*/
public static void main(String[] args)
{
if (!args[0].equals("--dump"))
{
// Activates the resolver for Drb
try
{
DrbFactoryResolver.setMetadataResolver (
new DrbCortexMetadataResolver (
DrbCortexModel.getDefaultModel ()));
}
catch (IOException e)
{
System.err.println ("Resolver cannot be handled.");
}
process(args[0]);
}
else
{
System.out.println("declare function local:deduplicate($list) {");
System.out.println(" if (fn:empty($list)) then ()");
System.out.println(" else");
System.out.println(" let $head := $list[1],");
System.out.println(" $tail := $list[position() > 1]");
System.out.println(" return");
System.out
.println(" if (fn:exists($tail[ . = $head ])) then " +
"local:deduplicate($tail)");
System.out.println(" else ($head, local:deduplicate($tail))");
System.out.println("};");
System.out.println();
System.out.println("declare function local:values($list) {");
System.out
.println(" fn:string-join(local:deduplicate(" +
"fn:data($list)), ' ')");
System.out.println("};");
System.out.println();
System.out.println("let $doc := !!!! GIVE PATH HERE !!!!");
System.out.println("return\n(\n");
/**
* Open XML Schema
*/
final XSLoader loader = new XMLSchemaLoader();
final XSModel model = loader.loadURI(args[1]);
XSNamedMap map = model.getComponents(XSConstants.ELEMENT_DECLARATION);
if (map != null)
{
for (int j = 0; j < map.getLength(); j++)
{
dumpElement("", (XSElementDeclaration) map.item(j));
}
}
System.out.println("\n) ^--- REMOVE LAST COMMA !!!");
}
}
示例8: main
import org.apache.xerces.xs.XSLoader; //导入依赖的package包/类
/**
* @param args
*/
public static void main(String[] args) {
LoggerHelper.setupLogger();
parseArgs(args);
XSLoader schemaLoader = getSchemaLoader();
TreeBuilder builder = new TreeBuilder();
XsdHandler xsdHandler = new XsdHandler(builder);
WriterHelper writerHelper = new WriterHelper();
SvgForXsd svg = new SvgForXsd(writerHelper);
if (style.equals(EMBODY_STYLE)) {
logger.info("The style will be embodied");
svg.setEmbodyStyle(true);
}
else {
logger.info("Using external style " + styleUrl);
svg.setEmbodyStyle(false);
svg.setStyleUri(styleUrl);
}
if (style.equals(GENERATE_STYLE)) {
logger.info("Generating style " + styleUrl + "...");
svg.printExternStyle();
logger.info("Done.");
}
for (String input : inputs) {
String output = outputUrl(input);
logger.info("Parsing " + input + "...");
XSModel model = schemaLoader.loadURI(input);
logger.info("Processing XML Schema model...");
xsdHandler.processModel(model);
logger.info("Drawing SVG " + output + "...");
writerHelper.newWriter(output);
svg.draw((AbstractSymbol) builder.getRoot());
logger.info("Done.");
}
//new xsdvi.svg.SvgSymbols(writerHelper).drawSymbols();
//logger.info("Symbols saved.");
}