GNO Lab

All about nothing. Don't Panic!

Browsing Posts in Graphical User Interfaces

JSTL (JSR 52)

No comments

JSTL comes in a number of flavors and implementations. The JSRs are the specifications.

A good tutorial on the issues can be found on Herong’s Tutorial Notes.

The JSTL libraries come in two flavors, the “rt” and the “el” libraries:

RT (run-time)

The “rt” tag libraries will accept request-time expressions for most attribute values as in:

<c:out value='<%= ((Foo)session.getAttribute("foo")).getBar()'%>/>
EL (Expression Library)

The tag libraries without the “rt” do not accept Request-time expressions but operate on EL (expression language) — for example:

<c:out value='${sessionScope.foo.bar}'/>

You can use both the “rt” and the non-rt (EL-supporting) tags in your JSP — just be sure and give them different prefixes in the taglib directives. In the long term, you want to get away from the rt tags – and use EL instead.

JSTL 1.0

Requirements: JSP 1.2 container Reference implementation:
http://www.apache.org/dist/jakarta/taglibs/standard/
EL-based tag libraries

EL-based tag libraries

Functional Area

URI

Prefix

Core http://java.sun.com/jstl/core C  
XML Processing http://java.sun.com/jstl/xml X  
Internationalization http://java.sun.com/jstl/fmt Fmt
Database Access http://java.sun.com/jstl/sql Sql

 

Runtime-based tag libraries

Functional Area

URI

Prefix

Core http://java.sun.com/jstl/core_rt c_rt
XML Processing http://java.sun.com/jstl/xml_rt x_rt
Internationalization http://java.sun.com/jstl/fmt_rt fmt_rt
Database Access http://java.sun.com/jstl/sql_rt sql_rt

JSTL 1.2 (May 8, 2006)

Requirements: JSP 2.0 container Reference implementation:
http://www.apache.org/dist/jakarta/taglibs/standard/

EL-based tag libraries

Functional Area

URI

Prefix

Core http://java.sun.com/jsp/jstl/core C  
XML Processing http://java.sun.com/jsp/jstl/xml X  
Internationalization http://java.sun.com/jsp/jstl/fmt Fmt
Database Access http://java.sun.com/jsp/jstl/sql Sql

 

Runtime-based tag libraries

Functional Area

URI

Prefix

Core http://java.sun.com/jsp/jstl/core_rt c_rt
XML Processing http://java.sun.com/jsp/jstl/xml_rt x_rt
Internationalization http://java.sun.com/jsp/jstl/fmt_rt fmt_rt
Database Access http://java.sun.com/jsp/jstl/sql_rt sql_rt

Cluttered Start Menu

1 comment

Or how to keep your start menu free of clutter. Do you like your Start Menu? After a while, after a number of software installations, the Start menu gets overfilled with items, organized sometimes after the vendor, sometimes after the application name. No one really knows! I would like to see a solution in the installer for this. In my opinion, the following guideline should help installers to actually put software into a somewhat more easily found location:

Every software must

  • be categorized
  • be said to belong to a vendor/group/organization/name.
  • have a main shortcut.

With these premises, the explorer/installer would be able to put the intended shortcuts into a meaningful place. First there should be a branch of categorizes (in my likings the proffered branch), and one branch for vendors. In each branch the main shortcut should be put. Initially, only the main shortcut should be seen. hovering over, or using some kind of context menu, the “extra icons” would be shown. Clicking the shortcut opens the underlying application/document, as normal.

By using more than one path to find the application, I believe the user can reach the correct application easier then today, using its own preferred approach.

OK, you may argue that one can nowadays search the start menu, but searching requires knowledge of the application’s name or its vendor, and you never know which. If you don’t know the name, but are interested to find a graphic renderer, wouldn’t it be easier to browse in the Graphics Applications category?

Before the start menu gets intelligent, one can (kind of easily) organize it manually:

  • Right Click, Open
  • Create folders for your categories
  • Move/copy the icons available today to its rightful category
  • For each folder; Properties->Customize->Change Icon

My current (fist level) start menu:

Categorized Startmenu

As you see, there are still some software not categorized, for example PowerDVD. its icons seams to be created by the application itself, no matter if I delete them! We do not have such thing as a perfect world ;)

I’ve always wanted the window manager to help me to be more productive. Today all window managers are fancy and really looks nice. But that’s it. They sit there with their per-pixel borders, waiting for you to take the initiative–not helping you be more productive!

Ok, fluffy fluffy, here’s the deal. My ideal window manager should be able to natively (without any third party utility):

  • nail windows to keep them on-top of others, making it possible to copy and paste without the need to switch windows (obscuring one another)
    (ideally, use a selection to sub-select only part of the whole window to be nailed)
  • switching only non-minimized windows. I tend to have a lot of windows open. Many of those are just for sitting there idle, to be worked on at a later stage.
  • any text must be copyable to the clipboard (using OCR for non-textual fields maybe)
  • informative application (tickers, monitors, etc.) should have a notion of ghosting, making them on top (and transparent), but must not respond to input, i.e. the window below will get input.

If I stick to the Windows environment for a while, there are a lot of utilities, making the above come to live, for example:

  • GhostIt
  • WinShade
  • Windowblinds have these features, but skinners seams to forget implementing the nail button in their skins. I would say that some extra icons (besides minimize, maximize, etc) wouldn’t be to intrusive.

About window manager buttons. Some themes seams to show the intention of the button (sometimes only with a color), first when the pointer hovers over it. IMHO, the intention of a button should always be clear, ie. its icon representation should never be hidden, helping me make a decision without the need to hover over all available icons and glyphs!