2017-10-28 45 views
0

如何获得'XPath'而不是'dsig-xpath:XPath'?'XPath'不是'dsig-xpath:XPath'?

 <ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#" Id="SigFrs"> 
<ds:SignedInfo> 
    <ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/> 
    <ds:SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#rsa-sha256"/> 
    <s:Reference Id="signatureId" URI=""> 
    <ds:Transforms> 
     <ds:Transform Algorithm="http://www.w3.org/2002/06/xmldsig-filter2"> 
     <dsig-xpath:XPath xmlns:dsig-xpath="http://www.w3.org/2002/06/xmldsig-filter2" Filter="intersect">/Root/Element1</XPath> 
     <dsig-xpath:XPath xmlns:dsig-xpath="http://www.w3.org/2002/06/xmldsig-filter2" Filter="intersect">/Root/Element2</XPath> 
     </ds:Transform> 
    </ds:Transforms> 
    <ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/> 
    <ds:DigestValue>6D+1WZjC....vGidMqCX5uCL1rw=</ds:DigestValue> 
    </ds:Reference> 
</ds:SignedInfo> 

得到这样的:

<ds:Transforms> 
     <ds:Transform Algorithm="http://www.w3.org/2002/06/xmldsig-filter2"> 
     <XPath xmlns="http://www.w3.org/2002/06/xmldsig-filter2" Filter="intersect">/Root/Element1</XPath> 
     <XPath xmlns="http://www.w3.org/2002/06/xmldsig-filter2" Filter="intersect">/Root/Element2</XPath> 
     </ds:Transform> 
    </ds:Transforms> 

这可能看起来像我的进口(xmlsec-2.1.0.jar)将.jar?

回答

0

分配前缀为空字符串:

ElementProxy.setDefaultPrefix("http://www.w3.org/2002/06/xmldsig-filter2", "")