title: The character [_] is never valid in a domain name
body: <p>I have an exception that underscore cannot be used in the domain names. I want to know whether this exception is version specific or underscore cannot be given in the domain names. If it is version specific, advice me how to resolve it.</p>
  
  <blockquote>
    <p>java.lang.IllegalArgumentException: The character [_] is never valid
    in a domain name.     at
    org.apache.tomcat.util.http.parser.HttpParser$DomainParseState.next(HttpParser.java:946)
      at
    org.apache.tomcat.util.http.parser.HttpParser.readHostDomainName(HttpParser.java:842)
      at org.apache.tomcat.util.http.parser.Host.parse(Host.java:66)  at
    org.apache.tomcat.util.http.parser.Host.parse(Host.java:40)   at
    org.apache.coyote.AbstractProcessor.parseHost(AbstractProcessor.java:277)
      at
    org.apache.coyote.ajp.AjpProcessor.prepareRequest(AjpProcessor.java:934)
      at org.apache.coyote.ajp.AjpProcessor.service(AjpProcessor.java:456)
      at
    org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
      at
    org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:800)
      at
    org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1471)
      at
    org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
      at
    java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
      at
    java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
      at
    org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
      at java.lang.Thread.run(Thread.java:745)</p>
  </blockquote>