Hi,
I'm writing an application that generates a query result as a DOMDocument using Xerces. I need to be able to transform the Document into alternative formats, which I want to do using Xalan and an XSL template.
I'm starting off just writing a simple transformer program to test my XSL's on. I first tried to backtrace from the XalanTransformer::transform method, trying to use a XercesDocumentWrapper as input but that didn't want to work so I went back to the usage guide and re-worked the example there. I came up with:
/* parsing stuff...*/ DOMDocument* doc = parser->getDocument(); XercesDOMSupport theDOMSupport(); XercesParserLiaison theParserLiaison(); XercesDOMWrapperParsedSource parsedSource(doc2, theParserLiaison, theDOMSupport, XalanDOMString()); XSLTInputSource xsl(argv[2]); XSLTResultTarget res(cout); XalanTransformer* xtran = new XalanTransformer(); int success = xtran->transform(parsedSource, xsl, res);
This gets me:
transformer.cpp:52: no matching function for call to ` xalanc_1_5::XercesDOMWrapperParsedSource::XercesDOMWrapperParsedSource( xalanc_1_5::DOMDocument_Type*&, xalanc_1_5::XercesParserLiaison (&)(), xalanc_1_5::XercesDOMSupport (&)(), xalanc_1_5::XalanDOMString)'
candidates are:
xalanc_1_5::XercesDOMWrapperParsedSource::XercesDOMWrapperParsedSource(const
xalanc_1_5::XercesDOMWrapperParsedSource&) XalanTransformer/XercesDOMWrapperParsedSource.hpp:130:
xalanc_1_5::XercesDOMWrapperParsedSource::XercesDOMWrapperParsedSource(const
xalanc_1_5::DOMDocument_Type*, xalanc_1_5::XercesParserLiaison&, xalanc_1_5::XercesDOMSupport&, const xalanc_1_5::XalanDOMString& = XalanDOMString()) XalanTransformer/XercesDOMWrapperParsedSource.hpp:116:
xalanc_1_5::XercesDOMWrapperParsedSource::XercesDOMWrapperParsedSource(const
xalanc_1_5::DOM_Document_Type&, xalanc_1_5::XercesParserLiaison&, xalanc_1_5::XercesDOMSupport&, const xalanc_1_5::XalanDOMString& = XalanDOMString())
Trust me, I feel embarassed posting a compile question, but I can't see what I'm doing wrong. The obvious candidates are the DOMDocument_Type, but I've tried casting that with no success, and the XalanDOMString, but I've tried ommitting it and supplying a blank as seen here and neither solves the problem.
I'm using xalan 1.5 and xerces 2.2.0, compiling with gcc 3.2 on linux.
Can anyone see what I'm doing wrong? All help is much appreciated.
Cheers,
Mick