Fixes in NetPhantom 7.00

These are fixes done since version 6.90 Build 6900 in chronological order.

Version 7.00 Build 7180

  • Updated installer program

    The new installer program for Windows.
     

Version 7.00 Build 7176

  • Linux and Windows start-up scripts updated

    Updated the start-up scripts for the Server, Cluster Controller and the License Manager for both Linux and Windows. Files affected are startserver.sh/bat, startcluster.sh/bat and startlicensemanager.sh/bat. The defaults in the Editor for the Cluster Controller command has also been updated.
     

    Version 7.00 RC4 Build 7172

    • NetPhantom Editor fails building very large projects
      When NetPhantom Editor invokes the NetRexx Compiler for very large projects, typically when building a project that merges several other projects, the Windows Command Line becomes too long. This then fails with the error 'Cannot run program "C:\NetPhantom 7 QS\jre8-64\bin\java.exe": CreateProcess error 206: The filename or extension is too long'. This is now fixed to use a response file for the NetRexx sources to compile, written to a temporary file that is deleted when the compile process has completed or failed.
       

    Version 7.00 RC4 Build 7157

    • Multiple fixes
      Several fixes described in short:
      • Editor: Progress Panel could cause thread to hang or not to dispose of window properly.
      • Editor: stop client does not always work, could hang or cause hidden dialog box not to be disposed of (see progress bar problem above).
      • Editor: replaced several interfaces with standard Java ones.
      • Editor: default Debug options for Java had missing space between options --add-modules=ALL-SYSTEM and -ea; the client always failed to start in Debug mode with default options.
      • Client: Windows only code se.entra.phantom.client.Plaf.getHWND(Component) always failed on Java 9 or better, now rewritten to support Java 11 or better. This sometimes caused the client not to be placed on top when launched from the Editor or Eclipse.
      • Client: launch from Editor or Eclipse to run the current application should never attempt to reconnect; it causes problems for the Editor to close it properly.
      • Starter: speed enhancements when updating code for Java versions prior to 8.

       

    Version 7.00 RC4 Build 7146

    • Multiple fixes
      Several fixes described in short:
      • Hanging threads of closed/dead client sessions not cleaned up.
      • Changed NetRexx compile into a Java 8 process.
      • NetPhantom Client: certain frame windows does not display a task bar icon in Windows.
      • NetPhantom Server deadlocks at start under Windows with OpenJDK 8 update 252 if "-Djava.awt.headless=true" is not set.
      • Certificate Wizard for large display zoom (150% or more) was clipped.
      • Configure Project dialog corrected.
      • Publish application definition dialog was clipped when scaled.
      • Removed old code for certificate utilities based on (old and incompatible) BouncyCastle libraries.
      • UI scaling/tweaking for Java 8 (Oracle + Open JDK) and JDK 11+.
      • Changed defaults in PHANTOM.INI.
      • Added update of .classpath at installation.
      • Updated .classpath of distributed projects.
      • Conversion of projects from Java 7 to 8.
      • ntservice\is.bat command corrected for spaces in installation directory: also made more robust.
      • Removed modification of Nimbus L&F for insets, dimensions and integers.
      • Nimbus L&F class name in Editor display settings (internally it was com... instead of javax.swing...).
      • Fixed up display resolution scaling and different Look-and-Feel's in Designer from the Windows default in the Editor.
      • Changed HTTP reply 303 (see other) to 301 (moved permanently) for redirection of HTTP to HTTPS.
      • Fixed wrong text in Welcome panel for Editor.
      • Added missing Advanced panel in Configure Base for Editor.
      • SSL server socket fails creation if configuration has multiple identities with different passwords.
      • NetPhantom Client SSL did not check for X.509 certificate alternative names when matching the host name of a server.
      • Display resolution problems.
      • Editor Progress Panel too small, didn't handle scaling.
      • Java2D sample not running with Java 11 or better.
      • Combobox arrow width incorrect.
      • Logger could encounter an internal error (NullPointerException) due to invalid EventID.EVENTCLASS_* parameter.
      • Caret size not scaled for entry capable components.
      • Corrected Java versions in projects and for compiling Java.
      • Client connection to secure server "padlock" image not scaled.
      • EclipseInstallation look-up of JRE paths could fail.
      • Wrong path in Samples Workspace ".classpath" files update after installation.
      • New Project and Import Project for older Phantom/NetPhantom versions.
      • NetPhantom Client for macOS using Java 8 and Java 9 or better.
      • Cleaned up and modernized PhantomFile, using Java NIO.
      • Cleaned up and modernized FontManager.
      • Cleaned up code after Compile Distribution for NetPhantom 5.

       

    Version 7.00 RC3 Build 7005

    • Editor: Display resolution dialog box
      The dialog box for "Display resoltion" made it possible to select radio buttons in both "Factor" and "DPI" as if it was 2 separate groups. You can now only select one of the radio buttons at a time in "Factor" and "DPI".
       
    • Color chooser
      The Color chooser component, used in the Client to set the terminal colors, and also in the Editor for terminal colors and console colors had font size errors when display resolution scaling was not 100%.
       
    • SSL parameter configuration for TLSv1.0 and TLSv1.1
      The dialog box for SSL parameter configuration now has the options to suppress TLSv1.0 and TLSv.1.1.
       

    Version 7.00 RC1 Build 6999

    • Regression errors
      Several regression errors corrected:
      • HeadlessException throws when running headless under Linux.
      • Several code changes when code was rewritten to use a function rather than a Runnable.
      • Logging could product IndexOutOfBoundsException.

       

    Version 7.00 RC1 Build 6998

    • Right justified text prompts sometimes loses last pixel in text
      Typically under Nimbus Look-and-Feel, right justified static and output texts could lose the last pixel of some texts (not all). This was due to a rounding error where string widths were calculated with Integers rather than with Doubles (LineMetrics and Graphics2D).
       
    • Fixed scaling of Look-and-Feels (again due to more errors -- sometimes!)
      Menus, menu items, checkboxes, radio buttons and HTML text could sometimes have the wrong scaled font, it looked like the original font was scaled twice. Message boxes sometimes also presented the same font problem, depending on system or chosen font scaling.
       

    Version 7.00 RC1 Build 6997

    • Sample SwingSet got NullPointerException when changing Look-and-Feel
      Choosing another Look-and-Feel in the SwingSet sample application caused a NullPointerException and the window content was not updated to the selected Look-and-Feel.
       
    • Sample SwingSet did not have Nimbus Look-and-Feel option
      The Nimbus Look-and-Feel was not present in the menu items of the Look-and-Feel menu.
       

    Version 7.00 RC1 Build 6996

    • Fixed scaling of Look-and-Feels
      What remains as a problem is in the Nimbus Look-and-Feel. Scaling is not solved for e.g. checkbox and radio buttons icons, as well as the title bar in internal frames being drawn incorrectly. For scaling's between 125% to 150% it is acceptable, but when scaling goes to 200% or more, the incorrect drawing becomes quite apparent, and the checkboxes and radio buttons much too small (because they are not scaled).
       

    Version 6.90 Build 6980

    • NetPhantom License Manager will not start
      When starting, NetPhantom License Manager gets a NullPointerException thrown. This is a regression problem.
       
    • Samples configured for minimum Java 8
      All samples are now configured and compiled for a server running Java 8.
       
    • Failure signing Jar files with timestamp
      If the timestamp was not set to e.g. "http[s]://sha1timestamp.ws.symantec.com/sha1/timestamp", "http[s]://sha256timestamp.ws.symantec.com/sha256/timestamp" or "http[s]://timestamp.geotrust.com/tsa", the signing of Jar files from the Editor would fail. The signing timestamp URL is now automatically changed to "http://timestamp.digicert.com" at signing time, no changes required in the NetPhantom project settings, although it is recommeded.
       

Version 6.90 Build 6974

  • NetPhantom Starter 64-bit launcher
    The launcher for NetPhantom Starter (with or without SSL) in 64-bit was a 32-bit executable that only used 32-bit Java VM's. A new installation program with support for 64-bit is now used.
     

Version 6.90 Build 6970

  • Class loader for Web Server CGI's failure
    Using Java version 1.8 build 151 or better (e.g. version 9, 10, 11...), the class loader for CGI Web Server definitions could fail to load classes, typically if there were Jars, directories in Jars, or Jars-in-Jars specified.
     

Version 6.90 Build 6940

  • Applications in browser doesn't load the standard NetPhantom images
    Regression: the ServerAdmin among other programs running inside or outside the browser doesn't load the images because the NetPhantomClientImages.jar file was missing from the classpath. Other image files in Jars could also fail to be loaded. Running as JNLP works fine however.
     
  • Exiting applet shows "No connection" with small font
    Font scaling is not applied for high resolution screens when the applet is closed for the text "No connection".
     

Version 6.90 Build 6934

  • New System Code Signing Certificate
    A new system certificate is now used for NetPhantom code and also available when compiling applications. This certificate is issued by Symantec/DigiCert and is valid until February 2022. It is also used for NetPhantomClientImages.jar and auto-client.jar files in compiled applications.
     

Version 6.90 Build 6932

  • Samples configured for minimum Java 7
    All samples are now configured and compiled for a server running Java 7.
     

Version 6.90 Build 6921

  • Application panel focus
    When opening a internal panel in an application panel, the focus was not set initially.
     
  • Samples configured for minimum Java 7
    All samples are now configured and compiled for a server running Java 7.
     

Version 6.90 Build 6908

  • Failed to delete the Global Analytics HTML code file
    The error message "Failed to delete the Global Analytics HTML code file" was sometimes shown when no global HTML code is present when the Web server configuration.
     
  • Invalid ClassLoader for CGI definitions
    The ClassLoader was not correctly created for newer versions of Java for CGI definitions, typically if it contained e.g. a Jar file plus a directory (e.g. "path/file.jar!/bin/"). This resulted in a class not being able to load (ClassNotFoundException).
     
  • Combobox and Spin button
    The Combobox and Spin button components were not correctly rendered under Java version 9 and later.
     

Version 6.90 Build 6906

  • Redirection of HTTP to HTTPS
    When the server is configured for HTTP redirection to HTTPS, it redirected every GET/POST HTTP request. This could cause a NetPhantom Client not to load images properly if it was hardcoded to use an unsecure HTTP connection. It also cause the License Activation to display a message with the HTTP error "303 See Other" and did not follow the reply URL to follow.
     

Version 6.90 Build 6904

  • Help files under Windows 10 doesn't work
    Added *.CHM files required for the help system to work with Windows 10.
     
  • SSL Host Name certificate host name verification
    If a certificate is issued to e.g. "www.netphantom.com" that also could imply "netphantom.com", the NetPhantom Client shows a warning message that the host name "netphantom.com" doesn't match "www.netphantom.com". This could be corrected by setting the server HOST address correctly to e.g. "www.netphantom.com". This fix also enables setting the server HOST address to e.g. "netphantom.com" also. Certain certificates could also contain multiple "CN=hostname" entries, and this is now correctly handled.