Java IoT Authors: Zakia Bouachraoui, Pat Romanski, Elizabeth White, Liz McMillan, Yeshim Deniz

Related Topics: Java IoT

Java IoT: Article



The huge task of creating that great Java application is finally over. Although the product is "user friendly" when up and running, installation has typically been very cumbersome and time consuming. A product that is easy for the layman to install will surely outsell one that isn't.

You must now go back to work. What's needed is a development tool that not only enables applications to be installed easily for the end-user, but is quick and easy for the developer to use as well. What's needed is InstallAnywhere from Zero G Software, Inc. InstallAnywhere enables the creation of a single, universal installer that will operate on any Java-enabled platform. This includes Windows, UNIX and Mac OS. IA tailors itself to the user's system, saving the time and expense of building separate installers for each platform.

Installing IA was an absolute breeze. Anyone who can install basic software off a CD can have IA up and running in a matter of minutes. If you're like me, typing code at a command line all day will start to drive you batty. Here lies another wonderful feature: IA runs entirely in a GUI interface.

When I first opened IA, I was given two choices; an "open existing" option which allowed me to continue working on a previous installer, or a "new" option, which asked me to name the new installer. Upon clicking new, a "quick start" feature greeted me. It then walked me through a seven-step shortcut which made building my installer remarkably easy. The seven steps I had to follow were:
1. Select the "Add files/folders" button
2. Select and add the files to install
3. Select the main class
4. Create a launch Anywhere executable (for Java applications)
5. Switch to the build task (for Java applications)
6. Press the "build installer" button
7. Run my installer

If a simple installer is required, I've found it! I came away amazed at just how easy it is to use this product. If your application requires more complex interactions, fear not. Although the seven-step method can't be used for more complex installations, life will still be much easier using IA.

When I bypassed the "quick start" feature, I thought I was looking at a nicely laid out Web page rather than a powerful application builder. On the left side of the screen, there are seven tasks from top to bottom. When a task is clicked on, a center work field is filled with the various tools pertaining to that task. Let's take a look at each task, and what's involved with each one.

This task displays all the files and directories that will be installed. It is broken down into three panes:

  • File "Hierarchy" and assignment to "Bundles" on the top of the screen. This displays all files and folders that are part of the project. The icons on each file or folder indicate what item will be installed or what action will be taken during the installation process.
  • At the bottom left of the pane is the "Install File/Folder Action Customizer". This allows adjustment of how the file, folder or archive will be installed.
  • Rules List and Customizer: This allows the developer to assign or design custom "rules" or a set of conditions that must be met for an item to be installed.

    This task shows the "Bundles" (functional groups of files) in the installer, along with the "Install sets" each bundle is assigned to. This task also has three panes:

  • The Bundles "Hierarchy" and assignment to "Install Sets." These are used mostly for custom installations so the end-user can choose which groups of files to install.
  • The Bundle Customizer: Shown in the lower left pane, this allows adjustment of various bundle settings.
  • Rules List and Customizer: Allows the same assignment of rules to bundles as to files, as described in the previous section.

    Install Sets
    This task shows the groupings of bundles that comprise the entire installation in your installer. It also has three panes:

  • Install sets list: Shows every install set in your installer. Allows settings for typical and minimal installations, as well as full adjustments to set the defaults for an installation.
  • Install Set Customizer: This setting allows the customizing of four install set settings. Name and Short Name assign a name and abbreviated name to identify your install set. Description provides descriptive help about an install set.
  • The Button section identifies the icon displayed inside each install set. A GIF or JPEG that is 32x32 pixels can be used.
  • Rules List and Rules Customizer: Allows you to assign criteria (rules) to any install set.

    This task allows you to specify five options about the installer being designed:

  • The Operation menu allows you to modify certain basic settings in each installer.
  • The Rules menu assigns criteria that must be met for the installation to run.
  • The Appearance menu allows the assignment of a name and appearance of your installer.
  • The Steps menu assigns the steps to include in the end-users installation process. One option here allows you to choose to install a Java Virtual Machine specifically for the application being installed or to use an existing JVM.
  • The Billboards menu allows you to specify which billboards will be shown and what order they will appear in. Billboards will appear during end-use installation. They may be used to highlight features of the application being installed, or they may provide a set of tips and reminders to the end user. I found this to be a handy feature.

    This task brings up the interface for the IA plug-ins you may be using. Zero G tells us that there are a number of plug-ins under development, including a multi-language kit.

    The Build task allows the specification of what types of installers you want to build and which platforms you want your installer to run on. One of the specifications of this task is the "Delivery" option, which specifies which type of installation you want to build. IA supports two types of installations:

  • CDROM/File server: This creates a folder for each specified platform. Inside each folder is a double-clickable "LaunchAnywhere," an executable that will run the Java installer. Use this type of delivery to build an installer that will be executed from a CD-ROM or a floppy disk. The folder structure is written out to any ISO 9660-compatable CD-ROM drive.
  • Web downloads: This creates a clickable self-extractor for each platform. These contain a copy of the installation with the correct VM for the platform. They can be placed on a server for download.

    View Java
    This task will generate Java code for the installer you have just built. By looking at this, you can see how objects are created and get a good picture of how your installer will work. This is a good feature for the true Java-heads who are just not comfortable unless they can look directly at their source code. The code faithful will be disappointed to learn that the code must be edited outside of IA. Files to be edited must be copied and then opened in an external development environment. The InstallAnywhere Standard Edition, it should be noted, does not support the addition of code outside of the existing IA objects. You would have to move up to InstallAnywhere Commercial Edition, an additional $3000.00 cost, to have this feature. For the extra three grand, you get detailed developer and API documentation and sample code and can use JavaBeans.

    The job of the software developer is to develop products that are easy for the customer to install and use. In today's "we need it yesterday" world, it's good to know that a tool is available that allows quick and easy development of reliable custom installers. Give InstallAnywhere a try. It could help make your task just a bit easier.

  • More Stories By Ed Zebrowski

    Edward Zebrowski is a technical writer based in the Orlando, Florida, area. Ed runs his own Web development company, ZebraWeb

    Comments (0)

    Share your thoughts on this story.

    Add your comment
    You must be signed in to add a comment. Sign-in | Register

    In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.

    IoT & Smart Cities Stories
    Moroccanoil®, the global leader in oil-infused beauty, is thrilled to announce the NEW Moroccanoil Color Depositing Masks, a collection of dual-benefit hair masks that deposit pure pigments while providing the treatment benefits of a deep conditioning mask. The collection consists of seven curated shades for commitment-free, beautifully-colored hair that looks and feels healthy.
    The textured-hair category is inarguably the hottest in the haircare space today. This has been driven by the proliferation of founder brands started by curly and coily consumers and savvy consumers who increasingly want products specifically for their texture type. This trend is underscored by the latest insights from NaturallyCurly's 2018 TextureTrends report, released today. According to the 2018 TextureTrends Report, more than 80 percent of women with curly and coily hair say they purcha...
    The textured-hair category is inarguably the hottest in the haircare space today. This has been driven by the proliferation of founder brands started by curly and coily consumers and savvy consumers who increasingly want products specifically for their texture type. This trend is underscored by the latest insights from NaturallyCurly's 2018 TextureTrends report, released today. According to the 2018 TextureTrends Report, more than 80 percent of women with curly and coily hair say they purcha...
    We all love the many benefits of natural plant oils, used as a deap treatment before shampooing, at home or at the beach, but is there an all-in-one solution for everyday intensive nutrition and modern styling?I am passionate about the benefits of natural extracts with tried-and-tested results, which I have used to develop my own brand (lemon for its acid ph, wheat germ for its fortifying action…). I wanted a product which combined caring and styling effects, and which could be used after shampo...
    The platform combines the strengths of Singtel's extensive, intelligent network capabilities with Microsoft's cloud expertise to create a unique solution that sets new standards for IoT applications," said Mr Diomedes Kastanis, Head of IoT at Singtel. "Our solution provides speed, transparency and flexibility, paving the way for a more pervasive use of IoT to accelerate enterprises' digitalisation efforts. AI-powered intelligent connectivity over Microsoft Azure will be the fastest connected pat...
    There are many examples of disruption in consumer space – Uber disrupting the cab industry, Airbnb disrupting the hospitality industry and so on; but have you wondered who is disrupting support and operations? AISERA helps make businesses and customers successful by offering consumer-like user experience for support and operations. We have built the world’s first AI-driven IT / HR / Cloud / Customer Support and Operations solution.
    Codete accelerates their clients growth through technological expertise and experience. Codite team works with organizations to meet the challenges that digitalization presents. Their clients include digital start-ups as well as established enterprises in the IT industry. To stay competitive in a highly innovative IT industry, strong R&D departments and bold spin-off initiatives is a must. Codete Data Science and Software Architects teams help corporate clients to stay up to date with the mod...
    At CloudEXPO Silicon Valley, June 24-26, 2019, Digital Transformation (DX) is a major focus with expanded DevOpsSUMMIT and FinTechEXPO programs within the DXWorldEXPO agenda. Successful transformation requires a laser focus on being data-driven and on using all the tools available that enable transformation if they plan to survive over the long term. A total of 88% of Fortune 500 companies from a generation ago are now out of business. Only 12% still survive. Similar percentages are found throug...
    Druva is the global leader in Cloud Data Protection and Management, delivering the industry's first data management-as-a-service solution that aggregates data from endpoints, servers and cloud applications and leverages the public cloud to offer a single pane of glass to enable data protection, governance and intelligence-dramatically increasing the availability and visibility of business critical information, while reducing the risk, cost and complexity of managing and protecting it. Druva's...
    BMC has unmatched experience in IT management, supporting 92 of the Forbes Global 100, and earning recognition as an ITSM Gartner Magic Quadrant Leader for five years running. Our solutions offer speed, agility, and efficiency to tackle business challenges in the areas of service management, automation, operations, and the mainframe.