Skip to content

Instantly share code, notes, and snippets.

@gyk001
Created July 16, 2014 05:31
Show Gist options
  • Star 7 You must be signed in to star a gist
  • Fork 3 You must be signed in to fork a gist
  • Save gyk001/a698cca49958541e0abd to your computer and use it in GitHub Desktop.
Save gyk001/a698cca49958541e0abd to your computer and use it in GitHub Desktop.
SoapUI Pro 5.0.0 Crack
package com.eviware.soapui;
import java.awt.Dimension;
import java.io.File;
import java.io.InputStream;
import java.util.Calendar;
import java.util.Date;
import java.util.Iterator;
import java.util.Map;
import java.util.Properties;
import org.apache.http.annotation.NotThreadSafe;
import org.apache.log4j.Logger;
import com.eviware.soapui.impl.protection.ProtectionLicense;
import com.eviware.soapui.impl.wsdl.actions.support.OpenUrlAction;
import com.eviware.soapui.lic.LicenseType;
import com.eviware.soapui.support.UISupport;
import com.eviware.x.form.XFormDialog;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.Maps;
import com.smardec.license4j.License;
public class LicenseHandling {
static Logger logger = Logger.getLogger(LicenseHandling.class);
static boolean a = true;
private static LicenseUserInteractionHandler d = new DefaultLicenseUserInteractionHandler();
private static LicenseData e;
private static LicenseType f;
static void a() {
// if ((new File(getProtectionLicensePath()).exists())
// && (!ProtectionLicense.checkLicenseExpired())
// && (ProtectionLicense.checkLicense())) {
// e = new LicenseData(ProtectionLicense.getSoapUILicense());
// }
License l = new License();
l.addFeature("organization", "yisufuyou-org");
l.addFeature("name", "yisufyou-name");
l.addFeature("type", LicenseType.PROFESSIONAL.name());
Date d = new Date();
d.setYear(2114);
l.addFeature("expiration", d);
l.addFeature("id", "yisufuyou-id");
e = new LicenseData(l);
}
public static LicenseData getLicenseData() {
License l = new License();
l.addFeature("organization", "yisufuyou-org");
l.addFeature("name", "yisufyou-name");
l.addFeature("type", LicenseType.PROFESSIONAL.name());
Date d = new Date();
d.setYear(2114);
l.addFeature("expiration", d);
l.addFeature("id", "yisufuyou-id");
return new LicenseData(l);
}
public static LicenseData loadLicense(InputStream paramInputStream) {
License l = new License();
l.addFeature("organization", "yisufuyou-org");
l.addFeature("name", "yisufyou-name");
l.addFeature("type", LicenseType.PROFESSIONAL.name());
Date d = new Date();
d.setYear(2114);
l.addFeature("expiration", d);
l.addFeature("id", "yisufuyou-id");
return new LicenseData(l);
}
public static OpenUrlAction createBuyLicenseAction() {
logger.info("-------------------------");
return new OpenUrlAction("Buy License", "http://www.eviware.com/buypro");
}
public static String getLicensePath() {
String str = System.getProperty("user.home") + File.separatorChar
+ ".soapui";
return str + File.separatorChar + "soapui.lic";
}
public static String getProtectionLicensePath() {
String str = System.getProperty("user.home") + File.separatorChar
+ ".soapui";
return str + File.separatorChar + "soapui.key";
}
public static String getProtectionSecretStoragePath() {
String str = System.getProperty("user.home") + File.separatorChar
+ ".soapui";
return str + File.separatorChar + "soapui.dat";
}
static boolean a(File paramFile) {
return false;
}
static String b() {
// InputStream localInputStream = SoapUIPro.class.getResource(
// "/com/eviware/soapui/resources/conf/SoapUI-license.txt")
// .openStream();
//
// BufferedReader localBufferedReader = new BufferedReader(
// new InputStreamReader(localInputStream, "UTF-8"));
// StringBuilder localStringBuilder;
// (localStringBuilder = new StringBuilder())
// .append("<html><body><font size=-1>");
// String str = localBufferedReader.readLine();
// while (str != null) {
// if (str.trim().length() > 0) {
// localStringBuilder.append("<p>").append(str).append("</p>");
// }
// str = localBufferedReader.readLine();
// }
//
// localStringBuilder.append("</font></body></html>");
// localInputStream.close();
//
// return localStringBuilder.toString();
return "bbbbb";
}
static void a(String paramString) {
if (ProtectionLicense.isLicenseChecked()) {
d.showAboutLicenseDialog();
return;
}
if (e == null) {
UISupport
.showInfoMessage(
"SoapUI Pro is running under the Courtesy license;\nall Pro-features will be disabled until a valid license is entered",
paramString);
return;
}
d.showNewLicenseInfo(paramString);
}
static void a(LicenseData paramLicenseData) {
License l = new License();
l.addFeature("organization", "yisufuyou-org");
l.addFeature("name", "yisufyou-name");
l.addFeature("type", LicenseType.PROFESSIONAL.name());
Date d = new Date();
d.setYear(2114);
l.addFeature("expiration", d);
l.addFeature("id", "yisufuyou-id");
e = new LicenseData(l);
}
public static void setLicense(License paramLicense) {
License l = new License();
l.addFeature("organization", "yisufuyou-org");
l.addFeature("name", "yisufyou-name");
l.addFeature("type", LicenseType.PROFESSIONAL.name());
Date d = new Date();
d.setYear(2114);
l.addFeature("expiration", d);
l.addFeature("id", "yisufuyou-id");
e = new LicenseData(l);
}
public static void clearLicenseData() {
e = null;
}
static String c() {
StringBuilder localStringBuilder = new StringBuilder();
String str1 = e.getName();
String str2 = e.getOrganization();
if ((((str1 == null) || (str1.length() == 0) ? 1 : 0) & ((str2 == null)
|| (str2.length() == 0) ? 1 : 0)) != 0) {
return "";
}
if ((str1 == null) || (str1.length() == 0)) {
localStringBuilder.append(str2).append(") ");
} else if ((str2 == null) || (str2.length() == 0)) {
localStringBuilder.append(e.getName()).append(") ");
} else if (str1.equals(str2)) {
localStringBuilder.append(e.getName()).append(") ");
} else if (str1.contains(str2)) {
localStringBuilder.append(str1.replaceAll(str2, "")).append(", ")
.append(str2).append(") ");
} else if (str2.contains(str1)) {
localStringBuilder.append(str2).append(") ");
} else {
localStringBuilder.append(str1).append(", ").append(str2)
.append(") ");
}
return localStringBuilder.toString();
}
public static void expirationInfo() {
}
public static boolean validateLicense() {
return validateLicense(false);
}
public static boolean validateLicense(boolean paramBoolean) {
return true;
}
public static void runtimeExpiration(boolean paramBoolean) {
}
public static void initLicenseReader() {
}
static boolean d() {
// TODO; 不确定
return true;
}
static void e() {
}
public static void setExpiredLicenseType(LicenseType paramLicenseType) {
//
}
private static class DefaultLicenseUserInteractionHandler implements
LicenseUserInteractionHandler {
public XFormDialog createDialog() {
// DefaultActionList localObject;
// (localObject = new DefaultActionList()).addAction(LicenseHandling
// .createBuyLicenseAction());
// ((ActionList) localObject).addAction(new OpenUrlAction(
// "Apply for Trial", "http://www.eviware.com/trial"));
//
// (localObject = ADialogBuilder.buildDialog(LicenseForm.class,
// (ActionList) localObject)).getFormField(
// "###Choose license type").setValue(
// "Browse for license file");
// ((XFormDialog) localObject).getFormField("###Choose license type")
// .addFormFieldListener(new XFormFieldListener() {
// public void valueChanged(
// XFormField paramAnonymousXFormField,
// String paramAnonymousString1,
// String paramAnonymousString2) {
// this.a.getFormField("License File")
// .setEnabled(
// !paramAnonymousString1
// .equals("Acquire floating license from server"));
// }
// });
return null;// localObject;
}
public void showUrlInExternalBrowser(String paramString) {
}
public boolean checkLicenseFile(File paramFile) {
return true;
}
public void showAboutLicenseDialog() {
ProtectionLicense.getSoapuiProtectionSupport().showAboutDialog();
}
public void showNewLicenseInfo(String paramString) {
// if ((str = LicenseHandling.f().getOrganization()) == null) {
// str = "&lt;not specified&gt;";
// }
// String str = "<html><body><div>Name: "
// + LicenseHandling.f.name() + "<br>Organization: "
// + str + "<br>E-Mail: " + LicenseHandling.f().getEmail()
// + "<br>License Type: " + LicenseHandling.f().getType()
// + "<br>Expires: " + LicenseHandling.f().getExpirationDate()
// + "</div></body></html>";
String str ="<html><body><div>"+ "xxx</div></body></html>";
UISupport.showExtendedInfo(paramString,
"SoapUI Pro License Details", str, new Dimension(300, 250));
}
public LicenseType getInstalledLicenseType() {
return LicenseType.PROFESSIONAL;
}
}
public static final class LicenseData {
private License a;
LicenseData(License paramLicense) {
this.a = paramLicense;
}
public final License getLicense() {
return this.a;
}
public final String getEmail() {
return this.a.getFeatureAsString("email");
}
public final String getName() {
return this.a.getFeatureAsString("name");
}
public final String getOrganization() {
return this.a.getFeatureAsString("organization");
}
public final Date getExpirationDate() {
return (Date) this.a.getFeature("expiration");
}
public final boolean isExpired() {
Date localDate1 = getExpirationDate();
Date localDate2 = Calendar.getInstance().getTime();
return localDate1.before(localDate2);
}
public final boolean isTooOld() {
Date localDate = getExpirationDate();
Calendar localCalendar;
(localCalendar = Calendar.getInstance()).setTime(localDate);
localCalendar.roll(2, 6);
return localCalendar.before(Calendar.getInstance());
}
public final LicenseType getType() {
String str;
return LicenseType.valueOf(str = this.a.getFeatureAsString("type"));
}
public final boolean isRenewal() {
String str;
return ((str = this.a.getFeatureAsString("renewal")) != null)
&& (Boolean.parseBoolean(str));
}
public final String getLicenseId() {
return this.a.getFeatureAsString("id");
}
public final String toString() {
return "License " + getLicenseId() + ": type=" + getType()
+ (isRenewal() ? " RENEWAL" : "") + ", name=" + getName()
+ ", email=" + getEmail() + ", organization="
+ getOrganization() + ", expirationDate="
+ getExpirationDate();
}
}
@NotThreadSafe
static class ProxyBackup {
private static ImmutableList<String> a = ImmutableList
.copyOf(new String[] { "http.proxyHost", "http.proxyPassword",
"http.proxyPort", "http.proxyUser",
"http.nonProxyHosts", "http.proxySet" });
private final Map<String, String> b = Maps.newHashMap();
public void backup() {
Properties localProperties = System.getProperties();
for (String str1 : a) {
String str2 = localProperties.getProperty(str1);
this.b.put(str1, str2);
localProperties.remove(str1);
}
}
public void restore() {
Properties localProperties = System.getProperties();
for (Iterator localIterator = this.b.entrySet().iterator(); localIterator
.hasNext();) {
Map.Entry localEntry;
if ((localEntry = (Map.Entry) localIterator.next()).getValue() != null) {
localProperties.setProperty((String) localEntry.getKey(),
(String) localEntry.getValue());
} else {
localProperties.remove(localEntry.getKey());
}
}
}
}
}
@dkadam77
Copy link

dkadam77 commented Aug 1, 2014

Can u please post the actual crack here as I am unable to understand this code.

@mottwan
Copy link

mottwan commented Oct 16, 2014

hello,
Can you please explain how to use this crack?

@gyk001
Copy link
Author

gyk001 commented Dec 20, 2014

@sbihue
Copy link

sbihue commented Mar 7, 2015

Hi,

After replacing the precompiled 5.1.1 jar (64Bit) file, it fails to startup and reports this error java.lang.NoClassDefFoundError: com/eviware/soapui/SwingSoapUICore
at java.lang.Class.getDeclaredMethods0(Native Method)
Caused by: java.lang.ClassNotFoundException: com.eviware.soapui.SwingSoapUICore
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
...

@whip2127
Copy link

sbihue, did you install the pro version?

@mzubairahmed
Copy link

Works perfect for me!
I have installed Pro 5.1.2 and after replacing the actual jar file's licence class files it never asked me for license again

Thank You @gyk001!

@SKMaxSpeed
Copy link

Hi @gyk001, can you make an update for SoapUI 5.2.1?
Thanks

@salasyam
Copy link

Hi,
Need help.

  • Installed 5.1.2 pro
  • Was unsuccessful with the approach of replacing 5.1.1 files into 5.1.2 jar
  • So cloned the Source code
  • Compiled the build
  • Build generated these .class files.
  1. LicenseHandling
  2. LicenseHandling$1
  3. LicenseHandling$DefaultLicenseUserInteractionHandler
  4. LicenseHandling$LicenseData
  5. LicenseHandling$ProxyBackup
  • Updated 5.1.2 pro.jar with these files (replaced existing)
  • When launching 5.1.2 Pro I get these errors:

java.lang.ClassNotFoundException: com.eviware.soapui.SoapUIPro
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)_
at com.exe4j.runtime.LauncherEngine.launch(Unknown Source)
at com.install4j.runtime.launcher.MacLauncher.main(Unknown Source)

@mzubairahmed, can you please assist with steps you followed? Or share .jar from your Pro’ package?
Will be glad if @gyk001 can give us precompiled jar for 5.1.2.
Appreciate if you anyone can help here.

(I am trying this on MacOS with JDK 1.8 if it makes any difference)

Thanks

@jasonshou
Copy link

also work with 5.1.2.
Thanks

@jasonshou
Copy link

@salasyam download https://github.com/gyk001/soapui-pro-crack/releases/download/v5.1.1/soapui-pro-5.1.1.jar
get
LicenseHandling
LicenseHandling$1
LicenseHandling$DefaultLicenseUserInteractionHandler
LicenseHandling$LicenseData
LicenseHandling$ProxyBackup
classes from jar file
open 5.1.2 jar, replace those classes.
It works for me.

@jiraheta
Copy link

jiraheta commented Oct 5, 2017

Worked with 5.1.2
Thanks

@umurulz
Copy link

umurulz commented Nov 10, 2017

It worked for me for 5.1.1.

But is it possible if I can change the name from Licensed to yisufyou-name, yisufyou-org to like my name??

@Mugesh-Rajaram
Copy link

Hi, can anybody share me the path for the soapui pro software download link for this crack and tell the steps to use this crack.

@SanuDada
Copy link

Thanks friend, It works with 5.1.2!!!

@cmaggiulli
Copy link

@gyk001 I whenever I attempt run mvn package from your github project it tells me I am missing license4j. When I research license4j it appears to be a paid dependency. Is anyone else running into this?

@iamakshayshar
Copy link

The repository to download jar is blocked by GIT. Can't I get the jar file somehow @gyk001

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment