Forum Discussion
KonstantinosLps
7 years agoOccasional Contributor
Hi wenesmad,
indeed :
sun.misc.BASE64Encoder
is available forJava <= 8
java.util.Base64
is available inJava >= 8
have you tried using java.util.Base64?
Regards
-Konstantinos
- wenesmad7 years agoOccasional Contributor
Hi Konstantinos,
Thanks for the reply. How can we change Testrunner to use java.util.Base64 instead of sun.misc.BASE64Encoder?
Regards.
- KonstantinosLps7 years agoOccasional Contributor
If you use base64 in groovy, somethink like this can do the trick:
import java.io.* import java.util.Base64 //Set string def s = 'Test String' //Encode with Base64 String encoded = s.bytes.encodeBase64().toString() log.info encoded //Assert the expected encoded string is the right one assert 'VGVzdCBTdHJpbmc=' == encoded //Decode with Base64 byte[] decoded = encoded.decodeBase64() //Assert is equals assert s == new String(decoded) log.info s
Do you get the error somewhere else?
- wenesmad7 years agoOccasional Contributor
Hi Konstantinos,
Sorry, I should be more detailed in my original post. The problem is that I have a set of tests. If I run them in SoapUI, it's fine, no errors. However if I run them using testrunner, I get errors like this:
16:02:36,342 INFO [PluginManager] 0 plugins loaded in 3 ms 16:02:36,343 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:64) 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
Any clue on how to fix it?