私はこれに対して私の頭をしばらく打ち倒しており、進歩し始めています。しかし、SAML 2アサーションの文字列表現(XML)をアサーションオブジェクトに変換する際に問題が発生しました。Javaの与えられたXMLからOpenSAMLアサーションを作成する
適切なデータで有効なorg.w3c.dom.Document
が表示されているようですが、有効なSAMLObjectBuilder<Assertion>
がビルダーファクトリから取得されているようですが、それらをまとめてみると空白のアサーションが表示されます。件名、発行者、発行時間などがすべてnull
であり、明確にXMLに設定されています。
私が間違っていることを誰に見ても解決策を提案できますか?式の残りの部分を失敗し、null
を返すassertion.getSubject()
名前ID割り当て、で
Document doc = loadXMLFromString(saml);
XMLObjectBuilderFactory builderFactory = Configuration.getBuilderFactory();
SAMLObjectBuilder<Assertion> assertionBuilder =
(SAMLObjectBuilder<Assertion>)
builderFactory.getBuilder(Assertion.DEFAULT_ELEMENT_NAME);
Assertion assertion = assertionBuilder.buildObject(doc.getDocumentElement());
String nameID = assertion.getSubject().getNameID().getValue();
。
私が使用している例は、10ページ
機能上記loadXMLFromString()
はほとんどの場合In Java, how do I parse XML as a String instead of a file?
ここで質問名は '[SOLVED]'で編集しません。答えが得られた場合は、その左側の緑色のチェックマークを付けてください。質問には「解決済み」と表示されます。 – marcog
@marcog私はそれを最初に試みましたが、48時間の猶予期間が終わる前に受け入れられたように私自身の答えをマークすることはできませんでした。そして、解決のために私がしたすべての検索で、それを削除するのではなく。 –
自己回答を投稿したことは素晴らしいことです。あまりにも多くの人々がちょうど歩き出す。 +1のために質問と回答をしてください! – marcog