public WSDLModelerBase(WsimportOptions options, ErrorReceiver receiver, MetadataFinder forest) { this.options = options; this.errReceiver = new ErrorReceiverFilter(receiver); this.forest = forest; }
@Override public void info(SAXParseException exception) { if (options.verbose) super.info(exception); }
@Override public void warning(SAXParseException exception) { if (!options.quiet) super.warning(exception); }
errReceiver.error(forest.locatorTable.getStartLocation(e2), WsdlMessages.PARSING_ONLY_ONE_DOCUMENTATION_ALLOWED(e.getLocalName())); return null; } else if (XmlUtil.matchesTagNS(e2, WSDLConstants.QNAME_TYPES)) { if (gotTypes && !options.isExtensionMode()) { errReceiver.error(forest.locatorTable.getStartLocation(e2), WsdlMessages.PARSING_ONLY_ONE_TYPES_ALLOWED(Constants.TAG_DEFINITIONS)); return null; definitions.add(parseImport(context, definitions, e2)); } else if (XmlUtil.matchesTagNS(e2, SchemaConstants.QNAME_IMPORT)) { errReceiver.warning(forest.locatorTable.getStartLocation(e2), WsdlMessages.WARNING_WSI_R_2003()); } else {
private Result toResult(File file) { Result result; try { result = new StreamResult(new FileOutputStream(file)); result.setSystemId(file.getPath().replace('\\', '/')); } catch (FileNotFoundException e) { errReceiver.error(e); return null; } return result; }
if (model == null || errReceiver.hadError()) { return null; if (errReceiver.hadError()) { return null; if (classNameCollector.getConflictingClassNames().isEmpty()) { if (errReceiver.hadError()) { return null; reportError(document.getDefinitions(), e.getMessage(), e); } catch (ParseException e) { errReceiver.error(e); } catch (ValidationException e) { errReceiver.error(e.getMessage(), e); } catch (SAXException e) { errReceiver.error(e); } catch (IOException e) { errReceiver.error(e);
public WSDLDocument parse() throws SAXException, IOException { // parse external binding files for (InputSource value : options.getWSDLBindings()) { errReceiver.pollAbort(); Document root = forest.parse(value, false); if(root==null) continue; // error must have been reported Element binding = root.getDocumentElement(); if (!Internalizer.fixNull(binding.getNamespaceURI()).equals(JAXWSBindingsConstants.NS_JAXWS_BINDINGS) || !binding.getLocalName().equals("bindings")){ errReceiver.error(forest.locatorTable.getStartLocation(binding), WsdlMessages.PARSER_NOT_A_BINDING_FILE( binding.getNamespaceURI(), binding.getLocalName())); continue; } NodeList nl = binding.getElementsByTagNameNS( "http://java.sun.com/xml/ns/javaee", "handler-chains"); for(int i = 0; i < nl.getLength(); i++){ options.addHandlerChainConfiguration((Element) nl.item(i)); } } return buildWSDLDocument(); }
public void testParseEmpty() throws Exception { final ErrorReceiverFilter errorReceiver = new ErrorReceiverFilter(); final InputSource source = getResourceSource("com/sun/tools/ws/wsdl/parser/empty.wsdl"); final WsimportOptions options = new WsimportOptions(); options.addWSDL(source); final WSDLParser instance = new WSDLParser(options, errorReceiver); final WSDLDocument wsdl = instance.parse(); assertNull(wsdl); assertTrue(errorReceiver.hadError()); }
public void testParsePolicy15() throws Exception { final ErrorReceiverFilter errorReceiver = createErrorReceiver(); final InputSource source = getResourceSource("com/sun/tools/ws/wsdl/parser/policy15.wsdl"); final WsimportOptions options = new WsimportOptions(); options.addWSDL(source); final WSDLParser instance = new WSDLParser(options, errorReceiver); final WSDLDocument wsdl = instance.parse(); assertNotNull(wsdl); assertFalse(errorReceiver.hadError()); }
public ErrorReceiverFilter( ErrorListener h ) { setErrorReceiver(h); }
public WSDLParser(WsimportOptions options, ErrorReceiverFilter errReceiver, MetadataFinder forest) { this.extensionHandlers = new HashMap(); this.options = options; this.errReceiver = errReceiver; if (forest == null) { forest = new MetadataFinder(new WSDLInternalizationLogic(), options, errReceiver); forest.parseWSDL(); if (forest.isMexMetadata) { errReceiver.reset(); } } this.forest = forest; // register handlers for default extensions register(new SOAPExtensionHandler(extensionHandlers)); register(new HTTPExtensionHandler(extensionHandlers)); register(new MIMEExtensionHandler(extensionHandlers)); register(new JAXWSBindingExtensionHandler(extensionHandlers)); register(new SOAP12ExtensionHandler(extensionHandlers)); // MemberSubmission Addressing not supported by WsImport anymore see JAX_WS-1040 for details //register(new MemberSubmissionAddressingExtensionHandler(extensionHandlers, errReceiver, options.isExtensionMode())); register(new W3CAddressingExtensionHandler(extensionHandlers, errReceiver)); register(new W3CAddressingMetadataExtensionHandler(extensionHandlers, errReceiver)); register(new Policy12ExtensionHandler()); register(new Policy15ExtensionHandler()); for (TWSDLExtensionHandler te : ServiceFinder.find(TWSDLExtensionHandler.class)) { register(te); } }
errReceiver.error(forest.locatorTable.getStartLocation(e2), WsdlMessages.PARSING_ONLY_ONE_DOCUMENTATION_ALLOWED(e.getLocalName())); return null; } else if (XmlUtil.matchesTagNS(e2, WSDLConstants.QNAME_TYPES)) { if (gotTypes && !options.isExtensionMode()) { errReceiver.error(forest.locatorTable.getStartLocation(e2), WsdlMessages.PARSING_ONLY_ONE_TYPES_ALLOWED(Constants.TAG_DEFINITIONS)); return null; definitions.add(parseImport(context, definitions, e2)); } else if (XmlUtil.matchesTagNS(e2, SchemaConstants.QNAME_IMPORT)) { errReceiver.warning(forest.locatorTable.getStartLocation(e2), WsdlMessages.WARNING_WSI_R_2003()); } else {
if (model == null || errReceiver.hadError()) { return null; if (errReceiver.hadError()) { return null; if (classNameCollector.getConflictingClassNames().isEmpty()) { if (errReceiver.hadError()) { return null; reportError(document.getDefinitions(), e.getMessage(), e); } catch (ParseException e) { errReceiver.error(e); } catch (ValidationException e) { errReceiver.error(e.getMessage(), e); } catch (SAXException e) { errReceiver.error(e); } catch (IOException e) { errReceiver.error(e);
public WSDLDocument parse() throws SAXException, IOException { // parse external binding files for (InputSource value : options.getWSDLBindings()) { errReceiver.pollAbort(); Document root = forest.parse(value, false); if(root==null) continue; // error must have been reported Element binding = root.getDocumentElement(); if (!Internalizer.fixNull(binding.getNamespaceURI()).equals(JAXWSBindingsConstants.NS_JAXWS_BINDINGS) || !binding.getLocalName().equals("bindings")){ errReceiver.error(forest.locatorTable.getStartLocation(binding), WsdlMessages.PARSER_NOT_A_BINDING_FILE( binding.getNamespaceURI(), binding.getLocalName())); continue; } NodeList nl = binding.getElementsByTagNameNS( "http://java.sun.com/xml/ns/javaee", "handler-chains"); for(int i = 0; i < nl.getLength(); i++){ options.addHandlerChainConfiguration((Element) nl.item(i)); } } return buildWSDLDocument(); }
public void testParseSimple() throws Exception { final ErrorReceiverFilter errorReceiver = createErrorReceiver(); final InputSource source = getResourceSource("com/sun/tools/ws/wsdl/parser/simple.wsdl"); final WsimportOptions options = new WsimportOptions(); options.addWSDL(source); final WSDLParser instance = new WSDLParser(options, errorReceiver); final WSDLDocument wsdl = instance.parse(); assertNotNull(wsdl); assertFalse(errorReceiver.hadError()); }
public ErrorReceiverFilter( ErrorListener h ) { setErrorReceiver(h); }
public WSDLParser(WsimportOptions options, ErrorReceiverFilter errReceiver, MetadataFinder forest) { this.extensionHandlers = new HashMap(); this.options = options; this.errReceiver = errReceiver; if (forest == null) { forest = new MetadataFinder(new WSDLInternalizationLogic(), options, errReceiver); forest.parseWSDL(); if (forest.isMexMetadata) { errReceiver.reset(); } } this.forest = forest; // register handlers for default extensions register(new SOAPExtensionHandler(extensionHandlers)); register(new HTTPExtensionHandler(extensionHandlers)); register(new MIMEExtensionHandler(extensionHandlers)); register(new JAXWSBindingExtensionHandler(extensionHandlers)); register(new SOAP12ExtensionHandler(extensionHandlers)); // MemberSubmission Addressing not supported by WsImport anymore see JAX_WS-1040 for details //register(new MemberSubmissionAddressingExtensionHandler(extensionHandlers, errReceiver, options.isExtensionMode())); register(new W3CAddressingExtensionHandler(extensionHandlers, errReceiver)); register(new W3CAddressingMetadataExtensionHandler(extensionHandlers, errReceiver)); register(new Policy12ExtensionHandler()); register(new Policy15ExtensionHandler()); for (TWSDLExtensionHandler te : ServiceFinder.find(TWSDLExtensionHandler.class)) { register(te); } }
errReceiver.error(forest.locatorTable.getStartLocation(e2), WsdlMessages.PARSING_ONLY_ONE_DOCUMENTATION_ALLOWED(e.getLocalName())); return null; } else if (XmlUtil.matchesTagNS(e2, WSDLConstants.QNAME_TYPES)) { if (gotTypes && !options.isExtensionMode()) { errReceiver.error(forest.locatorTable.getStartLocation(e2), WsdlMessages.PARSING_ONLY_ONE_TYPES_ALLOWED(Constants.TAG_DEFINITIONS)); return null; definitions.add(parseImport(context, definitions, e2)); } else if (XmlUtil.matchesTagNS(e2, SchemaConstants.QNAME_IMPORT)) { errReceiver.warning(forest.locatorTable.getStartLocation(e2), WsdlMessages.WARNING_WSI_R_2003()); } else {
@Override public void warning(SAXParseException exception) { if (!options.quiet) super.warning(exception); }