| advertise add site services publishers database health videos | ![]() | about toolbar stats live show health store more stuff JOIN/LOGIN |
BIOGRAPH APPLET v2.0-User Manual expasy.org | IPIX Java Viewer v2.2 vernonmanorct.com | VESS Online Java resources</a> euthanasia.cc | IPIX Java Viewer v2.2 manchestermanorct.com |
Java applet that was created as a supplementary demonstration material of the scientific publication.[1] and is available from the university site Java applet that uses 3D hardware acceleration, downloading from the server 3D files in .pdb format to visualize[2] Using applet for non trivial animation illustrating biophysical topic (randomly moving ions pass through voltage gates)[3] NASA World Wind (open source) is a second generation applet [6] that heavily uses OpenGL and on-demand data downloading to provide detailed 3D map of the world. Web access to the server console at the hardware level with the help of java applet A Java applet is an applet delivered to the users in the form of Java bytecode. Java applets can run in a Web browser using a Java Virtual Machine (JVM), or in Sun's AppletViewer, a stand-alone tool for testing applets. Java applets were introduced in the first version of the Java language in 1995. Java applets are usually written in the Java programming language but they can also be written in other languages that compile to Java bytecode such as Jython[7], Ruby[8] or Eiffel[9]. Applets are used to provide interactive features to web applications that cannot be provided by HTML alone. They can capture mouse input (like rotating 3D object) and also have controls like buttons or check boxes. In response to the user action an applet can change the provided graphic content. This makes applets well suitable for demonstration, visualization and teaching. There are online applet collections for studying various subjects, from differential equations[10] till heart physiology[3]. Applets are also used to create online game collections that allow to play against live opponents in real-time, An applet can also be text area only, providing, for instance, cross platform command-line interface to some remote system[11]. If needed, applet can leave the dedicated area and run as separate window. However applets have very little control on web page content outside the applet dedicated area, so they are less useful for improving the site appearance in general (while applets like news tickers[12] or WYSIWYG editors[13] are also known). Applet can also play media in formats that are not natively supported by the browser[14]. Java applets run at a speed that is comparable to (but generally slower than) other compiled languages such as C++, but many times faster than JavaScript[15]. In addition they can use 3D hardware acceleration that is available from Java. This makes applets well suitable for non trivial, computation intensive visualizations. HTML page may embed parameters that are passed to the applet. Hence the same applet may appear differently depending on that parameters were passed. First implementations were downloading an applet class by class. While classes are small files, there are frequently a lot of them, so applets got a reputation of slow loading components. However since jars were introduced an applet is usually delivered as a single file that has a size of the bigger image (hundreds of kilobytes to several megabytes). Since Java's bytecode is platform independent, Java applets can be executed by browsers for many platforms, including Windows, Unix, Mac OS and Linux. It is also trivial to run Java applet as an application with very little extra code. This has the advantage of running a Java applet in offline mode without the need for internet browser software and also directly from the development IDE. Many Java developers, blogs and magazines are recommending that the Java Web Start technology be used in place of Applets [16][17]. A Java Servlet is sometimes informally compared to be "like" a server-side applet, but it is different in its language, functions, and in each of the characteristics described here about applets.
[edit] Technical informationJava applets are executed in a sandbox by most web browsers, preventing them from accessing local data like clipboard or file system. The code of the applet is downloaded from a web server and the browser either embeds the applet into a web page or opens a new window showing the applet's user interface. The applet can be displayed on the web page by making use of the deprecated A Java applet extends the class The domain from where the applet executable has been downloaded is the only domain to that the usual (unsigned) applet is allowed to communicate. This domain can be different from the domain where the surrounding html document is hosted. [edit] AdvantagesA Java applet can have any or all of the following advantages:
[edit] DisadvantagesA Java applet may have any of the following disadvantages:
[edit]Sun has made a considerable effort to ensure compatibility is maintained between Java versions as they evolve, enforcing Java portability by law if required. [edit] The 1997 year Sun - Microsoft lawsuitThe 1997 year lawsuit [19] was filled in after Microsoft has modified its own Java Virtual Machine that was shipped with Internet Explorer by default. Microsoft added about 50 methods and 50 fields[19] into the classes within the java.awt, java.lang, and java.io packages. Other modifications included removal of RMI capability and replacement of Java native interface from JNI to RNI, a different standard. RMI was removed because it only easily supports Java to Java communications and competes with Microsoft DCOM technology. Applets that relied on these changes or just inadvertently used them worked only within Microsoft's Java system. Sun sued for breach of trademark, as the point of Java was that there should be no proprietary extensions and that code should work everywhere. Microsoft agreed to pay Sun $20 million, and Sun agreed to grant Microsoft limited license to use Java without modifications only and for a limited time[20] [edit] The 2002 year Sun - Microsoft lawsuitMicrosoft continued to ship its own unmodified Java virtual machine. Over years it has become extremely outdated yet still default for Internet Explorer. In 2002 Sun filled in antitrust lawsuit, claiming that Microsoft's attempts of illegal monopolization have harmed the Java platform. Sun demanded to distribute Sun's current, binary implementation of Java technology as part of Windows, distribute it as a recommended update for older Microsoft desktop operating systems and stop the distribution of Microsoft's Virtual Machine (as its licensing time, agreed in the previous lawsuit, had expired).[20] Microsoft paid $700 million for pending antitrust issues, another $900 million for patent issues and a $350 million royalty fee to use Sun's software in the future.[21][22] [edit] Applet securityThere are two applet types with very different security model: signed applets and unsigned applets[23] [edit] Unsigned appletLimitations for the unsigned applets are understood as "draconian" [24]: they have no access to the local filesystem, web access limited to the applet download site, there are also many other important restrictions. For instance, they cannot access system properties, use their own class loader, call native code, execute external commands on a local system or redefine classes belonging to the certain packages. While they can run in standalone frame, such frame contains a header, indicating that this is an untrusted applet. Successful initial call of the forbidden method does not automatically create a security hole as access controller checks all stack of the calling code to be sure the call is not coming from improper location. Several specific security problems have been discovered and fixed since Java was first released, and some like [25] even persisted as long as till 2008 without anybody being aware. Some studies mention applets crashing browser or overusing CPU resources but these are classified as nuisances[26] and not as true security flaws. However unsigned applets may be involved into combined attack that exploit combination of multiple severe configuration errors in other parts of the system[27]. Unsigned applet can also be more dangerous to run directly on the server where it is hosted because while code base allows it to talk with the server, running inside it can bypass the firewall. An applet may also try DOS attack on the server where it is hosted but usually people who manage the web site also manage the applet, making this unreasonable. Communities may solve this problem via source code review or running applets on a dedicated domain[28]. As of 1999 no real security breaches involving unsigned applets have ever been publicly reported, while these references are now dated [26][29]. Using an up-to-date Web browser is usually enough to be safe safe against the known attacks from unsigned applets. [edit] Signed appletSigned applet [3] contains a signature that the browser should verify through remotely running, independent certificate authority server. Producing this signature involves specialized tools and interaction with the authority server maintainers. Once the signature is verified and then the user of the current machine also approves, signed applet can get more rights, becoming equivalent to the ordinary standalone program. The rationale is that the author of the applet is now known and will be responsible for any deliberate damage. This approach allows to use applets for many tasks that are otherwise not possible by client side scripting. However this approach require more responsibility from the user, deciding whom he/she is trusting. The probable concerns include non-responding authority server (should the applet be allowed to run?), wrong evaluation of the signer identity when issuing certificates and known applet publishers still doing something that the user would not approve (as adding bookmark to the website). Hence signed applets that appeared from Java 1.1 may actually have more security concerns. Java security problems are not fundamentally different from similar problems of any client side scripting platform. In particular, all issues related to the signed applets also apply to Active X. [edit] AlternativesAlternative technologies exist (for example, JavaScript, Curl, Flash, and Microsoft Silverlight) that satisfy some of the scope of what is possible with an applet. Of these, JavaScript is not always viewed as a competing replacement; JavaScript can coexist with applets in the same page, assist in launching applets (for instance, in separate frame or providing platform workarounds) and later be called from the applet code[30]. [edit] See also[edit] References
[edit] External links
| |||||||||||||||||||||||||||
| ↑ top of page ↑ | about thumbshots |