<div dir="ltr"><br><div class="gmail_quote">Hello,<br><br><div dir="ltr"><div><br></div><div>I find it particularly hard to generate the Response (Request is completed).</div><div>I seem to lack some steps in what is needed to fill the &lt;saml:Subject&gt; with the values expected.</div>

<div>Has anybody a little bit of code to share ... ?</div><div><br></div><div>Anonymous part of the Stack trace is here below :</div><div><div>java.lang.IllegalArgumentException: org.opensaml.saml2.core.impl.NameIDImpl cannot be added - it is already the child of another SAML Object</div>

<div><span style="white-space:pre-wrap">        </span>at org.opensaml.xml.AbstractXMLObject.prepareForAssignment(AbstractXMLObject.java:351)</div><div><span style="white-space:pre-wrap">        </span>at org.opensaml.saml2.core.impl.SubjectImpl.setNameID(SubjectImpl.java:79)</div>

<div><br></div><div>I based my code on the example code : <a href="https://svn.wso2.org/repos/wso2/carbon/platform/trunk/components/identity/org.wso2.carbon.identity.sso.saml/src/main/java/org/wso2/carbon/identity/sso/saml/builders/ResponseBuilder.java" target="_blank">https://svn.wso2.org/repos/wso2/carbon/platform/trunk/components/identity/org.wso2.carbon.identity.sso.saml/src/main/java/org/wso2/carbon/identity/sso/saml/builders/ResponseBuilder.java</a> (my code is currently almost a copy-paste from the sample since I removed all the namespaces &amp; ... to use the default values).</div>
<div><br></div><div>







<p class=""><font face="courier new, monospace" size="1">Subject subject = <span class="">new</span> SubjectBuilder().buildObject();</font></p><p class=""><font face="courier new, monospace" size="1">NameID lNameId = SAMLElementFactory.generateNameId(subject, valueToSet);</font></p>
<p class="">








</p><p class=""><font face="courier new, monospace" size="1"><span class="">        </span><span class="">        </span>subject.setNameID(lNameId);  // &lt;-- Fails HERE</font></p><p class="">....</p><p class=""><font face="courier new, monospace" size="1">    <span class="">/**</span></font></p>
<p class=""><font face="courier new, monospace" size="1">     * </font></p><p class=""><font face="courier new, monospace" size="1">     * <span class="">@param</span> subject</font></p><p class=""><font face="courier new, monospace" size="1">     * <span class="">@param</span> aNameQualifier</font></p>
<p class=""><font face="courier new, monospace" size="1">     * <span class="">@return</span></font></p><p class=""><font face="courier new, monospace" size="1">     */</font></p><p class=""><font face="courier new, monospace" size="1">    <span class="">public</span> <span class="">static</span> NameID generateNameId(Subject subject, String aValue) {</font></p>
<p class=""><font face="courier new, monospace" size="1">    <span class="">        </span><span class="">if</span> (<span class="">LOG</span>.isTraceEnabled())</font></p><p class=""><font face="courier new, monospace" size="1"><span class="">    <span class="">        </span><span class="">        </span></span><span class="">LOG</span><span class="">.trace(</span>&quot;Generate NameID&quot;<span class="">);</span></font></p>
<p class=""><font face="courier new, monospace" size="1">        NameID nameId = <span class="">new</span> NameIDBuilder().buildObject();</font></p><p class=""><span class=""><font face="courier new, monospace" size="1">        nameId.setValue(aValue); </font></span></p>
<p class=""><font face="courier new, monospace" size="1">        subject.setNameID(nameId);</font></p><p class=""><font face="courier new, monospace" size="1">        <span class="">return</span> nameId;</font></p><p class="">






















</p><p class=""><font face="courier new, monospace" size="1">    }</font></p><p class="">I have not registered anything in the &quot;Configuration&quot; of the SAML at bootstrap time (or later).<br></p></div><div><br></div>
<div>So ... I have just NO IDEA what I should specify to &quot;basically said&quot; deregister from the first child :) (which I have the felling, I did not register).</div>
<div><br></div><div>Tx,</div><div><br></div><div>\T,</div>







<div><span style="white-space:pre-wrap">        </span></div></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><br clear="all"><div><div dir="ltr"><div>--</div>Thomas Lionel Smets<div>
A3 SYSTEM sprl-bvba</div><div>M : <a href="tel:%2B32%20497%2044%206812" value="+32497446812" target="_blank">+32 497 44 6812</a></div><div>T : <a href="tel:%2B32%202%20852%203341" value="+3228523341" target="_blank">+32 2 852 3341</a></div>
<div>Skype : <span style="font-family:arial;font-size:small">thomas.lionel.smets</span></div><div>@ : <a href="mailto:Thomas.Smets@a3-system.eu" target="_blank">Thomas.Smets@a3-system.eu</a></div>
<div>Always accurate info : <a href="http://tsmets.myplaxo.com/" style="color:rgb(38,123,208);font-size:16px;font-family:Arial,sans-serif;margin:0px;font-weight:bold;padding:0px" target="_blank">http://tsmets.myplaxo.com</a></div>

</div></div>
</div>
</div><br></div>