You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@xalan.apache.org by Jo...@nokia.com on 2000/08/24 07:08:23 UTC

bug report

Then following exception is thrown when applying this stylesheet to any XML
(eg foo.xml) that is passed to the XSLT processor in the form of a DOM.

Cheers,
Jonathan

------------------
- Java Exception 
------------------

Exception in thread "main" java.lang.NoSuchMethodError: org.w3c.dom.Attr:
method
 getOwnerElement()Lorg/w3c/dom/Element; not found
        at
org.apache.xalan.xpath.xdom.XercesLiaison.getParentOfNode(XercesLiais
on.java:395)
        at
org.apache.xalan.xpath.MutableNodeListImpl.isDOMNodeAfter(MutableNode
ListImpl.java, Compiled Code)
        at
org.apache.xalan.xpath.MutableNodeListImpl.isNodeAfter(MutableNodeLis
tImpl.java:460)
        at
org.apache.xalan.xpath.MutableNodeListImpl.addNodeInDocOrder(MutableN
odeListImpl.java, Compiled Code)
        at
org.apache.xalan.xpath.MutableNodeListImpl.addNodeInDocOrder(MutableN
odeListImpl.java:433)
        at
org.apache.xalan.xpath.MutableNodeListImpl.addNodesInDocOrder(Mutable
NodeListImpl.java, Compiled Code)
        at
org.apache.xalan.xpath.SimpleNodeLocator.union(SimpleNodeLocator.java
, Compiled Code)
        at org.apache.xalan.xpath.XPath.union(XPath.java:851)
        at org.apache.xalan.xpath.XPath.execute(XPath.java:1373)
        at org.apache.xalan.xpath.XPath.execute(XPath.java:1354)
        at org.apache.xalan.xpath.XPath.execute(XPath.java:311)
        at
org.apache.xalan.xslt.ElemTemplateElement.transformSelectedChildren(E
lemTemplateElement.java, Compiled Code)
        at
org.apache.xalan.xslt.ElemApplyTemplates.execute(ElemApplyTemplates.j
ava:176)
        at
org.apache.xalan.xslt.ElemTemplateElement.executeChildren(ElemTemplat
eElement.java, Compiled Code)
        at org.apache.xalan.xslt.ElemCopy.execute(ElemCopy.java:120)
        at
org.apache.xalan.xslt.ElemTemplateElement.executeChildren(ElemTemplat
eElement.java, Compiled Code)
        at
org.apache.xalan.xslt.ElemTemplateElement.transformChild(ElemTemplate
Element.java:1195)
        at
org.apache.xalan.xslt.ElemTemplateElement.processLocatedNode(ElemTemp
lateElement.java:1057)
        at
org.apache.xalan.xpath.SimpleNodeLocator.findChildren(SimpleNodeLocat
or.java, Compiled Code)
        at
org.apache.xalan.xpath.SimpleNodeLocator.step(SimpleNodeLocator.java,
 Compiled Code)
        at
org.apache.xalan.xpath.SimpleNodeLocator.locationPath(SimpleNodeLocat
or.java:321)
        at org.apache.xalan.xpath.XPath.locationPath(XPath.java:964)
        at org.apache.xalan.xpath.XPath.execute(XPath.java:1385)
        at org.apache.xalan.xpath.XPath.execute(XPath.java:1354)
        at org.apache.xalan.xpath.XPath.execute(XPath.java:311)
        at
org.apache.xalan.xslt.ElemTemplateElement.transformSelectedChildren(E
lemTemplateElement.java, Compiled Code)
        at
org.apache.xalan.xslt.ElemApplyTemplates.execute(ElemApplyTemplates.j
ava:176)
        at
org.apache.xalan.xslt.ElemTemplateElement.executeChildren(ElemTemplat
eElement.java, Compiled Code)
        at org.apache.xalan.xslt.ElemCopy.execute(ElemCopy.java:120)
        at
org.apache.xalan.xslt.ElemTemplateElement.executeChildren(ElemTemplat
eElement.java, Compiled Code)
        at
org.apache.xalan.xslt.ElemTemplateElement.transformChild(ElemTemplate
Element.java:1195)
        at
org.apache.xalan.xslt.ElemTemplateElement.processLocatedNode(ElemTemp
lateElement.java:1057)
        at
org.apache.xalan.xpath.SimpleNodeLocator.findChildren(SimpleNodeLocat
or.java, Compiled Code)
        at
org.apache.xalan.xpath.SimpleNodeLocator.step(SimpleNodeLocator.java,
 Compiled Code)
        at
org.apache.xalan.xpath.SimpleNodeLocator.locationPath(SimpleNodeLocat
or.java:321)
        at org.apache.xalan.xpath.XPath.locationPath(XPath.java:964)
        at org.apache.xalan.xpath.XPath.execute(XPath.java:1385)
        at org.apache.xalan.xpath.XPath.execute(XPath.java:1354)
        at org.apache.xalan.xpath.XPath.execute(XPath.java:311)
        at
org.apache.xalan.xslt.ElemTemplateElement.transformSelectedChildren(E
lemTemplateElement.java, Compiled Code)
        at
org.apache.xalan.xslt.ElemApplyTemplates.execute(ElemApplyTemplates.j
ava:176)
        at
org.apache.xalan.xslt.ElemTemplateElement.executeChildren(ElemTemplat
eElement.java, Compiled Code)
        at org.apache.xalan.xslt.ElemTemplate.execute(ElemTemplate.java:145)
        at org.apache.xalan.xslt.StylesheetRoot.process(StylesheetRoot.java,
Com
piled Code)
        at org.apache.xalan.xslt.XSLTEngineImpl.process(XSLTEngineImpl.java,
Com
piled Code)
        at Test.main(Test.java:51)

--------------
- Java Code
--------------

			// Just in case you want to produce your own DOM
input...
			DOMParser parser = new DOMParser();
			parser.parse("file:///D:/dev/private/src/lmw.jsp");
			Document in = parser.getDocument();
			XSLTInputSource xmlID = new XSLTInputSource(in);
			
			// Set up the XSLTProcessor to use XercesLiaison.
			XSLTProcessor xsltProc =
XSLTProcessorFactory.getProcessor(new
org.apache.xalan.xpath.xdom.XercesLiaison());
			// or you can use
XSLTProcessorFactory.getProcessorUsingLiaisonName
			//
("org.apache.xalan.xpath.xdom.XercesLiaison");
			XSLTResultTarget XMLout = new
XSLTResultTarget(System.out);
			xsltProc.process(xmlID, new
XSLTInputSource("file:///D:/dev/private/src/wNP.xsl"), XMLout);


-----------------
- XLST Stylesheet
-----------------

<?xml version='1.0'?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" media-type="text/wml"
doctype-public="wml_1.1.xml"/>

	<xsl:template match="wml">
		<xsl:comment>XSLT processed</xsl:comment>
		<xsl:copy>
			<xsl:apply-templates/>
		</xsl:copy>
	</xsl:template>
	
	<xsl:template match="@*|node()">
			<xsl:copy>
				<xsl:apply-templates select="@*|node()"/>
			</xsl:copy>
	</xsl:template>  
	
</xsl:stylesheet>