It sounds like there is a problem with the value of the xsl variable.
Can you print it out prior to the newTransformer call and see what it
looks like?

Gary

> -----Original Message-----
> From: Roger L. Costello [mailto:[EMAIL PROTECTED]] 
> Sent: Wednesday, April 17, 2002 11:22 AM
> To: [EMAIL PROTECTED]; [EMAIL PROTECTED]
> Subject: Invoking XALAN API with an in-memory XML/XSL string
> 
> 
> Hi Folks,
> 
> [NOTE: Please mail responses directly to me. Thanks!]
> 
> I have a (Java) program which has two String variables:
>  - xml, whose value is the XML, and 
>  - xsl, whose value is the stylesheet
> 
> I am trying to invoke the XALAN API using these in-memory 
> strings, e.g.,
> 
> -- convert the xsl (String) to a byte array and create an instance 
> -- of an InputStream:
> 
>    ByteArrayInputStream is = new ByteArrayInputStream(xsl.getBytes());
> 
> -- create a StreamSource using the input stream:
> 
>    StreamSource ss = new StreamSource(is);
> 
> -- create a Transformer using the stream source:
> 
>    Transformer transformer = tFactory.newTransformer(ss);
> 
> When I execute the program I get an error message:
> 
>     [Fatal Error] :1:1: Content is not allowed in prolog.
> 
> where the following is referenced as the offending instruction:
> 
>     Transformer transformer = tFactory.newTransformer(ss);
> 
> Note: there is nothing wrong with my stylesheet.  When I run 
> it from the command line everything works fine.  
> 
> Any ideas on what causes this error message?  Have you 
> invoked the XALAN API with in-memory strings?  How did you do 
> it?  /Roger
> 

Reply via email to