Henry
 Thanks for the reply.

I use the same static xml data DOM tree for
transformations in different threads.

Are you suggesting that I need to synchronize the read
access to this data DOM tree for transformation from
different threads?



Thanks
Kumar 



--- Henry Zongaro <[EMAIL PROTECTED]> wrote:

> Hi, Kumar.
> 
> Kumar Pandey <[EMAIL PROTECTED]> wrote on
> 2005-06-05 04:39:39 PM:
> > jdk :1.5.0_02-b09
> > xalan: 2.6.0
> > 
> > I'm creating a static template using
> > TransformerFactory.newTemplates().
> > creation block is synchronized as it gets called
> in a
> > servlet.
> > 
> > Then for each web request I create a new
> Transformer
> > like so -
> > 
> > transformerForARequest =
> > staicTemplateInstance.newTransformer();
> > 
> > Then I proceed with the transformation on xml
> data.
> ...
> > java.lang.NullPointerException
> >    at
> >
>
org.apache.xml.dtm.ref.dom2dtm.DOM2DTM.addNode(DOM2DTM.java:237)
> >    at
> >
>
org.apache.xml.dtm.ref.dom2dtm.DOM2DTM.nextNode(DOM2DTM.java:539)
> >    at
> 
>      It looks like the NullPointerException is being
> thrown from the 
> following piece of code - the line that checks
> whether name equals or 
> begins with "xmlns".
> 
>     if (Node.ATTRIBUTE_NODE == type)
>     {
>       String name = node.getNodeName();
> 
>       if (name.startsWith("xmlns:") ||
> name.equals("xmlns"))
>       {
>         type = DTM.NAMESPACE_NODE;
>       }
>     }
> 
> 
>      It looks like the call to getNodeName() for an
> attribute node has 
> returned null.  Is the same tree used a input for
> more than one 
> transformation at the same time?  The DOM
> specification requires 
> multi-threaded access (even read access) to a DOM
> tree to be synchronized. 
>  If each thread transforms its own DOM tree, how is
> the DOM tree created? 
> Is it possible that the fault lies there?  Does the
> processor always throw 
> the NPE from the same line in DOM2DTM?
> 
> Thanks,
> 
> Henry
>
------------------------------------------------------------------
> Henry Zongaro      Xalan development
> IBM SWS Toronto Lab   T/L 969-6044;  Phone +1 905
> 413-6044
> mailto:[EMAIL PROTECTED]
> 
> 



                
__________________________________ 
Discover Yahoo! 
Stay in touch with email, IM, photo sharing and more. Check it out! 
http://discover.yahoo.com/stayintouch.html

Reply via email to