Hi - I'm requesting some basic assistance with an XSL processing
problem. I would think this is a simple issue to resolve, but I
haven't had much luck.
Any asistance would be greatly appreciated.
*_Issue_*: Node contents not being output as expected.
*_Execution Context_*:
- eclipse 3.5.1, running a 2.x EJB on a local Weblogic 10.3
server, using Java JRE jdk16.0_17
- using eclipse Java EE Developer Tools, Oracle Weblogic
Server Tools, Oracle Common Tools
- CLASSPATH overridden to force xalan.jar, xml-apis.jar,
serializer.jar, and xercesImpl.jar before weblogic.jar
- to allow instantiation of a proper TransformerFactory
(not Weblogic's version) and use of the "debugger Interface"
(http://xml.apache.org/xalan-j/usagepatterns.html#debugging)
- Xalan-j_2_7_1
- Input is a */DOMSource/*, wrapping an org.w3c.dom.Document.
- Relevant code: aTransformer.transform(aDOMSource, *new*
StreamResult(aFileOutputStream)); "aTransformer" is instanceof
TransformerImpl
*_Personal Context_*:
- New to XSL, Xalan. Have taken care to try all options I can
think of before soliciting for assistance here. Don't fully understand
Debugger outputs (below).
*_Anticipated Result_*:
<?xml version="1.0" encoding="UTF-8"?>
<html>
<body>
To: John Customer
</body>
</html>
*_Actual Result_*:
<?xml version="1.0" encoding="UTF-8"?><html>
<body>Customer Company123 Main StreetAnytownCO80134USJohn
CustomerFedex02/02/1012:01:003031234567john.custo...@customerco.com1
12345678Salt Lake CityUT84106US</body>
</html>
*_XML_*:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<tFreightRateQuotation
xmlns="http://www.fedex.com/schemas/freightRateQuotation">
<AccountInformation>
<CompanyName>Customer Company</CompanyName>
<Address1>123 Main Street</Address1>
<City>Anytown</City>
<State>CO</State>
<Postal>80134</Postal>
<Country>US</Country>
</AccountInformation>
<CommonData>
<To>John Customer</To>
<From>Fedex</From>
<HeaderDate>02/02/10</HeaderDate>
<HeaderTime>12:01:00</HeaderTime>
<FaxNumber>3031234567</FaxNumber>
<EmailAddress>john.custo...@customerco.com</EmailAddress>
</CommonData>
<RateQuote>
<QuoteNumber>1 12345678</QuoteNumber>
<OriginAddress>
<OriginCity>Salt Lake City</OriginCity>
<OriginState>UT</OriginState>
<OriginPostal>84106</OriginPostal>
<OriginCountry>US</OriginCountry>
</OriginAddress>
</RateQuote>
</tFreightRateQuotation>
*_XSL_*:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
<xsl:apply-templates />
</body>
</html>
</xsl:template>
<xsl:template match="To">
To: <xsl:value-of select="."/>
<xsl:apply-templates/>
</xsl:template>
</xsl:stylesheet>
*_Logging information (from "Debugger Interface",
_**http://xml.apache.org/xalan-j/usagepatterns.html#debugging**_)_*:
file:///D:/workspaces/3.5/2010-June-load/1SRC_FAX/FaxEjb/XML/rateQuoteXmlToPdf-FO.xsl
Line #3, Column #26: template match='/'
STARTDOCUMENT
file:///D:/workspaces/3.5/2010-June-load/1SRC_FAX/FaxEjb/XML/rateQuoteXmlToPdf-FO.xsl
Line #4, Column #9: html
STARTDOCUMENT
STARTELEMENT: html
file:///D:/workspaces/3.5/2010-June-load/1SRC_FAX/FaxEjb/XML/rateQuoteXmlToPdf-FO.xsl
Line #5, Column #10: body
file:///D:/workspaces/3.5/2010-June-load/1SRC_FAX/FaxEjb/XML/rateQuoteXmlToPdf-FO.xsl
Line #6, Column #29: apply-templates
Selected source node '#document'
file:///D:/workspaces/3.5/2010-June-load/1SRC_FAX/FaxEjb/XML/rateQuoteXmlToPdf-FO.xsl
Line #6, Column #29: apply-templates, select='null':
10001: tFreightRateQuotation
null Line #0, Column #0: template match='*'
file:///D:/workspaces/3.5/2010-June-load/1SRC_FAX/FaxEjb/XML/rateQuoteXmlToPdf-FO.xsl
Line #0, Column #0: apply-templates
Selected source node 'tFreightRateQuotation'
(default rule) apply-templates, select='null':
10004: AccountInformation
10011: CommonData
1001e: RateQuote
null Line #0, Column #0: template match='*'
file:///D:/workspaces/3.5/2010-June-load/1SRC_FAX/FaxEjb/XML/rateQuoteXmlToPdf-FO.xsl
Line #0, Column #0: apply-templates
Selected source node 'AccountInformation'
(default rule) apply-templates, select='null':
10005: CompanyName
10007: Address1
10009: City
1000b: State
1000d: Postal
1000f: Country
null Line #0, Column #0: template match='*'
file:///D:/workspaces/3.5/2010-June-load/1SRC_FAX/FaxEjb/XML/rateQuoteXmlToPdf-FO.xsl
Line #0, Column #0: apply-templates
Selected source node 'CompanyName'
(default rule) apply-templates, select='null':
10006: #text
STARTELEMENT: body
CHARACTERS: Customer Company
null Line #0, Column #0: template match='*'
file:///D:/workspaces/3.5/2010-June-load/1SRC_FAX/FaxEjb/XML/rateQuoteXmlToPdf-FO.xsl
Line #0, Column #0: apply-templates
Selected source node 'Address1'
(default rule) apply-templates, select='null':
10008: #text
CHARACTERS: 123 Main Street
null Line #0, Column #0: template match='*'
file:///D:/workspaces/3.5/2010-June-load/1SRC_FAX/FaxEjb/XML/rateQuoteXmlToPdf-FO.xsl
Line #0, Column #0: apply-templates
Selected source node 'City'
(default rule) apply-templates, select='null':
1000a: #text
CHARACTERS: Anytown
null Line #0, Column #0: template match='*'
file:///D:/workspaces/3.5/2010-June-load/1SRC_FAX/FaxEjb/XML/rateQuoteXmlToPdf-FO.xsl
Line #0, Column #0: apply-templates
Selected source node 'State'
(default rule) apply-templates, select='null':
1000c: #text
CHARACTERS: CO
null Line #0, Column #0: template match='*'
file:///D:/workspaces/3.5/2010-June-load/1SRC_FAX/FaxEjb/XML/rateQuoteXmlToPdf-FO.xsl
Line #0, Column #0: apply-templates
Selected source node 'Postal'
(default rule) apply-templates, select='null':
1000e: #text
CHARACTERS: 80134
null Line #0, Column #0: template match='*'
file:///D:/workspaces/3.5/2010-June-load/1SRC_FAX/FaxEjb/XML/rateQuoteXmlToPdf-FO.xsl
Line #0, Column #0: apply-templates
Selected source node 'Country'
(default rule) apply-templates, select='null':
10010: #text
CHARACTERS: US
null Line #0, Column #0: template match='*'
file:///D:/workspaces/3.5/2010-June-load/1SRC_FAX/FaxEjb/XML/rateQuoteXmlToPdf-FO.xsl
Line #0, Column #0: apply-templates
Selected source node 'CommonData'
(default rule) apply-templates, select='null':
10012: To
10014: From
10016: HeaderDate
10018: HeaderTime
1001a: FaxNumber
1001c: EmailAddress
null Line #0, Column #0: template match='*'
file:///D:/workspaces/3.5/2010-June-load/1SRC_FAX/FaxEjb/XML/rateQuoteXmlToPdf-FO.xsl
Line #0, Column #0: apply-templates
Selected source node 'To'
(default rule) apply-templates, select='null':
10013: #text
CHARACTERS: John Customer
null Line #0, Column #0: template match='*'
file:///D:/workspaces/3.5/2010-June-load/1SRC_FAX/FaxEjb/XML/rateQuoteXmlToPdf-FO.xsl
Line #0, Column #0: apply-templates
Selected source node 'From'
(default rule) apply-templates, select='null':
10015: #text
CHARACTERS: Fedex
null Line #0, Column #0: template match='*'
file:///D:/workspaces/3.5/2010-June-load/1SRC_FAX/FaxEjb/XML/rateQuoteXmlToPdf-FO.xsl
Line #0, Column #0: apply-templates
Selected source node 'HeaderDate'
(default rule) apply-templates, select='null':
10017: #text
CHARACTERS: 02/02/10
null Line #0, Column #0: template match='*'
file:///D:/workspaces/3.5/2010-June-load/1SRC_FAX/FaxEjb/XML/rateQuoteXmlToPdf-FO.xsl
Line #0, Column #0: apply-templates
Selected source node 'HeaderTime'
(default rule) apply-templates, select='null':
10019: #text
CHARACTERS: 12:01:00
null Line #0, Column #0: template match='*'
file:///D:/workspaces/3.5/2010-June-load/1SRC_FAX/FaxEjb/XML/rateQuoteXmlToPdf-FO.xsl
Line #0, Column #0: apply-templates
Selected source node 'FaxNumber'
(default rule) apply-templates, select='null':
1001b: #text
CHARACTERS: 3031234567
null Line #0, Column #0: template match='*'
file:///D:/workspaces/3.5/2010-June-load/1SRC_FAX/FaxEjb/XML/rateQuoteXmlToPdf-FO.xsl
Line #0, Column #0: apply-templates
Selected source node 'EmailAddress'
(default rule) apply-templates, select='null':
1001d: #text
CHARACTERS: john.custo...@customerco.com
<mailto:john.custo...@customerco.com>
null Line #0, Column #0: template match='*'
file:///D:/workspaces/3.5/2010-June-load/1SRC_FAX/FaxEjb/XML/rateQuoteXmlToPdf-FO.xsl
Line #0, Column #0: apply-templates
Selected source node 'RateQuote'
(default rule) apply-templates, select='null':
1001f: QuoteNumber
10021: OriginAddress
null Line #0, Column #0: template match='*'
file:///D:/workspaces/3.5/2010-June-load/1SRC_FAX/FaxEjb/XML/rateQuoteXmlToPdf-FO.xsl
Line #0, Column #0: apply-templates
Selected source node 'QuoteNumber'
(default rule) apply-templates, select='null':
10020: #text
CHARACTERS: 1 12345678
null Line #0, Column #0: template match='*'
file:///D:/workspaces/3.5/2010-June-load/1SRC_FAX/FaxEjb/XML/rateQuoteXmlToPdf-FO.xsl
Line #0, Column #0: apply-templates
Selected source node 'OriginAddress'
(default rule) apply-templates, select='null':
10022: OriginCity
10024: OriginState
10026: OriginPostal
10028: OriginCountry
null Line #0, Column #0: template match='*'
file:///D:/workspaces/3.5/2010-June-load/1SRC_FAX/FaxEjb/XML/rateQuoteXmlToPdf-FO.xsl
Line #0, Column #0: apply-templates
Selected source node 'OriginCity'
(default rule) apply-templates, select='null':
10023: #text
CHARACTERS: Salt Lake City
null Line #0, Column #0: template match='*'
file:///D:/workspaces/3.5/2010-June-load/1SRC_FAX/FaxEjb/XML/rateQuoteXmlToPdf-FO.xsl
Line #0, Column #0: apply-templates
Selected source node 'OriginState'
(default rule) apply-templates, select='null':
10025: #text
CHARACTERS: UT
null Line #0, Column #0: template match='*'
file:///D:/workspaces/3.5/2010-June-load/1SRC_FAX/FaxEjb/XML/rateQuoteXmlToPdf-FO.xsl
Line #0, Column #0: apply-templates
Selected source node 'OriginPostal'
(default rule) apply-templates, select='null':
10027: #text
CHARACTERS: 84106
null Line #0, Column #0: template match='*'
file:///D:/workspaces/3.5/2010-June-load/1SRC_FAX/FaxEjb/XML/rateQuoteXmlToPdf-FO.xsl
Line #0, Column #0: apply-templates
Selected source node 'OriginCountry'
(default rule) apply-templates, select='null':
10029: #text
CHARACTERS: US
ENDELEMENT: body
ENDELEMENT: html
ENDDOCUMENT
*_Observations_*:
- Nodes seem to be traversed properly.
- Line # and Column # don't increment after initial apply-templates
Thanks in advance for your insights!
/*Tim Hibbs*/*/
/*FedEx Services
350 Spectrum Loop
Colorado Springs, CO 80921
719-484-2131