c# - DotNetOpenAuth OpenID Provider "Sequence contains more than one element" -


i'm having trouble implementing openid provider dnoa 3.4.3. going absolutely peachy until needed ax support well. set axfetchassregtransform in web config, recommended andrew @ http://groups.google.com/group/dotnetopenid/browse_thread/thread/5629a24c0a7e8d99. doing caused me exception "sequence contains more 1 element" on decide.aspx page, however, , haven't been able past it.

the following line throwing exception:
edit: strangely enough, not line throwing error anymore. sendresponse() triggering exception

claimsrequest requestedfields = providerendpoint.pendingrequest.getextension();

providerendpoint.sendresponse() 

any thoughts on why may be? appreciated!

the logs leading error follows:

 2010-04-28 12:38:20,247 (gmt-7) [5] info  dotnetopenauth.messaging.channel - scanning incoming request messages: https://myprovider/provider.ashx?openid.ns=http%3a%2f%2fspecs.openid.net%2fauth%2f2.0&openid.claimed_id=http%3a%2f%2fspecs.openid.net%2fauth%2f2.0%2fidentifier_select&openid.identity=http%3a%2f%2fspecs.openid.net%2fauth%2f2.0%2fidentifier_select&openid.mode=checkid_setup&openid.ns.ext1=http%3a%2f%2fopenid.net%2fsrv%2fax%2f1.0&openid.ext1.mode=fetch_request&openid.ext1.type.email=http%3a%2f%2faxschema.org%2fcontact%2femail&openid.ext1.type.fullname=http%3a%2f%2faxschema.org%2fnameperson&openid.ext1.type.language=http%3a%2f%2faxschema.org%2fpref%2flanguage&openid.ext1.required=email&openid.return_to=http%3a%2f%2fmyrelyingparty%2flogin.jsp%3foidreturn%3d%252fhome&openid.assoc_handle=%7b634080802953194640%7d%7bhxjfnw==%7d%7b20%7d&openid.realm=http%3a%2f%2fmyrelyingparty 2010-04-28 12:38:20,285 (gmt-7) [5] info  dotnetopenauth.messaging.channel - processing incoming checkidrequest (2.0) message:     openid.claimed_id: http://specs.openid.net/auth/2.0/identifier_select     openid.identity: http://specs.openid.net/auth/2.0/identifier_select     openid.assoc_handle: {634080802953194640}{hxjfnw==}{20}     openid.return_to: http://myrelyingparty/login.jsp?oidreturn=%2fhome     openid.realm: http://myrelyingparty/     openid.mode: checkid_setup     openid.ns: http://specs.openid.net/auth/2.0     openid.ns.ext1: http://openid.net/srv/ax/1.0     openid.ext1.mode: fetch_request     openid.ext1.type.email: http://axschema.org/contact/email     openid.ext1.type.fullname: http://axschema.org/nameperson     openid.ext1.type.language: http://axschema.org/pref/language     openid.ext1.required: email  2010-04-28 12:38:22,773 (gmt-7) [14] info  dotnetopenauth.messaging.channel - scanning incoming request messages: https://myprovider/login.aspx?returnurl=%2fdecide.aspx 2010-04-28 12:38:36,167 (gmt-7) [5] info  dotnetopenauth.messaging.channel - scanning incoming request messages: https://myprovider/login.aspx?returnurl=%2fdecide.aspx 2010-04-28 12:38:38,147 (gmt-7) [14] error dotnetopenauth.messaging - protocol error: http request realm url (http://myrelyingparty/) resulted in redirect, not allowed during relying party discovery.    @ dotnetopenauth.messaging.errorutilities.verifyprotocol(boolean condition, string message, object[] args)    @ dotnetopenauth.openid.realm.discover(idirectwebrequesthandler requesthandler, boolean allowredirects)    @ dotnetopenauth.openid.realm.discoverreturntoendpoints(idirectwebrequesthandler requesthandler, boolean allowredirects)    @ dotnetopenauth.openid.provider.hostprocessedrequest.isreturnurldiscoverablecore(openidprovider provider)    @ dotnetopenauth.openid.provider.hostprocessedrequest.isreturnurldiscoverable(openidprovider provider)    @ openidproviderwebforms.decide.page_load(object src, eventargs e)    @ system.web.util.callihelper.eventargfunctioncaller(intptr fp, object o, object t, eventargs e)    @ system.web.util.callieventhandlerdelegateproxy.callback(object sender, eventargs e)    @ system.web.ui.control.onload(eventargs e)    @ system.web.ui.control.loadrecursive()    @ system.web.ui.page.processrequestmain(boolean includestagesbeforeasyncpoint, boolean includestagesafterasyncpoint)    @ system.web.ui.page.processrequest(boolean includestagesbeforeasyncpoint, boolean includestagesafterasyncpoint)    @ system.web.ui.page.processrequest()    @ system.web.ui.page.processrequest(httpcontext context)    @ asp.decide_aspx.processrequest(httpcontext context)    @ system.web.httpapplication.callhandlerexecutionstep.system.web.httpapplication.iexecutionstep.execute()    @ system.web.httpapplication.executestep(iexecutionstep step, boolean& completedsynchronously)    @ system.web.httpapplication.pipelinestepmanager.resumesteps(exception error)    @ system.web.httpapplication.beginprocessrequestnotification(httpcontext context, asynccallback cb)    @ system.web.httpruntime.processrequestnotificationprivate(iis7workerrequest wr, httpcontext context)    @ system.web.hosting.pipelineruntime.processrequestnotificationhelper(intptr managedhttpcontext, intptr nativerequestcontext, intptr moduledata, int32 flags)    @ system.web.hosting.pipelineruntime.processrequestnotification(intptr managedhttpcontext, intptr nativerequestcontext, intptr moduledata, int32 flags)    @ system.web.hosting.pipelineruntime.processrequestnotificationhelper(intptr managedhttpcontext, intptr nativerequestcontext, intptr moduledata, int32 flags)    @ system.web.hosting.pipelineruntime.processrequestnotification(intptr managedhttpcontext, intptr nativerequestcontext, intptr moduledata, int32 flags)  2010-04-28 12:38:38,149 (gmt-7) [14] info  dotnetopenauth.yadis - relying party discovery @ url http://myrelyingparty/ failed.  dotnetopenauth.messaging.protocolexception: http request realm url (http://myrelyingparty/) resulted in redirect, not allowed during relying party discovery.    @ dotnetopenauth.messaging.errorutilities.verifyprotocol(boolean condition, string message, object[] args) in c:\teamcity\buildagent\work\bf9e2ca68b75a334\src\dotnetopenauth\messaging\errorutilities.cs:line 235    @ dotnetopenauth.openid.realm.discover(idirectwebrequesthandler requesthandler, boolean allowredirects) in c:\teamcity\buildagent\work\bf9e2ca68b75a334\src\dotnetopenauth\openid\realm.cs:line 446    @ dotnetopenauth.openid.realm.discoverreturntoendpoints(idirectwebrequesthandler requesthandler, boolean allowredirects) in c:\teamcity\buildagent\work\bf9e2ca68b75a334\src\dotnetopenauth\openid\realm.cs:line 424    @ dotnetopenauth.openid.provider.hostprocessedrequest.isreturnurldiscoverablecore(openidprovider provider) in c:\teamcity\buildagent\work\bf9e2ca68b75a334\src\dotnetopenauth\openid\provider\hostprocessedrequest.cs:line 142 2010-04-28 12:38:42,076 (gmt-7) [8] error openidproviderwebforms.global - unhandled exception raised. details follow: system.web.httpunhandledexception: exception of type 'system.web.httpunhandledexception' thrown. ---> system.invalidoperationexception: sequence contains more 1 element    @ system.linq.enumerable.singleordefault[tsource](ienumerable`1 source)    @ dotnetopenauth.openid.provider.request.getextension[t]() in c:\teamcity\buildagent\work\bf9e2ca68b75a334\src\dotnetopenauth\openid\provider\request.cs:line 176    @ dotnetopenauth.openid.extensions.extensionsinterophelper.convertsregtomatchrequest(ihostprocessedrequest request) in c:\teamcity\buildagent\work\bf9e2ca68b75a334\src\dotnetopenauth\openid\extensions\extensionsinterophelper.cs:line 180    @ dotnetopenauth.openid.behaviors.axfetchassregtransform.dotnetopenauth.openid.provider.iproviderbehavior.onoutgoingresponse(iauthenticationrequest request) in c:\teamcity\buildagent\work\bf9e2ca68b75a334\src\dotnetopenauth\openid\behaviors\axfetchassregtransform.cs:line 139    @ dotnetopenauth.openid.provider.openidprovider.applybehaviorstoresponse(irequest request) in c:\teamcity\buildagent\work\bf9e2ca68b75a334\src\dotnetopenauth\openid\provider\openidprovider.cs:line 482    @ dotnetopenauth.openid.provider.openidprovider.sendresponse(irequest request) in c:\teamcity\buildagent\work\bf9e2ca68b75a334\src\dotnetopenauth\openid\provider\openidprovider.cs:line 325    @ openidproviderwebforms.decide.yes_click(object sender, eventargs e) in c:\projects\openidproviderwebforms\decide.aspx.cs:line 130    @ system.web.ui.webcontrols.button.onclick(eventargs e)    @ system.web.ui.webcontrols.button.raisepostbackevent(string eventargument)    @ system.web.ui.page.raisepostbackevent(ipostbackeventhandler sourcecontrol, string eventargument)    @ system.web.ui.page.processrequestmain(boolean includestagesbeforeasyncpoint, boolean includestagesafterasyncpoint)    --- end of inner exception stack trace ---    @ system.web.ui.page.handleerror(exception e)    @ system.web.ui.page.processrequestmain(boolean includestagesbeforeasyncpoint, boolean includestagesafterasyncpoint)    @ system.web.ui.page.processrequest(boolean includestagesbeforeasyncpoint, boolean includestagesafterasyncpoint)    @ system.web.ui.page.processrequest()    @ system.web.ui.page.processrequest(httpcontext context)    @ asp.decide_aspx.processrequest(httpcontext context) in c:\windows\microsoft.net\framework64\v2.0.50727\temporary asp.net files\root\7f580b93\b3e4d917\app_web_tulh9ymv.1.cs:line 0    @ system.web.httpapplication.callhandlerexecutionstep.system.web.httpapplication.iexecutionstep.execute()    @ system.web.httpapplication.executestep(iexecutionstep step, boolean& completedsynchronously) 

oops. found bug in dotnetopenauth.

fix checked v3.2 7cea654 , v3.4 bd7c148. can fix in tomorrow's build.


Comments

Popular posts from this blog

javascript - Enclosure Memory Copies -

php - Replacing tags in braces, even nested tags, with regex -