<div dir="ltr">Just as an example, this is what I ended up with:<div><br></div><div>   <bean id="shibboleth.expiring-password.Condition" class="net.shibboleth.idp.profile.logic.DateAttributePredicate"<br>            c:attribute="passwordExpiration" c:formatString="yyyy'-'MM'-'dd'T'HH':'mm':'ss'Z'"<br>            p:resultIfMissing="false" p:offset="-P10D" /><br></div><div><br></div><div>It does work, even if it's not pretty.</div><div><br></div><div>-Brian</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Jul 22, 2019 at 11:20 AM Liam Hoekenga <<a href="mailto:liamr@umich.edu">liamr@umich.edu</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">It doesn't log anything really, so debugging it requires Java hands on, or writing some scripting to try and apply the condition to known inputs and test the formatting string to see what it's doing.<br></blockquote><div><br></div><div>About the most informative thing I've seen is this..</div>2019-07-22 12:01:37,293 - 141.213.171.202 - DEBUG [org.springframework.webflow.engine.Transition:214] - Executing [Transition@29f72fb4 on = T(java.lang.System).currentTimeMillis() - T(java.lang.Long).parseLong(ExpiringPasswordCookieManager.getCookieValue(ExpiringPasswordCookieName, '0')) > ExpiringPasswordNotifyInterval, to = DisplayExpiringPasswordView]<br><div><br></div><div>I'm presuming all of this stuff is exposable in nashorn?  Rather than having to edit / recompile the actual java?</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
The Z may be causing issues because of its status as a time zone signifier, and the parsing can be very tricky.<br></blockquote><div><br></div><div>The Z is in single quotes, which does seem to be the way to embed string literals..</div><div><a href="https://www.joda.org/joda-time/apidocs/org/joda/time/format/DateTimeFormat.html" target="_blank">https://www.joda.org/joda-time/apidocs/org/joda/time/format/DateTimeFormat.html</a><br></div><div> </div><div>There was this thread from February about date parsing..</div><div><a href="https://marc.info/?l=shibboleth-users&m=154963902909739&w=2" target="_blank">https://marc.info/?l=shibboleth-users&m=154963902909739&w=2</a><br></div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
Lastly one always needs to sanity check the value itself being parsed, and the attribute resolver can log that on DEBUG.<br></blockquote><div>Doing that.   It looks like what I expect (but maybe my expectations are off).</div><div><br></div><div>LIam</div></div></div>
-- <br>
For Consortium Member technical support, see <a href="https://wiki.shibboleth.net/confluence/x/coFAAg" rel="noreferrer" target="_blank">https://wiki.shibboleth.net/confluence/x/coFAAg</a><br>
To unsubscribe from this list send an email to <a href="mailto:users-unsubscribe@shibboleth.net" target="_blank">users-unsubscribe@shibboleth.net</a></blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail_signature"><div dir="ltr"><font face="arial, sans-serif">Lead Identity Mgmt/Systems Integration<br>Information Technology<br>Sonoma State University</font><div><font face="arial, sans-serif"><br></font></div></div></div>