Servoy CLient JNLP Startup Failure

Hi everyone :)

I have released the MediaManager and DataStream plugins.
The package consists of 3 separate plugins.
The package relies on the native dll’s in /plugins/jmf.

An error occurs while launching/running the client application from the web-page via the JNLP file link. This error does not occur when running the client directly from the ‘servoy-developer’ batch file.

The error appears to relate to the loading of one of the DLL’s (which are specified in the MediaManagerPlugin.jar.jnlp)

I thought it may have been a version issue, so I have tried running the .jar.jnlp without reference to:

version=“%%version%%”

but this has had no effect.

GENERAL TAB:
Title: Servoy Client
Vendor: Servoy
Category: Download Error

Bad MIME type returned from server when accessing resource: (http://localhost:8080/plugins/jmf/jmacm.dll, 1111396660000) - null

EXCEPTION TAB:
JNLPException[category: Download Error : Exception: null : LaunchDesc: null ]

at com.sun.javaws.cache.DownloadProtocol.doDownload(Unknown Source)

at com.sun.javaws.cache.DownloadProtocol.getDownloadSize(Unknown Source)

at com.sun.javaws.LaunchDownload.downloadJarFiles(Unknown Source)

at com.sun.javaws.LaunchDownload.downloadEagerorAll(Unknown Source)

at com.sun.javaws.Launcher.downloadResources(Unknown Source)

at com.sun.javaws.Launcher.handleApplicationDesc(Unknown Source)

at com.sun.javaws.Launcher.handleLaunchFile(Unknown Source)

at com.sun.javaws.Launcher.run(Unknown Source)

at java.lang.Thread.run(Unknown Source)

LAUNCH_FILE TAB:

<?xml version="1.0" encoding="utf-8"?> Servoy Client

Servoy

Database client

CONSOLE TAB:
Java Web Start 1.4.2_06 Console, started Tue Mar 22 07:05:33 EST 2005

Java 2 Runtime Environment: Version 1.4.2_06 by Sun Microsystems Inc.

Did you check the jnlp spec. how to specify native code? we have no expirience, but I recall its definition is different than a normal .jar file

Hi Jan.

Yes, I am familiar with the native specification within jnlp.
It is used inside “MediaManagerPlugin.jar.jnlp” in this way:

(and I also have tried this without the version attribute.)

I have other applications load native libs without a problem this way.

The only things which appear likely are:

  1. the path “/plugins/jmf/jmacm.dll” is misinterpreted when JNLP clients load, or
  2. the web server doesn’t know what to do with DLL’s bc a mime-type may not have been configured in servoy’s tomcat configuration files (???)

cheers
Julian

  1. what happens if you open :/plugins/jmf/jmacm.dll in a browser?
  2. you can config the mime types in server web.xml in the server/conf dir.

if you add:

  <mime-mapping>
    <extension>dll</extension>
    <mime-type>application/octet-stream</mime-type>
  </mime-mapping>

to youre web.xml file in the server/conf dir. Does that help?

Thanks Johan :)

I had already done this but forgotten to post back to the list. Sorry.
I am actually wrapping the natives into a jar, signing it and so on.
Will post more detail tomorrow.

…trying to get these plugins and beans released… :)

julian