Forum Discussion

Joshua_Burton's avatar
Joshua_Burton
New Member
4 years ago

SoapUI 5.5.0/5.6.0 Linux command line PFX keystore issue

I'm attempting to create a SoapUI Open Source project that can be run via command line on a Linux machine. It requires a PFX keystore file for SSL authentication; but every time I try and run the project with the testrunner.sh bash script, it returns these errors during the keystore initializer setup:

 

15:20:14,386 INFO [HttpClientSupport$Helper] Initializing KeyStore
what kind of weird pkcs12 file has more than one alias?
what kind of weird pkcs12 file has more than one alias?
what kind of weird pkcs12 file has more than one alias?
…
what kind of weird pkcs12 file has more than one alias?
what kind of weird pkcs12 file has more than one alias?
java.security.KeyStoreException: Uninitialized keystore
        at java.base/java.security.KeyStore.aliases(KeyStore.java:1260)
        at org.apache.commons.ssl.TrustMaterial.<init>(TrustMaterial.java:234)
        at org.apache.commons.ssl.TrustMaterial.<init>(TrustMaterial.java:165)
        at org.apache.commons.ssl.TrustMaterial.<init>(TrustMaterial.java:170)
        at org.apache.commons.ssl.TrustMaterial.<init>(TrustMaterial.java:175)
        at org.apache.commons.ssl.TrustMaterial.<clinit>(TrustMaterial.java:88)
        at com.eviware.soapui.impl.wsdl.support.http.HttpClientSupport$Helper.initSocketFactory(HttpClientSupport.java:301)
        at com.eviware.soapui.impl.wsdl.support.http.HttpClientSupport$Helper.<init>(HttpClientSupport.java:200)
        at com.eviware.soapui.impl.wsdl.support.http.HttpClientSupport.<clinit>(HttpClientSupport.java:70)
        at com.eviware.soapui.DefaultSoapUICore.initSettings(DefaultSoapUICore.java:373)
        at com.eviware.soapui.DefaultSoapUICore.init(DefaultSoapUICore.java:141)
        at com.eviware.soapui.DefaultSoapUICore.<init>(DefaultSoapUICore.java:132)
        at com.eviware.soapui.tools.AbstractSoapUIRunner.createSoapUICore(AbstractSoapUIRunner.java:216)
        at com.eviware.soapui.tools.AbstractSoapUIRunner.run(AbstractSoapUIRunner.java:192)
        at com.eviware.soapui.tools.AbstractSoapUIRunner.run(AbstractSoapUIRunner.java:137)
        at com.eviware.soapui.tools.AbstractSoapUIRunner.runFromCommandLine(AbstractSoapUIRunner.java:112)
        at com.eviware.soapui.tools.SoapUITestCaseRunner.main(SoapUITestCaseRunner.java:122)
15:20:14,665 ERROR [SoapUI] An error occurred [java.lang.ExceptionInInitializerError], see error log for details
java.lang.ExceptionInInitializerError
        at com.eviware.soapui.impl.wsdl.support.http.HttpClientSupport$Helper.initSocketFactory(HttpClientSupport.java:301)
        at com.eviware.soapui.impl.wsdl.support.http.HttpClientSupport$Helper.<init>(HttpClientSupport.java:200)
        at com.eviware.soapui.impl.wsdl.support.http.HttpClientSupport.<clinit>(HttpClientSupport.java:70)
        at com.eviware.soapui.DefaultSoapUICore.initSettings(DefaultSoapUICore.java:373)
        at com.eviware.soapui.DefaultSoapUICore.init(DefaultSoapUICore.java:141)
        at com.eviware.soapui.DefaultSoapUICore.<init>(DefaultSoapUICore.java:132)
        at com.eviware.soapui.tools.AbstractSoapUIRunner.createSoapUICore(AbstractSoapUIRunner.java:216)
        at com.eviware.soapui.tools.AbstractSoapUIRunner.run(AbstractSoapUIRunner.java:192)
        at com.eviware.soapui.tools.AbstractSoapUIRunner.run(AbstractSoapUIRunner.java:137)
        at com.eviware.soapui.tools.AbstractSoapUIRunner.runFromCommandLine(AbstractSoapUIRunner.java:112)
        at com.eviware.soapui.tools.SoapUITestCaseRunner.main(SoapUITestCaseRunner.java:122)
Caused by: java.lang.NullPointerException
        at org.apache.commons.ssl.TrustMaterial.<init>(TrustMaterial.java:132)
        at org.apache.commons.ssl.TrustMaterial.<init>(TrustMaterial.java:123)
        at org.apache.commons.ssl.TrustMaterial.<clinit>(TrustMaterial.java:113)
        ... 11 more
15:20:14,861 INFO  [PluginManager] 0 plugins loaded in 1 ms
15:20:14,862 INFO  [DefaultSoapUICore] All plugins loaded
Exception in thread "main" java.lang.NoClassDefFoundError: sun/misc/BASE64Decoder
        at com.smartbear.analytics.impl.SoapUIOSMixpanelProviderFactory.allocateProvider(SoapUIOSMixpanelProviderFactory.java:39)
        at com.smartbear.analytics.AnalyticsManager.registerAnalyticsProviderFactory(AnalyticsManager.java:92)
        at com.eviware.soapui.analytics.AnalyticsHelper.initializeAnalytics(AnalyticsHelper.java:43)
        at com.eviware.soapui.tools.SoapUITestCaseRunner.runRunner(SoapUITestCaseRunner.java:335)
        at com.eviware.soapui.tools.AbstractSoapUIRunner.run(AbstractSoapUIRunner.java:202)
        at com.eviware.soapui.tools.AbstractSoapUIRunner.run(AbstractSoapUIRunner.java:137)
        at com.eviware.soapui.tools.AbstractSoapUIRunner.runFromCommandLine(AbstractSoapUIRunner.java:112)
        at com.eviware.soapui.tools.SoapUITestCaseRunner.main(SoapUITestCaseRunner.java:122)
Caused by: java.lang.ClassNotFoundException: sun.misc.BASE64Decoder
        at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:583)
        at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
        at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
        ... 8 more

 

I have tried running this with the Linux server's OpenJDK 11 installation and with a standalone installation of Oracle JDK 12, but neither worked. I've also made sure that the scripts are using the right Java installations when testing these two JDK versions. The PFX file itself works perfectly fine with my local Windows installation of SoapUI Open Source AND with SoapUI Pro; so I'm not sure why the Linux command line method is having so much difficulty with the cert file, and editing the PFX file is pretty much out of the question for me.

 

Is there something I could be missing in the Linux setup or something I need to adjust in the lib folder, or will the testrunner.sh script just never accept my cert given the repeated "what kind of weird pkcs12 file has more than one alias?" errors at the very top of the error log?

No RepliesBe the first to reply