signContext.setURIDereferencer(DSigResolver.getInstance());
XMLSignature signature = dsigHelper.constructSignature(signedInfo, keyInfo, signaturePolicy.getUUID());
signContext.put(MessageConstants.WSS_PROCESSING_CONTEXT, context);
signContext.putNamespacePrefix(MessageConstants.DSIG_NS, MessageConstants.DSIG_PREFIX);
// XMLUtils.circumventBug2650(context.getSecurableSoapMessage().getSOAPPart());
signature.sign(signContext);
//For SignatureConfirmation
List scList = (ArrayList)context.getExtraneousProperty("SignatureConfirmation");
if(scList != null){
scList.add(Base64.encode(signature.getSignatureValue().getValue()));