Originally posted by Paul Clapham: If you look at the XML document, you will see it has a blank before the prolog. At least, the version you posted does. That's what the error message is about.
Hi, As you mentioned there is a blank before the prolog.i didn't find anyone. I come to know sometimes there are hex strings add up in starting of our xml. I had used XVi32 hex editor to check the hex strings and i found FF FE in starting.which characters to use in Place of FF FE to fix it.
That's a byte-order mark. Some software puts it at the front of XML documents even when it's technically not required to be there. And if it isn't technically required to be there, the XML parsers in Java don't ignore it.
But you could wrap your input stream in something which does ignore it. You could write a PushbackInputStream which reads until it finds the first "<", then backs up one byte so that reading it will start at the right place. Or you could use the BOMExclusionInputStream which is in the Apache Commons IO package.