Raul, already tried that hack, the problem with that is that c14n outputs either a byte buffer that is the XML docu as String or as a node set - this has to be serialized then.... deadlock.
Well, I try to ask the WSS guys how they think this problem can be sloved. Regards, Werner > -----Ursprüngliche Nachricht----- > Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] > Gesendet: Donnerstag, 27. Mai 2004 17:22 > An: [EMAIL PROTECTED] > Betreff: Re: AW: Question on c14n exclusive > > > > Raul, > > thanks. > > > > However, the element that I create is a top level > > elemen, i.e. an apex node (as far as I understand the > > c14n specs). According to the WSS specs > > > > <cite> > > * Finally, employ the canonicalization method specified as > a parameter to > > the transform to > > serialize N to produce the octet stream output of this > transform; but, in > > place of any > > dereferenced <wsse:SecurityTokenReference> element Ri and > its descendants, > > process the dereferenced node set Ri' instead. During this step, > > canonicalization of the > > replacement node set MUST be augmented as follows: > > o Note: A namespace declaration xmlns="" MUST be emitted > with every apex > > element that has no namespace node declaring a value for the default > > namespace; cf. XML Decryption Transform. > > </cite> > > > > I've tried several things, no success. I explicitly set an empty > > default namespace, this is the top level argument (except for the > > document node). > > > > If I use canonicalizeXPathNodeSet(nodeset, incNamespace) would this > > work? A very confusing topic.... :-) (And hard to read specs too). > > > > Regards, > > Werner > > > > My undestand of the c14n spec more empiricall than > theoricall, but I can > tell you, that at the beginig I forget to add this behaviour > in my c14n > rewrite and it emits xmlns="" definitions at the "apex" node. > and It made > all the signature test cases gently faild. > If you see the xmlns="" must be emited only if the parent > *emited* has a > non null default namespace and the current node has a empty > one(i.e. no > definition or xmlns=""). > I can propose you a bad hack that it think it will work: why you don't > wrap the apex node with a fake parent that defines a xmlns to > whatever. > Then you c14n the tree and strip the fake root element with > the xmlns def? > > It's ugly but you can keep working on it. Till you ask the > wsee masters > what they mean with these clear lines. >