xmlsec 2.0.4: не удается разрешить метод setSignatureSpecNSprefix - PullRequest
0 голосов
/ 25 апреля 2019

Я обновился с xmlsec 1.2.0 до 2.0.4, так как перехожу с Java 7 на Java 8.

Теперь проблема, с которой я сталкиваюсь, заключается в том, что метод setSignatureSpecNSprefix удален из org.apache.xml.security.utils.Constants.

Я не могу найти документацию, которая говорит мне, как заменить или как обойти это.

Я уже спрашивал в списке рассылки и JIRA Apache, но пока не повезло.

В моем коде я делал:

import org.apache.xml.security.utils.Constants;
...
protected final void sign(String signedElementID, Element signedElement)
throws XMLSecurityException {
  // Setting some attributes for ID, AssertionID and ResponseID
  // ...

  // Here is where it blows up!!! 
  Constants.setSignatureSpecNSprefix("");

  // The BaseURI is the URI that's used to prepend to relative URIs
  String BaseURI = "http://someurl.com"; 

  Document document = signedElement.getOwnerDocument();

  // It shouldn't affect the signature, 
  // because we don't have any relative URLs in the document
  XMLSignature sig = new XMLSignature(doc, 
                                    BaseURI, 
                                    XMLSignature.ALGO_ID_SIGNATURE_RSA,
                                Canonicalizer.ALGO_ID_C14N_EXCL_WITH_COMMENTS);

Спасибо за любую помощь, которую вы можете оказать.

1 Ответ

0 голосов
/ 02 мая 2019

Предположительно, мы можем заменить

    Constants.setSignatureSpecNSprefix("");

на

    ElementProxy.setDefaultPrefix(Constants.SignatureSpecNS, "");

и получить тот же результат.

...