7/03/2008

AIR GEAR 1.0.0 Released!

Yesterday, Project Amateras released AIR GEAR 1.0.0!

AIR GEAR is an open source IDE for Adobe AIR development. It works as an Eclipse plug-in so you can use it with many other Eclipse plug-ins and powerful features of Eclipse.

AIR GEAR has following features:

  • Supports both HTML and Flex based AIR application development
  • WISYWIG graphical editor for Flex
  • Automatic build and error reporting
  • AIR application launcher on the Eclipse

See this page about detailed use.

Enjoy your development!

6/24/2008

memcached in Java

I'm looking for memcached client library for Java. Then I found two libraries.
memcached client for java
memcached client for java is simple and synchronous mamcached client libraries. This is easy to use but not support CAS commands.
spymemcached
spymemcached supports asynchronous processing and CAS commands. Updating cache is high-speed. However implementation is very complex.
I think that many web applications don't require asynchronous cache processing. So I think mamcached client for java is better solution.

6/20/2008

prototype.js and script.aculo.us

The next version of Amateras JavaScript editor supports prototype.js and script.aculo.us. These libraries are proposed in code completion proposals.

prototype.js:
script.aculo.us:
In the future version, many other JavaScript libraries will be supported!

The page auto mapping without templates

Click Framework provides the page auto mapping. This is the important feature to decrease amount of configuration.

However Click maps page classes to request-path from HTML templates. So page classes which do not have corresponded HTML template is not mapped automatically.

For example:

  • pages which share a HTML template
  • the page which returns JSON or file (response is written in the page class)
I'm thinking about annotations on Click Framework. How about the @Path annotation which specifies the auto mapping path to page classes.
@Path("/file-download.htm")
public class FileDonwloadPage extends Page {

  /**
   * Writes response for file downloading in this method.
   */
  @Override public void onRender() {
    HttpServletResponse res = getContext().getResponse();
    OutputStream out = res.getOutputStream();
    ...
  }

  /**
   * This method returns null to not render template,
   * because this class writes response contents for file download.
   */
  public String getPath(){
    return null;
  }
}
This is one idea of using annotation in Click Framework.

4/22/2008

JavaScript Formatter

EclipseHTMLEditor (a part of Amateras) provides the JavaScript editor. I added JavaScript source code formatter to the JavaScript editor. We can format JavaScript source code from the context menu.

Please wait for the next release of EclipseHTMLEditor!

4/21/2008

JJUG Cross Community Conference 2008 Spring

JJUG Cross Community Conference 2008 Spring will be held at Japan 30 Apr.

JJUG is an abbreviation of Japan Java User Group. In this conference, top Java engineers in Japan talk about hot topics in Java such as Web frameworks, EclipseLink, JAM, Scala and New Swing APIs.

I'll talk about Click Framework in this conference and join panel discussion with speakers of Grails, JRuby on Rails and Wicket.

I wish to make efforts to spread Click Framework in Japan.

3/14/2008

File download in Click Framework

Click Framework provides FileField to upload file, however Click does not provide any support for file downloading. I made AbstractDownloadPage to download file.

Usage:

 public class SampleDownloadPage extends AbstractDownloadPage {
  public SampleDownloadPage(){
    setFileName("sample.txt");
    setContents(SampleDownloadPage.class.getResourceAsStream("sample.txt"));
  }
} 

This page class does not have a template because response is written by this class. So auto-mapping does not work for file download pages. The extended page class have to be registered to click.xml.