• Home
  • Events
  • About
  • JavaOne 2008: Canoo @ booth no. 429

    April 29th, 2008

    Canoo is exhibiting at booth no. 429 at this year’s JavaOne. Please feel free to stop by to say hello.

    Some of the highlights at the booth (besides Swiss chocolate) include:

    • How to build an enterprise-class RIA in five minutes using Canoo’s RIA library, UltraLightClient.
    • A Canoo customer will demo their Enterprise Web application at the Canoo booth.

    And don’t miss the Canoo technical session:
    Dierk Koenig and Mike Mannion are speaking on “Going Mobile with JavaFX Script Technology, Groovy, and Google Android” (Session ID: TS-5815 on Wednesday, May 07, 10:50 – 11:50).

    Share and Enjoy: These icons link to social bookmarking sites where readers can share and discover new web pages.
    • email
    • Print
    • Twitter
    • LinkedIn
    • XING
    • Facebook
    • Google Bookmarks

    The big easy

    April 25th, 2008

    This post describes how much easier it is to write applications with UltraLightClient ’08 ( ultra easy, to repeat a recurring phrase). Unlike the previous posts in this series, this post focuses on use cases instead of features. You can find the previous posts discussing the new features in the upcoming UltraLightClient ’08 release in the UltraLightClient category of this blog.

    UltraLightClient 08

    I will cover the following use cases in this post:

    For each use case, I will flash back to the current version to highlight how the new release will make the overall development process smoother.

    How to setup a new project in Eclipse

    Start the project wizard that is installed as part of the UltraLightClient ’08 release. The project wizard guides you through the process of setting up a new Eclipse project.

    How it was before
    Create a new Java project. Copy all relevant libraries into your project. Attach source code for these libraries.
    If your project requires client-side code, things become even more complex. Create a new extension project and connect it to your application project. Again, copy all relevant extension libraries into your extension project and attach the source code.

    How to start with application development

    The new project wizard helps you start application development. Besides the projects, the wizard creates an end-to-end sample application that you can use as a kick start. End-to-end means from user interface to the database! The sample application contains best practices that evolved from a lot of UltraLightClient projects.
    Learn from the success of others!

    How it was before
    Read a lot of documentation. Start coding. Learn from your errors. Read the postings in the mailing lists. Continue coding. Learn again from your errors. While you get more experienced you will notice recurring patterns. After a while you are able to distinguish the good patterns from the ugly ones.

    How to web enable my application

    Nothing to do at all! The new project wizard has already prepared your project for web deployment. The only thing left to do, is to export your project as a WAR file! And as a bonus you can deploy and run your web-enabled applications from within Eclipse.

    How it was before
    Write a complex build script. Write a HTML/JSP page that embeds the ULC Applet. Configure that ULC Applet accordingly. If you want to support Java Web Start, write a matching JNLP file. Configure your application inside the Servlet deployment descriptor.
    Ensure that you correctly configured everything, i.e. that your ULC Applet connects to your ULC Servlet and that your ULC Servlet connects to your application.

    How to write an application that runs in a browser and with Java Web Start

    Nothing to do at all. UltraLightClient ’08 takes care of this for you!

    How it was before
    Write an application for Java Web Start and write an application wrapper for the browser that places the main window inside an Applet.

    How to implement a form

    Only one line of code for each field in the form! With this single line you get a nice form layout including end user error feedback. And UltraLightClient ’08 automatically synchronizes your form and your data.
    You can find more details about forms in a previous blog post.

    How it was before
    No support at all. You have to write code for your layout, write code for error feedback, write synchronization code, … Lots of freedom, which results in non-uniform code and offers too many ways to get lost.

    How to implement a table

    Only one line of code for each column in the table. That’s all!
    You can find more details about the configuration file in a previous blog post.

    How it was before
    Write your own table model. And in 99% of the cases you end up writing the same boilerplate code again and again.

    How to sort tables

    A one liner in UltraLightClient ’08!

    How it was before
    Write a table model decorator. The decorator sorts the table model data of the underlying table model. And write an action listener that triggers the sort when the user clicks the table header. And write a table header cell renderer that displays a sort icon in the table header. And be careful when to use the table model decorator and the underlying table model.

    How to internationalize an application

    Name your user interface elements. That’s all! UltraLightClient ’08 then auto-injects arbitrary property values from resource bundles into your user interface elements. And even better, for forms and tables UltraLightClient ’08 creates default names. So you don’t have to do anything at all in your application!
    You can find more details about the internationalization file in a previous blog post.

    How it was before
    Get the resource bundle. Get the resource string out of the resource bundle. Convert the resource string into a property value (e.g. into an icon). Set the property value. And all that code looks more or less the same all the time…

    How to change the style of your application

    Style your components in the resource bundles. UltraLightClient ’08 then auto-injects the defined styles for you.

    How it was before
    Implement a component factory. All components need to be created through this factory. The creator of a component has to provide all information to create the component. Changing the style of a component required code changes in the component factory, in the caller class or in both.

    How to use a custom look and feel

    Configure the look and feel in the new XML-based UltraLightClient ’08 configuration file. The configuration file is respected by all launchers: development, Applet, JNLP. Again, you can find more details about the configuration file in my previous blog post.

    How it was before
    Write custom code to set the look and feel and configure your launchers to use that custom code. The way to configure the custom code is different for each kind of launcher:

    • Development => run time parameters
    • Applet => HTML tags
    • JNLP => xml based configuration file

    How to define the log level, the file service, coders, protocol encoding, …

    Use the same mechanism as for the look and feel, described above. Change the configuration in one XML file!

    Share and Enjoy: These icons link to social bookmarking sites where readers can share and discover new web pages.
    • email
    • Print
    • Twitter
    • LinkedIn
    • XING
    • Facebook
    • Google Bookmarks

    Canoo session at JavaOne 2008

    April 22nd, 2008

    While Dierk König is speaking at this week’s JAX in Wiesbaden, Germany, I’m sending out an info pointing to his next session in San Francisco.

    JavaOne 2008

    Dierk König and Mike Mannion are presenting a session at JavaOne 2008 on:

    Going Mobile with JavaFX™ Script Technology, Groovy, and Google Android

    Add this session to your schedule! And stop by at the Canoo booth at booth number 429.

    Share and Enjoy: These icons link to social bookmarking sites where readers can share and discover new web pages.
    • email
    • Print
    • Twitter
    • LinkedIn
    • XING
    • Facebook
    • Google Bookmarks

    One file to rule them all

    April 11th, 2008

    This is the fourth post in a series of posts that offer a preview of the new features in the upcoming UltraLightClient ’08 release. The first post was about forms, the second post discusses invisible table models, the third post introduced the new application services. This post describes how to configure an UltraLightClient ’08 application.

    UltraLightClient 08

    UltraLightClient ’08 will provide an ultra easy way to configure your application. Currently, the application configuration is distributed in several places. And, the configuration method differs from place to place:

    Environment Configuration Method
    Applet launcher Java code and/or HTML tags
    JNLP launcher Java code and/or Runtime arguments
    Servlet container Java code and/or init parameters in the Servlet deployment descriptor
    Development setup Java code and/or static properties of the DevelopmentRunner class

    For example, to change the look and feel of your application you have to code this in your Applet launcher, your JNLP launcher, and your DevelopmentRunner. Or to configure a custom carrier stream provider (to compress transferred data or not), you have to code this in your Applet launcher, your JNLP launcher, your DevelopmentRunner. And for this configuration option you have to be careful to match the Servlet deployment descriptor to your client-side code changes. The result is error prone and redundant code.

    This will change in UltraLightClient ’08!

    UltraLightClient ’08 provides one central configuration file that holds all the configuration information. The configuration file format is an XML file. This format enables your IDE to provide code completion and documentation for the configuration options. This support makes it a lot easier and less error prone to configure your application than before:

    As an example, let’s change the look and feel for your application. The <ulc:lookAndFeel> tag configures the look and feel to be used by all client environments. All environments read this configuration file and configure themselves accordingly. No need to write custom launchers or custom DevelopmentRunners! The configuration file that sets the system look and feel looks like this:

    Summary: UltraLightClient ’08 makes it ultra easy to configure your application. No more need to write custom launchers and custom DevelopmentRunners.

    Try out the new features in the latest milestone. Send us your feedback and help improve the UltraLightClient ’08 release!

    Share and Enjoy: These icons link to social bookmarking sites where readers can share and discover new web pages.
    • email
    • Print
    • Twitter
    • LinkedIn
    • XING
    • Facebook
    • Google Bookmarks

    UltraLightClient ’08: Milestone Released

    April 11th, 2008

    UltraLightClient 6.3 Milestone 1 of the upcoming ’08 release is now available for download.

    UltraLightClient 08

    Evaluate the new features and send us your feedback!

    For details see the milestone release notes or these recent blog posts discussing:

    Please note: Milestone releases are not official releases. They provide early access to new features and fixed problem reports. They are provided for evaluation and testing purposes only. Please do not use milestone releases in a productive environment.

    Share and Enjoy: These icons link to social bookmarking sites where readers can share and discover new web pages.
    • email
    • Print
    • Twitter
    • LinkedIn
    • XING
    • Facebook
    • Google Bookmarks

    css.php