Migrating Java UI Client Applications to Openjdk 11 25Th October, 2018

Total Page:16

File Type:pdf, Size:1020Kb

Migrating Java UI Client Applications to Openjdk 11 25Th October, 2018 Migrating Java UI Client Applications to OpenJDK 11 25th October, 2018 Phil Race, Sergey Bylokhov, Java Platform Group Copyright © 2018, Oracle and/or its affiliates. All rights reserved. | Safe Harbor Statement The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, timing, and pricing of any features or functionality described for Oracle’s products may change and remains at the sole discretion of Oracle Corporation. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. | Introduction • Lots of things have changed between 8u to 11 – For lots of different reasons. • Most desktop applications are still using JDK8u • Most applications will want to move to 11u and later soon as JDK 8 End Of Public Updates occurs for commercial and personal use. • This session is to help you understand what has changed that affects UI client applications, and what steps you can (or must) take to move your code to JDK 11 and later. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. | 3 Topics • OpenJDK and Oracle JDK • Desktop application migration issues in JDK11 • JavaFX removal from JDK11 • The deployment technologies removal from JDK11 Copyright © 2018, Oracle and/or its affiliates. All rights reserved. | 4 Oracle JDK and OpenJDK • OpenJDK project launched by Sun Microsystems in 2007 • All OpenJDK source had to be under an Open Source license – GPL v2 (+/- ClassPath Exception) where possible. • Lots of component code could not be so-licensed – Eg 3rd party commercially licensed libraries – Stayed as closed sources – Open source alternatives not used by Sun (now Oracle) JDK, only by OpenJDK • Plugin + Webstart not included in OpenJDK – closed source • JavaFX not part of OpenJDK – even when it became open source. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. | 5 Oracle JDK and OpenJDK • JDK7 was the first simultaneous release of both. • OpenJDK was a source code project – no binaries except an RI build. • Most users want binaries so still download and use Sun / Oracle JDK – Oracle JDK 7 ”behaviourally” compatible with previous releases, since it uses the same closed source components as before – Included Plugin + Webstart deployment technologies – Included JavaFX – And it was free (of charge) for commercial enterprise use etc. – Free update support of feature releases for several years – All still the case for JDK 8u (to date, but will be changing). Copyright © 2018, Oracle and/or its affiliates. All rights reserved. | 6 Oracle JDK and OpenJDK • Upshot of the preceding is that – Not many applications tested against OpenJDK – Few applications deployed on OpenJDK – Oracle focused on testing Oracle JDK • This is now all changing. – Oracle JDK is converging on OpenJDK in JDK 11 – Closed source components dropped • And this is against the backdrop of other disruptive changes which can affect applications Copyright © 2018, Oracle and/or its affiliates. All rights reserved. | 7 Changes in Oracle JDK 11 internals due to convergence with OpenJDK • Font Rasterization: T2K -> freetype • Lucida fonts removed. • Anti-aliased rendering : Ductus -> Marlin • JPEG encoding & decoding : Removal of closed libjpeg enhancements • Image processing -> Kodak CMS -> Little CMS – Removal of proprietary ICC profiles : impacts on color space conversion • Other updates : – Complex Text Layout : ICU -> harfbuzz • More info on some of these in upcoming slides. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. | 8 Changes in Oracle JDK 11 due to features etc • Java Module System (jigsaw) • 32 bit JDK is no more – no “client” VM , only “server” VM, startup time impacted, larger footprint. • HiDPI support for Windows (and Linux although less of a common client problem). Copyright © 2018, Oracle and/or its affiliates. All rights reserved. | 9 What are the potential impact of changes ? • Source code incompatiBilities • Binary incompatiBilities (!) • Module system impact • Behavioural changes • Performance changes • Removal of components / functionality • New features which require you to update your code for the best results. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. | 10 Text Rendering, Measurement and Performance • Some releases / builds of freetype are not consistent in text measurement across rendering modes • Freetype rasterization seems to be slower than T2K (investigation TBD). • JDK 11 uses the platform (system) installed freetype on Solaris & Linux, but a JDK bundled one on Mac and Windows • System freetype means it should render similarly to native apps (a +) • But may be different from the bundled version (a - ?) Copyright © 2018, Oracle and/or its affiliates. All rights reserved. | 11 Text Rendering, Measurement and Performance • We know from many discussions that Text Quality is – a) important – b) subjective. • Oracle JDK 11 now uses freetype (open source) instead of the closed source T2K rasterizer • T2K was not perfect as we know from many complaints, but – sometimes better the devil you know • Outside of bi-level instructed hinting there is no strict specification of how an OpenType rasterizer should behave. – So freetype may just be “different”, not wrong. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. | 12 Text Rendering, Measurement and Performance • Layout of Complex Text (Arabic, Indic, Thai, etc) – All releases / JDKs up to and including JDK 8u use “ICU” for opentype layout – JDK 9 and above all use “harfbuzz” – Both are open source, but harfbuzz is newer and maintained, supports far more features, is more secure etc. – Harfbuzz theoretically should be at least “as fast” as ICU, but some teething troubles • Known performance regressions in an area that is quite performance sensitive. • Working on isolating these issues. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. | 13 Lucida fonts removed from Oracle JDK 11 • Lucida Sans/Bright/Console have been shipped since JDK 1.2 • Many apps use them directly because they are always there – Except now they aren’t • Typically you will fall back to Dialog – using a Sans font instead of – getting a fixed width font when asking for Lucida Console – getting a Serif font when asking for Lucida Bright • Lucida Sans supported Arabic & Thai & Devanagari – Used as a fallback for logical fonts – Now without it you may get missing glyphs (blank space, or boxes) Copyright © 2018, Oracle and/or its affiliates. All rights reserved. | 14 JPEG reading & writing • If you haven’t already migrated from com.sun.jpeg.codec to javax.imageio do so now ! – The old non-standard one is completely removed • Oracle JDK used Kodak proprietary extensions to IJG JPEG to support additional color spaces. – These are removed. Use open source versions, system library where available – Most likely impact is that Oracle JDK previously would read and write 4 component ARGB images. Now these are rejected. – Applications will need to convert images to 3 component RGB to write them or use PNG encoding instead to keep transparency. – No good answer for reading but likely only JDK created such images. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. | 15 Image Processing • Closed source Kodak CMS was replaced by default with open source Little CMS for color space conversion of images. • Both shipped until JDK 10. Non-advertised system property to use KCMS • Existence proof of apps (pdfbox) that reQuest KCMS explicitly • Why ? When LCMS is modern and up to date? • Performance – KCMS would spawn up to 4 native threads to partition the work. Helps a lot on large images. • No immediate likelihood of LCMS doing the same so what can you do? Copyright © 2018, Oracle and/or its affiliates. All rights reserved. | 16 Image Processing – cont’d. • Application can process subimages in separate threads. • Split large image into bands and process concurrently int w = image.getWidth(null); int sub_hgt = image.getHeight(null) / 4; // Simplifying assumption hgt is multiple of 4 int y = 0; for (int i=0; i<sub_hgt; i++) { subImage[i] = image.getSubImage(0, i*sub_hgt, w, sub_hgt); processImageOnNewThread(i); // need to “join” to make sure all work is complete. } public void run() { // Runnable body new ColorConvertOp(null).filter(subImage[i], resImage[i]); } Copyright © 2018, Oracle and/or its affiliates. All rights reserved. | 17 Image Processing – cont’d. • ColorSpace conversion doesn’t use just a library – ICC Color profiles are data that define that characteristic of a color space. – JDK ships with profiles for common color spaces • sRGB, Linear RGB, Grayscale, PhotoYCC, CIEXYZ • JDK 11 removed those used since JDK 1.2 which were licensed under a commercial contract. – Replaced with ones that can be used in open source. • Color space conversion results will not be exactly as before. – Most applications won’t notice, either don’t use it or are not sensitive to the differences. Copyright © 2018, Oracle and/or its affiliates. All rights reserved. | 18 Marlin anti-aliasing rasterizer • Marlin is a fork of the old OpenJDK Pisces rasterizer – Developed and maintained by an open source contributor, Laurent Bourges • Replaces old closed source Ductus Rasterizer as of JDK 9 – Mostly Java code but heavily tuned for performance – Much better multi-threaded performance
Recommended publications
  • Workforce Management Web
    Workforce Management Web 8.5.214.14 9/23/2021 8.5.214.14 8.5.214.14 Workforce Management Web Release Notes Release Date Release Type Restrictions AIX Linux Solaris Windows 05/08/19 General X X Contents • 1 8.5.214.14 • 1.1 Helpful Links • 1.2 What's New • 1.3 Resolved Issues • 1.4 Upgrade Notes • 1.5 Supported Languages Workforce Management Web 2 8.5.214.14 What's New Helpful Links This release includes the following new features and enhancements: Releases Info • WFM Web for Supervisors includes a redesigned Forecast module, • List of 8.5.x Releases enabling access to existing forecasting functionality and features, but with many user-friendly enhancements, wizards, and tools. Web for • 8.5.x Known Issues Supervisors (Classic) Forecast module is still supported and available. Note: The Forecast module is currently available only in English. (WFM-28004) Product Documentation • AI-powered Forecasting is introduced in the redesigned Forecast module, providing a sophisticated, automated build method that uses the best of best forecasting algorithms provided through Genesys Workforce Management hosted cloud infrastructure. For information about how to use this build method, see Building Volumes in the Workforce Management Genesys Products Supervisor Help.(WFM-28004) List of Release Notes • The Workforce Management Supervisor Help is a context-sensitive Help that describes the new Forecast interface, including topics that describe the Forecast Scenario and Master Forecast views, and procedures that describe forecasting tasks. The Workforce Management Supervisors (Classic) Help is still available. (WFM-29230) • The Overlays view in the new WFM Web Forecast interface is enhanced, enabling supervisors to adjust Spread over distribution to 15 or 30 minutes (in addition to 60).
    [Show full text]
  • Making Speech Recognition Work on the Web Christopher J. Varenhorst
    Making Speech Recognition Work on the Web by Christopher J. Varenhorst Submitted to the Department of Electrical Engineering and Computer Science in partial fulfillment of the requirements for the degree of Masters of Engineering in Computer Science and Engineering at the MASSACHUSETTS INSTITUTE OF TECHNOLOGY May 2011 c Massachusetts Institute of Technology 2011. All rights reserved. Author.................................................................... Department of Electrical Engineering and Computer Science May 20, 2011 Certified by . James R. Glass Principal Research Scientist Thesis Supervisor Certified by . Scott Cyphers Research Scientist Thesis Supervisor Accepted by . Christopher J. Terman Chairman, Department Committee on Graduate Students Making Speech Recognition Work on the Web by Christopher J. Varenhorst Submitted to the Department of Electrical Engineering and Computer Science on May 20, 2011, in partial fulfillment of the requirements for the degree of Masters of Engineering in Computer Science and Engineering Abstract We present an improved Audio Controller for Web-Accessible Multimodal Interface toolkit { a system that provides a simple way for developers to add speech recognition to web pages. Our improved system offers increased usability and performance for users and greater flexibility for developers. Tests performed showed a %36 increase in recognition response time in the best possible networking conditions. Preliminary tests shows a markedly improved users experience. The new Wowza platform also provides a means of upgrading other Audio Controllers easily. Thesis Supervisor: James R. Glass Title: Principal Research Scientist Thesis Supervisor: Scott Cyphers Title: Research Scientist 2 Contents 1 Introduction and Background 7 1.1 WAMI - Web Accessible Multimodal Toolkit . 8 1.1.1 Existing Java applet . 11 1.2 SALT .
    [Show full text]
  • Exploiting SAS Software Using Java Technology
    Exploiting SAS® Software Using Java™ Technology Barbara Walters, SAS Institute Inc., Cary, NC Java programs are often delivered via the Internet. In order to protect the local machine from malicious programs, the Java language and the JVM Abstract provide a secure environment for application execution. The secure This paper describes how to use Java™ technology with SAS software. environment ensures that the client machine (the machine where the SAS Institute currently offers several Java development tools that allow browser is running) is not corrupted by the downloaded program and that applications to access SAS data and take advantage of SAS no information is stolen from the client machine. computational capabilities. This paper describes how to use these class libraries and address client/server configuration and performance Java security is based upon the “sandbox” model. The sandbox is the issues. set of resources (threads, socket connections, local files, etc.) that the downloaded Java code is allowed to access. The code is restricted from accessing resources outside of its sandbox. In executing Java applets, Introduction each Web browser defines the limits of the sandbox. Since its introduction in mid-1995, Java have become an integral part of The Security Manager enforces the limits of the sandbox. For applets, the World Wide Web. Java is a rich programming language that enables the Web browser controls the Security Manager. Each browser may put Web programmers to create sophisticated and responsive client/server different restrictions on applet behavior. The default limits imposed by applications. Because Java is portable and secure, users of Web the Security Manager are: applications can be confident that those applications will execute • Classes cannot access the local file system properly and not corrupt their computers.
    [Show full text]
  • Applets, Servlets and JSP
    Java Programming : applets, servlets and JSP. SR03 Dritan Nace A summary of Java Java is a language developed by Sun, which is designed to be object oriented and Simple, robust and secure, independent of hardware architectures and Multitasking. Object oriented and simple : Simpler than C++, transparent memory managment… Robust et secure : Data typing is extremely strict. For applets, it is in principle impossible to access the resources of the host machine. Independant of hardware architectures : The compiler generates a universal code : the « byte-code ». An interpreter which is specific to the host machine, « virtual machine », executes the programs. Multitasking : Java seemingly allows execution of several processes. In reality, a time slot is given to each process on the processor (Multithreaded). J2SE versus J2EE J2SE (standard edition) contains the basic usable components from both the client and server side, – GUI, AWT/Swing for applications (client) or applets. Currently J2SE v1.6 (ou V6) J2EE (enterprise edition), is in a certain sense an extension of SE, designed for server side programming – Servlets, JSP, EJB, etc. • Currently J2EE v1.4 Java and object oriented programming • Classes, and objects – The objects include data and processing for the data. Communication is done via messages (methods). – A class corresponds to an abstract model for object construction. A class is made up of: • attributes (static part) • Methods (dynamic part), which define the behaviour. – Inheritance : the « is a » relationship : a car is a vehicule, – Polymorphism : the same message can be recognised by several objects and entail different behaviour. Portability: JVM The compiler compiles the java source in byte code : javac car.java => car.class Then, java is the name of the program which will interpret the generated byte code.
    [Show full text]
  • International Language Environments Guide
    International Language Environments Guide Sun Microsystems, Inc. 4150 Network Circle Santa Clara, CA 95054 U.S.A. Part No: 806–6642–10 May, 2002 Copyright 2002 Sun Microsystems, Inc. 4150 Network Circle, Santa Clara, CA 95054 U.S.A. All rights reserved. This product or document is protected by copyright and distributed under licenses restricting its use, copying, distribution, and decompilation. No part of this product or document may be reproduced in any form by any means without prior written authorization of Sun and its licensors, if any. Third-party software, including font technology, is copyrighted and licensed from Sun suppliers. Parts of the product may be derived from Berkeley BSD systems, licensed from the University of California. UNIX is a registered trademark in the U.S. and other countries, exclusively licensed through X/Open Company, Ltd. Sun, Sun Microsystems, the Sun logo, docs.sun.com, AnswerBook, AnswerBook2, Java, XView, ToolTalk, Solstice AdminTools, SunVideo and Solaris are trademarks, registered trademarks, or service marks of Sun Microsystems, Inc. in the U.S. and other countries. All SPARC trademarks are used under license and are trademarks or registered trademarks of SPARC International, Inc. in the U.S. and other countries. Products bearing SPARC trademarks are based upon an architecture developed by Sun Microsystems, Inc. SunOS, Solaris, X11, SPARC, UNIX, PostScript, OpenWindows, AnswerBook, SunExpress, SPARCprinter, JumpStart, Xlib The OPEN LOOK and Sun™ Graphical User Interface was developed by Sun Microsystems, Inc. for its users and licensees. Sun acknowledges the pioneering efforts of Xerox in researching and developing the concept of visual or graphical user interfaces for the computer industry.
    [Show full text]
  • Development Production Line the Short Story
    Development Production Line The Short Story Jene Jasper Copyright © 2007-2018 freedumbytes.dev.net (Free Dumb Bytes) Published 3 July 2018 4.0-beta Edition While every precaution has been taken in the preparation of this installation manual, the publisher and author assume no responsibility for errors or omissions, or for damages resulting from the use of the information contained herein. This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. To get an idea of the Development Production Line take a look at the following Application Integration overview and Maven vs SonarQube Quality Assurance reports comparison. 1. Operating System ......................................................................................................... 1 1.1. Windows ........................................................................................................... 1 1.1.1. Resources ................................................................................................ 1 1.1.2. Desktop .................................................................................................. 1 1.1.3. Explorer .................................................................................................. 1 1.1.4. Windows 7 Start Menu ................................................................................ 2 1.1.5. Task Manager replacement ........................................................................... 3 1.1.6. Resource Monitor .....................................................................................
    [Show full text]
  • CDC: Java Platform Technology for Connected Devices
    CDC: JAVA™ PLATFORM TECHNOLOGY FOR CONNECTED DEVICES Java™ Platform, Micro Edition White Paper June 2005 2 Table of Contents Sun Microsystems, Inc. Table of Contents Introduction . 3 Enterprise Mobility . 4 Connected Devices in Transition . 5 Connected Devices Today . 5 What Users Want . 5 What Developers Want . 6 What Service Providers Want . 6 What Enterprises Want . 6 Java Technology Leads the Way . 7 From Java Specification Requests… . 7 …to Reference Implementations . 8 …to Technology Compatibility Kits . 8 Java Platform, Micro Edition Technologies . 9 Configurations . 9 CDC . 10 CLDC . 10 Profiles . 11 Optional Packages . 11 A CDC Java Runtime Environment . 12 CDC Technical Overview . 13 CDC Class Library . 13 CDC HotSpot™ Implementation . 13 CDC API Overview . 13 Application Models . 15 Standalone Applications . 16 Managed Applications: Applets . 16 Managed Applications: Xlets . 17 CLDC Compatibility . 18 GUI Options and Tradeoffs . 19 AWT . 19 Lightweight Components . 20 Alternate GUI Interfaces . 20 AGUI Optional Package . 20 Security . 21 Developer Tool Support . 22 3 Introduction Sun Microsystems, Inc. Chapter 1 Introduction From a developer’s perspective, the APIs for desktop PCs and enterprise systems have been a daunting combination of complexity and confusion. Over the last 10 years, Java™ technology has helped simplify and tame this world for the benefit of everyone. Developers have benefited by seeing their skills become applicable to more systems. Users have benefited from consistent interfaces across different platforms. And systems vendors have benefited by reducing and focusing their R&D investments while attracting more developers. For desktop and enterprise systems, “Write Once, Run Anywhere”™ has been a success. But if the complexities of the desktop and enterprise world seem, well, complex, then the connected device world is even scarier.
    [Show full text]
  • PTOCA Reference (Presentation Text Object Content Architecture
    Advanced Function Presentation Consortium Data Stream and Object Architectures Presentation Text Object Content Architecture Reference AFPC-0009-03 Note: Before using this information, read the information in “Notices” on page 171. AFPC-0009-03 Fourth Edition (March 2016) This edition applies to the Presentation Text Object Content Architecture (PTOCA). It is the first edition produced by the AFP Consortium™(AFPC™) and replaces and makes obsolete the previous edition, SC31-6803-02, published by the IBM® Corporation. This edition remains current until a new edition is published. Specific changes are indicated by a vertical bar to the left of the change. For a detailed list of the changes, see “Summary of Changes” on page ix. Internet Visit our home page: www.afpcinc.org Copyright © AFP Consortium 1997, 2016 ii Preface This book describes the functions and services associated with the Presentation Text Object Content Architecture (PTOCA) architecture. This book is a reference, not a tutorial. It complements individual product publications, but does not describe product implementations of the architecture. Who Should Read This Book This book is for systems programmers and other developers who need such information to develop or adapt a product or program to interoperate with other presentation products. Copyright © AFP Consortium 1997, 2016 iii AFP Consortium AFP Consortium (AFPC) The Advanced Function Presentation™(AFP™) architectures began as the strategic, general purpose document and information presentation architecture for the IBM Corporation. The first specifications and products go back to 1984. Although all of the components of the architecture have grown over the years, the major concepts of object-driven structures, print integrity, resource management, and support for high print speeds were built in from the start.
    [Show full text]
  • Javafx in Action by Simon Morris
    Covers JavaFX v1.2 IN ACTION Simon Morris SAMPLE CHAPTER MANNING JavaFX in Action by Simon Morris Chapter 1 Copyright 2010 Manning Publications brief contents 1 ■ Welcome to the future: introducing JavaFX 1 2 ■ JavaFX Script data and variables 15 3 ■ JavaFX Scriptcode and structure 46 4 ■ Swing by numbers 79 5 ■ Behind the scene graph 106 6 ■ Moving pictures 132 7 ■ Controls,charts, and storage 165 8 ■ Web services with style 202 9 ■ From app to applet 230 10 ■ Clever graphics and smart phones 270 11 ■ Best of both worlds: using JavaFX from Java 300 appendix A ■ Getting started 315 appendix B ■ JavaFX Script: a quick reference 323 appendix C ■ Not familiar with Java? 343 appendix D ■ JavaFX and the Java platform 350 vii Welcome to the future: introducing JavaFX This chapter covers ■ Reviewing the history of the internet-based application ■ Asking what promise DSLs hold for UIs ■ Looking at JavaFX Script examples ■ Comparing JavaFX to its main rivals “If the only tool you have is a hammer, you tend to see every problem as a nail,” American psychologist Abraham Maslow once observed. Language advocacy is a popular pastime with many programmers, but what many fail to realize is that programming languages are like tools: each is good at some things and next to useless at others. Java, inspired as it was by prior art like C and Smalltalk, sports a solid general-purpose syntax that gets the job done with the minimum of fuss in the majority of cases. Unfortunately, there will always be those areas that, by their very nature, demand something a little more specialized.
    [Show full text]
  • The Design and Performance of Medjava
    The following paper was originally published in the Proceedings of the 4th USENIX Conference on Object-Oriented Technologies and Systems (COOTS) Santa Fe, New Mexico, April 27-30, 1998 The Design and Performance of MedJava Prashant Jain, Seth Widoff, and Douglas C. Schmidt Washington University For more information about USENIX Association contact: 1. Phone: 510 528-8649 2. FAX: 510 548-5738 3. Email: [email protected] 4. WWW URL:http://www.usenix.org/ The Design and Performance of MedJava A Distributed Electronic Medical Imaging System Developed with Java Applets and Web Tools Prashant Jain, Seth Widoff, and Douglas C. Schmidt g fpjain,sbw1,schmidt @cs.wustl.edu Department of Computer Science Washington University St. Louis, MO 63130, (314) 935-4215 th This paper appeared in the 4 USENIX Conference on performance-sensitive distributed applications where C and Object-Oriented Technologies and Systems (COOTS), Sante C++ are currently used. Fe, New Mexico, April 1998. Abstract 1 Introduction The Java programming language has gained substantial popu- Medical imaging plays a key role in the development of a reg- larity in the past two years. Java’s networking features, along ulatory review process for radiologists and physicians [1]. The with the growing number of Web browsers that execute Java demand for electronic medical imaging systems (EMISs) that applets, facilitate Internet programming. Despite the popu- allow visualization and processing of medical images has in- larity of Java, however, there are many concerns about its ef- creased significantly [2]. The advent of modalities, such as ficiency. In particular, networking and computation perfor- angiography, CT, MRI, nuclear medicine, and ultrasound, that mance are key concerns when considering the use of Java to acquire data digitally and the ability to digitize medical images develop performance-sensitive distributed applications.
    [Show full text]
  • Home Java Plugin Detector Java (Using <Applet> And/Or <Object> Tag
    22/05/12 Java plugin detection with PluginDetect Home Java Plugin Detector Java (using <applet> and/or <object> tag) installed & enabled: true Highest Installed Java Version: 1,6,0,31 Java 1,6,0,10 or higher (using <applet> and/or <object> tag) is installed & enabled. Java detection: completed ON THE FLY (OTF) Deployment Toolkit browser plugin installed & enabled: false Next-Generation Java Plugin2 installed & enabled: true Java vendor: Sun Microsystems Inc. Java plugin name: Java(TM) Platform SE 6 U31 Java plugin description: Next Generation Java Plug-in 1.6.0_31 for Mozilla browsers navigator.javaEnabled(): true [This detector is capable of OTF & NOTF Java detection. Detection occurs before window.onload event has fired.] [window.onload event has fired successfully.] [ The plugin detector(s) in this web page use the following: PluginDetect_Java.js, detectJava_OTF_NOTF.js, getJavaInfo.jar ] Download PluginDetect and the jarfile here... In order to do Java detection, you will need 2 things: 1) download the getJavaInfo.jar applet along with a few Java detection examples. The jarfile (Java ARchive file) is used by PluginDetect in order to accomplish Java detection. 2) download the PluginDetect script itself. The PluginDetect script generator will allow you to customize the PluginDetect script to include whatever features you desire. That being said, I would still recommend that you read thru most of this page before creating your own Java detection code. A brief introduction to Java detection PluginDetect uses a number of different methods when trying to detect Java in your browser. These Java detection methods can be divided into 2 groups: a) the non-applet methods and b) the applet methods.
    [Show full text]
  • Java on Solaris 7 Developer's Guide
    Java on Solaris 7 Developer’s Guide Sun Microsystems, Inc. 901 San Antonio Road Palo Alto, CA 94303-4900 U.S.A. Part No: 805-4031–10 October, 1998 Copyright 1998 Sun Microsystems, Inc. 901 San Antonio Road, Palo Alto, California 94303-4900 U.S.A. All rights reserved. This product or document is protected by copyright and distributed under licenses restricting its use, copying, distribution, and decompilation. No part of this product or document may be reproduced in any form by any means without prior written authorization of Sun and its licensors, if any. Third-party software, including font technology, is copyrighted and licensed from Sun suppliers. Parts of the product may be derived from Berkeley BSD systems, licensed from the University of California. UNIX is a registered trademark in the U.S. and other countries, exclusively licensed through X/Open Company, Ltd. Sun, Sun Microsystems, the Sun logo, SunSoft, SunDocs, SunExpress, JavaSoft, Java,Java WorkShop,JDK and Solaris are trademarks, registered trademarks, or service marks of Sun Microsystems, Inc. in the U.S. and other countries. All SPARC trademarks are used under license and are trademarks or registered trademarks of SPARC International, Inc. in the U.S. and other countries. Products bearing SPARC trademarks are based upon an architecture developed by Sun Microsystems, Inc. The OPEN LOOK and SunTM Graphical User Interface was developed by Sun Microsystems, Inc. for its users and licensees. Sun acknowledges the pioneering efforts of Xerox in researching and developing the concept of visual or graphical user interfaces for the computer industry. Sun holds a non-exclusive license from Xerox to the Xerox Graphical User Interface, which license also covers Sun’s licensees who implement OPEN LOOK GUIs and otherwise comply with Sun’s written license agreements.
    [Show full text]