JaNeLA - Message Help

JaNeLA help on error, warning and optimization messages.

Messages

Level Message
Desciption
Error Codebase 'http://p^.org' is a malformed URL! Defaulting to http://ps.org
Check the URL specified as the codebase + href for the launch file. The current codebase/href is malformed.
Error Codebase + href 'http://ps.org/the^.jnlp' is a malformed URL!
Check the URL specified as the codebase for the launch file. The current codebase or href is malformed.
Error (1) cvc-attribute.3: The value 'tootlip' of attribute 'kind' on element 'description' is not valid with respect to its type, 'null'.
Double check the spelling of the value of the specified attribute.
Error (1) cvc-complex-type.2.4.a: Invalid content was found starting with element 'jar'. One of '{extension, property, package}' is expected.
This one fools a lot of people. It most often means that elements are out of the correct order in the launch file. Check the spelling, then try shifting the element further up the document.
Error (1) cvc-complex-type.3.2.2: Attribute 'kinc' is not allowed to appear in element 'icon'.
The attribute name has wrong spelling, or there is no such attribute name. Check the JNLP specification for details of allowable attributes, then check the spelling.
Error (1) cvc-enumeration-valid: Value 'tootlip' is not facet-valid with respect to enumeration '[one-line, short, tooltip]'. It must be a value from the enumeration.
Attribute value must be one of the specified values. Check the spelling.
Error Native lib our.dll must be in the root of win-natives.jar.
The Jar for natives must have all natives in the root, or 'top level' of the Jar. The natives were found in a sub-directory of the Jar. Ensure your build puts them in the root of the jar.
Error Native lib win-natives.jar requires 'all-permissions'.
Any JNLP that declares natives (using a nativelib element) must declare all-permissions in the security element.
Error Problem fetching resource bouncingline.jar. js.com
The resource could not be located at the address formed from the codebase and href. Check both values, then attempt a direct fetch on the URL formed, using a standard browser.
Typical results might be:
  • 404 - not found. If the resource is not where you thought it was.
  • 503 - service unavailable. The server for this resource was down.
Check HTTP error codes on the net, for other types.
One common mistake for Java developers is to put the archive inside the /WEB-INF/lib directory of a Servlet/JSP container. Resources in /WEB-INF/lib are not available to JWS clients (or a direct fect in a browser, for that matter).
Error Resource type bmp of resource icon is not one of the allowable types of gif, jpg, jpeg.
This resource must be one of the file types specified in allowable types. Typical problems are:
  • Using an application icon/splash of any image type other than gif, jpg or jpeg.
  • Specifying a .zip in a nativelib element. The JWS clients do not typically check for security certificates in Zip archives. This edns up in a clash for nativelibs, since they must be in a JNLP file for which every resource is signed by the same security certificate, and fully trusted. If the application uses any non class/native resources such as images, help files etc. in a Zip archive, it is better to factor these resource out into a component-desc JNLP that is linked from the main JNLP.
Warning 'GIF Animater' description is longer than 'GIFanim' description.
A tooltip or short description text is longer than the short or one-line description. Try swapping them.
Warning Codebase + href 'http://js.com/bouncingline.jnlp' is not equal to actual location of 'http://js.com/bounceline.jnlp'.
Check the codebase & href of the jnlp element.
Warning Codebase not specified. Defaulting to http://ps.org
The codebase was missing from the jnlp element. This is:
  • Wrong for applications and free-floating applets.
  • Right for embedded (plugin2 architecture) applets deployed using web start.
Warning Content type application/xml does not equal expected type of application/x-java-jnlp-file
The content-type or MIME type of the application was not the expected type.
  • If this error is being returned from a real live server, it causes the client browser to simply display the content of the JNLP files as XML in the browser! Contact the server administraters to add the content-type.
  • It is typical for JNLP files checked from the local file system to be of incorrect type.
Warning Desktop icons were subject to bug nnnn in earlier J2SE versions
This refers to bug 6646617 - Dropping a file on a Java Web Start desktop symbol DELETES the file that affects some Java versions. Ensure your application's minimum JRE version is higher than the version listed as 'fix delivered' or avoid requesting a desktop icon at all!
Warning href not specified. Defaulting to document name 'the.jnlp
It is typical to leave an href out if the application launch file is generated dynamically, and not expected to be the same twice. Otherwise the href should be specified.
Warning Icon splash.jpg will not appear as a splash unless the JNLP href attribute is specified.
Since dynamically generated JNLP files only launch once (see above) and the splash only ever appears on the second or subsequent launches, a combination of the missing href and a splash causes the splash never to be seen.
Warning Lazy downloads might not work as expected for plaf.jar unless the download 'part' is specified.
The JWS client figures out which lazy resources to download when, based on the package name of the classes, or the location of resources within the archive. It cannot know what is where in advance, so it relies on the part elements to decide which of a (possible) multitude of lazily deployed archives to download. If the part elements are missing, the JWS client will typically download the archives in the order they are specified in the JNLP, until it gets the correct one.
Warning Resource 'splash.jpg' declared as size '1402' but is actually '4102'.
The server reported a different size for this resource, than is declared in a JNLP file. This might be due to the server returning a wrong size for the resource, or a wrong value for the size attribute.
Warning Some JWS launches have trouble with a max-heap-size>1000Meg. A java/j2se element was defined, calling for 1024M bytes of memory.
Do not depend on such large memory sizes being provided to the JRE that runs the app. Always check available memory at run-time, and adjust the application capabilities or operation to suit.
Warning XML encoding not known, but declared as iso8859-1
This warning is typical of reading a JNLP off the local file system. If it is coming from the server, check the build ensures the declared encoding equals the actual encoding.
Optimization Icon at splash.jpg is declared with height 300 but is actually 320.
It is not a good idea to attempt to stretch or shrink an image at run-time, so the image should be the exact width x height declared in the JNLP file.
Optimization Icon at splash.jpg is declared with width 400 but is actually 480.
It is not a good idea to attempt to stretch or shrink an image at run-time, so the image should be the exact width x height declared in the JNLP file.
Optimization Icon loading & use can be optimized by specifying the width and height for splash.jpg
This lets the JWS client know in advance, how much screen acreage to devote to the splash image.
Optimization The download can be optimized by including the nativelib ainw-natives.jar in an os/platform specific resources element
If the application uses natives (which are inherently OS specific) it makes sense to limit the download using an platform/OS specific resources element.
Optimization Downloads can be optimized by specifying a resource size for 'plaf.jar'.
JWS clients will typically show a progress bar set to 'indeterminate' if it cannot determine the size of the resource being loaded. Help it out by specifying the size.
Optimization It might be possible to optimize the start-up of the app. by specifying download='lazy' for the plaf.jar resource.
This resource might not be required before the application can appear on-screen. If so, it is not necessary to download it eagerly (i.e. before the main app. appears) and the initial launch can be faster.
Optimization Note that a java/j2se version of 'n.n*' will limit the app. to that specific Java runtime, and no later. It is often better to specify version as 'n.n+'.
If a JNLP declares 1.6+, it should work on 1.6, 1.7, 1.8.. On the other hand, if an app. declares 1.6*, it will work only on 1.6. When the user has updated to 1.7 or later, at first install they will be prompted to "Download an older version of Java". That is typically not what we want.
Optimization Optimize this application for off-line use by adding the <offline-allowed /> flag.
JWS apps. are installed off the internet, but except for updates, most JWS apps. do not require a network connection for their own processing, so specify those as offline-allowed.
Optimization The HREF of './loglib.jar' could be optimized to 'loglib.jar'.
The latter is shorter, and has the same effect!
Optimization The resource download at plaf.jar can be optimized by removing the (default) value of download='eager'.
Simply makes the JNLP file shorter. That may sound trivial, but remember that the JNLP descriptors will generally be downloaded before JWS client puts much of anything on-screen, so it pays to make them as short as practical.
Optimization The resource download at loglib.jar can be optimized by removing the (default) value of main='false'.
Simply makes the JNLP file shorter. That may sound trivial, but remember that the JNLP descriptors will generally be downloaded before JWS client puts much of anything on-screen, so it pays to make them as short as practical.

Message Categories

Error Category

Errors should be fixed before the app. is deployed! Errors are serious malfunctions in the launch or the resources used.

Note 1: Errors beginning with cvc- are generated by the inbuilt XML parser's analysis of the JNLP file against the XSD. We do not change the text returned in any way, so you are likely to find many hits on the internet for any such errors reported. When searching on the error, is is better to only search on the exact text following the cvc- text, but not including an part of any other word. This helps to exclude the attribute names from the search, which would lower the number of hits.

Warning Category

Warnings may cause a problem, especially in combination with other elements & values. Check that the problem does not relate to the application launch, if not, ignore. Otherwise warnings need to be fixed.

Optimization Category

Optimizations are optional, but will sometimes enhance the application for the end user. These are sometimes unnecessary, based on the value of other parameters - however they are worth looking at, to enhance the application.

© 2003-2011 by Andrew Thompson. All rights reserved.
Web hosting compliments of Java Web Hosting.
Java Web Hosting