Article - CS357916
In Vuforia View, Experiences are not displayed when using a CA SSL certificate and with HTTPS enabled in Vuforia Experience Service
Modified: 23-Sep-2025
Applies To
- Vuforia Studio 8.0.0 N/A to 10.1.0
- Vuforia Experience Service 8.0.0 to 10.1.0
- Vuforia View 8.0.0 to 10.1.0
- CA who signed this certificate is embedded in NodeJS
Description
- In Vuforia View, Experiences are not displayed when using a CA SSL certificate and with HTTPS enabled in Vuforia Experience Service
- In Vuforia View log file, this exception is reported:
MM-DD HH:MM:SS.ms 1963 2752 I TGXIdentityRequestTask: TGXIdentityRequestTask full request URL: https://<hostname vuforia experience service>:<port>/ExperienceService/id-resolution/resolutions?key=urn:vuforia:nokey&resourcetype=Experience&wNdp=360&aspect=spatial-tracking MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: Exception processing identity resolution request MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: java.io.IOException: Exception while obtaining HttpURLConnection.getResponseCode() result MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: at com.ptc.thingx.cordova.plugin.core.TGXUtils.getResponseCode(TGXUtils.java:445) MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: at com.ptc.thingx.cordova.plugin.core.TGXUtils.openConnection(TGXUtils.java:604) MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: at com.ptc.thingx.cordova.plugin.identity.TGXIdentityRequestTask.run(TGXIdentityRequestTask.java:76) MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:462) MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: at java.util.concurrent.FutureTask.run(FutureTask.java:266) MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167) MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641) MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: at java.lang.Thread.run(Thread.java:929) MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: Caused by: java.util.concurrent.ExecutionException: javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found. MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: at java.util.concurrent.FutureTask.report(FutureTask.java:123) MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: at java.util.concurrent.FutureTask.get(FutureTask.java:193) MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: at com.ptc.thingx.cordova.plugin.core.TGXUtils.getResponseCode(TGXUtils.java:436) MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: ... 7 more MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: Caused by: javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found. MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: at com.android.org.conscrypt.ConscryptFileDescriptorSocket.startHandshake(ConscryptFileDescriptorSocket.java:231) MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: at com.android.okhttp.internal.io.RealConnection.connectTls(RealConnection.java:196) MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: at com.android.okhttp.internal.io.RealConnection.connectSocket(RealConnection.java:153) MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: at com.android.okhttp.internal.io.RealConnection.connect(RealConnection.java:116) MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: at com.android.okhttp.internal.http.StreamAllocation.findConnection(StreamAllocation.java:186) MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: at com.android.okhttp.internal.http.StreamAllocation.findHealthyConnection(StreamAllocation.java:128) MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: at com.android.okhttp.internal.http.StreamAllocation.newStream(StreamAllocation.java:97) MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: at com.android.okhttp.internal.http.HttpEngine.connect(HttpEngine.java:289) MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: at com.android.okhttp.internal.http.HttpEngine.sendRequest(HttpEngine.java:232) MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: at com.android.okhttp.internal.huc.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:465) MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:411) MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponseCode(HttpURLConnectionImpl.java:542) MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: at com.android.okhttp.internal.huc.DelegatingHttpsURLConnection.getResponseCode(DelegatingHttpsURLConnection.java:106) MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: at com.android.okhttp.internal.huc.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:30) MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: at com.ptc.thingx.cordova.plugin.core.TGXUtils.lambda$getResponseCode$0(TGXUtils.java:433) MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: at com.ptc.thingx.cordova.plugin.core.-$$Lambda$TGXUtils$6p3gtawriLJcgD-X_3j-WMeQvs4.call(Unknown Source:4) MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: ... 4 more MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: Caused by: java.security.cert.CertificateException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found. MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: at com.android.org.conscrypt.TrustManagerImpl.checkTrustedRecursive(TrustManagerImpl.java:658) MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: at com.android.org.conscrypt.TrustManagerImpl.checkTrusted(TrustManagerImpl.java:507) MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: at com.android.org.conscrypt.TrustManagerImpl.checkTrusted(TrustManagerImpl.java:426) MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: at com.android.org.conscrypt.TrustManagerImpl.getTrustedChainForServer(TrustManagerImpl.java:354) MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: at android.security.net.config.NetworkSecurityTrustManager.checkServerTrusted(NetworkSecurityTrustManager.java:94) MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: at android.security.net.config.RootTrustManager.checkServerTrusted(RootTrustManager.java:89) MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: at com.android.org.conscrypt.Platform.checkServerTrusted(Platform.java:224) MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: at com.android.org.conscrypt.ConscryptFileDescriptorSocket.verifyCertificateChain(ConscryptFileDescriptorSocket.java:407) MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: at com.android.org.conscrypt.NativeCrypto.SSL_do_handshake(Native Method) MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: at com.android.org.conscrypt.NativeSsl.doHandshake(NativeSsl.java:387) MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: at com.android.org.conscrypt.ConscryptFileDescriptorSocket.startHandshake(ConscryptFileDescriptorSocket.java:226) MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: ... 19 more MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: Caused by: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found. MM-DD HH:MM:SS.ms 1963 2752 E TGXIdentityRequestTask: ... 30 more MM-DD HH:MM:SS.ms 1963 2752 W TGX_ExperienceLoader: Error occurred while fetching experiences from VES; error: java.io.IOException: Exception while obtaining HttpURLConnection.getResponseCode() result, statusCode: 0, wasInterrupted: false MM-DD HH:MM:SS.ms 1963 2752 I TGXIdentityRequestTask: TGXIdentityRequestTask complete. MM-DD HH:MM:SS.ms 1963 1963 W HiTouch_PressGestureDetector: Touch pointer move a lot. The moving distance of X is:40.916565, limit is:60The moving distance of Y is:123.84546, limit is:60 MM-DD HH:MM:SS.ms 1963 2758 I TGXIdentityRequestTask: TGXIdentityRequestTask starting on thread 4311 (ExperienceListLoader-5) for https://<hostname vuforia experience service>:<port>/ExperienceService/id-resolution/resolutions?key=urn:vuforia:nokey&resourcetype=Experience&wNdp=360 ... MM-DD HH:MM:SS.ms 1963 2758 I TGXIdentityRequestTask: TGXIdentityRequestTask full request URL: https://<hostname vuforia experience service>:<port>/ExperienceService/id-resolution/resolutions?key=urn:vuforia:nokey&resourcetype=Experience&wNdp=360&aspect=spatial-tracking MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: Exception processing identity resolution request MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: java.io.IOException: Exception while obtaining HttpURLConnection.getResponseCode() result MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: at com.ptc.thingx.cordova.plugin.core.TGXUtils.getResponseCode(TGXUtils.java:445) MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: at com.ptc.thingx.cordova.plugin.core.TGXUtils.openConnection(TGXUtils.java:604) MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: at com.ptc.thingx.cordova.plugin.identity.TGXIdentityRequestTask.run(TGXIdentityRequestTask.java:76) MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:462) MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: at java.util.concurrent.FutureTask.run(FutureTask.java:266) MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167) MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641) MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: at java.lang.Thread.run(Thread.java:929) MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: Caused by: java.util.concurrent.ExecutionException: javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found. MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: at java.util.concurrent.FutureTask.report(FutureTask.java:123) MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: at java.util.concurrent.FutureTask.get(FutureTask.java:193) MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: at com.ptc.thingx.cordova.plugin.core.TGXUtils.getResponseCode(TGXUtils.java:436) MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: ... 7 more MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: Caused by: javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found. MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: at com.android.org.conscrypt.ConscryptFileDescriptorSocket.startHandshake(ConscryptFileDescriptorSocket.java:231) MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: at com.android.okhttp.internal.io.RealConnection.connectTls(RealConnection.java:196) MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: at com.android.okhttp.internal.io.RealConnection.connectSocket(RealConnection.java:153) MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: at com.android.okhttp.internal.io.RealConnection.connect(RealConnection.java:116) MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: at com.android.okhttp.internal.http.StreamAllocation.findConnection(StreamAllocation.java:186) MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: at com.android.okhttp.internal.http.StreamAllocation.findHealthyConnection(StreamAllocation.java:128) MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: at com.android.okhttp.internal.http.StreamAllocation.newStream(StreamAllocation.java:97) MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: at com.android.okhttp.internal.http.HttpEngine.connect(HttpEngine.java:289) MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: at com.android.okhttp.internal.http.HttpEngine.sendRequest(HttpEngine.java:232) MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: at com.android.okhttp.internal.huc.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:465) MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:411) MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponseCode(HttpURLConnectionImpl.java:542) MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: at com.android.okhttp.internal.huc.DelegatingHttpsURLConnection.getResponseCode(DelegatingHttpsURLConnection.java:106) MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: at com.android.okhttp.internal.huc.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:30) MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: at com.ptc.thingx.cordova.plugin.core.TGXUtils.lambda$getResponseCode$0(TGXUtils.java:433) MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: at com.ptc.thingx.cordova.plugin.core.-$$Lambda$TGXUtils$6p3gtawriLJcgD-X_3j-WMeQvs4.call(Unknown Source:4) MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: ... 4 more MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: Caused by: java.security.cert.CertificateException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found. MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: at com.android.org.conscrypt.TrustManagerImpl.checkTrustedRecursive(TrustManagerImpl.java:658) MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: at com.android.org.conscrypt.TrustManagerImpl.checkTrusted(TrustManagerImpl.java:507) MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: at com.android.org.conscrypt.TrustManagerImpl.checkTrusted(TrustManagerImpl.java:426) MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: at com.android.org.conscrypt.TrustManagerImpl.getTrustedChainForServer(TrustManagerImpl.java:354) MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: at android.security.net.config.NetworkSecurityTrustManager.checkServerTrusted(NetworkSecurityTrustManager.java:94) MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: at android.security.net.config.RootTrustManager.checkServerTrusted(RootTrustManager.java:89) MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: at com.android.org.conscrypt.Platform.checkServerTrusted(Platform.java:224) MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: at com.android.org.conscrypt.ConscryptFileDescriptorSocket.verifyCertificateChain(ConscryptFileDescriptorSocket.java:407) MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: at com.android.org.conscrypt.NativeCrypto.SSL_do_handshake(Native Method) MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: at com.android.org.conscrypt.NativeSsl.doHandshake(NativeSsl.java:387) MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: at com.android.org.conscrypt.ConscryptFileDescriptorSocket.startHandshake(ConscryptFileDescriptorSocket.java:226) MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: ... 19 more MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: Caused by: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found. MM-DD HH:MM:SS.ms 1963 2758 E TGXIdentityRequestTask: ... 30 more MM-DD HH:MM:SS.ms 1963 2758 W TGX_ExperienceLoader: Error occurred while fetching experiences from VES; error: java.io.IOException: Exception while obtaining HttpURLConnection.getResponseCode() result, statusCode: 0, wasInterrupted: false
- In Vuforia Studio, in a Project when validating Vuforia Experience Service URL, it fails
- In Vuforia Studio log file, we can see this exception reported :
[YYYY-MM-DDTHH:MM:SS.MSZ] error: [twx-studio:auth:oauthHandler] Error making request for oauth config unable to verify the first certificate Error: unable to verify the first certificate
at TLSSocket.onConnectSecure (_tls_wrap.js:1514:34)
at TLSSocket.emit (events.js:375:28)
at TLSSocket.emit (domain.js:470:12)
at TLSSocket._finishInit (_tls_wrap.js:936:8)
at TLSWrap.ssl.onhandshakedone (_tls_wrap.js:708:12)
at TLSWrap.callbackTrampoline (internal/async_hooks.js:131:17) {
code: 'UNABLE_TO_VERIFY_LEAF_SIGNATURE'
- When running this command : openssl s_client -connect https://<hostname vuforia experience service>:<port>
- Output of this command reports these errors :
- verify error:num=20:unable to get local issuer certificate
- verify error:num=21:unable to verify the first certificate
- Verify return code: 21 (unable to verify the first certificate)
- Vuforia Experience Service failed to startup correctly after ThingWorx certificate was renewed
This is a printer-friendly version of Article 357916 and may be out of date. For the latest version click CS357916