Touchnet SSO with pickup.html
We have been trying to single sign on to Touchnet from luminis and direct the user to specific pages, not just the welcome home page (That part is working). The requirement is the user needs to go directly to "Authorized User" page or "Payments" page instead of welcome page. So we used pickup.html, but we could not make it work.
I get the following error
>>> enter HttpConnection.shutdownOutput()
[2009-11-10 15:45:48,689] [DEBUG] http-8008-Processor45:/tnpkp/Authenticate org.apache.commons.httpclient.HttpConnection.shutdownOutput:1137
>>> Unexpected Exception caught
java.lang.IllegalAccessException: Class org.apache.commons.httpclient.HttpConnection can not access a member of class com.sun.net.ssl.internal.ssl.BaseSSLSocketImpl with modifiers "public final"
at sun.reflect.Reflection.ensureMemberAccess(Reflection.java:65)
at java.lang.reflect.Method.invoke(Method.java:578)
at org.apache.commons.httpclient.HttpConnection.shutdownOutput(HttpConnection.java:1135)
at com.campuspipeline.sso.authenticator.FastCloseSimpleHttpConnectionManager.releaseConnection(FastCloseSimpleHttpConnectionManager.java:36)
at org.apache.commons.httpclient.HttpConnection.releaseConnection(HttpConnection.java:1178)
at org.apache.commons.httpclient.HttpMethodBase.ensureConnectionRelease(HttpMethodBase.java:2289)
at org.apache.commons.httpclient.HttpMethodBase.responseBodyConsumed(HttpMethodBase.java:2281)
at org.apache.commons.httpclient.HttpMethodBase$1.responseConsumed(HttpMethodBase.java:1747)
at org.apache.commons.httpclient.AutoCloseInputStream.notifyWatcher(AutoCloseInputStream.java:180)
at org.apache.commons.httpclient.AutoCloseInputStream.checkClose(AutoCloseInputStream.java:152)
at org.apache.commons.httpclient.AutoCloseInputStream.read(AutoCloseInputStream.java:108)
at java.io.FilterInputStream.read(FilterInputStream.java:90)
at org.apache.commons.httpclient.AutoCloseInputStream.read(AutoCloseInputStream.java:126)
at org.apache.commons.httpclient.HttpMethodBase.getResponseBody(HttpMethodBase.java:684)
at org.apache.commons.httpclient.HttpMethodBase.getResponseBodyAsString(HttpMethodBase.java:735)
at com.campuspipeline.sso.authenticator.HttpSteps.opGet(HttpSteps.java:466)
at com.campuspipeline.sso.authenticator.HttpSteps.opExecuteSession(HttpSteps.java:1255)
at com.campuspipeline.sso.authenticator.HttpSteps.opSession(HttpSteps.java:1370)
at com.campuspipeline.sso.authenticator.HttpSteps.opExecuteClient(HttpSteps.java:1383)
at com.campuspipeline.sso.authenticator.HttpSteps.opClient(HttpSteps.java:1410)
at com.campuspipeline.sso.authenticator.HttpSteps.opExecute(HttpSteps.java:1425)
at com.campuspipeline.sso.authenticator.HttpSteps.Execute(HttpSteps.java:1454)
at com.campuspipeline.sso.authenticator.SSOOperations.authenticateUser(SSOOperations.java:158)
-----------------
My properties file
############################################
# Service Now GCF connector configuration
#########################################
# External System Properties
##########################################
tnpkp.externalSystemName = tnpkp
tnpkp.hostname = https://xxx.xxx.xxx:1111
#tnpkp.externalSystemURL = https://xxx.xxx.xxx:1111/aaa/web/login.jsp
tnpkp.externalSystemURL = https://xxx.xxx.xxx:1111
tnpkp.pickup.remoteurl = https://xxx.xxx.xxx:1111/aaa/pickup.html
tnpkp.operations = /opt/luminis/webapps/cpipconnector/WEB-INF/config/tnpkp.xml
##############################################################
# GetConfigVersion2 settings
##############################################################
tnpkp.sso.operations.class = com.campuspipeline.sso.authenticator.SSOOperations
tnpkp.urlBase = ${cpipconnector.urlBase}/${tnpkp.externalSystemName}
tnpkp.cpipconnector.getconfig.createonlogin = 1
tnpkp.cpipconnector.getconfig.authenticate = ${tnpkp.urlBase}/Authenticate
tnpkp.cpipconnector.getconfig.authenticateOIDlist = 1.3.6.1.4.1.4409.1.1.4.2
tnpkp.cpipconnector.getconfig.deauthenticate = ${tnpkp.urlBase}/Deauthenticate
tnpkp.cpipconnector.getconfig.deauthenticateOIDlist = 1.3.6.1.4.1.4409.1.1.6.1
tnpkp.cpipconnector.getconfig.lastactive = ${tnpkp.urlBase}/LastActive
tnpkp.cpipconnector.getconfig.lastactiveOIDlist = 1.3.6.1.4.1.4409.1.1.5.1
tnpkp.cpipconnector.getconfig.sessionPlaceHolder = sessionPlaceHolder
tnpkp.cpipconnector.getconfig.sendcpsession = false
tnpkp.cpipconnector.getconfig.sendtimeout = false
tnpkp.cpipconnector.getconfig.desturl_parmname = destURL
tnpkp.cpipconnector.getconfig.sendlogin = true
tnpkp.cpipconnector.getconfig.useSISCredentials = true
tnpkp.cpipconnector.getconfig.usePDSCredentials = false
tnpkp.cpipconnector.getconfig.configsleeptime =
tnpkp.cpipconnector.getconfig.configattempts =
tnpkp.pickup.destURLParameter = url
##############################################################
# Course Mapping Properties
#############################################################
##tnpkp.coursemap.enabled = false
##tnpkp.coursemap.cp.00001.200410 = _28_1
----------------------------------------------------
My xml file
<operations>
<authenticate>
<CLIENT>
<SESSION a:server="${properties.externalSystemURL}" >
<GET a:url="https://xxx.xxx.xxx:1111/aaa/web/login.jsp" a:redirects="no" >
</GET>
<POST a:url="https://xxx.xxx.xxx:1111/aaa/tapp" a:redirects="no" >
<PARAM a:name="Navigate" a:value="welcome.jsp" />
<PARAM a:name="OnError" a:value="login.jsp" />
<PARAM a:name="REDIRECT" a:value="" />
<PARAM a:name="USER" a:value="value" />
<PARAM a:name="PASS" a:value="value" />
</POST>
<RESULT a:value="TRUE" />
</SESSION>
</CLIENT>
</authenticate>
<deauthenticate>
<CLIENT>
<SESSION a:server="${properties.externalSystemURL}" >
<RESULT a:value="TRUE" />
</SESSION>
</CLIENT>
</deauthenticate>
<lastActive>
<CLIENT>
<SESSION a:server="${properties.externalSystemURL}" >
<RESULT a:value="FALSE" />
</SESSION>
</CLIENT>
</lastActive>
<checkstate>
<CLIENT>
<SESSION a:server="${properties.externalSystemURL}" >
<RESULT a:value="FALSE" />
</SESSION>
</CLIENT>
</checkstate>
</operations>
----------------------------
I did run checkssl to the touchnet server and port and it was working fine. So the final link which I accessed was
"http://sss.sss.sss/cp/ip/login?sys=tnpkp&url=https://xxx.xxx.xxx:1111/aaa/tapp?Navigate=proxy_users.jsp&OnError=welcome.jsp" and the webpage showed an error with a message " Your session has expired due to inactivity".
Please let me know if I missed something.
Thanks,

I would try url encoding the
I would try url encoding the link.
http://sss.sss.sss/cp/ip/login?sys=tnpkp&url=https%3A%2F%2Fxxx.xxx.xxx%3A1111%2Faaa%2Ftapp%3FNavigate%3Dproxy_users.jsp%26OnError%3Dwelcome.jsp