title: Unsupported binding namespace ""
body: <p>I have a schema for which <code>JAXB</code> is able to generate java classes perfectly every time.  I am trying to get <code>hyperjaxb</code> to process the same schema. Towards that end, I downloaded and unzipped the <code>hyperjaxb</code> maven project <a href="https://jumpshare.com/v/tAJd33crHPnUKuuIYuyM?b=EEZa1wSOu7uQua3Fi3dU" rel="nofollow">from this link</a> and then navigated to the root directory using <code>cmd.exe</code> 
  and tested it with the sample data by running <code>mvn clean install</code> to make sure that it works with the example schema. I then replaced the <code>schema.xsd</code>, <code>po.xml</code>, and <code>bindings.xjb</code> files with the full shema that works perfectly in <code>JAXB</code>, including a number of imported namespaces. I then ran <code>mvn clean install</code> again. However, I am getting the following error message:</p>
  
  <pre><code>[ERROR] Error while parsing schema(s).Location [ file:/C:/path/to/src/main/resources/schema.xsd{4,32}].
  org.xml.sax.SAXParseException; systemId: file:/C:/path/to/src/main/resources/schema.xsd; 
  lineNumber: 4; columnNumber: 32; Unsupported binding namespace "". 
  Perhaps you meant "http://annox.dev.java.net"?
  </code></pre>
  
  <p>In the sample, the schema tag at the top of schema.xsd is: </p>
  
  <pre><code>&lt;xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:jaxb="http://java.sun.com/xml/ns/jaxb" jaxb:version="1.0"&gt;
  </code></pre>
  
  <p>By contrast, my custom schema uses:</p>
  
  <pre><code>&lt;xs:schema targetNamespace="urn:some-org:v3" xmlns:mif="urn:some-org:v3/mif" xmlns="urn:some-org:v3"
      xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
      xmlns:sdtc="urn:some-org:sdtc" xmlns:jaxb="http://java.sun.com/xml/ns/jaxb" jaxb:version="1.0"&gt;  
  </code></pre>
  
  <p>Note the <code>xmlns="urn:some-org:v3"</code> in the schema tag in my custom schema.  It does not include a qualifier like <code>xmlns:somequalifier="urn:some-org:v3"</code>.  Is this causing the problem?  It works perfectly in JAXB without the qualifier.  It would be a major pain to go through the entire namespace and add a qualifier in front of every type.  </p>
  
  <p>Alternatively, it may be that the structures defined in the pom.xml for the sample project (in the zip file linked above) are causing the problem.  They are different than the basic JAXB tools.  </p>
  
  <p><strong>How can I avoid this problem?</strong>  Perferably without adding a qualifier to every type.  There are several thousand lines in my schema.</p>
  
  <p>The following lines of the stack trace might shed light:</p>
  
  <pre><code>[ERROR] Error while parsing schema(s).Location [ file:/C:/path/to/src/main/resources/schema.xsd{4,32}].
  org.xml.sax.SAXParseException; systemId: file:/C:/path/to/src/main/resources/schema.xsd; lineNumber: 4; columnNumber: 32; Unsupported binding namespace "". Perhaps you meant "http://annox.dev.java.net"?
      at com.sun.tools.xjc.reader.AbstractExtensionBindingChecker.error(AbstractExtensionBindingChecker.java:213)
      at com.sun.tools.xjc.reader.AbstractExtensionBindingChecker.checkAndEnable(AbstractExtensionBindingChecker.java:115)
      at com.sun.tools.xjc.reader.ExtensionBindingChecker.startElement(ExtensionBindingChecker.java:133)
      at org.xml.sax.helpers.XMLFilterImpl.startElement(XMLFilterImpl.java:551)
      at com.sun.tools.xjc.reader.xmlschema.parser.IncorrectNamespaceURIChecker.startElement(IncorrectNamespaceURIChecker.java:128)
      at org.xml.sax.helpers.XMLFilterImpl.startElement(XMLFilterImpl.java:551)
      at com.sun.tools.xjc.reader.xmlschema.parser.CustomizationContextChecker.startElement(CustomizationContextChecker.java:193)
      at org.xml.sax.helpers.XMLFilterImpl.startElement(XMLFilterImpl.java:551)
      at com.sun.tools.xjc.reader.internalizer.DOMForestScanner$LocationResolver.startElement(DOMForestScanner.java:147)
      at com.sun.xml.bind.unmarshaller.DOMScanner.visit(DOMScanner.java:244)
      at com.sun.xml.bind.unmarshaller.DOMScanner.scan(DOMScanner.java:127)
      at com.sun.tools.xjc.reader.internalizer.DOMForestScanner.scan(DOMForestScanner.java:92)
      at com.sun.tools.xjc.reader.internalizer.DOMForestScanner.scan(DOMForestScanner.java:100)
      at com.sun.tools.xjc.reader.internalizer.DOMForestParser.parse(DOMForestParser.java:104)
      at com.sun.tools.xjc.ModelLoader$XMLSchemaParser.parse(ModelLoader.java:269)
      at com.sun.xml.xsom.impl.parser.NGCCRuntimeEx.parseEntity(NGCCRuntimeEx.java:347)
      at com.sun.xml.xsom.impl.parser.ParserContext.parse(ParserContext.java:128)
      at com.sun.xml.xsom.parser.XSOMParser.parse(XSOMParser.java:168)
      at com.sun.xml.xsom.parser.XSOMParser.parse(XSOMParser.java:157)
      at com.sun.tools.xjc.ModelLoader.createXSOM(ModelLoader.java:534)
      at com.sun.tools.xjc.ModelLoader.loadXMLSchema(ModelLoader.java:378)
      at com.sun.tools.xjc.ModelLoader.load(ModelLoader.java:174)
      at com.sun.tools.xjc.ModelLoader.load(ModelLoader.java:119)
      at org.jvnet.mjiip.v_2_2.XJC22Mojo.loadModel(XJC22Mojo.java:50)
      at org.jvnet.mjiip.v_2_2.XJC22Mojo.doExecute(XJC22Mojo.java:40)
      at org.jvnet.mjiip.v_2_2.XJC22Mojo.doExecute(XJC22Mojo.java:28)
      at org.jvnet.jaxb2.maven2.RawXJC2Mojo.doExecute(RawXJC2Mojo.java:318)
      at org.jvnet.jaxb2.maven2.RawXJC2Mojo.execute(RawXJC2Mojo.java:161)
      at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:106)
      at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208)
      at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
      at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
      at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)
      at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)
      at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)
      at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)
      at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:317)
      at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:152)
      at org.apache.maven.cli.MavenCli.execute(MavenCli.java:555)
      at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:214)
      at org.apache.maven.cli.MavenCli.main(MavenCli.java:158)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:606)
      at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
      at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
      at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
      at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
  </code></pre>