Navigation

RSS 2.0 New Entries Syndication Feed Atom 0.3 New Entries Syndication Feed

Show blog menu v

 

General

Use it

Documentation

Support

Sibling projects

RIFE powered

Valid XHTML 1.0 Transitional

Valid CSS!

Blogs : Latest entries

avatar
RIFE 1.0rc1 released

This has mainly been a release with bug-fixes and minor convenience changes.

Thanks to the great feedback we've received from users on the previous release, we're confident that the 1.0 mark has almost been reached. Since there were still a couple of new features added, we're first releasing this interim release candidate.

Below are the highlights of this release.

  • full declaration of elements in the site structure [ more ]
  • new asynchronous mail queue [ more ]

You can also read the full changelog for more details.


Full declaration of elements in the site structure

In prior versions you were forced to declare each element in a separate file if you chose to use XML for the definition of your site structure.

The XML site structure now supports all the element declaration statements in-line. So if it doesn't make sense for you to have re-usable declarations, you can just centralize everything in one file.

For example, this is the new Hello World site structure:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE site SYSTEM "/dtd/site.dtd">
<site>
    <element id="HELLOWORLD" implementation="tutorial.helloworld.HelloWorld" url="/home"/>
</site>

[ top ]

New asynchronous mail queue

We've extracted the mail queue from our Bamboo forums project and ported it to all the databases that RIFE supports.

This allows you to create mails with simple POJOs and just put them into the queue. At regular intervals, the queue will process them and send them. To be able to use the mail queue, you need to have the javamail and activation jars in your classpath.

The queue is stored in a database and you install the structure as follows:

DatabaseMailQueueFactory.getInstance(datasource).install();

To make the queue run at regular intervals, you have to activate the RIFE's scheduler. It's the easiest to use the in-memory scheduler. You do this by adding the following line to your participants.xml file:

<participant param="rep/scheduler.xml">ParticipantMemoryScheduler</participant>

The rep/scheduler.xml configuration file looks like this if you only have the mail queue task registered:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE scheduler SYSTEM "/dtd/scheduler.dtd">
<scheduler>
    <task classname="com.uwyn.rife.mail.executors.DatabaseMailQueueExecutor" frequency="*/3 * * * *">
        <option name="datasource">postgresql</option>
        <option name="smtp_server">localhost</option>
    </task>
</scheduler>

The format of the frequency attribute is the same as the cron format. The datasource and smtp_server options allow you to configure the mail queue task. If you omit smtp_server, mail will not be sent for real but written to the logging output instead.

To send a mail all you have to do is this, for example:

DatabaseMailQueueFactory.getInstance(datasource).queue(new Email()
    .to("customer@theircompany.com")
    .from("info@yourcompany.com")
    .cc("billing@yourcompany.com")
    .bcc("themanager@yourcompany.com")
    .subject("this is the subject")
    .body("and the body of the mail"));

[ top ]

posted by Geert Bevin in RIFE on Mar 16, 2005 7:28 PM : 0 comments [permalink]
 
PhotoBlox: the typical application where Laszlo excels
I just stumbled into PhotoBlox.

It is an image viewing application that can be embedded into a personal blog template or Web page. It totally relies on Flash's multi-media capabilities and Laszlo's ease to dynamically fetch external data and display it. The application loads fast, works in almost every browser and looks great in multiple sizes. For applications like this, none of the other RIA solutions that I know would fit the bill. Well, maybe Flex would, but I doubt that anyone would pay at least 14400 € in licensing to be able to run a photo blogging tool ;)
posted by Geert Bevin in Laszlo on Mar 16, 2005 9:14 AM : 1 comment [permalink]
 
Laszlo 3.0b2 released, a step in the right direction
A new version of Laszlo has just been released.

It contains a number of important feature additions that make the platform a lot more viable (compared against 2.2.1):
  • Serverless Deployment
    You can now choose to deploy Laszlo applications without a proxy server. Before, all data request went through a J2EE servlet application that proxied this with the actual destination. By removing the proxy, Laszlo applications become standalone Flash applications and they can thus be deployed in environments where resources are scarce or where no servlet container is available. There's a limitation on the available futures, but for most applications this should not be a problem (no persistent connections, SOAP or XML-RPC).

  • Dynamic libraries
    Parts of your application can now be included dynamically at runtime. This can be important if you have a huge application and only want to let the users download the features they actually use. You also have the option of letting them download a small initial part first and delay the download of the libraries until idle time in the application, making everything available much quicker and not forcing a large initial download. I can see this also being important if you plan on actually generating parts of the application at runtime instead of just providing data. Since the LZX compiler takes a while to compile the source to Flash, just loading your generated part dynamically should make it possible to investigate this model further.

  • Drawing API
    LZX now includes a subset of the WHAT-WG graphics API, this allows you to perform drawing operations at runtime. I can see this particularly being important for generating graphs and charts according to real-time data. Instead of having to dynamically generate static images on the server, you should now be able to keep all this functionality right into Laszlo.

  • Unicode support
    It's now finally possible to develop internationalized applications with Laszlo! This is both available for the text that you write in the application itself, as for the text that is entered in text widgets. The communication with a server is now also performed in UTF-8.

The detailed release notes are here and here.

I tried it out with an application that I developed for version 2.2.1, and I found a number of problems:
  • The generated Flash will be targeted at Flash Player 6 and I noticed that my previous animations (which were exported for version 5) make every browser crash when included in the Laszlo application. The workaround seems to be to re-export them, targeted at Flash version 6.

  • There is still no support for a multi-line text edit field that shows a scrollbar when the text exceeds the visible area!

  • There's a bug when sending internationalized data as a HTTP POST request through the proxy server, the text seems to be re-encoded by the proxy as ISO-8859-1. This doesn't happen when the application runs in un-proxied mode.

  • The font metrics seem to be wrong. When using accented characters, the cursor gets positioned wrongly in a text field and the rendering makes characters re-position randomly. Also, the dimensions for ASCII text seem to be wrongly calculated since text wraps even though there's enough available space and when displaying a single line, the parts of the characters underneath the baseline are trimmed.

I have to say that I'm impressed by the dedication of the Laszlo people. After my previous posts, I got contacted directly by Adam Wolff, the director or Laszlo Systems. He's really devoted to try finding out how to reduce the gripes people have with Laszlo and to lower the adoption barrier. Also, I managed to get hold of a 3.0b2 version early by peeking around where I was not supposed to look and I mailed him about the problems I encountered. He immediately forwarded my mail to three developers, asking to investigate! It's good to see that they are so actively and dynamically supporting users.
posted by Geert Bevin in Laszlo on Mar 16, 2005 8:45 AM : 0 comments [permalink]
 

 
 
 
Google
rifers.org web