JaNeLA help on error, warning and optimization 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.
|