There should rather be: try { so.close(); } catch (IOException e) { //Imposible throw new RuntimeException(e); }
when the operation is impossible (You never know ;-) ). -----Original Message----- From: Julien PASQUIER [mailto:[EMAIL PROTECTED] Sent: Wednesday, March 14, 2007 12:12 PM To: security-dev@xml.apache.org Subject: XMLSignature class - The signer output stream is closed before signing operation Hi, In the org.apache.xml.security.signature.XMLSignature class of the java XML Security v1.4, I don't understand a piece of code in the "public void sign(Key signingKey)" method. ----------------------------- // generate digest values for all References in this SignedInfo si.generateDigestValues(); OutputStream so=new UnsyncBufferedOutputStream(new SignerOutputStream(sa)); try { so.close(); } catch (IOException e) { //Imposible } // get the canonicalized bytes from SignedInfo si.signInOctectStream(so); ----------------------------- Why the output stream "so" object is closed ("so.close()") before the signing operation ? Regards, Julien PASQUIER