<div dir="ltr">I'm trying to troubleshoot a problem with storing consent preferences using HTML 5 local storage, and not making much progress. I turned up the logs to DEBUG for the flow and client storage components, and the ClientStorageService output is conspicuously missing:<div><br></div><div><div>2017-04-18 14:27:01,322 DEBUG net.shibboleth.idp.consent.logic.impl.FlowIdLookupFunction:69 2001:468:c80:2103:b84c:c820:f134:979f Current flow id is 'intercept/attribute-release'</div><div>2017-04-18 14:27:01,322 DEBUG net.shibboleth.idp.consent.logic.impl.JoinFunction:81 2001:468:c80:2103:b84c:c820:f134:979f Result 'serac:<a href="https://shib-sp.middleware.vt.edu/shibboleth">https://shib-sp.middleware.vt.edu/shibboleth</a>'</div><div>2017-04-18 14:27:01,322 DEBUG net.shibboleth.idp.consent.logic.impl.JoinFunction:81 2001:468:c80:2103:b84c:c820:f134:979f Result 'serac:_key_idx'</div><div>2017-04-18 14:27:01,323 DEBUG net.shibboleth.idp.consent.storage.impl.ConsentSerializer:209 2001:468:c80:2103:b84c:c820:f134:979f Serialized '[serialized record data here]'</div><div>2017-04-18 14:27:01,324 DEBUG net.shibboleth.idp.consent.flow.storage.impl.AbstractConsentIndexedStorageAction:177 2001:468:c80:2103:b84c:c820:f134:979f Profil e Action CreateResult: Read storage record 'null' with context 'intercept/attribute-release' and key 'serac:_key_idx'</div><div>2017-04-18 14:27:01,324 DEBUG net.shibboleth.idp.consent.flow.storage.impl.AbstractConsentIndexedStorageAction:279 2001:468:c80:2103:b84c:c820:f134:979f Profile Action CreateResult: Will not prune storage records, number of keys '0' is less than max number of records '10'</div><div>2017-04-18 14:27:01,325 DEBUG net.shibboleth.idp.consent.flow.storage.impl.AbstractConsentIndexedStorageAction:198 2001:468:c80:2103:b84c:c820:f134:979f Profile Action CreateResult: Read storage record 'null' with context 'intercept/attribute-release' and key 'serac:_key_idx'</div><div>2017-04-18 14:27:01,325 DEBUG net.shibboleth.idp.consent.flow.storage.impl.AbstractConsentIndexedStorageAction:202 2001:468:c80:2103:b84c:c820:f134:979f Profile Action CreateResult: Creating storage index with key 'serac:<a href="https://shib-sp.middleware.vt.edu/shibboleth">https://shib-sp.middleware.vt.edu/shibboleth</a>'</div><div>2017-04-18 14:27:01,325 DEBUG net.shibboleth.idp.consent.storage.impl.CollectionSerializer:90 2001:468:c80:2103:b84c:c820:f134:979f Serialized '[serac:<a href="https://shib-sp.middleware.vt.edu/shibboleth">https://shib-sp.middleware.vt.edu/shibboleth</a>]' as '["serac:<a href="https://shib-sp.middleware.vt.edu/shibboleth">https://shib-sp.middleware.vt.edu/shibboleth</a>"]'</div><div>2017-04-18 14:27:01,338 DEBUG net.shibboleth.idp.consent.flow.ar.impl.AbstractAttributeReleaseAction:153 2001:468:c80:2103:b84c:c820:f134:979f Profile Action ReleaseAttributes: Found attributeContext 'net.shibboleth.idp.attribute.context.AttributeContext@26dda74f'</div><div>2017-04-18 14:27:01,338 DEBUG net.shibboleth.idp.consent.flow.ar.impl.ReleaseAttributes:64 2001:468:c80:2103:b84c:c820:f134:979f Profile Action ReleaseAttributes: Consents [list of consented attributes here]</div><div>... lots of ReleaseAttributes output showing the attributes I would expect to be released on consent ...</div><div><div>2017-04-18 14:27:01,347 DEBUG net.shibboleth.idp.consent.flow.ar.impl.ReleaseAttributes:96 2001:468:c80:2103:b84c:c820:f134:979f Profile Action ReleaseAttributes: Not releasing attributes '{}'</div></div><div><div>2017-04-18 14:27:01,348 DEBUG net.shibboleth.idp.profile.interceptor.impl.WriteProfileInterceptorResultToStorage:68 2001:468:c80:2103:b84c:c820:f134:979f Profile Action WriteProfileInterceptorResultToStorage: No results available from interceptor context, nothing to store</div></div></div><div><br></div><div>This feels like a dumb configuration mistake, but I just don't see it. I have what I believe is configuration specifying HTML5 local storage in idp.properties:</div><div><br></div><div><div># Set to "shibboleth.StorageService" for server-side storage of user consent</div><div>idp.consent.StorageService = shibboleth.ClientPersistentStorageService</div></div><div><br></div><div>Any ideas what I'm doing wrong?</div><div><br></div><div>Thanks</div><div>Marvin Addison</div><div>Middleware @ Virginia Tech</div><div><br></div></div>