Hi Thanks for the speedy response.
Our code to create the new document is.. newEmptyDocument() { DocumentBuilderFactory factory = null; DocumentBuilder builder = null; Document ret; try { factory = DocumentBuilderFactory.newInstance(); builder = factory.newDocumentBuilder(); } catch (ParserConfigurationException e) { e.printStackTrace(); } Then to create the checkout-shopping-cart element we do.. root = (Element) document.createElementNS("http://checkout.google.com/schema/2","checkout-shopping-cart"); document.appendChild(root); I have tried adding the factory.setNamespaceAware(true); but I still get the same error back from google. Thanks Giles Christine Li wrote: > >> trans.transform(new DOMSource(document), new StreamResult(sw)); > > How did you create document? When you create a DocumentBuilder, did you > set namespace aware true on the DocumentBuilderFactory? You should do: > > DocumentBuilderFactory dfactory = > DocumentBuilderFactory.newInstance(); > > dfactory.setNamespaceAware(true); > DocumentBuilder docBuilder = dfactory.newDocumentBuilder(); > > Hope it helps, > > Christine Li > XSLT Development > IBM Toronto Lab > Tel: (905)413-2601 > Email: [EMAIL PROTECTED] > > > > gilesP <[EMAIL PROTECTED]> > 09/05/2007 10:13 AM > > To > xalan-j-users@xml.apache.org > cc > > Subject > Cannot find the declaration... > > > > > > > > Hi > > I am trying to integrate our web application with google-checkout. We > send > them an xml version of our shopping cart but their server is responding > with > "Error parsing XML; message from parser is: cvc-elt.1: Cannot find the > declaration of element 'checkout-shopping-cart'" > > The xml we are sending is .... > <?xml version="1.0" encoding="UTF-8"?> > <checkout-shopping-cart> > <shopping-cart> > <items> > <item> > <item-name>Cotton Lined Wellingtons - EU:40 UK:6 to > 6.5</item-name> > <item-description/> > <unit-price currency="GBP">15.71</unit-price> > <quantity>1</quantity> > <merchant-item-id>Gar_217518_40</merchant-item-id> > <tax-table-selector>Standard</tax-table-selector> > </item></items> > </shopping-cart> > </checkout-shopping-cart> > > I believe the <checkout-shopping-cart> element should be > <checkout-shopping-cart xmlns="http://checkout.google.com/schema/2"> > > When we build our Document object the returned checkout-shopping-cart > element does have the namespace xmlns="http://checkout.google.com/schema/2 > " > > The trouble seems to be when we create the xml string from the Document > using xlan, it seems to drop this namespace declaration. > > This is the exact code we are using to return the xml as a string where > "document" is our cart as a Document which seems to have the correct > namespace.... > > try { > TransformerFactory tf = > TransformerFactory.newInstance(); > Transformer trans = > tf.newTransformer(); > StringWriter sw = new > StringWriter(); > trans.transform(new > DOMSource(document), new StreamResult(sw)); > return sw.toString(); > } catch (TransformerException tEx) { > tEx.printStackTrace(); > } > > We are using java version "1.5.0_07" > If I call com.sun.org.apache.xalan.internal.Version.getVersion() I get > Xalan Java 2.6.0 > > I hope this makes sense to somebody as I have had no luck on the > google-checkout forum and this has ground our development to a halt! > > Many thanks > > Giles > > -- > View this message in context: > http://www.nabble.com/Cannot-find-the-declaration...-tf3716003.html#a10395125 > > Sent from the Xalan - J - Users mailing list archive at Nabble.com. > > > > -- View this message in context: http://www.nabble.com/Cannot-find-the-declaration...-tf3716003.html#a10396168 Sent from the Xalan - J - Users mailing list archive at Nabble.com.