Subjects
Home
Xalan extension functions
Fomatting question serializing DOM with pretty print
xalan with pull parser
Cannot find the declaration
Apache Xalan drop support to run on JRE 1 1 x
Why does Doctype change processing of a document
Node set to XML string via Java extensions in Xalan J: possible?
Templates/Transformers + thread safety???
Problem evaluating xpath with muliple prefix with different namespace
remove an arbitrary attribute from xsl output
Xalan3 XSLT 2 0 XPath 2 0 support?
Problem using compiled translets with Xalan !!
Xalan and jstl 1 1 problem with transform tag
NullPointer in DOM2DTM getLocalName
URIResolvers base parameter with xsltc and cascaded imports
Performance problem for Xalan J on intel dual core
Standard libraries in JAXP?
Serializing a DOM tree to XML file, customize entities replacement
Library Conflict Involving BCEL Library
A question on how users are using <xsl:message >
Kevin Cormier as a new Apache Xalan J committer
Struggling to iterate over tokenized string
Xalan count() trouble
Problem with recursive xpath
Error when switching to java 1 5
document( ' ')
Problem with Xalan2 7 0 transformation
cr/lf options
entity encoded XML
can xalan transform 2 xml using one xslt?
Xalan J JIRA defect review Monday October 16, 2006 from 2:00 to 3:30 pm ED
xsl transform with cdata section elements
xslt parameters not expanded
Weird behavior of XPath evaluate()
How to avoid <xsl:message > instruction prints stylesheet file informations ?
Cannot find SimpleTransform subdirectory after installing Xalan J
recover from document not found exceptions
jdk1 5 and Xalan jar differences?
Performance Issue
Error/Bug adding floating point numbers
XPathAPI: eval exp using nodes with default namespace
modifying xalan to output invalid XML
NullPointerException
mege two separate xml nodes into one
Is this a XALAN document identification bug?
is StylesheetRoot really java io Serializable ?
transform() fails for DOMSource but succeeds for StreamSource
Thoughts on Transformer parameter passing
HELP, Xalan and jstl 1 1 problem with transformer
Problem with XPath namespace axis?
string utils:replace deleting search string if replacement string is an HTML
help with enumeration values pls
xalan 2 5 1 vs 2 7 performance question
How to insert/update in XML document
HTML Serialization and Handling of Ampersands in HREF Attributes
XHTML link tag stripping
SystemId Unknown; Line #24; Column #49; java lang NullPointerException
xpath text() help
Apostrophe problem with xalan 2 7 0
How to set variables in XML document?
Links
Home
Oracle database error code ...
 
Search:  
Power your search with and, or, +, -, or "some phrase" operators.
XPathAPI: eval exp using nodes with default namespace

XPathAPI: eval exp using nodes with default namespace

2006-09-12       - By Karr, David
Reply:     1     2     3  

Xalan 2.7.0, JDK 1.4.2, WebLogic 8.1.4.

I'm trying to write xpath validation expressions for the following SOAP
message (slightly edited).  I could use some help understanding what I'm
seeing here, and how to make this work well.

----------------
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                 xmlns:xsd="http://www.w3.org/2001/XMLSchema"

xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
 <ReportResponse xmlns="http://...">
  <ReportUrl>https://.../Test%20Portfolio.csv</ReportUrl>
  <Warnings/><Errors/>
 </ReportResponse>
</soapenv:Body>
</soapenv:Envelope>
----------------

I'm processing this with code like this:

----------------
 SOAPPart    soapPart    = message.getSOAPPart();
 Source      xmlSource   = soapPart.getContent();
 TransformerFactory  transformerFactory       TransformerFactory.newInstance();
 Transformer transformer = transformerFactory.newTransformer();
 DOMResult   domResult   = new DOMResult();
 transformer.transform(xmlSource, domResult);
 Node    node    = domResult.getNode();
 System.out.println("node[" + node + "]");

 Element documentElement = ((Document) node).getDocumentElement();

 for (Iterator iter = xpathStrs.iterator(); iter.hasNext(); )
 {
   String  xpathStr    = (String) iter.next();
   XObject object = XPathAPI.eval(documentElement, xpathStr, node);
   System.out.println("object[" + object + "]");
 }
----------------

When I evaluate this expression: /soapenv:Envelope

It fails, saying that "soapenv" must resolve to a namespace.

I then tried instead: /env:Envelope

This works (the Xobject is not null).  I'm not sure why this works, and
the other one does not.

Next, I tried the expression: /env:Envelope/env:Body/ReportResponse

This fails.  I'm guessing it has something to do with the fact that I'm
trying to use the default namespace, but I think referencing no prefix
in Xpath means to use "no namespace", which isn't the same thing.

What's going on here, and what do I need to do differently?