[Fatal Error] :1:1: Content is not allowed in prolog. ..XML READ ERROR

Hi I am developing an application where it will read xml elements from the http site (http://www.w3schools.com/Xml/note.xml) and display in my program using DOM. while executing its giving CONTENT IS NOT ALLOWED IN PROGRAM below error. but when i am use coded xml in program itself as comment as shown in program its giving correct value. I need to read from http not from coded xml in the program. its immediate please help me out.
[Fatal Error] :1:1: Content is not allowed in prolog.
org.xml.sax.SAXParseException: Content is not allowed in prolog.
at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(Unknown Source)
at SimpleXML1.main(SimpleXML1.java:34)
import javax.xml.parsers.*;
import org.xml.sax.InputSource;
import org.w3c.dom.*;
import java.io.*;
public class SimpleXML1 {
public static void main(String arg[]) {
String xmlRecords = "http://www.w3schools.com/Xml/note.xml";
/* String xmlRecords =
" <note>" +
" <to>John</to>" +
" <from>Manager</from>" +
" <heading>XML Program</heading>" +
" <body>Simple XML</body>" +
"</note>";*/
try {
DocumentBuilderFactory dbf =
DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
InputSource is = new InputSource();
is.setCharacterStream(new StringReader(xmlRecords));
Document doc = db.parse(is);
NodeList nodes = doc.getElementsByTagName("note");
for (int i = 0; i < nodes.getLength(); i++) {
Element element = (Element) nodes.item(i);
NodeList from = element.getElementsByTagName("from");
Element line = (Element) from.item(0);
Node child1 = line.getFirstChild();
CharacterData cd = (CharacterData) child1;
System.out.println(cd.getData());
catch (Exception e) {
e.printStackTrace();
}

chrisacess wrote:String xmlRecords = "http://www.w3schools.com/Xml/note.xml";
/* snip */
is.setCharacterStream(new StringReader(xmlRecords));
Is that really how you're trying to read the online XML document? Because I don't see anything that makes a connection to the site. All you're doing is trying to parse the string "http://www.w3schools.com/Xml/note.xml" is if it were XML.
ps, That "Content not allowed in prolog" error message is worse than useless IMO. They might as well say "It didn't work" for all the good does.

Similar Messages

  • [Fatal Error] :1:1: Content is not allowed in prolog.

    I'm trying to compare an XML file to an XSLT generated file from that XML file, and when I run the the class as a JUnit Test, I get the following:
    [Fatal Error] :1:1: Content is not allowed in prolog.
    org.xml.sax.SAXParseException: Content is not allowed in prolog.
         at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(Unknown Source)
         at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(Unknown Source)
         at org.custommonkey.xmlunit.XMLUnit.buildDocument(XMLUnit.java:352)
         at org.custommonkey.xmlunit.XMLUnit.buildDocument(XMLUnit.java:339)
         at org.custommonkey.xmlunit.XMLUnit.buildControlDocument(XMLUnit.java:283)
         at org.custommonkey.xmlunit.Diff.<init>(Diff.java:116)
         at org.custommonkey.xmlunit.examples.MyXMLTestCase.testXSLTransformation(MyXMLTestCase.java:70)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
         at java.lang.reflect.Method.invoke(Unknown Source)
         at junit.framework.TestCase.runTest(TestCase.java:164)
         at junit.framework.TestCase.runBare(TestCase.java:130)
         at junit.framework.TestResult$1.protect(TestResult.java:106)
         at junit.framework.TestResult.runProtected(TestResult.java:124)
         at junit.framework.TestResult.run(TestResult.java:109)
         at junit.framework.TestCase.run(TestCase.java:120)
         at junit.framework.TestSuite.runTest(TestSuite.java:230)
         at junit.framework.TestSuite.run(TestSuite.java:225)
         at org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
         at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
         at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460)
         at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673)
         at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386)
         at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)
    Any ideas?

    In my experience, "Content is not allowed in prolog" usually means your XML file is stored in the UTF-8 encoding with a BOM. Java's UTF-8 Charset doesn't recognize the UTF-8 BOM; it decodes it and passes it along like any other character, then the XML parser chokes on it.
    To get rid of the BOM you can open the XML file in a text editor and (depending on the editor) either (1) save the file as UTF-8 without BOM, or (2) switch to hexadecimal and delete the first three bytes (EF, BB, BF).

  • [Fatal Error] :1:2: Content is not allowed in prolog.

    I am trying to parse input stream i amgetting this error please help me
    [Fatal Error] :1:2: Content is not allowed in prolog.
    org.xml.sax.SAXParseException: Content is not allowed in prolog.
         at org.apache.xerces.parsers.DOMParser.parse(Unknown Source)
         at org.apache.xerces.jaxp.DocumentBuilderImpl.parse(Unknown Source)
         at javax.xml.parsers.DocumentBuilder.parse(DocumentBuilder.java:98)
         at it.Test.DomParserExample.parseXmlFile(DomParserExample.java:90)
         at it.Test.DomParserExample.getParsedXml(DomParserExample.java:50)
         at it.sella.dbu.helper.DaoHelper.parseClobData(DaoHelper.java:28)
         at it.Test.ClobTest.getRequestView(ClobTest.java:122)
         at it.Test.ClobTest.main(ClobTest.java:30)
    Exception in thread "main" java.lang.NullPointerException
         at it.Test.DomParserExample.parseDocument(DomParserExample.java:104)
         at it.Test.DomParserExample.getParsedXml(DomParserExample.java:52)
         at it.sella.dbu.helper.DaoHelper.parseClobData(DaoHelper.java:28)
         at it.Test.ClobTest.getRequestView(ClobTest.java:122)
         at it.Test.ClobTest.main(ClobTest.java:30)
    Message was edited by:
    raj25amigo

    Thanks buddy ..it was a malformed XML i missed out a tag

  • Pplsft compIntf adapter: "XML Error: 1:1: Content is not allowed in prolog"

    Hi All,
    I am using the peoplesoft component interface adapter in IDM 5.5 and IDM 6.0.
    I configured the adapter, tested it successfully and enterred the details to create and provision a user to peoplesoft.
    But whenever I click on the save button in the end of the creation wizard I get this error:
    com.waveset.util.WavesetException: An error occurred adding user 'FX600859' to resource 'PeopleSoft Component Interface'. com.waveset.util.XmlParseException: XML Error: 1:1: Content is not allowed in prolog.I know the prolog is something about the first two lines and BOM and all - but this is like a really fresh install of IDM ( I tried and experienced the same error on both v 5.5 and 6.0) and have checked almost all the files which might be related to the user creation process.......... the error does not say which object has the defective prolog if at all..
    I have also enabled trace for a lot of classes (incrementally of course since I failed to get any info from the earlier traces..) Here are the classes/ methods that I have set show trace on:
    com.waveset.adapter.ResourceAdapterBase#createAccounts
    com.waveset.util.XmlParseException
    com.waveset.util.XmlUtil
    com.waveset.util.XmlParser
    com.waveset.adapter.PeopleSoftCompIntfcAdapter
    com.waveset.object.GenericObject
    com.waveset.adapter.ResourceAdapterBase
    All have a level of 4..... (the most verbose)
    here is the trace output:
    20060302 15:53:58.286 http-8080-Processor3(0x017050f5) ResourceAdapterBase#getRequiredResAttr() Data Read/Write Component Interface Name== com.waveset.object.ResourceAttribute@f2f973
    20060302 15:53:58.286 http-8080-Processor3(0x017050f5) ResourceAdapterBase#getRequiredResAttrVal() Data Read/Write Component Interface Name== USER_PROFILE
    20060302 15:53:58.286 http-8080-Processor3(0x017050f5) ResourceAdapterBase#getFeatures() Info
    <?xml version='1.0' encoding='UTF-8'?>
    <!DOCTYPE Object PUBLIC 'waveset.dtd' 'waveset.dtd'>
    <Object>
      <Attribute name='account'>
        <Object>
          <Attribute name='CASE_INSENSITIVE_IDS' value='account.CASE_INSENSITIVE_IDS'/>
          <Attribute name='CREATE' value='account.CREATE'/>
          <Attribute name='DELETE' value='account.DELETE'/>
          <Attribute name='DISABLE' value='account.DISABLE'/>
          <Attribute name='ENABLE' value='account.ENABLE'/>
          <Attribute name='EXCLUDE' value='account.EXCLUDE'/>
          <Attribute name='ITERATOR' value='account.ITERATOR'/>
          <Attribute name='LIST' value='account.LIST'/>
          <Attribute name='LOGIN' value='account.LOGIN'/>
          <Attribute name='PASSWORD' value='account.PASSWORD'/>
          <Attribute name='UPDATE' value='account.UPDATE'/>
        </Object>
      </Attribute>
    </Object>
    20060302 15:53:58.286 http-8080-Processor3(0x017050f5) ResourceAdapterBase#getFeatures() Exit returned= { account={ DISABLE=account.DISABLE, DELETE=account.DELETE, CASE_INSENSITIVE_IDS=account.CASE_INSENSITIVE_IDS, UPDATE=account.UPDATE, EXCLUDE=account.EXCLUDE, PASSWORD=account.PASSWORD, ENABLE=account.ENABLE, LIST=account.LIST, LOGIN=account.LOGIN, ITERATOR=account.ITERATOR, CREATE=account.CREATE } }
    20060302 15:53:58.286 Provisioning for Configurator(0x017050f5) PeopleSoftCompIntfcAdapter#getUser() Entry no args
    20060302 15:53:58.286 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#getIdentity() Entry arg1=user=User:600859
    20060302 15:53:58.286 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#getIdentity() Exit returned= FX600859
    20060302 15:53:58.286 Provisioning for Configurator(0x017050f5) PeopleSoftCompIntfcAdapter#getUser() Info Getting identity FX600859
    20060302 15:53:58.286 Provisioning for Configurator(0x017050f5) PeopleSoftCompIntfcAdapter#connect() Entry no args
    20060302 15:53:58.286 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#getRequiredResAttr() Data host== com.waveset.object.ResourceAttribute@1d6fad7
    20060302 15:53:58.286 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#getRequiredResAttrVal() Data host== chslx07.corp.fedex.com
    20060302 15:53:58.286 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#getOptionalStringResAttrVal() Data port== 18100
    20060302 15:53:58.286 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#getRequiredResAttr() Data User== com.waveset.object.ResourceAttribute@ee5d13
    20060302 15:53:58.286 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#getRequiredResAttrVal() Data User== IBCMGR
    20060302 15:53:58.286 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#getRequiredResAttr() Data Password== com.waveset.object.ResourceAttribute@1209d56
    20060302 15:53:58.286 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#getRequiredResAttrVal() Data Password== 88AF52E54FD71942:549D63D0:1098ECAEC1A:-7FFD|QS8v8QpqGTI=
    20060302 15:53:58.396 Provisioning for Configurator(0x017050f5) PeopleSoftCompIntfcAdapter#connect() Info Successful connection with ISession psft.pt8.joa.Session@30380
    20060302 15:53:58.396 Provisioning for Configurator(0x017050f5) PeopleSoftCompIntfcAdapter#connect() Exit void
    20060302 15:53:58.396 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#getRequiredResAttr() Data Read/Write Component Interface Name== com.waveset.object.ResourceAttribute@f2f973
    20060302 15:53:58.396 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#getRequiredResAttrVal() Data Read/Write Component Interface Name== USER_PROFILE
    20060302 15:53:58.396 Provisioning for Configurator(0x017050f5) PeopleSoftCompIntfcAdapter#getComponentInterface() Info Fetching compIntfcName 'USER_PROFILE'
    20060302 15:53:58.546 Provisioning for Configurator(0x017050f5) PeopleSoftCompIntfcAdapter#getComponentInterface() Info Successfully got compIntfcName 'USER_PROFILE
    20060302 15:53:58.546 Provisioning for Configurator(0x017050f5) PeopleSoftCompIntfcAdapter#invoke() Info
    Begin JOA method USER_PROFILE.setProperty {UserID,FX600859}
    20060302 15:53:58.546 Provisioning for Configurator(0x017050f5) PeopleSoftCompIntfcAdapter#invoke() Info --Returned: null
    20060302 15:53:58.546 Provisioning for Configurator(0x017050f5) PeopleSoftCompIntfcAdapter#invoke() Info End JOA method USER_PROFILE.setProperty
    20060302 15:53:58.546 Provisioning for Configurator(0x017050f5) PeopleSoftCompIntfcAdapter#invoke() Info
    Begin JOA method USER_PROFILE.invokeMethod {Get, {} }
    20060302 15:53:58.656 Provisioning for Configurator(0x017050f5) PeopleSoftCompIntfcAdapter#invoke() Info --Returned: [java.lang.Boolean] = false
    20060302 15:53:58.656 Provisioning for Configurator(0x017050f5) PeopleSoftCompIntfcAdapter#invoke() Info End JOA method USER_PROFILE.invokeMethod
    20060302 15:53:58.656 Provisioning for Configurator(0x017050f5) PeopleSoftCompIntfcAdapter#connect() Info Disconnecting from ISession psft.pt8.joa.Session@30380
    20060302 15:53:58.656 Provisioning for Configurator(0x017050f5) PeopleSoftCompIntfcAdapter#getUser() Exit void
    20060302 15:53:58.666 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#getFeatures() Entry no args
    20060302 15:53:58.666 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#getRequiredResAttr() Data Read/Write Component Interface Name== com.waveset.object.ResourceAttribute@f2f973
    20060302 15:53:58.666 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#getRequiredResAttrVal() Data Read/Write Component Interface Name== USER_PROFILE
    20060302 15:53:58.666 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#getFeatures() Info
    <?xml version='1.0' encoding='UTF-8'?>
    <!DOCTYPE Object PUBLIC 'waveset.dtd' 'waveset.dtd'>
    <Object>
      <Attribute name='account'>
        <Object>
          <Attribute name='CASE_INSENSITIVE_IDS' value='account.CASE_INSENSITIVE_IDS'/>
          <Attribute name='CREATE' value='account.CREATE'/>
          <Attribute name='DELETE' value='account.DELETE'/>
          <Attribute name='DISABLE' value='account.DISABLE'/>
          <Attribute name='ENABLE' value='account.ENABLE'/>
          <Attribute name='EXCLUDE' value='account.EXCLUDE'/>
          <Attribute name='ITERATOR' value='account.ITERATOR'/>
          <Attribute name='LIST' value='account.LIST'/>
          <Attribute name='LOGIN' value='account.LOGIN'/>
          <Attribute name='PASSWORD' value='account.PASSWORD'/>
          <Attribute name='UPDATE' value='account.UPDATE'/>
        </Object>
      </Attribute>
    </Object>
    20060302 15:53:58.666 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#getFeatures() Exit returned= { account={ DISABLE=account.DISABLE, DELETE=account.DELETE, CASE_INSENSITIVE_IDS=account.CASE_INSENSITIVE_IDS, UPDATE=account.UPDATE, EXCLUDE=account.EXCLUDE, PASSWORD=account.PASSWORD, ENABLE=account.ENABLE, LIST=account.LIST, LOGIN=account.LOGIN, ITERATOR=account.ITERATOR, CREATE=account.CREATE } }
    20060302 15:53:58.666 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#createAccounts() Entry arg1=num users: 1
    20060302 15:53:58.666 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#startConnectionWrapper() Entry no args
    20060302 15:53:58.666 Provisioning for Configurator(0x017050f5) PeopleSoftCompIntfcAdapter#connect() Entry no args
    20060302 15:53:58.666 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#getRequiredResAttr() Data host== com.waveset.object.ResourceAttribute@1d6fad7
    20060302 15:53:58.666 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#getRequiredResAttrVal() Data host== chslx07.corp.fedex.com
    20060302 15:53:58.666 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#getOptionalStringResAttrVal() Data port== 18100
    20060302 15:53:58.666 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#getRequiredResAttr() Data User== com.waveset.object.ResourceAttribute@ee5d13
    20060302 15:53:58.666 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#getRequiredResAttrVal() Data User== IBCMGR
    20060302 15:53:58.666 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#getRequiredResAttr() Data Password== com.waveset.object.ResourceAttribute@1209d56
    20060302 15:53:58.666 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#getRequiredResAttrVal() Data Password== 88AF52E54FD71942:549D63D0:1098ECAEC1A:-7FFD|QS8v8QpqGTI=
    20060302 15:53:58.776 Provisioning for Configurator(0x017050f5) PeopleSoftCompIntfcAdapter#connect() Info Successful connection with ISession psft.pt8.joa.Session@158473e
    20060302 15:53:58.776 Provisioning for Configurator(0x017050f5) PeopleSoftCompIntfcAdapter#connect() Exit void
    20060302 15:53:58.776 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#startConnectionWrapper() Exit void
    20060302 15:53:58.776 Provisioning for Configurator(0x017050f5) PeopleSoftCompIntfcAdapter#realCreate() Entry no args
    20060302 15:53:58.776 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#getIdentity() Entry arg1=user=User:600859
    20060302 15:53:58.776 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#getIdentity() Exit returned= FX600859
    20060302 15:53:58.776 Provisioning for Configurator(0x017050f5) PeopleSoftCompIntfcAdapter#realCreate() Info Creating identity FX600859
    20060302 15:53:58.776 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#getRequiredResAttr() Data Read/Write Component Interface Name== com.waveset.object.ResourceAttribute@f2f973
    20060302 15:53:58.776 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#getRequiredResAttrVal() Data Read/Write Component Interface Name== USER_PROFILE
    20060302 15:53:58.776 Provisioning for Configurator(0x017050f5) PeopleSoftCompIntfcAdapter#getComponentInterface() Info Fetching compIntfcName 'USER_PROFILE'
    20060302 15:53:58.997 Provisioning for Configurator(0x017050f5) PeopleSoftCompIntfcAdapter#getComponentInterface() Info Successfully got compIntfcName 'USER_PROFILE
    20060302 15:53:58.997 Provisioning for Configurator(0x017050f5) PeopleSoftCompIntfcAdapter#invoke() Info
    Begin JOA method USER_PROFILE.setProperty {UserID,FX600859}
    20060302 15:53:58.997 Provisioning for Configurator(0x017050f5) PeopleSoftCompIntfcAdapter#invoke() Info --Returned: null
    20060302 15:53:58.997 Provisioning for Configurator(0x017050f5) PeopleSoftCompIntfcAdapter#invoke() Info End JOA method USER_PROFILE.setProperty
    20060302 15:53:58.997 Provisioning for Configurator(0x017050f5) PeopleSoftCompIntfcAdapter#invoke() Info
    Begin JOA method USER_PROFILE.invokeMethod {Create, {} }
    20060302 15:53:59.618 Provisioning for Configurator(0x017050f5) PeopleSoftCompIntfcAdapter#invoke() Info --Returned: [java.lang.Boolean] = true
    20060302 15:53:59.618 Provisioning for Configurator(0x017050f5) PeopleSoftCompIntfcAdapter#invoke() Info End JOA method USER_PROFILE.invokeMethod
    20060302 15:53:59.618 Provisioning for Configurator(0x017050f5) PeopleSoftCompIntfcAdapter#setCIFromWSUSer() Entry arg1=600859
    20060302 15:53:59.618 Provisioning for Configurator(0x017050f5) PeopleSoftCompIntfcAdapter#setCIFromWSUSer() Info Setting user 'User:600859'
    20060302 15:53:59.618 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#getIdentity() Entry arg1=user=User:600859
    20060302 15:53:59.618 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#getIdentity() Exit returned= FX600859
    20060302 15:53:59.618 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#getRequiredResAttr() Data Read/Write Component Interface Name== com.waveset.object.ResourceAttribute@f2f973
    20060302 15:53:59.618 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#getRequiredResAttrVal() Data Read/Write Component Interface Name== USER_PROFILE
    20060302 15:53:59.618 Provisioning for Configurator(0x017050f5) PeopleSoftCompIntfcAdapter#invoke() Info
    Begin JOA method USER_PROFILE.setProperty {EmailAddress,[email protected]}
    20060302 15:53:59.618 Provisioning for Configurator(0x017050f5) PeopleSoftCompIntfcAdapter#invoke() Info --Returned: null
    20060302 15:53:59.618 Provisioning for Configurator(0x017050f5) PeopleSoftCompIntfcAdapter#invoke() Info End JOA method USER_PROFILE.setProperty
    20060302 15:53:59.618 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#getRequiredResAttr() Data Read/Write Component Interface Name== com.waveset.object.ResourceAttribute@f2f973
    20060302 15:53:59.618 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#getRequiredResAttrVal() Data Read/Write Component Interface Name== USER_PROFILE
    20060302 15:53:59.618 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#getRequiredResAttr() Data Read/Write Component Interface Name== com.waveset.object.ResourceAttribute@f2f973
    20060302 15:53:59.618 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#getRequiredResAttrVal() Data Read/Write Component Interface Name== USER_PROFILE
    20060302 15:53:59.618 Provisioning for Configurator(0x017050f5) PeopleSoftCompIntfcAdapter#invoke() Info
    Begin JOA method USER_PROFILE.setProperty {SymbolicID,COEDEV}
    20060302 15:53:59.618 Provisioning for Configurator(0x017050f5) PeopleSoftCompIntfcAdapter#invoke() Info --Returned: null
    20060302 15:53:59.618 Provisioning for Configurator(0x017050f5) PeopleSoftCompIntfcAdapter#invoke() Info End JOA method USER_PROFILE.setProperty
    20060302 15:53:59.618 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#getRequiredResAttr() Data Read/Write Component Interface Name== com.waveset.object.ResourceAttribute@f2f973
    20060302 15:53:59.618 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#getRequiredResAttrVal() Data Read/Write Component Interface Name== USER_PROFILE
    20060302 15:53:59.628 Provisioning for Configurator(0x017050f5) PeopleSoftCompIntfcAdapter#realCreate() Exit void
    20060302 15:53:59.628 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#getIdentity() Entry arg1=user=User:600859
    20060302 15:53:59.628 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#getIdentity() Exit returned= FX600859
    20060302 15:53:59.628 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#createAccounts() Info
    ==> com.waveset.util.WavesetException:
    ==> com.waveset.util.XmlParseException: XML Error: 1:1: Content is not allowed in prolog.
    20060302 15:53:59.638 Provisioning for Configurator(0x017050f5) PeopleSoftCompIntfcAdapter#connect() Info Disconnecting from ISession psft.pt8.joa.Session@158473e
    20060302 15:53:59.638 Provisioning for Configurator(0x017050f5) ResourceAdapterBase#createAccounts() Exit voidNow what I see is that the error is generated as an exception in the class/method: ResourceAdapterBase#createAccounts()
    but I have not been able to get any deeper than that....
    Can someoe please help me in resolving this issue.. or is there someway I can dig deeper.. to maybe understand which file / object is causing the error??
    Thanks and best regards,
    Anoop

    Hi Anoop / Ilayarajan,
    Could you please post the solution for this error. When I provision a user to PeopleSoft, I am getting similar error: com.waveset.util.WavesetException: An error occurred adding user "userID' to resource 'PeopleSoft Component Interface'. com.waveset.util.XmlParseException: XML Error: 1:1: Content is not allowed in prolog.
    Thanks
    User_idm

  • WavesetException: XML Error: 1:1: Content is not allowed in prolog. error

    What gives?
    I have turned the exception trace on (why it is not on by default is a surprise) and when I try to create a standard Weekly Audit Report, (Activity this Week) I now get to see this exception.
    How on earth can IdM generate a badly formed XML report/document!?
    When I try to generate a Weekly Activity report, Idm reports to the screen that the Task is complete and then bombs out with the following exception, showing NullPointerError message on the screen.
    What chances are there of trapping where in Idm this fault lies?
    [#|2011-11-16T15:18:44.609+0200|INFO|glassfish3.1.1|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=94;_ThreadName=Thread-2;|WavesetException: XML Error: 1:1: Content is not allowed in prolog.|#]
    [#|2011-11-16T15:18:44.612+0200|SEVERE|glassfish3.1.1|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=94;_ThreadName=Thread-2;|com.waveset.util.XmlParseException: XML Error: 1:1: Content is not allowed in prolog.
    at com.waveset.util.WavesetException.checkBreakpoint(WavesetException.java:508)
    at com.waveset.util.WavesetException.<init>(WavesetException.java:109)
    at com.waveset.util.XmlParseException.<init>(XmlParseException.java:61)
    at com.waveset.util.XmlParser.wrapException(XmlParser.java:927)
    at com.waveset.util.XmlParser.parseString(XmlParser.java:561)
    at com.waveset.util.XmlUtil.parseString(XmlUtil.java:441)
    at com.waveset.util.XmlObjectFactory.create(XmlObjectFactory.java:322)
    at com.waveset.util.XmlObjectFactory.create(XmlObjectFactory.java:302)
    at com.waveset.rpc.ActivityStatusServlet.getTaskStatus(ActivityStatusServlet.java:426)
    at com.waveset.rpc.ActivityStatusServlet.getTaskStatus(ActivityStatusServlet.java:403)
    at com.waveset.rpc.ActivityStatusServlet.processRequest(ActivityStatusServlet.java:360)
    at com.waveset.rpc.ActivityStatusServlet.doGet(ActivityStatusServlet.java:262)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:734)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
    at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1539)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:343)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:217)
    at com.sun.idm.profiler.instrumentation.RequestTimingFilter.doFilter(RequestTimingFilter.java:76)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:217)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:279)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
    at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:655)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:595)
    at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:98)
    at com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:91)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:162)
    at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:330)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:231)
    at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:174)
    at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:828)
    at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:725)
    at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1019)
    at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:225)
    at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137)
    at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104)
    at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90)
    at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79)
    at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54)
    at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59)
    at com.sun.grizzly.ContextTask.run(ContextTask.java:71)
    at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532)
    at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513)
    at java.lang.Thread.run(Thread.java:722)
    |#]

    Hi Anoop / Ilayarajan,
    Could you please post the solution for this error. When I provision a user to PeopleSoft, I am getting similar error: com.waveset.util.WavesetException: An error occurred adding user "userID' to resource 'PeopleSoft Component Interface'. com.waveset.util.XmlParseException: XML Error: 1:1: Content is not allowed in prolog.
    Thanks
    User_idm

  • [Fatal Error] jstl::1:1: Content is not allowed in prolog.

    I use Tomcat 5.5, Eclipse 3.0, JSTL 1.1 and the following jsp doesnt work on my system, it comes the error:
    [Fatal Error] jstl::1:1: Content is not allowed in prolog.
    farben.jsp:
    <%@ page language="java" contentType="text/html" %>
    <%@ taglib prefix="c" uri="/WEB-INF/tld/c.tld" %>
    <%@ taglib prefix="x" uri="/WEB-INF/tld/x.tld" %>
    <%@ taglib uri="/WEB-INF/tld/struts-html.tld" prefix="html" %>
    <%@ taglib uri="/WEB-INF/tld/struts-bean.tld" prefix="bean" %>
    <%
         System.out.println("farben 0");
         try { String seite = request.getAttribute("seite").toString();
         //String seite = session.getAttribute("seite");
    %>     
    <% if(seite.length() > 0) { %>
         <c:set var="hnr"><%=seite.substring(0,3)%></c:set>
         <% System.out.println("farben 1"); %>
         <c:set var="mnr"><%=seite.substring(3,6)%></c:set>
    <% System.out.println("farben 2"); %>
         <c:set var="snr"><%=seite.substring(6,9)%></c:set>
    <% System.out.println("farben 3"); %>
         <c:set var="stufe"><%=session.getAttribute("stufeID")%></c:set>
         <% System.out.println("farben 4"); %>
         <c:set var="rolle"><%=session.getAttribute("rolleID")%></c:set>
         <% System.out.println("farben 5"); %>
         <c:import url="/xml/Menue.xml" var="xmlmenue">
         </c:import>
         <% System.out.println("farben 6"); %>
         <x:parse varDom="farben" doc="$(xmlmenue)" />
         <% System.out.println("farben 7"); %>
         <c:set var="name"><x:out select="$farben//hauptmenue[@hnr=$hnr]/@hnr"/></c:set>
         <c:set var="farbe1"><x:out select="$farben//hauptmenue[@hnr=$hnr]/farbe[@nummer='f1']"/></c:set>
         <c:set var="farbe2"><x:out select="$farben//hauptmenue[@hnr=$hnr]/farbe[@nummer='f2']"/></c:set>
         <c:set var="farbe3"><x:out select="$farben//hauptmenue[@hnr=$hnr]/farbe[@nummer='f3']"/></c:set>
    #menue , #${name} {
         background-color: ${farbe1};
         color: #ffffff;
    .aktiv1 , #untermenue {
         background-color: ${farbe2};
    .aktiv2 , #menue a:hover{
         color: #000000;
         background-color: ${farbe3};
         <x:forEach select="$farben//hauptmenue[contains(@stufe,$stufe)and contains(@rolle,$rolle)]">
              .hmenue #<x:out select="@hnr"/>:hover { background-color: <x:out select="farbe[@nummer='f1']"/> }
         </x:forEach>
    <%           }
              } catch (Exception ex) {%>
    #menue {
         background-color: #ffffff;
    <% } %>
    if i change <x:parse varDom="farben" doc="$(xmlmenue)" /> in <x:parse varDom="farben" doc="<test>test</test>" /> it works without error, what can i do ?

    It may be that your source includes some XML that is escaped during parsing. Try this (it worked for me)
    <x:parse varDom="farben" ><c:out value="$(xmlmenue)" escapeXml="false"/></x:parse>c:out is from java.sun.com/jstl/core

  • Content is not allowed in Prolog error while configuring File to Mail

    Hi Expert,
    I have a scenario where I have to pick up a file from FTP using sender File adapter and send this file as an attachment using Receiver Mail adapter.
    There are 3 requirements :
    1) File name of the attachment in the Mail should be same as the File picked from FTP.
    2) The Mail content should be "Please find attached the <Filename> for your reference.
         i.e The content has to be dynamic
    3) Subject of the Mail should be dynamic e.g : Apple_<Filename>
    I am facing the following issues :
    1. Since single File is picked up,the file is going as an payload and not as an attachment.As a result when i am doing message mapping,i am getting the error saying "Content is not allowed in prolog" in SXMB_MONI or Runtime workbench.
    2. Since we have dynamic requirements, i have to Use "Use Mail Package" option.It implies that i have to use Message Mapping.But if i use Message Mapping,i get the error "Content is not allowed in prolog".
    I understand that most of the experts would ask me to write UDF's, but if i use UDF i am getting the "Content is not allowed in prolog" error.
    Thanks
    Saurabh

    Hi Saurabh
    Try using PayloadSwapBean:
    http://help.sap.com/saphelp_nw70/helpdata/en/6b/4493404f673028e10000000a1550b0/content.htm
    http://help.sap.com/saphelp_nw70/helpdata/en/2e/bf37423cf7ab04e10000000a1550b0/content.htm
    "Content is not allowed in prolog" could be caused by some encoding issue.
    Regards,
    Giuseppe

  • Error: content is not allowed in prolog

    I get this error:
    Severity Description Resource In Folder Location Creation
    Time Id
    2 Configuration error encountered on line 2, column 1:
    'Content is not allowed in prolog.' FlexWebFluorine August 5, 2007
    8:47:24 PM 408
    when I create an empty FDS based project in FlexBuilder. Here
    are the first two lines of the MXML file:
    <?xml version="1.0" encoding="utf-8"?>
    <mx:Application xmlns:mx="
    http://www.adobe.com/2006/mxml">
    (Forum mangles that entry but it is the standard one created
    by FlexBuilder)
    Any ideas?

    Are you using any other editor? Some put leading, invisible
    characters in the file that cause this message.
    Tracy

  • Org.xml.sax.SAXParseException: Content is not allowed in prolog Error

    Hello,
    this is pratap.<br>
    i was trying rules using decision tables with 'call charges' example<br>.
    after filling the text fields i am getting an error org.xml.sax.SAXParseException: Content is not allowed in prolog<br>.
    Can any one please tell me what are the reasons for this error and how to correct it<br>.
    thank you.

    Problem solved.There was some problem in xml file i corrected it and it worked.Sorry for asking silly question.

  • Trying to create a pdf with jasper - Content is not allowed in prolog

    hi all,
    Im trying to create a pdf file with jasper reports but i get this error message:
    29/11/2007 16:52:03 org.apache.commons.digester.Digester fatalError
    SEVERE: Parse Fatal Error at line 1 column 1: Content is not allowed in prolog.
    org.xml.sax.SAXParseException: Content is not allowed in prolog.
         at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:236)
         at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:215)
         at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:386)
         at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:316)
         at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1438)
         at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDispatcher.dispatch(XMLDocumentScannerImpl.java:899)
         at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:368)
         at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:834)
         at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:764)
         at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:148)
         at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1242)
         at org.apache.commons.digester.Digester.parse(Digester.java:1666)
         at net.sf.jasperreports.engine.xml.JRPrintXmlLoader.loadXML(JRPrintXmlLoader.java:151)
         at net.sf.jasperreports.engine.xml.JRPrintXmlLoader.load(JRPrintXmlLoader.java:103)
         at net.sf.jasperreports.view.JRViewer.loadReport(JRViewer.java:1376)
         at net.sf.jasperreports.view.JRViewer.<init>(JRViewer.java:243)
         at net.sf.jasperreports.view.JRViewer.<init>(JRViewer.java:214)
         at net.sf.jasperreports.view.JasperViewer.<init>(JasperViewer.java:140)
         at net.sf.jasperreports.view.JasperViewer.viewReport(JasperViewer.java:397)
         at net.sf.jasperreports.view.JasperViewer.viewReport(JasperViewer.java:328)
         at br.com.abril.contratos.Gerar.geraRelatorio(Gerar.java:38)
         at br.com.abril.contratos.Gerar.main(Gerar.java:47)

    cause of the error:
    After some extensive research on the web, it is found that that you are using an UTF-8 encoded file with byte-order mark (BOM). Java doesn't handle BOMs on UTF-8 files properly, making the three header bytes appear as being part of the document. UTF-8 files with BOMs are commonly generated by tools such as Window's Notepad. This is a known bug in Java, but it still needs fixing after almost 8 years...
    There are some hexadecimal character at the begining of the file, which is giving error"content not allowed in prolog". No solution is provided for this till now.
    Example: suppose your file start with <?xml version="1.0" encoding="utf-8"?>. you will see this in a editor. But if you open this file with any hexadecimal editor you will find some junk character in the start of the file.that is causing the problem
    solution:
    1) convert your file into a string and then read the file from the forst character that in my case the first character will be "<".so the junk character will not be there in the string and then again convert it into a file.
    2) some people are able to solve this problem by changing the "utf-8" to "utf-16". remember only in some case. some times this problem also exits in "utf-16" file.
    3) some are able to solve this problem by changing the LANG to US.en.
    4) If the first three bytes of the file have hexadecimal values EF BB BF then the file contains a BOM.so you can also handle by your own.
    5)Download a hexadecimal editor and remove the BOM.
    6) In case you are not able to think furthe then please to more research in internet may be you find some other solution to this problem. But These solution are some type of hack not exactly a solution.

  • "Content is not allowed in prolog" with SOAP Attachment

    I'm writing an application using SAAJ that sends a soap message to a servlet which responds with some information, including HTML which the client application will display. The HTML has to go into a SOAP attachment so the tags won't get confused with XML.
    I had the whole thing working with plain text sending within a normal node, and I only switched a few lines to make that text an attachment with HTML instead, but now I'm getting the exception "Content is not allowed in prolog" on the Client side when it tries to create the envelope from the SOAPMessage.
    Code for building answering SOAPMessage with attachment (Servlet to Client)
         public static SOAPMessage buildXML(Message newMessage){
              SOAPMessage msg = null;
              try {
                   MessageFactory msgFactory = MessageFactory.newInstance();
                   msg = msgFactory.createMessage();
                   // Create an envelope in the message
                   SOAPEnvelope envelope = msg.getSOAPPart().getEnvelope();
                   msg.setProperty(SOAPMessage.WRITE_XML_DECLARATION, "true");
                   msg.setProperty(SOAPMessage.CHARACTER_SET_ENCODING, "UTF-8");
                   //Get hold of the the body
                   SOAPBody body = envelope.getBody();
                   SOAPElement soap_message = body.addChildElement("MESSAGE");
                   if (newMessage.message_type != null){
                        SOAPElement soap_message_type = soap_message.addChildElement("MESSAGETYPE");
                        soap_message_type.addTextNode(newMessage.message_type);
                   if (newMessage.questionID != 0){
                        SOAPElement soap_questionID = soap_message.addChildElement("QUESTIONID");
                        soap_questionID.addTextNode("" + newMessage.questionID);
                   if (newMessage.username != null){
                        SOAPElement soap_username = soap_message.addChildElement("USERNAME");
                        soap_username.addTextNode(newMessage.username);
                   if (newMessage.password != null){
                        SOAPElement soap_password = soap_message.addChildElement("PASSWORD");
                        soap_password.addTextNode(newMessage.password);
                   if (newMessage.message_text != null){
                        AttachmentPart soap_message_text = msg.createAttachmentPart("<html><body>" + newMessage.message_text + "</body></html>", "text/html");
                        soap_message_text.setContentId("MESSAGETEXT");
                        msg.addAttachmentPart(soap_message_text);
                        //SOAPElement soap_message_text = soap_message.addChildElement("MESSAGETEXT");
                        //soap_message_text.addTextNode(newMessage.message_text);
                   if (newMessage.sampleString != null){
                        SOAPElement soap_password = soap_message.addChildElement("SAMPLESTRING");
                        soap_password.addTextNode(newMessage.sampleString);
                   SOAPElement tmpEl;
                   for (int i=0; i<newMessage.numArrayUsed; i++){
                        tmpEl = soap_message.addChildElement("SAMPLEINT");
                        tmpEl.addTextNode("" + newMessage.sampleInt);
                   msg.saveChanges();
              } catch (Exception e) {
                   e.printStackTrace();
              return msg;
    You can see in the area where it adds MESSAGETEXT there are two clients commented out which work. The three lines above it are what changed to make it an attachment instead.
    Code in Client for recieving reply from Servlet
    SOAPMessage reply = connection.call(soap_msg, endpoint);
    System.out.println("\nReceived reply from: " + endpoint);
    reply.writeTo(System.out);
    System.out.println("");
    reply_msg = ProcessXML.parse(reply);This is the console output:
    Edit: These forums seem to be inserting an extra > before the <?xml version="1.0" encoding="UTF-8"?> line, but it doesn't exist in the code I'm pasting
    Received reply from: http://localhost:8080/kuj/CaseStudyServlet
    ------=_Part_2_371807.1137465625031
    Content-Type: text/xml; charset=UTF-8
    <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"><SOAP-ENV:Header/><SOAP-ENV:Body><MESSAGE><MESSAGETYPE>deliverquestion</MESSAGETYPE><QUESTIONID>1</QUESTIONID><USERNAME>zac</USERNAME></MESSAGE></SOAP-ENV:Body></SOAP-ENV:Envelope>
    ------=_Part_2_371807.1137465625031
    Content-Type: text/html
    Content-Id: MESSAGETEXT
    <html><body>This is an Array sort Question. You will be given 10 random integers and you must sort and return them in the order of greatest to least.</body></html>
    ------=_Part_2_371807.1137465625031--
    ERROR:  'Content is not allowed in prolog.'
    17-Jan-2006 02:40:25 com.sun.xml.messaging.saaj.soap.EnvelopeFactory createEnvelope
    SEVERE: SAAJ0511: Unable to create envelope from given source
    com.sun.xml.messaging.saaj.SOAPExceptionImpl: Unable to create envelope from given source:
         at com.sun.xml.messaging.saaj.soap.EnvelopeFactory.createEnvelope(EnvelopeFactory.java:111)
         at com.sun.xml.messaging.saaj.soap.ver1_1.SOAPPart1_1Impl.createEnvelopeFromSource(SOAPPart1_1Impl.java:39)
         at com.sun.xml.messaging.saaj.soap.SOAPPartImpl.getEnvelope(SOAPPartImpl.java:98)
         at com.zacwittedesign.xml.ProcessXML.realParse(ProcessXML.java:32)
         at com.zacwittedesign.xml.ProcessXML.parse(ProcessXML.java:26)
    (snip)And this is the beginning of the code for extracting the info from the SOAPMessage on the Client side:
    private static Message realParse(SOAPMessage msg){
              Message newMessage = new Message();
              try {
                   SOAPEnvelope envelope = msg.getSOAPPart().getEnvelope();
                   SOAPBody body = envelope.getBody();
    (snip)It dies on SOAPEnvelope envelope = msg.getSOAPPart().getEnvelope();
    Does anyone know what I'm doing wrong?

    I suppose I should also include the bit where the Servlet actually SENDs the resulting SOAPMessage
    SOAPMessage msg = ProcessXML.buildXML(outMessage);
    // try to send it
    try {
         response.setContentType("text/xml");
         msg.writeTo(response.getOutputStream());

  • Org.xml.sax.SAXParseException: Content is not allowed in prolog.

    Hi All,
    Currently i m doing some practice on JSTL and following few examples from this link http://java.sun.com/developer/technicalArticles/javaserverpages/faster/
    while doing xml-ex1.jsp
    This is xml-ex1.jsp code
    <%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %>
    <%@ taglib prefix="x" uri="http://java.sun.com/jstl/xml" %>
    <html>
    <head>
    <title>JSTL Support for XML</title>
    </head>
    <body bgcolor="#FFFFCC">
    <h3>Books Info:</h3>
    <c:set var="xmltext">
    <books>
    <book>
    <title>Book Title A</title>
    <author>A. B. C.</author>
    <price>17.95</price>
    </book>
    <book>
    <title>Book Title B</title>
    <author>X. Y. Z.</author>
    <price>24.99</price>
    </book>
    </books>
    </c:set>
    <x:parse xml="${xmltext}" var="output"/>
    <b>The title of the first book is</b>:
    <x:out select="$output/books/book[1]/title"/>
    <br>
    <b>The price of the second book</b>:
    <x:out select="$output/books/book[2]/price"/>
    </body>
    </html>
    While running jsp page i m getting follwing error
    SEVERE: Servlet.service() for servlet jsp threw exception
    org.xml.sax.SAXParseException: Content is not allowed in prolog.
         at org.apache.xerces.parsers.DOMParser.parse(Unknown Source)
         at org.apache.xerces.jaxp.DocumentBuilderImpl.parse(Unknown Source)
         at org.apache.taglibs.standard.tag.common.xml.ParseSupport.parseInputSource(ParseSupport.java:227)
         at org.apache.taglibs.standard.tag.common.xml.ParseSupport.parseInputSourceWithFilter(ParseSupport.java:193)
         at org.apache.taglibs.standard.tag.common.xml.ParseSupport.parseReaderWithFilter(ParseSupport.java:199)
         at org.apache.taglibs.standard.tag.common.xml.ParseSupport.parseStringWithFilter(ParseSupport.java:206)
         at org.apache.taglibs.standard.tag.common.xml.ParseSupport.doEndTag(ParseSupport.java:138)
         at org.apache.jsp.jsp.xml_002dex1_jsp._jspx_meth_x_parse_0(org.apache.jsp.jsp.xml_002dex1_jsp:152)
         at org.apache.jsp.jsp.xml_002dex1_jsp._jspService(org.apache.jsp.jsp.xml_002dex1_jsp:70)
         at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
         at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
         at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
         at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
         at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
         at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
         at
    NOTE :- I m using Tomcat 5.5.14 .
    Please help me out how to resolve this problem
    Thanks & Regards
    Rupesh Kumar

    From what I understand, it has nothing to do with your JSP and all to do with the XML it's supposed to parse. It sounds malformed. Check the first tag.

  • XML loader and UTF-16 - throws Content is not allowed in prolog

    Hi,
    Our ECC system is updated to unicode system recently. Now the iDoc downloaded from ECC is having a tag <?xml version="1.0" encoding="utf-16"?>.
    The XML Loader in the transaction throws an exception "Cannot perform action on XML document Content is not allowed in prolog. Exception: [Content is not allowed in prolog.]". If I change the encoding manually as "utf-8" and executing the transaction, it is working fine.
    Please let me know how to solve the issue.
    Thanks,
    Raman N

    Where should I enhance the webservice to make it able to handle zipped XML documents? Shouldn't take the AXIS library take care of this automatically?
    This is the web.xml document I use.
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app id="WebApp_ID" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
    <display-name>
    NDW2</display-name>
    <servlet>
    <display-name>
    Apache-Axis Servlet</display-name>
    <servlet-name>AxisServlet</servlet-name>
    <servlet-class>
    org.apache.axis.transport.http.AxisServlet</servlet-class>
    </servlet>
    <servlet>
    <display-name>
    Axis Admin Servlet</display-name>
    <servlet-name>AdminServlet</servlet-name>
    <servlet-class>
    org.apache.axis.transport.http.AdminServlet</servlet-class>
    <load-on-startup>100</load-on-startup>
    </servlet>
    <servlet-mapping>
    <servlet-name>AxisServlet</servlet-name>
    <url-pattern>/servlet/AxisServlet</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>AxisServlet</servlet-name>
    <url-pattern>*.jws</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>AxisServlet</servlet-name>
    <url-pattern>/services/*</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>AdminServlet</servlet-name>
    <url-pattern>/servlet/AdminServlet</url-pattern>
    </servlet-mapping>
    <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
    </welcome-file-list>
    </web-app>

  • "Content not allowed in Prolog" XML error while using RemoteSession API

    Hi,
    I am trying to create a view by using a RemoteSession object CREATED on the RPC URL of Sun Identity Manager. Here is the code I am trying out.
    try
    URL url = new URL ("http","localhost",8080,"/idm/servlet/rpcrouter2");
    System.out.println (url.toString());
    RemoteSession _remoteSession = new RemoteSession   
    (url,Constants.CONFIGURATOR, new EncryptedData
    ("configurator"));
    System.out.println ("Remote session is "+_remoteSession);
    GenericObject view = _remoteSession.createView ("Role",null);
    System.out.println ("View is "+view);
    catch (MalformedURLException male){
         male.printStackTrace ();
    catch (WavesetException wes){
         wes.printStackTrace ();
    catch (Exception e){
         e.printStackTrace ();
    When this line is called,
    GenericObject view = _remoteSession.createView ("Role",null);
    The code throws the following exception.
    [java] http://localhost:8080/idm/servlet/rpcrouter2
    [java] Remote session is com.waveset.session.RemoteSession@1cbda0a
    [java] com.waveset.util.XmlParseException: XML Error: 1:1: Content is not a
    llowed in prolog.
    [java] at com.waveset.util.XmlParser.wrapException(XmlParser.java:886)
    [java] at com.waveset.util.XmlParser.parseString(XmlParser.java:519)
    [java] at com.waveset.util.XmlUtil.parseString(XmlUtil.java:440)
    [java] at com.waveset.session.RemoteSession.getResultObject(RemoteSessi
    on.java:1028)
    [java] at com.waveset.session.RemoteSession.rpc(RemoteSession.java:995)
    [java] at com.waveset.session.RemoteSession.callx(RemoteSession.java:92
    3)
    [java] at com.waveset.session.RemoteSession.call(RemoteSession.java:907
    [java] at com.waveset.session.RemoteSession.call(RemoteSession.java:893
    [java] at com.waveset.session.RemoteSession.call(RemoteSession.java:880
    [java] at com.waveset.session.RemoteSession.call(RemoteSession.java:869
    [java] at com.waveset.session.RemoteSession.createView(RemoteSession.ja
    va:753)
    [java] at com.sun.idm.idmx.myspefiles.MyRemoteApiUsage.createAndProvisi
    onUser3(MyRemoteApiUsage.java:496)
    [java] at com.sun.idm.idmx.myspefiles.MyRemoteApiUsage.demoBasicProvisi
    oning(MyRemoteApiUsage.java:475)
    [java] at com.sun.idm.idmx.myspefiles.MyRemoteApiUsage.runDemo(MyRemote
    ApiUsage.java:656)
    [java] at com.sun.idm.idmx.myspefiles.MyRemoteApiUsage.main(MyRemoteApi
    Usage.java:670)
    [java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    [java] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAcces
    sorImpl.java:39)
    [java] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMet
    Is this a known issue in the SDK ? If I construct my own XML and populate a GenericObject, _remoteSession.checkinView (view) does not have any problem in checking in the view. The exception is thrown irrespective of the view id I use , i.e. IDMXUser, User, Role etc.
    Thanks,
    Srinivas

    Hi Srini,
    Have you solved this problem. If yes then can you help me with the solution?
    Thanks!

  • Org.jdom.input.JDOMParseException: Content is not allowed in Prolog.

    I got the above error. I am trying to save my query xml file in my tempdir (under local settings)..done that by using file.createTempFile() method in java. To my surprise, when my xml file is stored in my current dir, it is reading it well and processing the queries in it and generating the output xml file..all is well then. But, when I am saving my query xml file in the tempdir, it is throwing that error. But, if i cut and paste the same file to my current dir, it is working fine!!! Can anyone just help me out regarding this..I am literally going bonkers. Thanks a lot.

    I am trying to get the absolute path of the file and passing it to read for my business logic class. is it something to do with the path i m passing ? cuz, other than that, i dont see any difference when the file's there in current dir and worked perfect and now when its there in the tempdir ( by createtempdir).

Maybe you are looking for