cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
605
Views
0
Helpful
0
Replies

UCCX 10 custom class - TLS 1.2 and httpclient (ssl.connection.socketfactory)

timhughsmith
Level 4
Level 4

Hi Team,

 

We are on UCCX 10.0 with JRE6

We have a custom Java class that was working on UCCX 11.5 with JRE 7.

The class makes a REST call with OAUTH to a cloud API

 

We tried to deploy it 10, but ran into limitation of no support for TLS 1.2.

We've found a workaround possibly with BouncyCastle library, but we are having trouble getting this to work.

 

We have the class loaded to UCCX, and it's external dependencies.

We've added them all to the classpath.

I think it may be something to do with the httpclient lib in the UCCX system itself, but really running out of ideas on how to troubleshoot and what is possible in UCCX to resolve it (or in our code).

 

It's seeming like a bit of a dead-end.

It complains about finding the socketfactory calss in httpclient, and also about the commons logging.

 

This is the exception thrown when we run it:

 

sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)\n\tat sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)\n\tat java.lang.reflect.Method.invoke(Method.java:597)\n\tat sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:303)\n\tat sun.rmi.transport.Transport$1.run(Transport.java:159)\n\tat java.security.AccessController.doPrivileged(Native Method)\n\tat sun.rmi.transport.Transport.serviceCall(Transport.java:155)\n\tat sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)\n\tat sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)\n\tat sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)\n\tat java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)\n\tat java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)\n\tat java.lang.Thread.run(Thread.java:662)\nCaused by: java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory\n\tat org.apache.http.conn.ssl.AbstractVerifier.<init>(AbstractVerifier.java:61)\n\tat org.apache.http.conn.ssl.AllowAllHostnameVerifier.<init>(AllowAllHostnameVerifier.java:44)\n\tat org.apache.http.conn.ssl.AllowAllHostnameVerifier.<clinit>(AllowAllHostnameVerifier.java:46)\n\tat org.apache.http.conn.ssl.SSLConnectionSocketFactory.<clinit>(SSLConnectionSocketFactory.java:146)\n\tat impl.LivePersonUCCImpl.sendRequest(LivePersonUCCImpl.java:87)\n\tat impl.LivePersonUCCImpl.setupLivePerson(LivePersonUCCImpl.java:59)\n\t... 36 more\nCaused by: java.lang.ClassNotFoundException: org.apache.commons.logging.LogFactory\n\tat java.net.URLClassLoader$1.run(URLClassLoader.java:202)\n\tat java.security.AccessController.doPrivileged(Native Method)\n\tat java.net.URLClassLoader.findClass(URLClassLoader.java:190)\n\tat java.lang.ClassLoader.loadClass(ClassLoader.java:306)\n\tat sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)\n\tat java.lang.ClassLoader.loadClass(ClassLoader.java:247)\n\t... 42 more\n"

 

This is the classpath in UCCX:

.

httpcore-4.4.10.jar

httpclient-4.5.6.jar

commons-code-1.8.jar

bctls-jdk15-18-1.64.jar

bcprov-jdk15to18-1.64.jar

signpost-core-1.2.1.2.jar

signpost-commonshttp4-1.2.1.2.jar

json-simple-1.1.1.jar

commons-logging-1.2.jar

MyCustomClass.jar

 

This class runs perfectly with JRE 1.6 off box (on linux)

It's compiled against the right version of Java to match the Cisco UCCX 

 

Any ideas on how to proceed with some more troubleshooting would be greatly appreciated.

 

Cheers,

 

Tim

0 Replies 0
Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community: