<style>
/* Changing the layout to use less space for mobiles */
@media screen and (max-device-width: 480px), screen and (-webkit-min-device-pixel-ratio: 2) {
    #email-body { min-width: 30em !important; }
    #email-page { padding: 8px !important; }
    #email-banner { padding: 8px 8px 0 8px !important; }
    #email-avatar { margin: 1px 8px 8px 0 !important; padding: 0 !important; }
    #email-fields { padding: 0 8px 8px 8px !important; }
    #email-gutter { width: 0 !important; }
}
</style>
<div id="email-body">
<table id="email-wrap" align="center" border="0" cellpadding="0" cellspacing="0" style="background-color:#f0f0f0;color:#000000;width:100%;">
    <tr valign="top">
        <td id="email-page" style="padding:16px !important;">
            <table align="center" border="0" cellpadding="0" cellspacing="0" style="background-color:#ffffff;border:1px solid #bbbbbb;color:#000000;width:100%;">
                <tr valign="top">
                    <td bgcolor="#ffffff" style="background-color:#ffffff;color:#000000;font-family:Arial,FreeSans,Helvetica,sans-serif;font-size:12px;line-height:1;"><img src="https://shibboleth.net/images/shib_240x83.png" alt="" style="vertical-align:top;" /></td>
                </tr><tr valign="top">
    <td id="email-banner" style="padding:32px 32px 0 32px;">

                
        
        
            <table align="left" border="0" cellpadding="0" cellspacing="0" width="100%" style="width:100%;">
    <tr valign="top">
        <td style="color:#505050;font-family:Arial,FreeSans,Helvetica,sans-serif;padding:0;">
                                        <img id="email-avatar" src="https://issues.shibboleth.net/jira/secure/useravatar?avatarId=10202" alt="" height="48" width="48" border="0" align="left" style="padding:0;margin: 0 16px 16px 0;" />
                        <div id="email-action" style="padding: 0 0 8px 0;font-size:12px;line-height:18px;">
                                    <a class="user-hover" rel="putmanb@shibboleth.net" id="email_putmanb@shibboleth.net" href="https://issues.shibboleth.net/jira/secure/ViewProfile.jspa?name=putmanb%40shibboleth.net" style="color:#326ca6;">Brent Putman</a>
     commented on <img src="https://issues.shibboleth.net/jira/images/icons/issuetypes/subtask_alternate.png" height="16" width="16" border="0" align="absmiddle" alt="Sub-task"> <a style='color:#326ca6;text-decoration:none;' href='https://issues.shibboleth.net/jira/browse/IDP-118'>IDP-118</a>
            </div>
                        <div id="email-summary" style="font-size:16px;line-height:20px;padding:2px 0 16px 0;">
                <a style='color:#326ca6;text-decoration:none;' href='https://issues.shibboleth.net/jira/browse/IDP-118'><strong>Create a profile workflow action that encodes outbound messages</strong></a>
            </div>
                    </td>
    </tr>
</table>
    </td>
</tr>
<tr valign="top">
    <td id="email-fields" style="padding:0 32px 32px 32px;">
        <table border="0" cellpadding="0" cellspacing="0" style="padding:0;text-align:left;width:100%;" width="100%">
            <tr valign="top">
                <td id="email-gutter" style="width:64px;white-space:nowrap;"></td>
                <td>
                    <table border="0" cellpadding="0" cellspacing="0" width="100%">
                        <tr valign="top">
    <td colspan="2" style="color:#000000;font-family:Arial,FreeSans,Helvetica,sans-serif;font-size:12px;padding:0 0 16px 0;width:100%;">
        <div class="comment-block" style="background-color:#edf5ff;border:1px solid #dddddd;color:#000000;padding:12px;"><p>I played around with this in my testbed, see the sso-abstract-beans.xml and sso-abstract-flow.xml.  The beans and states for multiple options are all there, some stuff commented out, hopefully it's not too confusing.</p>

<p>I think I personally definitely don't like the SWF state transition approach.  Mainly because you've got stuff going on in 3 different places: 1) multiple EncodeMessage beans for each binding 2) something in action code that's setting the flow scope variable 3) transition mapping logic in the flow.  And the latter is pretty verbose and ugly.  IMHO it's too many things in disparate places to connect up and keep straight.  And of course it doesn't work at all if you need the encoder more than once.</p>

<p>Re: your above:  There wouldn't be any mapping "file", it would all be in Spring config with a util:map, e.g.</p>

<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
<pre class="code-java">&lt;util:map id=<span class="code-quote">"SAMLEncoderMap"</span> &gt;
    &lt;entry&gt;
        &lt;key&gt;
            &lt;value&gt;urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST&lt;/value&gt;
        &lt;/key&gt;
        &lt;idref bean=<span class="code-quote">"encoders.saml.SAML2PostEncoder"</span> /&gt;
    &lt;/entry&gt;
&lt;/util:map&gt;
</pre>
</div></div>

<p>In other words, it's just like what we had in v2 with the encoder and decoder maps in internal.xml, except the map value is an &lt;idref&gt; (in Java a String) rather than the actual bean.</p>

<p>I also tried out the direct URI -&gt; bean name approach via string translation.  It works, but means the encoder beans have a nasty looking 'name' attribute with which they can be resolved:</p>

<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
<pre class="code-java">    &lt;bean id=<span class="code-quote">"encoders.saml.SAML2PostEncoder"</span> name=<span class="code-quote">"encoders.saml.urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST"</span> class=... /&gt;
</pre>
</div></div>

<p>I think I personally prefer the explicit map, since it doesn't couple code to naming conventions of beans (although I did make the prefix a constructor arg of the lookup component).</p></div>
        <div style="color:#505050;padding:4px 0 0 0;">                </div>
    </td>
</tr>
                    </table>
                </td>
            </tr>
        </table>
    </td>
</tr>













            </table>
        </td><!-- End #email-page -->
    </tr>
    <tr valign="top">
        <td style="color:#505050;font-family:Arial,FreeSans,Helvetica,sans-serif;font-size:10px;line-height:14px;padding: 0 16px 16px 16px;text-align:center;">
            This message is automatically generated by JIRA.<br />
            If you think it was sent incorrectly, please contact your JIRA administrators<br />
            For more information on JIRA, see: <a style='color:#326ca6;' href='http://www.atlassian.com/software/jira'>http://www.atlassian.com/software/jira</a>
        </td>
    </tr>
</table><!-- End #email-wrap -->
</div><!-- End #email-body -->