Servoy smart client 7.3 crashes on startup

We have 2 Servoy server instances on a Mac OSX 10.8.5 server. One is Servoy 7.3 server (Postgres), running a solution that I have supplied to a few SAAS clients. The other is Servoy 4.1.7 (Sybase) which hosts our own Servoy solution, as well as various other test solutions. They run on different ports, 8080/1099 for Sybase, and 8081/1100 for Postgres

I have a MacBook Pro retina which was recently erased and reinstalled to eliminate an unneeded partition, as well as to do a clean install of Mac OS X 10.9.

After installing Mavericks, and Java 7, none of our Servoy solutions would work. I then re-enabled the Java 6 webstart - via the instructions on the Apple support website.

Now my Servoy 4.1.7 solutions load (although not from outside our network, and not if using the domain - it only works if I use a local IP address to connect to the server - I will post that as a separate forum post).

However if I use the domain locally (http://www.mydomain.com:8081) my Servoy 7.3 solution will not load at all. I get “Unable to launch Application”, and

java.lang.ThreadDeath
at java.lang.Thread.stop(Thread.java:791)
at java.lang.ThreadGroup.stop(ThreadGroup.java:592)
at com.sun.deploy.security.MacOSXTrustUI.evaluateTrustAfterShow(MacOSXTrustUI.java:251)
at com.sun.deploy.security.MacOSXTrustUI.evaluateAsTrustedLibrary(MacOSXTrustUI.java:204)
at com.sun.deploy.security.MacOSXTrustUI.evaluateTrustAndShow(MacOSXTrustUI.java:153)
at com.sun.deploy.security.MacOSXTrustUI.showDialog(MacOSXTrustUI.java:79)
at com.sun.deploy.security.X509Util.showSecurityDialog(X509Util.java:152)
at com.sun.deploy.security.TrustDecider.isAllPermissionGranted(TrustDecider.java:805)
at com.sun.javaws.security.AppPolicy.grantUnrestrictedAccess(AppPolicy.java:295)
at com.sun.javaws.LaunchDownload.checkSignedResourcesHelper(LaunchDownload.java:1851)
at com.sun.javaws.LaunchDownload.checkSignedResources(LaunchDownload.java:1527)
at com.sun.javaws.Launcher.prepareResources(Launcher.java:1283)
at com.sun.javaws.Launcher.prepareAllResources(Launcher.java:636)
at com.sun.javaws.Launcher.prepareToLaunch(Launcher.java:338)
at com.sun.javaws.Launcher.prepareToLaunch(Launcher.java:238)
at com.sun.javaws.Launcher.launch(Launcher.java:127)
at com.sun.javaws.Main.launchApp(Main.java:460)
at com.sun.javaws.Main.continueInSecureThread(Main.java:292)
at com.sun.javaws.Main$1.run(Main.java:125)
at java.lang.Thread.run(Thread.java:695)

in the exception details…

If I use my server’s IP address, I get “Servoy Client quit unexpectedly.”

To try to fix it, have cleared Java applets and cache files, as well as all certificates. I have also tried using direct and proxy settings, and have tried with my IP and with my domain (the reason for trying this is that my servoy 4.1.7 solutions work if I use the IP, but not the domain - even if local, and my DNS Server is working fine). Nothing works for Servoy 7.3.

Servoy 7.3 and 4.1.7 run on pre 10.9 machines, or on machines where I have restored my Java 6 to an earlier version (via my instructions here: viewtopic.php?f=27&t=18955&start=15)

I am tiring of trying to find solutions to these problems (especially as different versions of Servoy / Different versions of Mac OS X have different solutions to the same problems.)

Does anyone know whether Servoy 7.3 is supposed to work without hours of tinkering on Mac OS X 10.9.1? I have a pretty much clean fresh machine, with Apple’s recommended Java, which does work with Servoy 4.1.7, but not with 7.3.

Hi Bevil

No comfort in your current situation but I really don’t think you will overcome the need to keep testing and tweaking every time Apple and Oracle release an update.

I have not developed anything new for Smart Client now for a couple of years and have finally weaned the last clients (on a system started with Servoy 2.x) onto 100% WebClient. It can be a hard sell but is worth it both for your sanity and the client’s costs.

Happy New Year -:frowning:

We have this

java.lang.ThreadDeath

on one computer out of 12 at a client. Servoy 6.1.x, Mac OS X, unlikely to be Mavericks as their IT dept are slow at updating people.

this looks like a signing issue.

What would be the best in this case to get your own valid code signing certificate and resign with the latest signtester tool all the jars of servoy

Hi Johan

I understood that if there are no 3rd party plugins or beans, that Servoy by default was properly signed and would work, is this not the case?

I have used the signtester tool and got this:

mail:application_server administrator$ java -jar /Applications/Servoy_saas/application_server/signtester.jar

Verifiying dir: ./beans
/Applications/Servoy/application_server/./beans/IClock.jar did verify
/Applications/Servoy/application_server/./beans/datagrid.jar did verify
/Applications/Servoy/application_server/./beans/dbtreeview.jar did verify
/Applications/Servoy/application_server/./beans/htmlbean.jar did verify
/Applications/Servoy/application_server/./beans/inmethod-grid.jar did verify
/Applications/Servoy/application_server/./beans/molecule.jar did verify
/Applications/Servoy/application_server/./beans/s11_chart.jar did verify

Verifiying dir: ./lafs
/Applications/Servoy/application_server/./lafs/kunststoff.jar did verify
/Applications/Servoy/application_server/./lafs/skinlf.jar did verify

Verifiying dir: ./lib
/Applications/Servoy/application_server/./lib/BrowserLauncher2.jar did verify
/Applications/Servoy/application_server/./lib/MRJAdapter.jar did verify
/Applications/Servoy/application_server/./lib/activation.jar did verify
/Applications/Servoy/application_server/./lib/antlr.jar did verify

Verifiying dir: ./lib/client
/Applications/Servoy/application_server/./lib/client/httpclient.jar did verify
/Applications/Servoy/application_server/./lib/client/httpcore.jar did verify
/Applications/Servoy/application_server/./lib/client/jcifs.jar did verify
/Applications/Servoy/application_server/./lib/client/slf4j-jdk14.jar did verify
/Applications/Servoy/application_server/./lib/commons-codec.jar did verify
/Applications/Servoy/application_server/./lib/commons-collections.jar did verify
/Applications/Servoy/application_server/./lib/commons-dbcp.jar did verify
/Applications/Servoy/application_server/./lib/commons-fileupload-1.0.jar did verify
/Applications/Servoy/application_server/./lib/commons-httpclient.jar did verify
/Applications/Servoy/application_server/./lib/commons-logging.jar did verify
/Applications/Servoy/application_server/./lib/commons-pool.jar did verify
/Applications/Servoy/application_server/./lib/dom4j.jar did verify
/Applications/Servoy/application_server/./lib/help.jar did verify
/Applications/Servoy/application_server/./lib/hibernate3.jar did verify

Verifiying dir: ./lib/images
/Applications/Servoy/application_server/./lib/j2db.jar did verify
/Applications/Servoy/application_server/./lib/j2dbdev.jar did verify
/Applications/Servoy/application_server/./lib/jabsorb.jar did verify
/Applications/Servoy/application_server/./lib/jdbc2_0-stdext.jar did verify
/Applications/Servoy/application_server/./lib/jmx.jar did verify
/Applications/Servoy/application_server/./lib/jndi.jar did verify
/Applications/Servoy/application_server/./lib/joda-time.jar did verify
/Applications/Servoy/application_server/./lib/js.jar did verify
/Applications/Servoy/application_server/./lib/jta.jar did verify
/Applications/Servoy/application_server/./lib/jug.jar did verify
/Applications/Servoy/application_server/./lib/log4j.jar did verify
/Applications/Servoy/application_server/./lib/mail.jar did verify
/Applications/Servoy/application_server/./lib/networktnl.jar did verify
/Applications/Servoy/application_server/./lib/ohj-jewt.jar did verify
/Applications/Servoy/application_server/./lib/oracle_ice.jar did verify
/Applications/Servoy/application_server/./lib/rmitnl.jar did verify
/Applications/Servoy/application_server/./lib/server-bootstrap.jar did verify
/Applications/Servoy/application_server/./lib/servlet-api.jar did verify
/Applications/Servoy/application_server/./lib/slf4j-api.jar did verify
/Applications/Servoy/application_server/./lib/slf4j-log4j.jar did verify
/Applications/Servoy/application_server/./lib/wicket-calendar.jar did verify
/Applications/Servoy/application_server/./lib/wicket-extentions.jar didnt verify
/Applications/Servoy/application_server/./lib/wicket.jar did verify

Verifiying dir: ./plugins

Verifiying dir: ./plugins/adobe_pdf_forms
/Applications/Servoy/application_server/./plugins/adobe_pdf_forms/jFdfTk.jar did verify
/Applications/Servoy/application_server/./plugins/agent.jar did verify
/Applications/Servoy/application_server/./plugins/amortization.jar did verify
/Applications/Servoy/application_server/./plugins/converters.jar did verify
/Applications/Servoy/application_server/./plugins/default_validators.jar did verify
/Applications/Servoy/application_server/./plugins/dialog.jar did verify
/Applications/Servoy/application_server/./plugins/excelxport.jar did verify
/Applications/Servoy/application_server/./plugins/file.jar did verify
/Applications/Servoy/application_server/./plugins/http.jar did verify

Verifiying dir: ./plugins/images
/Applications/Servoy/application_server/./plugins/images/jai_imageio.jar did verify
/Applications/Servoy/application_server/./plugins/images/metadataextractor.jar did verify
/Applications/Servoy/application_server/./plugins/images.jar did verify

Verifiying dir: ./plugins/jakarta-poi
/Applications/Servoy/application_server/./plugins/jakarta-poi/jakarta-poi.jar did verify
/Applications/Servoy/application_server/./plugins/kioskmode.jar did verify
/Applications/Servoy/application_server/./plugins/mail.jar did verify
/Applications/Servoy/application_server/./plugins/menubar.jar did verify
/Applications/Servoy/application_server/./plugins/pdf_forms.jar did verify

Verifiying dir: ./plugins/pdf_output
/Applications/Servoy/application_server/./plugins/pdf_output/bcmail-jdk14-135.jar did verify
/Applications/Servoy/application_server/./plugins/pdf_output/bcprov-jdk14-135.jar did verify
/Applications/Servoy/application_server/./plugins/pdf_output/itext.jar did verify
/Applications/Servoy/application_server/./plugins/pdf_output.jar did verify
/Applications/Servoy/application_server/./plugins/popupmenu.jar did verify
/Applications/Servoy/application_server/./plugins/rawSQL.jar did verify

Verifiying dir: ./plugins/scheduler
/Applications/Servoy/application_server/./plugins/scheduler/quartz.jar did verify
/Applications/Servoy/application_server/./plugins/scheduler.jar did verify
/Applications/Servoy/application_server/./plugins/serialize.jar did verify

Verifiying dir: ./plugins/spellcheck
/Applications/Servoy/application_server/./plugins/spellcheck/RapidSpell.jar did verify
/Applications/Servoy/application_server/./plugins/spellcheck/RapidSpell_US_UK_Dict.jar did verify
/Applications/Servoy/application_server/./plugins/spellcheck.jar did verify
/Applications/Servoy/application_server/./plugins/tabxport.jar did verify
/Applications/Servoy/application_server/./plugins/udp.jar did verify
/Applications/Servoy/application_server/./plugins/xmlreader.jar did verify

Verifiying dir: ./server/webapps/ROOT/browser_suite

Total process time: 2597ms
mail:application_server administrator$

I do not have the browser_suite in ./server/webapps/root, so I don’t know why it claims to be trying to verify that…

Therefore, am I understanding correctly that in order to run Servoy on a newly installed fresh machine, I have to spend over £100 per year on a code signing certificate on the server? I also have to presumably make all of our customers do the same… Correct?

i think your current install uses a servoy certificate that is expired
i guess thats why you get that when you flush the certificate, because an existing install with an expired certificate is just fine. But new installs will complain. (still i guess you should be able to ignore the warning, but it seems that some very weird crash happens, they are calling thread.stop() which is already depricated and shouldnt be used since java 1.1!!)

you only have to have 1 code signing certificate just for you on your name that you then can use on all your customer installs (so any server)

Thank you Johan

Where do you suggest I get the certificate? I understand that they are for an annual fee, and I have seen people mentioning Comodo…

I guess the other option would be to reinstall Servoy server?

only a newer version of servoy that is using the latest certificates viewtopic.php?f=16&t=19373

it is a bit confusing (because we are also talking of the same thing over multiply forum topics)

4.x is always a expired certificate

7.3.1 that has ofcourse a renewed certificate should work fine on java 7. There is only 1 bug that you still get a warning marker somewhere, but thats a java 7 bug that should be fixed in the next java release.

Hi Johan

I am sorry for the multiple threads. I thought I had two separate problems (one that Servoy only worked via IP address rather than domain - which I assumed was a network or DNS problem, and two that Servoy crashes at startup on newly installed machines…)

If I get a code signing certificate, can I make it work with my Servoy 4.1.7 installation? Or is Servoy 4 dead?

Thank you

Bevil

if you resign your what ever install with a valid correct not expired certificate then it should work (when using the latest signtester on that with -overwrite and so on)

Okay, I will do that.

Any thoughts on where is best to get a code signing cert?

For what it’s worth, I am using GlobalSign. No issues so far.

Is it normal that the results from the signtester tool include this?

/Applications/Servoy/application_server/./lib/wicket-extentions.jar didnt verify

I see that in the output posted above by bevil, and I also see it when I run signtester on my 7.2 installation.

thats a bit weird why it wouldn’t it should be signed
But for smart clients that doesn’t matter, that is a server side only jar

RIGHT !!!

Okay, now I have spent $365.00 for a 5 year code signing certificate from KSoftware (Comodo), I have imported into my Firefox, and exported a pfx, and converted to a jks to use with the signtester tool and…

It does nothing… It does not resign the one jar that ‘didnt verify’ with this error:

/Applications/Servoy/application_server/./lib/wicket-extentions.jar didnt verify
/Applications/Servoy/application_server/./lib/wicket-extentions.jar repacked
java.lang.RuntimeException: exit not allowed, status = 1
at com.servoy.jarsigner.SignerTest$1.checkExit(SignerTest.java:100)
at java.lang.Runtime.exit(Runtime.java:88)
at java.lang.System.exit(System.java:921)
at sun.security.tools.JarSigner.run(JarSigner.java:210)
at com.servoy.jarsigner.SignerTest.dir(SignerTest.java:238)
at com.servoy.jarsigner.SignerTest.main(SignerTest.java:130)
/Applications/Servoy/application_server/./lib/wicket-extentions.jar repacked
java.lang.RuntimeException: exit not allowed, status = 1
at com.servoy.jarsigner.SignerTest$1.checkExit(SignerTest.java:100)
at java.lang.Runtime.exit(Runtime.java:88)
at java.lang.System.exit(System.java:921)
at sun.security.tools.JarSigner.run(JarSigner.java:210)
at com.servoy.jarsigner.SignerTest.dir(SignerTest.java:238)
at com.servoy.jarsigner.SignerTest.main(SignerTest.java:130)
/Applications/Servoy/application_server/./lib/wicket-extentions.jar signed
/Applications/Servoy/application_server/./lib/wicket.jar did verify

Verifiying dir: ./plugins

Verifiying dir: ./plugins/adobe_pdf_forms

,

and if I try to overwrite, I get this error on the first jar:

Unsigning: IClock.jar
/Applications/Servoy/application_server/./beans/IClock.jar unsigned (renamed)
/Applications/Servoy/application_server/./beans/IClock.jar repacked
java.lang.RuntimeException: exit not allowed, status = 1
at com.servoy.jarsigner.SignerTest$1.checkExit(SignerTest.java:100)
at java.lang.Runtime.exit(Runtime.java:88)
at java.lang.System.exit(System.java:921)
at sun.security.tools.JarSigner.run(JarSigner.java:210)
at com.servoy.jarsigner.SignerTest.dir(SignerTest.java:238)
at com.servoy.jarsigner.SignerTest.main(SignerTest.java:128)
/Applications/Servoy/application_server/./beans/IClock.jar repacked
java.lang.RuntimeException: exit not allowed, status = 1
at com.servoy.jarsigner.SignerTest$1.checkExit(SignerTest.java:100)
at java.lang.Runtime.exit(Runtime.java:88)
at java.lang.System.exit(System.java:921)
at sun.security.tools.JarSigner.run(JarSigner.java:210)
at com.servoy.jarsigner.SignerTest.dir(SignerTest.java:238)
at com.servoy.jarsigner.SignerTest.main(SignerTest.java:128)
Exception in thread “main” java.lang.RuntimeException: exit not allowed, status = 1
at com.servoy.jarsigner.SignerTest$1.checkExit(SignerTest.java:100)
at java.lang.Runtime.exit(Runtime.java:88)
at java.lang.System.exit(System.java:921)
at sun.security.tools.JarSigner.run(JarSigner.java:210)
at com.servoy.jarsigner.SignerTest.dir(SignerTest.java:260)
at com.servoy.jarsigner.SignerTest.main(SignerTest.java:128)
mail:application_server administrator$

I have no idea what the error is, or what I should do, and would be grateful for any help anyone can give

Incidentally, this is in my Servoy 4.1.7 solution, not 7.3. I will try that one now and report back.

RIGHT !!!

on Johan’s direction:

this looks like a signing issue.

What would be the best in this case to get your own valid code signing certificate and resign with the latest signtester tool all the jars of servoy

Soooo I bought a code signing certificate from Comodo / Ksoftware, and followed the instructions (I think perfectly). It has resigned all my Jars, and I am now trying to run my 7.3 solution and I get:

“Failed to validate certificate. The application will not be executed.”

and the details:

java.security.cert.CertificateException: java.security.cert.CertPathValidatorException: java.security.InvalidKeyException: Wrong key usage
at com.sun.deploy.security.TrustDecider.isAllPermissionGranted(TrustDecider.java:715)
at com.sun.javaws.security.AppPolicy.grantUnrestrictedAccess(AppPolicy.java:295)
at com.sun.javaws.LaunchDownload.checkSignedResourcesHelper(LaunchDownload.java:1851)
at com.sun.javaws.LaunchDownload.checkSignedResources(LaunchDownload.java:1527)
at com.sun.javaws.Launcher.prepareResources(Launcher.java:1283)
at com.sun.javaws.Launcher.prepareAllResources(Launcher.java:636)
at com.sun.javaws.Launcher.prepareToLaunch(Launcher.java:338)
at com.sun.javaws.Launcher.prepareToLaunch(Launcher.java:238)
at com.sun.javaws.Launcher.launch(Launcher.java:127)
at com.sun.javaws.Main.launchApp(Main.java:460)
at com.sun.javaws.Main.continueInSecureThread(Main.java:292)
at com.sun.javaws.Main$1.run(Main.java:125)
at java.lang.Thread.run(Thread.java:695)
Caused by: java.security.cert.CertPathValidatorException: java.security.InvalidKeyException: Wrong key usage
at sun.security.provider.certpath.OCSPResponse.verifyResponse(OCSPResponse.java:456)
at sun.security.provider.certpath.OCSPResponse.(OCSPResponse.java:411)
at sun.security.provider.certpath.OCSP.check(OCSP.java:216)
at sun.security.provider.certpath.OCSP.check(OCSP.java:120)
at com.sun.deploy.security.TrustDecider.doOCSPEEValidation(TrustDecider.java:1002)
at com.sun.deploy.security.TrustDecider.isAllPermissionGranted(TrustDecider.java:696)
… 12 more
Caused by: java.security.InvalidKeyException: Wrong key usage
at java.security.Signature.initVerify(Signature.java:459)
at sun.security.provider.certpath.OCSPResponse.verifyResponse(OCSPResponse.java:440)
… 17 more

Before I lose my rag, and vent about all this, does anyone have any idea where I now need to start bashing my head to get this fixed? I have followed the advice, and paid the money for a solution, and at every turn there is a new issue / problem / failure…

weird you seem to get: http://bugs.sun.com/bugdatabase/view_bu … id=8000280

but that should be fixed for quite some time now.

Also those exit() warnings/errors really shouldn’t happen, are you sure you don’t run the latest signtester tool against a running instance of servoy?