If you call getResource, you must now sign the Applet, with a real or self-signed certificate.
If you don’t, you Applet will just quietly terminate without any sort of message to indicate the problem. This drives you nuts because when you run the Applet as an application or in the AppletViewer to debug, all works fine. Oddly getResourceAsStream does not appear to have this problem.
Class.getResource is similar, giving you the URL of the resource instead of an InputStream to read it. Note that getResource is an instance method. Class.getResource makes these changes to the resource name: if the resource name starts with /, it is unchanged; otherwise, the package name is prepended to the resource name after converting . to /. This allows you to use either dots or slashes to separate the components of the name. So normally your resource member name includes the package name, but you don’t specify the package name to getResource. Alternatively, but not recommended, you can specify the fully qualified name of the resource by using a lead / on the name you feed to getResource. Never use \ in resource names. So you can access by either: /com/mindprod/entities/entitytable.ser or the short form entitytable.ser. The short form only works from classes in the com.mindprod.entities package.
// accessing a resource with getResource to give you its URL URL url = Entities.class.getResource( "entitytable.ser" ); out.println( url ); // Note that getResource is an instance method of Class, // so You CANNOT say: URL url = Class.getResource( "entitytable.ser" );Note the lack of dots, slashes, package name or class name in the resource.
This page is posted
Optional Replicator mirror
|no blog for this page||Canadian
Your face IP:[188.8.131.52]
You are visitor number|