@@ -66,14 +66,25 @@ public static String generate(Document inputDoc, String canonicalizationAlgorith
6666 String signatureAlgorithm , String signatureNamespacePrefix , String signatureType , String xpathExprString ,
6767 String [] certificateDetails , InputStream keyStoreInputStream )
6868 throws CryptoException , IOException , XMLSignatureException {
69+ String mechanismType = "DOM" ;
70+
71+ return generate (inputDoc , mechanismType , canonicalizationAlgorithm , digestAlgorithm , signatureAlgorithm ,
72+ signatureNamespacePrefix , signatureType , xpathExprString , certificateDetails , keyStoreInputStream );
73+
74+ }
75+
76+ public static String generate (Document inputDoc , String mechanismType , String canonicalizationAlgorithm ,
77+ String digestAlgorithm , String signatureAlgorithm , String signatureNamespacePrefix , String signatureType ,
78+ String xpathExprString , String [] certificateDetails , InputStream keyStoreInputStream )
79+ throws CryptoException , IOException , XMLSignatureException {
6980
7081 String canonicalizationAlgorithmURI = getCanonicalizationAlgorithmUri (canonicalizationAlgorithm );
7182 String digestAlgorithmURI = getDigestAlgorithmURI (digestAlgorithm );
7283 String signatureAlgorithmURI = getSignatureAlgorithmURI (signatureAlgorithm );
7384 String keyPairAlgorithm = signatureAlgorithm .substring (0 , 3 );
7485
7586 // Create a DOM XMLSignatureFactory
76- XMLSignatureFactory sigFactory = XMLSignatureFactory .getInstance ("DOM" );
87+ XMLSignatureFactory sigFactory = XMLSignatureFactory .getInstance (mechanismType );
7788
7889 // Create a Reference to the signed element
7990 Node sigParent = null ;
0 commit comments