Alex, please let me know your solution since I am facing the same problem: I
want to change
the namespaces of the generated xml documents.
Maarten
On 10/12/07, Andrew Welch <[EMAIL PROTECTED]> wrote:
>
> On 12/10/2007, Alex Wibowo <[EMAIL PROTECTED]> wrote:
> > I'm using XML bean to read an XML string, and modify the namespace
> before
> > saving it back as XML string.
> >
> > Say the xml that I have is:
> >
> > <ZFI>
> > ...
> > </ZFI>
> >
> > and I already have an XML object that represent this xml. What I had to
> do
> > is:
> >
> > XmlCursor cursor = xmlObject.newCursor();
> > // Cursor at STARTDOC
> > cursor.toNextToken();
> > // Cursor at START
> > cursor.toNextToken();
> > // Cursor after START
> > cursor.insertAttribute("xmlns","http://www.namespace.com");
> >
> > I tried to do (at the same line as cursor.insertAttribute) :
> >
> > cursor.insertNamespace ("","http://www.namespace.com");
> >
> > but it didnt work. i.e the XML string produced doesnt have the
> namespace. So
> > instead of having:
> >
> > <ZFI xmlns=" http://www.namespace.com">...
> >
> > it only has:
> >
> > <ZFI>...
> >
> > Is there any reason why this happened? What is the best way to insert
> the
> > default namespace, if I only have access
> > to the XMLObject (i.e. apart from specifying the namespace during the
> > construction of XMLObject) ?
>
> I don't XMLBeans well enough yet, but namespace nodes aren't
> attributes so I doubt you could change the namespace using an
> attribute method...
>
> Have a look at setName(new QName("http://www.namespace.com", "ZFI ", ""))
>
> Alternatively, (and probably the way I would do this sort of task) is
> to use XSLT - use an indentity transform with a special template that
> matches ZFI.
>
>
> cheers
> --
> Andrew Welch
> http://andrewjwelch.com
> Kernow: http://kernowforsaxon.sf.net/
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>