Can you send us the stack trace when the exception occurs?

Gary

Bill Gates wrote:
> 
> I'm getting a weird behavior using Xalan 2.0.1 and the transform
> method.  I'm not sure if it's just my lack of understanding of what's
> happening or a real issue.  I presumed that this would work.
> 
> (This isn't the exact code because it's spread out but a best display of
> the snippets I'm using with Xalan.)
> 
> I have a ControlledParser class which is essentially a subclass of
> DomParser with the setDeferred expansion to false by default.  This is
> the behavior we need.
> 
> I get an instance of the parser and call
> parser.parse(new InputSource(new StringReader(xmlString)));
> Then I get a DOMSource with new DOMSource(parser.getDocument())
> 
> I get my xml source and xsl source the same way.  Then I do the basics:
> 
> DOMResult domResult = new DOMResult();
> TransformerFactory factory = TransformerFactory.newInstance();
> Transformer transformer = factory.newTransformer(xslSource);
> transformer.transform(xmlSource, domResult);
> 
> This all seems pretty rudimentary to me.  It seems to work until the
> point where I have an xmlSource file of greater than 76K (roughly).
> Then I start getting the String index out of range errors during the
> transform call.
> 
> I can fix this by instead doing:
> 
>             DocumentBuilderFactory factory =
> DocumentBuilderFactory.newInstance();
>             factory.setNamespaceAware(true);
>             DocumentBuilder builder = factory.newDocumentBuilder();
>             Document xmlDoc = builder.parse(new InputSource(
>                 new StringReader(xml)));
>             DOMSource xmlSource = new DOMSource(xmlDoc);
> 
> To get the xmlSource and then doing the same transform but I'm not sure
> why that is.  Could somebody explain to me the difference?  I would have
> though that I could pass any DOMSource to the transform and it would
> work but that doesn't seem to be the case.  It's apparent to me I'm
> missing something basic.
> 
>    Thanks,
>             g888

Reply via email to