[ 
http://jira.amdatu.org/jira/browse/AMDATUOPENSOCIAL-91?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=11352#comment-11352
 ] 

Ivo Ladage - van Doorn commented on AMDATUOPENSOCIAL-91:
--------------------------------------------------------

Hhmm, this is a Shindig issue. The OAuth token is received by the Shindig 
container using the MakeRequestHandler.fetch method. The HTTP response when 
retrieving the request token i 403 (forbidden), which is correct. On line 109 
however, the HTTP response code is set to 200 (OK), no matter whjat response 
code is returned by the HTTP method call itself. So the Shindig proxy always 
returns a 200 in case of a failed OAuth request token request.
The error message on the other hand is returned by the proxy and to the client, 
the gadget could have done something with that information.
Nevertheless, it is not an issue that can/should be solved in Amdatu.

> Google calendar gadget does not display proper error message
> ------------------------------------------------------------
>
>                 Key: AMDATUOPENSOCIAL-91
>                 URL: http://jira.amdatu.org/jira/browse/AMDATUOPENSOCIAL-91
>             Project: Amdatu OpenSocial
>          Issue Type: Bug
>          Components: Dashboard
>    Affects Versions: 0.2.0
>            Reporter: Ivo Ladage - van Doorn
>             Fix For: 0.2.0
>
>
> Add the google calendar gadget to the Amdatu dashboard:
> http://gcalbirthdays.googlecode.com/svn/trunk/gCalBirthdays/Gadget/gCalBirthdays.xml
> Click on settings. In the console you see this error:
> [2011-08-17 15:19:35] WARNING: OAuth fetch fatal error
> OAuth error [MISSING_OAUTH_PARAMETER, No oauth_token returned from service 
> provider] for application http://gcalbirthday
> s.googlecode.com/svn/trunk/gCalBirthdays/Gadget/gCalBirthdays.xml.  Request 
> trace:
> ==== Original request:
> GET 
> /calendar/feeds/default/owncalendars/full?v=2.0&user-agent=gCalBirthdays%20GData-JavaScript%2F2.1%201313587172924-62
> 6&alt=json
> Host: www.google.com
> X-Shindig-AuthType: oauth
> Content-Length: 0
> GData-Version: 2.1
> X-Forwarded-For: 127.0.0.1
> X-shindig-dos: on
> ====
> ==== Sent request 1:
> GET 
> /accounts/OAuthGetRequestToken?scope=http://www.google.com/m8/feeds/%20http://www.google.com/calendar/feeds/
> Host: www.google.com
> X-Shindig-AuthType: none
> Authorization: OAuth 
> oauth_callback="%2Fgadgets%2Foauthcallback%3Fcs%3DHOt85FWl0KRFI1x0yyHmVeqtN3PvI8XkG6dqwASzRywuKpR_Q
> LB34sPAiJvT8xps_NKktjyCrg1k-COO5gFwUZ1pQalriZ0oIe9Mdhs6mRu6zUaDNi2VxQ7IypSMmOx4w0XoRsSHn3L6xnwd2W4WaePjr2U",
>  opensocial_
> owner_id="Administrator", opensocial_viewer_id="Administrator", 
> opensocial_app_id="http%3A%2F%2Fgcalbirthdays.googlecode
> .com%2Fsvn%2Ftrunk%2FgCalBirthdays%2FGadget%2FgCalBirthdays.xml", 
> opensocial_app_url="http%3A%2F%2Fgcalbirthdays.googlec
> ode.com%2Fsvn%2Ftrunk%2FgCalBirthdays%2FGadget%2FgCalBirthdays.xml", 
> oauth_consumer_key="", xoauth_signature_publickey="
> amdatu_public_key", xoauth_public_key="amdatu_public_key", 
> oauth_version="1.0", oauth_timestamp="1313587174", oauth_nonc
> e="6554129285637066606", oauth_consumer_key="", 
> oauth_signature_method="RSA-SHA1", oauth_signature="kr%2BASP5i1tBDOr6VrJ
> CGZYxfcKg7F1z6OXLDLcoGChJc5LBWYw0RoGOdluNMziOj8aNjY4jn8%2BCRB4FuREz%2F8yMJ%2Brw224uozpKbmYSOgmHIAxrv4w85WOuBtBVDQpnxGGNP
> oJxve3XkXmYfW0AAXJLmo0oiy7FoROzbP6RaL9I%3D"
> X-shindig-dos: on
> ==== Received response 1:
> HTTP/1.1 400
> Cache-Control: private, max-age=0
> Content-Type: text/plain; charset=UTF-8
> Date: Wed, 17 Aug 2011 13:19:34 GMT
> Expires: Wed, 17 Aug 2011 13:19:34 GMT
> Server: GSE
> Transfer-Encoding: chunked
> X-Content-Type-Options: nosniff
> X-XSS-Protection: 1; mode=block
> Consumer does not have a cert:
> ==== [org.amdatu.core.loghandler]
> org.apache.shindig.gadgets.oauth.OAuthRequestException: No oauth_token 
> returned from service provider
> org.apache.felix.log.LogException: 
> org.apache.shindig.gadgets.oauth.OAuthRequestException: No oauth_token 
> returned from
> service provider
>         at 
> org.apache.shindig.gadgets.oauth.OAuthRequest.sendOAuthMessage(OAuthRequest.java:638)
>         at 
> org.apache.shindig.gadgets.oauth.OAuthRequest.fetchRequestToken(OAuthRequest.java:343)
>         at 
> org.apache.shindig.gadgets.oauth.OAuthRequest.attemptFetch(OAuthRequest.java:284)
>         at 
> org.apache.shindig.gadgets.oauth.OAuthRequest.fetchWithRetry(OAuthRequest.java:240)
>         at 
> org.apache.shindig.gadgets.oauth.OAuthRequest.fetchNoThrow(OAuthRequest.java:197)
>         at 
> org.apache.shindig.gadgets.oauth.OAuthRequest.fetch(OAuthRequest.java:178)
>         at 
> org.apache.shindig.gadgets.http.DefaultRequestPipeline.execute(DefaultRequestPipeline.java:96)
>         at 
> org.apache.shindig.gadgets.servlet.MakeRequestHandler.fetch(MakeRequestHandler.java:91)
>         at 
> org.apache.shindig.gadgets.servlet.MakeRequestServlet.doGet(MakeRequestServlet.java:55)
>         at 
> org.apache.shindig.gadgets.servlet.MakeRequestServlet.doPost(MakeRequestServlet.java:68)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
>         at 
> org.amdatu.web.dispatcher.handler.ServletHandler.handle(ServletHandler.java:70)
>         at 
> org.amdatu.web.dispatcher.dispatch.CustomFilterChain.doFilter(CustomFilterChain.java:56)
>         at 
> org.amdatu.web.dispatcher.dispatch.HttpFilterChain.doFilter(HttpFilterChain.java:35)
>         at 
> org.apache.shindig.auth.AuthenticationServletFilter.callChain(AuthenticationServletFilter.java:124)
>         at 
> org.apache.shindig.auth.AuthenticationServletFilter.doFilter(AuthenticationServletFilter.java:87)
>         at 
> org.amdatu.web.dispatcher.handler.FilterHandler.handle(FilterHandler.java:78)
>         at 
> org.amdatu.web.dispatcher.dispatch.CustomFilterChain.doFilter(CustomFilterChain.java:53)
>         at 
> org.amdatu.web.dispatcher.dispatch.HttpFilterChain.doFilter(HttpFilterChain.java:35)
>         at 
> org.amdatu.web.dispatcher.handler.FilterHandler.handle(FilterHandler.java:82)
>         at 
> org.amdatu.web.dispatcher.dispatch.CustomFilterChain.doFilter(CustomFilterChain.java:53)
>         at 
> org.amdatu.web.dispatcher.dispatch.CustomFilterPipeline.dispatch(CustomFilterPipeline.java:59)
>         at 
> org.amdatu.web.dispatcher.dispatch.ExtenderFilterChain.doFilter(ExtenderFilterChain.java:53)
>         at 
> org.amdatu.web.dispatcher.dispatch.HttpFilterChain.doFilter(HttpFilterChain.java:35)
>         at 
> org.amdatu.opensocial.profile.service.TenantHostnameDispatchExtenderFilter.doFilter(TenantHostnameDispatchExt
> enderFilter.java:62)
>         at 
> org.amdatu.web.dispatcher.handler.FilterHandler.handle(FilterHandler.java:78)
>         at 
> org.amdatu.web.dispatcher.dispatch.ExtenderFilterChain.doFilter(ExtenderFilterChain.java:50)
>         at 
> org.amdatu.web.dispatcher.dispatch.HttpFilterChain.doFilter(HttpFilterChain.java:35)
>         at 
> org.amdatu.opensocial.shindig.service.TenantHostnameDispatchExtenderFilter.doFilter(TenantHostnameDispatchExt
> enderFilter.java:62)
>         at 
> org.amdatu.web.dispatcher.handler.FilterHandler.handle(FilterHandler.java:78)
>         at 
> org.amdatu.web.dispatcher.dispatch.ExtenderFilterChain.doFilter(ExtenderFilterChain.java:50)
>         at 
> org.amdatu.web.dispatcher.dispatch.HttpFilterChain.doFilter(HttpFilterChain.java:35)
>         at 
> org.amdatu.web.tenantresolver.hostname.service.HostnameTenantResolverExtenderFilter.doFilter(HostnameTenantRe
> solverExtenderFilter.java:75)
>         at 
> org.amdatu.web.dispatcher.handler.FilterHandler.handle(FilterHandler.java:78)
>         at 
> org.amdatu.web.dispatcher.dispatch.ExtenderFilterChain.doFilter(ExtenderFilterChain.java:50)
>         at 
> org.amdatu.web.dispatcher.dispatch.ExtenderFilterPipeline.dispatch(ExtenderFilterPipeline.java:44)
>         at 
> org.amdatu.web.dispatcher.service.DispatcherServiceImpl.dispatchRequest(DispatcherServiceImpl.java:155)
>         at 
> org.amdatu.web.dispatcher.filter.DispatchInterceptFilter.doFilter(DispatchInterceptFilter.java:80)
>         at 
> org.apache.felix.http.base.internal.handler.FilterHandler.doHandle(FilterHandler.java:88)
>         at 
> org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:76)
>         at 
> org.apache.felix.http.base.internal.dispatch.InvocationFilterChain.doFilter(InvocationFilterChain.java:47)
>         at 
> org.apache.felix.http.base.internal.dispatch.HttpFilterChain.doFilter(HttpFilterChain.java:33)
>         at 
> org.apache.felix.http.base.internal.dispatch.FilterPipeline.dispatch(FilterPipeline.java:48)
>         at 
> org.apache.felix.http.base.internal.dispatch.Dispatcher.dispatch(Dispatcher.java:39)
>         at 
> org.apache.felix.http.base.internal.DispatcherServlet.service(DispatcherServlet.java:67)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
>         at 
> org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
>         at 
> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:390)
>         at 
> org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
>         at 
> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
>         at 
> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
>         at org.mortbay.jetty.Server.handle(Server.java:326)
>         at 
> org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
>         at 
> org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:943)
>         at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:756)
>         at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218)
>         at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
>         at 
> org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:410)
>         at 
> org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)
> I believe the error is correct, as Amdatu is not a registered OAuth service 
> consumer at Google (yet?). Hence the error 'Consumer does not have a cert'.
> However, this error is never displayed to the user and the gadget seems to 
> hang.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        
_______________________________________________
Amdatu-developers mailing list
[email protected]
http://lists.amdatu.org/mailman/listinfo/amdatu-developers

Reply via email to