oauth not firing auth/facebook on production - facebook

I have built a rails app with both facebook and twitter integration, everything was working fine on development but after moving to production (I have changed the url on fb and twitter settings to my site url subdomain.domain.com) oauth is not triggering only. It is pointing to unicorn corn file name and giving invalid URI error. I have pasted the error below. Any help is highly appreciated...
URI::InvalidURIError (the scheme http does not accept registry part: unicorn_txt_browser (or bad hostname?)):
/usr/local/rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/uri/generic.rb:213:in `initialize'
/usr/local/rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/uri/http.rb:84:in `initialize'
/usr/local/rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/uri/common.rb:214:in `new'
/usr/local/rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/uri/common.rb:214:in `parse'
/usr/local/rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/uri/common.rb:747:in `parse'
omniauth (1.1.1) lib/omniauth/strategy.rb:404:in `full_host'
omniauth-oauth2 (1.0.3) lib/omniauth/strategies/oauth2.rb:34:in `callback_url'
omniauth-facebook (1.4.0) lib/omniauth/strategies/facebook.rb:106:in `callback_url'
omniauth-oauth2 (1.0.3) lib/omniauth/strategies/oauth2.rb:46:in `request_phase'
omniauth-facebook (1.4.0) lib/omniauth/strategies/facebook.rb:94:in `request_phase'
omniauth (1.1.1) lib/omniauth/strategy.rb:207:in `request_call'
omniauth (1.1.1) lib/omniauth/strategy.rb:174:in `call!'
omniauth (1.1.1) lib/omniauth/strategy.rb:157:in `call'
omniauth (1.1.1) lib/omniauth/builder.rb:48:in `call'
actionpack (3.2.5) lib/action_dispatch/middleware/best_standards_support.rb:17:in `call'
rack (1.4.1) lib/rack/etag.rb:23:in `call'
rack (1.4.1) lib/rack/conditionalget.rb:25:in `call'
actionpack (3.2.5) lib/action_dispatch/middleware/head.rb:14:in `call'
actionpack (3.2.5) lib/action_dispatch/middleware/params_parser.rb:21:in `call'
actionpack (3.2.5) lib/action_dispatch/middleware/flash.rb:238:in `call'

I got the issue, in my nginx conf file, the proxy pass was "unicorn_txt_browser" where underscore is not allowed, changing it to "unicorn-txt-browser" fixed the issue....

Related

Issues converting database from sqlite to postgres

Recently deployed a new webapp to Heroku. The app was prototyped using SQLite and am having difficulty with the database implementation in Heroku which uses postgresql. Namely, I am receiving this error and I am not sure how to troubleshoot:
2020-05-10T13:22:15.250905+00:00 app[web.1]: HINT: No operator matches the given name and argument types. You might need to add explicit type casts.
2020-05-10T13:22:15.250906+00:00 app[web.1]:
2020-05-10T13:22:15.250906+00:00 app[web.1]: [SQL: SELECT count(*) AS count_1
2020-05-10T13:22:15.250907+00:00 app[web.1]: FROM (SELECT favorites.fav_id AS favorites_fav_id, favorites.user_id AS favorites_user_id, favorites.post_id AS favorites_post_id, favorites.fav_date AS favorites_fav_date
2020-05-10T13:22:15.250907+00:00 app[web.1]: FROM favorites
2020-05-10T13:22:15.250907+00:00 app[web.1]: WHERE favorites.post_id = %(post_id_1)s) AS anon_1]
2020-05-10T13:22:15.250908+00:00 app[web.1]: [parameters: {'post_id_1': 1}]
2020-05-10T13:22:15.250908+00:00 app[web.1]: (Background on this error at: http://sqlalche.me/e/f405)
2020-05-10T13:22:15.255615+00:00 app[web.1]: 10.31.64.150 - - [10/May/2020:13:22:15 +0000] "GET /home HTTP/1.1" 500 290 "https://benchofthoughts.herokuapp.com/post/new" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.113 Safari/537.36"
2020-05-10T13:22:15.254572+00:00 heroku[router]: at=info method=GET path="/home" host=benchofthoughts.herokuapp.com request_id=1eed4376-3745-471d-8623-70217574197a fwd="47.20.85.233" dyno=web.1 connect=1ms service=31ms status=500 bytes=767 protocol=https
From reading this question and this question it looks like the query is trying to use a string instead of an int as the key to pull the relevant data, but this seemed to work fine using the prototype database. I am using SQLAlchemy for the queries so I assume the right variable types are implicitly being used, but I am not sure.
Can someone point me in the right direction to address this error?

One more step to complete your registration from Facebook

Spree 3.1 in Heroku.
After installed gem 'spree_social', :git=> 'https://github.com/spree-contrib/spree_social', branch: '3-1-stable'
and setup as described in the gem doc.and developer.facebook.com
I could not login using facebook butoon
Both development and production kept asking for
One more step to complete your registration from Facebook
What possible gone wrong?
:already setup FB APP ID and FB APP Secret in Spree
:Setup App Domains with http://sub.domain.com
:Yes on Client OAuth Login and Web OAuth Login
:No Force Web OAuth Reauthentication and Embedded Browser OAuth Login
It's asked everytime when click FB Login then fill-in user/password (as it supposed to be only first time only.?
$heroku logs -t
2016-11-30T18:39:08.242440+00:00 app[web.1]: Started GET "/users/auth/facebook" for 24.253.3.125 at 2016-11-30 18:39:08 +0000
2016-11-30T18:39:08.245300+00:00 app[web.1]: I, [2016-11-30T18:39:08.245245 #4] INFO -- omniauth: (facebook) Calling through to underlying application for setup.
2016-11-30T18:39:08.246504+00:00 app[web.1]: I, [2016-11-30T18:39:08.246446 #4] INFO -- omniauth: (facebook) Request phase initiated.
2016-11-30T18:39:08.690859+00:00 app[web.1]: Started GET "/users/auth/facebook/callback?code=AQCvn-9bgYXYsw8J4rMHzaXkQFzulZKWrxVzokGsi6l2adj2zsDTB5YUTPoCEwzjLcEdGGohpfuIJ7r_QtiABIdoIBLKTDCtfms2v6jW7yjE7VfthoHgpvRtsJXz8xJL2pIp6BmvHHxq9Ahfnjir3GzWTjbMLJ_300LgpAMoy0PHsjAZh6nzIpyaiQ_PD4HWSqaHfMQds2r-Yd88gS8qJRvvO2qwkBQEXj-4Uaer4uhOnnRKs05SxRrQZAc0mE-gHBiHT-8NXWzmQMEvepBTNJllAfJdamhW78NisYcLHRZRwU0FDyyUVQU5YcIk4vAI_yQ9JKvlpvlNx2fdnw8E5wn45tSs_mZiSgoLhU8Cxg2jBg&state=eb30a2462d75546d28439534dcc560761a5eafefa5b47a75" for 24.253.3.125 at 2016-11-30 18:39:08 +0000
2016-11-30T18:39:08.692550+00:00 app[web.1]: I, [2016-11-30T18:39:08.692484 #4] INFO -- omniauth: (facebook) Calling through to underlying application for setup.
2016-11-30T18:39:08.693727+00:00 app[web.1]: I, [2016-11-30T18:39:08.693638 #4] INFO -- omniauth: (facebook) Callback phase initiated.
2016-11-30T18:39:08.927577+00:00 app[web.1]: Processing by Spree::OmniauthCallbacksController#facebook as HTML
2016-11-30T18:39:08.927612+00:00 app[web.1]: Parameters: {"code"=>"AQCvn-9bgYXYsw8J4rMHzaXkQFzulZKWrxVzokGsi6l2adj2zsDTB5YUTPoCEwzjLcEdGGohpfuIJ7r_QtiABIdoIBLKTDCtfms2v6jW7yjE7VfthoHgpvRtsJXz8xJL2pIp6BmvHHxq9Ahfnjir3GzWTjbMLJ_300LgpAMoy0PHsjAZh6nzIpyaiQ_PD4HWSqaHfMQds2r-Yd88gS8qJRvvO2qwkBQEXj-4Uaer4uhOnnRKs05SxRrQZAc0mE-gHBiHT-8NXWzmQMEvepBTNJllAfJdamhW78NisYcLHRZRwU0FDyyUVQU5YcIk4vAI_yQ9JKvlpvlNx2fdnw8E5wn45tSs_mZiSgoLhU8Cxg2jBg", "state"=>"eb30a2462d75546d28439534dcc560761a5eafefa5b47a75"}
2016-11-30T18:39:08.929944+00:00 app[web.1]: Spree::UserAuthentication Load (1.2ms) SELECT "spree_user_authentications".* FROM "spree_user_authentications" WHERE "spree_user_authentications"."provider" = $1 AND "spree_user_authentications"."uid" = $2 LIMIT 1 [["provider", "facebook"], ["uid", "163770347430817"]]
2016-11-30T18:39:08.932153+00:00 app[web.1]: Spree::User Load (1.2ms) SELECT "spree_users".* FROM "spree_users" WHERE "spree_users"."deleted_at" IS NULL AND "spree_users"."email" IS NULL LIMIT 1
2016-11-30T18:39:08.935508+00:00 app[web.1]: (1.0ms) BEGIN
2016-11-30T18:39:08.937492+00:00 app[web.1]: (0.9ms) ROLLBACK
2016-11-30T18:39:08.938440+00:00 app[web.1]: Redirected to http://MYSUB.DOMAIN.com/user/spree_user/sign_up
2016-11-30T18:39:08.938569+00:00 app[web.1]: Completed 302 Found in 11ms (ActiveRecord: 4.2ms)
I had the same problem - I was getting that "One more step to complete your registration from Facebook" message. Turns out it was because I added a couple of fields to my Spree::User model, and I was validating that they were present (validates :first_name, :last_name, presence: true). The default spree-social code only populates the email address, and then it tries to save the user. It fails (since it didn't populate the first_name and last_name), so it displays that message. I commented out my validation line, and it all works. Now I need to figure out how to get the first_name and last_name back from Facebook so I can fill them in, and then uncomment my validation line.
I hope this helps somebody.

CMDBuild SSO implementation with CAS

I am trying to implement SSO in CMDBuild by using CAS. I have installed CMDBuild and CAS in my local centos 6.5 machine. But i am unable to do SSO successfully.
Environmental Details are stated below
Centos 6.5
CAS 4.2.0
CMDBuild 2.4.1
My Cas configuration inside auth.conf is
auth.methods=CasAuthenticator,DBAuthenticator
cas.server.url=https://localhost:8443/cas
cas.login.page=/login
cas.service.param=http://localhost:8080/cmdbuild/index.jsp
cas.ticket.param=ticket
But while i try to access cmdbuild from browser after changing the configuration. Some parameters are appending to the URL like below which causes cmdbuild not to start.
https://localhost:8443/cas/login?http://localhost:8080/cmdbuild/index.jsp=http%3A%2F%2F192.168.50.161%3A8080%2Fcmdbuild%2Findex.jsp%3Fskipsso
Also in CMDBuild log i found the same error,
INFO 2016-09-21 08:35:44 [cmdbuild] trying to login with no username or password
INFO 2016-09-21 08:35:44 [cmdbuild] Redirecting to https://localhost:8443/cas/login?service=http%3A%2F%2F192.168.50.161%3A8080%2Fcmdbuild%2Findex.jsp%3Fskipsso
As per the documentation,
"The CAS authenticator sends the request to the CAS server (${cas.server.url} + $ {cas.login.page}) specifying the CMDBuild access url (in the ${cas.service.param} paramter)"
I have configured CMDBuild access url in cas.service.param
I am having some doubts on what i have to configure in cas.service.param and cas.ticket.param. What i have to add in cas.service.param and cas.ticket.param.
Any help would be appreciated.
Thanks
For version 3.3.2 at least, these are the correct key values:
./cmdbuild.sh restws setconfig org.cmdbuild.auth.modules=cas
./cmdbuild.sh restws setconfig org.cmdbuild.auth.module.cas.server.url=https://…
./cmdbuild.sh restws setconfig org.cmdbuild.auth.module.cas.login.page=/login
./cmdbuild.sh restws setconfig org.cmdbuild.auth.module.cas.service.param=service
./cmdbuild.sh restws setconfig org.cmdbuild.auth.module.cas.ticket.param=ticket

how to disable turbo links completely from rails

I've gone through quite a few posts and turbolinks documentation, and I think I haven't quite got it yet. I'm trying to completely turn off turbolinks in rails 5 application. Here's how I went about it
Removed gem 'trubolinks'
removed all occurrences of //=require turbolinks from application.js
removed data-turbolinks-track from stylesheet_link_tag and javascript_include_tag
The application.html.erb now looks like this
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title><%= content_for?(:title) ? yield(:title) : "Website" %></title>
<meta name="description" content="<%= content_for?(:description) ? yield(:description) : "Website" %>">
<%= stylesheet_link_tag 'application', media: 'all' %>
<%= stylesheet_link_tag params[:controller] %>
<%= javascript_include_tag 'application' %>
<%= javascript_include_tag :modernizr %>
<%= javascript_include_tag params[:controller] %>
<%= if(params[:action].eql?'contact')
javascript_include_tag 'https://www.google.com/recaptcha/api.js?onload=vcRecaptchaApiLoaded&render=explicit' , async: 'async', defer: 'defer'
end
%>
<%= csrf_meta_tags %>
</head>
<body data-turbolinks='false'>
...
</body>
</html>
the application.js file:
//= require jquery
//= require jquery_ujs
//= require lodash
//= require bootstrap-sprockets
//= require jquery.sticky
and application.css
#import "bootstrap-sprockets";
#import "bootstrap";
#import "font-awesome-sprockets";
#import "font-awesome";
#import "normalize-rails";
#import "animate";
....
/* other css stuff */
I was thinking using data-turbolinks=false on body tag should help disable it for all pages in this layout. But that hasn't helped, the pages fail to load with error
Sprockets::FileNotFound at /
couldn't find file 'turbolinks' with type 'application/javascript'
Checked in these paths:
/Users/anadi/Code/website/app/assets/config
/Users/anadi/Code/website/app/assets/fonts
/Users/anadi/Code/website/app/assets/images
/Users/anadi/Code/website/app/assets/javascripts
at this line on the home page
<%= image_tag("pages/home/xyz_logo.png", class: "img-responsive", alt: "Customer") %>
if I look at the stack trace, ActionView invariably depends on turbolinks:
sprockets (3.7.0) lib/sprockets/directive_processor.rb:182:in `rescue in block in process_directives'
sprockets (3.7.0) lib/sprockets/directive_processor.rb:179:in `block in process_directives'
sprockets (3.7.0) lib/sprockets/directive_processor.rb:178:in `process_directives'
sprockets (3.7.0) lib/sprockets/directive_processor.rb:83:in `_call'
sprockets (3.7.0) lib/sprockets/directive_processor.rb:68:in `call'
sprockets (3.7.0) lib/sprockets/processor_utils.rb:75:in `call_processor'
sprockets (3.7.0) lib/sprockets/processor_utils.rb:57:in `block in call_processors'
sprockets (3.7.0) lib/sprockets/processor_utils.rb:56:in `call_processors'
sprockets (3.7.0) lib/sprockets/loader.rb:134:in `load_from_unloaded'
sprockets (3.7.0) lib/sprockets/loader.rb:60:in `block in load'
sprockets (3.7.0) lib/sprockets/loader.rb:317:in `fetch_asset_from_dependency_cache'
sprockets (3.7.0) lib/sprockets/loader.rb:44:in `load'
sprockets (3.7.0) lib/sprockets/cached_environment.rb:20:in `block in initialize'
sprockets (3.7.0) lib/sprockets/cached_environment.rb:47:in `load'
sprockets (3.7.0) lib/sprockets/bundle.rb:23:in `block in call'
sprockets (3.7.0) lib/sprockets/utils.rb:196:in `dfs'
sprockets (3.7.0) lib/sprockets/bundle.rb:24:in `call'
sprockets (3.7.0) lib/sprockets/processor_utils.rb:75:in `call_processor'
sprockets (3.7.0) lib/sprockets/processor_utils.rb:57:in `block in call_processors'
sprockets (3.7.0) lib/sprockets/processor_utils.rb:56:in `call_processors'
sprockets (3.7.0) lib/sprockets/loader.rb:134:in `load_from_unloaded'
sprockets (3.7.0) lib/sprockets/loader.rb:60:in `block in load'
sprockets (3.7.0) lib/sprockets/loader.rb:317:in `fetch_asset_from_dependency_cache'
sprockets (3.7.0) lib/sprockets/loader.rb:44:in `load'
sprockets (3.7.0) lib/sprockets/cached_environment.rb:20:in `block in initialize'
sprockets (3.7.0) lib/sprockets/cached_environment.rb:47:in `load'
sprockets (3.7.0) lib/sprockets/base.rb:66:in `find_asset'
sprockets (3.7.0) lib/sprockets/base.rb:73:in `find_all_linked_assets'
sprockets (3.7.0) lib/sprockets/manifest.rb:134:in `block in find'
sprockets (3.7.0) lib/sprockets/manifest.rb:133:in `find'
sprockets-rails (3.1.1) lib/sprockets/railtie.rb:50:in `precompiled_assets'
sprockets-rails (3.1.1) lib/sprockets/railtie.rb:35:in `asset_precompiled?'
sprockets-rails (3.1.1) lib/sprockets/railtie.rb:250:in `block (3 levels) in <class:Railtie>'
sprockets-rails (3.1.1) lib/sprockets/rails/helper.rb:342:in `precompiled?'
sprockets-rails (3.1.1) lib/sprockets/rails/helper.rb:346:in `raise_unless_precompiled_asset'
sprockets-rails (3.1.1) lib/sprockets/rails/helper.rb:313:in `asset_path'
sprockets-rails (3.1.1) lib/sprockets/rails/helper.rb:85:in `block in resolve_asset_path'
sprockets-rails (3.1.1) lib/sprockets/rails/helper.rb:225:in `block in resolve_asset'
sprockets-rails (3.1.1) lib/sprockets/rails/helper.rb:224:in `resolve_asset'
sprockets-rails (3.1.1) lib/sprockets/rails/helper.rb:84:in `resolve_asset_path'
sprockets-rails (3.1.1) lib/sprockets/rails/helper.rb:74:in `compute_asset_path'
actionview (5.0.0) lib/action_view/helpers/asset_url_helper.rb:144:in `asset_path'
actionview (5.0.0) lib/action_view/helpers/asset_url_helper.rb:311:in `image_path'
actionview (5.0.0) lib/action_view/helpers/asset_tag_helper.rb:214:in `image_tag'
It looks like sprockets still expects turbolinks js or the image_tag url expects it. I don't want to end-up adding a data: { turbolinks: false } on every link or image. How to get this working?
Remove the gem 'turbolinks' line from your Gemfile.
Remove the //= require turbolinks from your app/assets/javascripts/application.js.
Remove the two "data-turbolinks-track" => true hash key/value pairs
from your app/views/layouts/application.html.erb.
I was doing it wrong perhaps, re-enabled all of it, added data-turbolinks-track => true also, and preserved <body data-turbolinks='false'>. It works as expected now without throwing errors.

PingFederate SLO: No Logout Service is Configured for this Adapter

After I invoke single-log-out (SLO), by calling 'GET' on https://[PingFederate Server Instance]:[Port]/idp/startSLO.ping, my PingFederate server begins making requests to my SP logout services. [I know this because I can see it happening in Fiddler.]
But somewhere along the way, it noticed that I apparently forgot to define a logout service for one of my SPs.
My Questions:
Which SP is it referring to?
How can I resolve this error?
2011-11-25 21:40:16,923 WARN [org.sourceid.servlet.ErrorServlet] Top level error (ref#wprmxs): org.sourceid.saml20.adapter.AuthnAdapterException: Logout functionality invoked, but no logout service is configured for this adapter.
org.sourceid.websso.profiles.ProcessRuntimeException: org.sourceid.saml20.adapter.AuthnAdapterException: Logout functionality invoked, but no logout service is configured for this adapter.
at org.sourceid.websso.profiles.ResumableResponseHandlerBase.resume(ResumableResponseHandlerBase.java:50)
at org.sourceid.saml20.profiles.idp.HandleLogoutResponse.doIt(HandleLogoutResponse.java:154)
at org.sourceid.saml20.profiles.idp.HandleLogoutResponse.handleException(HandleLogoutResponse.java:80)
at org.sourceid.websso.profiles.ResponseHandlerBase.process(ResponseHandlerBase.java:86)
at org.sourceid.saml20.profiles.ProfileProcessManager.doHandleResponse(ProfileProcessManager.java:92)
at $ProfileProcessMgmtService_132f8e9ec21.doHandleResponse($ProfileProcessMgmtService_132f8e9ec21.java)
at org.sourceid.websso.servlet.ProtocolControllerServlet.doIt(ProtocolControllerServlet.java:75)
at org.sourceid.websso.servlet.ProtocolControllerServlet.process(ProtocolControllerServlet.java:84)
at org.sourceid.websso.servlet.EnforcerServletBase.checkProcess(EnforcerServletBase.java:59)
at org.sourceid.websso.servlet.EnforcerServletBase.doGet(EnforcerServletBase.java:84)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)
at org.mortbay.jetty.servlet.jsr77.Jsr77ServletHolder.handle(Jsr77ServletHolder.java:74)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1093)
at org.sourceid.servlet.filter.NoCacheFilter.doFilter(NoCacheFilter.java:46)
at org.sourceid.servlet.filter.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:53)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at org.sourceid.websso.servlet.ProxyFilter.doFilter(ProxyFilter.java:34)
at org.sourceid.servlet.filter.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:53)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at org.sourceid.websso.servlet.SessionIdFilter.doFilter(SessionIdFilter.java:67)
at org.sourceid.servlet.filter.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:53)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:726)
at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:206)
at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
at org.mortbay.jetty.Server.handle(Server.java:324)
at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)
at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:828)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)
at org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:228)
at com.pingidentity.appserver.jetty.DynamicSslSocketConnector$SslConnection.run(DynamicSslSocketConnector.java:637)
at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450)
Caused by: org.sourceid.saml20.adapter.AuthnAdapterException: Logout functionality invoked, but no logout service is configured for this adapter.
at com.pingidentity.adapters.opentoken.IdpAuthnAdapter.logoutAuthN(IdpAuthnAdapter.java:270)
at org.sourceid.saml20.profiles.idp.AdapterSupport.logoutAuthN(AdapterSupport.java:306)
at org.sourceid.saml20.profiles.idp.HandleLogoutResponse.doResume(HandleLogoutResponse.java:184)
at org.sourceid.websso.profiles.ResumableResponseHandlerBase.resume(ResumableResponseHandlerBase.java:46)
... 40 more
This is an Adapter level error, not a connection one. You must verify that your adapter has a Logout Service URL configured.
In PingFederate Administration, click on the link to "Adapters" (either SP or IdP side), then select the adapter you are using (I suspect it's an instance of an Open Token one). In its configuration (under IdP Adapter tab or SP Adapter tab -> Show Advanced Fields) check that your Logout Service setting has a value that maps to your application's session logout URL.