本文整理汇总了Java中com.sun.org.apache.xml.internal.security.c14n.Canonicalizer.canonicalizeSubtree方法的典型用法代码示例。如果您正苦于以下问题:Java Canonicalizer.canonicalizeSubtree方法的具体用法?Java Canonicalizer.canonicalizeSubtree怎么用?Java Canonicalizer.canonicalizeSubtree使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.sun.org.apache.xml.internal.security.c14n.Canonicalizer
的用法示例。
在下文中一共展示了Canonicalizer.canonicalizeSubtree方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: signInOctetStream
import com.sun.org.apache.xml.internal.security.c14n.Canonicalizer; //导入方法依赖的package包/类
/**
* Output the C14n stream to the given OutputStream.
* @param os
* @throws CanonicalizationException
* @throws InvalidCanonicalizerException
* @throws XMLSecurityException
*/
public void signInOctetStream(OutputStream os)
throws CanonicalizationException, InvalidCanonicalizerException, XMLSecurityException {
if (this.c14nizedBytes == null) {
Canonicalizer c14nizer =
Canonicalizer.getInstance(this.getCanonicalizationMethodURI());
c14nizer.setWriter(os);
String inclusiveNamespaces = this.getInclusiveNamespaces();
if (inclusiveNamespaces == null) {
c14nizer.canonicalizeSubtree(this.constructionElement);
} else {
c14nizer.canonicalizeSubtree(this.constructionElement, inclusiveNamespaces);
}
} else {
try {
os.write(this.c14nizedBytes);
} catch (IOException e) {
throw new RuntimeException(e);
}
}
}
示例2: getCanonicalizedOctetStream
import com.sun.org.apache.xml.internal.security.c14n.Canonicalizer; //导入方法依赖的package包/类
/**
* Returns getCanonicalizedOctetStream
*
* @return the canonicalization result octedt stream of <code>SignedInfo</code> element
* @throws CanonicalizationException
* @throws InvalidCanonicalizerException
* @throws XMLSecurityException
*/
public byte[] getCanonicalizedOctetStream()
throws CanonicalizationException, InvalidCanonicalizerException,
XMLSecurityException {
if ((this._c14nizedBytes == null)
/*&& (this._state == ElementProxy.MODE_SIGN)*/) {
Canonicalizer c14nizer =
Canonicalizer.getInstance(this.getCanonicalizationMethodURI());
this._c14nizedBytes =
c14nizer.canonicalizeSubtree(this._constructionElement);
}
// make defensive copy
byte[] output = new byte[this._c14nizedBytes.length];
System.arraycopy(this._c14nizedBytes, 0, output, 0, output.length);
return output;
}
示例3: signInOctectStream
import com.sun.org.apache.xml.internal.security.c14n.Canonicalizer; //导入方法依赖的package包/类
/**
* Output the C14n stream to the give outputstream.
* @param os
* @throws CanonicalizationException
* @throws InvalidCanonicalizerException
* @throws XMLSecurityException
*/
public void signInOctectStream(OutputStream os)
throws CanonicalizationException, InvalidCanonicalizerException,
XMLSecurityException {
if ((this._c14nizedBytes == null)) {
Canonicalizer c14nizer =
Canonicalizer.getInstance(this.getCanonicalizationMethodURI());
c14nizer.setWriter(os);
String inclusiveNamespaces = this.getInclusiveNamespaces();
if(inclusiveNamespaces == null)
c14nizer.canonicalizeSubtree(this._constructionElement);
else
c14nizer.canonicalizeSubtree(this._constructionElement, inclusiveNamespaces);
} else {
try {
os.write(this._c14nizedBytes);
} catch (IOException e) {
throw new RuntimeException(""+e);
}
}
}
示例4: getCanonicalizedOctetStream
import com.sun.org.apache.xml.internal.security.c14n.Canonicalizer; //导入方法依赖的package包/类
/**
* Returns getCanonicalizedOctetStream
*
* @return the canonicalization result octet stream of <code>SignedInfo</code> element
* @throws CanonicalizationException
* @throws InvalidCanonicalizerException
* @throws XMLSecurityException
*/
public byte[] getCanonicalizedOctetStream()
throws CanonicalizationException, InvalidCanonicalizerException, XMLSecurityException {
if (this.c14nizedBytes == null) {
Canonicalizer c14nizer =
Canonicalizer.getInstance(this.getCanonicalizationMethodURI());
this.c14nizedBytes =
c14nizer.canonicalizeSubtree(this.constructionElement);
}
// make defensive copy
return this.c14nizedBytes.clone();
}
示例5: processXmlFrag
import com.sun.org.apache.xml.internal.security.c14n.Canonicalizer; //导入方法依赖的package包/类
protected void processXmlFrag(int type, String tag, String val, MessageDigest messageDigest, Canonicalizer canonicalizer,
DocumentBuilder docBuilderNSTrue, String wrapperPrefix, String wrapperNSUri) throws Exception {
logger.trace("--> processXmlFrag(). type=" + type + ", tag=" + tag + ", val=" + val);
Document doc;
String addedStartTag = "", addedEndTag = "", modifiedval = val;
if (type == STARTTAG)
addedEndTag = "</" + tag + ">";
else if (type == ENDTAG)
addedStartTag = "<" + tag + ">";
String fakeStartElem = "", fakeEndElem = "";
String wrapperNS = wrapperPrefix==null?(wrapperNSUri==null?null:"xmlns=\""+wrapperNSUri+"\""):(wrapperNSUri==null?null:"xmlns:"+wrapperPrefix+"=\""+wrapperNSUri+"\"");
if (wrapperNS != null || type == CHAR) {
fakeStartElem = "<fake" + uuid;
fakeEndElem = "</fake" + uuid;
if (wrapperNS != null)
fakeStartElem += " " + wrapperNS;
fakeStartElem += ">";
fakeEndElem += ">";
}
addedStartTag = fakeStartElem + addedStartTag;
addedEndTag = addedEndTag + fakeEndElem;
modifiedval = addedStartTag + val + addedEndTag;
logger.trace("modifiedval=" + modifiedval);
String digestval = null;
try {
doc = docBuilderNSTrue.parse(new InputSource(new StringReader(modifiedval)));
} catch(Throwable e) {
e.printStackTrace();
//throw e;
//************* should not ever come here - investigate if it does **************
DocumentBuilderFactory dbfNSFalse = DocumentBuilderFactory.newInstance();
dbfNSFalse.setNamespaceAware(false);
DocumentBuilder docBuilderNSFalse = dbfNSFalse.newDocumentBuilder();
docBuilderNSFalse.setErrorHandler(new IgnoreAllErrorHandler());
doc = docBuilderNSFalse.parse(new InputSource(new StringReader(modifiedval)));
}
digestval = new String(canonicalizer.canonicalizeSubtree(doc));
digestval = digestval.replace(addedStartTag, "").replace(addedEndTag, "");
logger.trace("digestval=" + digestval);
messageDigest.update(digestval.getBytes());
if (digestBuf != null)
digestBuf.append(digestval);
logger.trace("<-- processXmlFrag()");
}