Die Common-Controls Tag Bibliothek

<forms:radiogroup>

Das Tag erzeugt eine Gruppe von Radio-Buttons. Die verfügbaren Buttons werden mit dem <base:options>-Tag im Tab body angegeben.
Das Tag darf nur innerhalb eines com.cc.framework.taglib.forms.FormElementContainerTag verwendet werden. Beispiele hierfür sind <forms:form> und <forms:section>
../images/images/formradiogroup_small.gif

Body content: JSP
Tag class: FormElementRadioGroupTag
 

[ Syntax ]

Standard Syntax
<forms:radiogroup
[ accesskey = "String" ]
[ align = "{left | right | center}" ]
[ colspan = "Integer" ]
[ columns = "Boolean" ]
[ description = "String" ]
[ disabled = "Boolean" ]
[ disableProperty = "String" ]
[ groupingProperty = "String" ]
[ height = "String" ]
[ help = "String" ]
[ id = "String" ]
[ imageref = "String" ]
[ join = "Boolean" ]
[ label = "String" ]
[ labeltooltip = "String" ]
[ name = "String" ]
[ onblur = "String" ]
[ onchange = "String" ]
[ onclick = "String" ]
[ oncontextmenu = "String" ]
[ ondblclick = "String" ]
[ onfocus = "String" ]
[ onkeydown = "String" ]
[ onkeypress = "String" ]
[ onkeyup = "String" ]
[ onmousedown = "String" ]
[ onmousemove = "String" ]
[ onmouseout = "String" ]
[ onmouseover = "String" ]
[ onmouseup = "String" ]
[ permission = "ACL" ]
[ property = "String" ]
[ required = "Boolean" ]
[ scope = "{any | page | request | session | application}" ]
[ style = "String" ]
[ styleClass = "String" ]
[ styleId = "String" ]
[ tabindex = "Integer" ]
[ tooltip = "String" ]
[ valign = "{top | bottom | center}" ]
[ value = "String" ]
[ width = "String" ]
>
...Body Content...

</forms:radiogroup>
 

[ Attribute ]

AttributTypBeschreibungPflichtRTExp
accesskeyString Der Tastatur-Shortcut (darf nur ein Zeichen sein), mit dem der Browser den Fokus auf ein Eingabeelement übertragen kann.  
alignAlignmentType Gibt die horizontale Ausrichtung in der Formularelement Zelle an
  • left = linksbündige Ausrichtung
  • right = rechtsbündige Ausrichtung
  • center = zentrierte Ausrichtung
 
colspanInteger Gibt bei einem mehrspaltigen Formular die Anzahl der Spalten an, welche von dem Formularelement belegt werden sollen.  
columnsBoolean Gibt an wieviele Radio-Buttons nebeneinder dargestellt werden sollen.  
descriptionString Der Beschreibungstext  
disabledBoolean Über dieses Attribut kann das Kontrollelement deaktiviert werden. Es nimmt dann keine Benutzereingaben entgegen und erzeugt keine Kontrollelement Ereignisse.  
disablePropertyString Gibt den Namen eines Properties an, mit welchem jeder einzelne Radiobutton disabled werden kann. Das Property muß einen Boolean Datentyp zurückliefern.

Das Property muß von der verwendeten Optionsliste implementiert werden.

Anmerkung: Gültiger Java Bezeichner. Die Optionselemente müssen eine passende Property-Getter Methode implementieren.

 
groupingPropertyString Gibt den Namen eines Properties an, welches für die Gruppierung der Radiobuttons verwendet wird. Wenn sich der von dem Property zurückgelieferte Wert ändert, dann wird in der Radio Gruppe ein Zeilenumbruch eingefügt.

Das Property muß von der verwendeten Optionsliste implementiert werden.

Anmerkung: Gültiger Java Bezeichner. Die Optionselemente müssen eine passende Property-Getter Methode implementieren.

 
heightString Setzt die Höhe des Kontrollelmentes. Die Höhe kann absolut oder prozentual angegeben werden.

Es hängt vom jeweiligen Kontrollelement Painter ab, ob diese Information ausgewertet wird

Siehe HTML-Dokumentation

 
helpString Weist dem Kontrollelement einen Hilfe Bezeichner zu. Es wird ein Hilfe Symbol neben dem Kontrollelement angezeigt, welches bei einem Klick einen onHelp Event erzeugt. Der Bezeichner wird dabei als Parameter übergeben und kann somit zur Anzeige von kontextabhängigen Hilfetexten benutzt werden.

Das eigentliche Hilfesystem ist nicht Teil des Common-Controls Frameworkes, der onHelp Event kann jedoch zur Verankerung verwendet werden.

Für die Erzeugung des Hyperlinks zum Aufruf der Hilfe sind einige vordefinierte Framework Ressourcen zuständig. Diese kann der Anwendungsentwickler global oder auf Kontrollelement Ebene verändern:

Resource KeybeschreibungVorgabewert
fw.help.onclickEin optionaler onclick JavaScript Handler. Der Handler kann einen {0} Markup für den Hilfe Bezeichner enthalten-
fw.help.targetGibt an wo der Hilfe Hyperlink geöffnet werden soll_blank
fw.help.tooltiptooltip Text für den Hilfe Hyperlinkcontext help

Anmerkung: Der Hilfe Bezeichner wird von dem Common-Controls Framework an das Hilfesystem weitergegeben. Die Syntax und Semantik hängt daher von dem verwendeten Hilfesystem ab.

 
idString Weist dem Kontrollelement einen eindeutigen Bezeichner zu. Im Tag Body wird daraufhin eine Java Variable angelegt, auf welche in Java Scriptlets zugegriffen werden kann. Diese Variable verweist auf die Kontrollelement Instanz.

Dieses Attribut wird meist in Verbindung mit dem type Attribut verwendet

Anmerkung: Da zur JSP Compile Zeit eine Java Variable mit diesem Bezeichner angelegt wird, muss hier ein String Literal (und keine Expression!) angegeben werden! Der Bezeichner muss den Regeln für gültiger Java Bezeichner folgen.

 
imagerefString Verweis auf ein Element der ImageMap des Formulars. Das Image wird vor dem Label des Formularelementes gezeichnet.

Die ImageMap wird im umschliessenden Formular Tag mit Hilfe des imagemap Attributes gesetzt

 
joinBoolean Mit diesem Flag wird angegeben ob das Vormularelement mit dem vorhergehenden Element verbunden werden soll. Zwischen verbundenen Formularelementen werden keine Trennungslinien gezeichnet.  
labelString Das Label des Formularelementes.  
labeltooltipString Tooltip auf dem Label des Formularelementes.  
nameString Gibt den Namen der Java-Bean an. Die Java-Bean muss im angegebenen Scope (siehe scope-Attribut) abgelegt sein.

Wenn das Tag von einem Struts <html:form> Tag umschlossen ist, dann muss kein Bean Name angegeben werden. In diesem Fall wird die Java-Bean über ein Property der Struts Formular Bean gezogen.

Anmerkung: Es muss ein gültiger Java Bezeichner angegeben werden.

 
onblurString Fires when the object loses the input focus.

Anmerkung: JavaScript Code

 
onchangeString Fires when the contents of the object or selection have changed.

Anmerkung: JavaScript Code

 
onclickString Fires when the user clicks the left mouse button on the object.

Anmerkung: JavaScript Code

 
oncontextmenuString Fires when the user clicks the right mouse button in the client area, opening the context menu.

Anmerkung: JavaScript Code

 
ondblclickString Fires when the user double-clicks the object.

Anmerkung: JavaScript Code

 
onfocusString Fires when the object receives focus.

Anmerkung: JavaScript Code

 
onkeydownString Fires when the user presses a key.

Anmerkung: JavaScript Code

 
onkeypressString Fires when the user presses an alphanumeric key.

Anmerkung: JavaScript Code

 
onkeyupString Fires when the user releases a key.

Anmerkung: JavaScript Code

 
onmousedownString Fires when the user clicks the object with either mouse button.

Anmerkung: JavaScript Code

 
onmousemoveString Fires when the user moves the mouse over the object.

Anmerkung: JavaScript Code

 
onmouseoutString Fires when the user moves the mouse pointer outside the boundaries of the object.

Anmerkung: JavaScript Code

 
onmouseoverString Fires when the user moves the mouse pointer into the object.

Anmerkung: JavaScript Code

 
onmouseupString Fires when the user releases a mouse button while the mouse is over the object.

Anmerkung: JavaScript Code

 
permissionACL Mit diesem Attribut kann der Zugriff auf das Element beschränkt werden.

Berechtigungen werden über das Principal Objekt in der Benutzer Session geprüft. Das Principal Objekt wird mit der Methode SecurityUtil.registerPrincipal() in der Session registriert. Es wird vom Anwendungsentwickler durch Implementierung des Principal Interfaces zur Verfügung gestellt. Somit lassen sich sehr einfach beliebige Berechtigungssysteme mit dem Framework verbinden.

Berechtigungen werden immer in Form einer Access Control List (ACL) angegeben. Dabei handelt es sich um einen Ausdruck dessen Elemente Einzelberechtigungen sind. Das Framweork unterstützt die folgenden Berechtigungstypen, welche jedoch vom Anwendungsentwickler beliebig erweitert werden können:

Literal
true|false -> StaticPermission
Rolle
#rollenname -> RoleBasedPermission
Funktion
$funktionsname -> FunctionBasedPermission

Zur Formulierung der Ausdrücke kann die folgende Syntax verwendet werden:

PERMISSION_PREFIX
	: '#' | '$'

AND_OP
	: 'and' | '&' | '*'

XOR_OP
	: 'xor' | '^'

OR_OP
	: 'or' | '|' | '+'

UNARY_OP
	: '~' | '!'

permission
	: PERMISSION_PREFIX IDENTIFIER

primary_expr
	: permission
	| '(' expr_list ')'

unary_expr
	: primary_expr
	| UNARY_OP primary_expr

logical_and_expr
	: unary_expr
	| logical_and_expr AND_OP unary_expr

logical_xor_expr
	: logical_and_expr
	| logical_or_expr XOR_OP logical_and_expr

logical_or_expr
	: logical_xor_expr
	| logical_or_expr OR_OP logical_xor_expr

expr_list
	: logical_or_expr
	| expr_list ';' logical_or_expr
	| expr_list ',' logical_or_expr

Access Control Listen werden mit der statischen Methode AccessControlList.parse() eingelesen. Der Parser verwendet wiederum die statische Methode PermissionFactory.parse() um die einzelnen Permissions zu lesen. Der Anwendungsentwickler kann über die PermissionFactory eigene von Permission abgeleitete Klassen registrieren und so den Sprachumfang der ACL erweitern.

 
propertyString Gibt den Namen des Properties an, welches die Daten für das Formularelement liefert.

Dies ist in der Regel nur dann notwendig, wenn die Java-Bean mit einer Struts Formular Bean assoziiert ist.

Anmerkung: Es muss ein gültiger Java Bezeichner angegeben werden.

 
requiredBoolean Gibt an, ob es sich bei dem Formularelement um eine Pflichtangabe handelt. Pflichtfelder werden für den Anwender visuell hervorgehoben dargestellt.  
scopeHttpScope Dieses Attribut gibt den Scope an, in welchem die Java-Bean mit den eigentlichen Anzeigedaten zu finden ist.
  • any = Nach der Bean wird in jedem Scope gesucht.
  • page = Die Bean liegt im PageContext der JSP Seite.
  • request = Die Bean liegt im HTTP Servlet Request
  • session = Die Bean liegt in der HTTP Session
  • application = Die Bean liegt applikationsweit im Servlet Kontext
 
styleString Über dieses Attribut kann direkt ein HTML-style Attribut angegeben werden.

Anmerkung: Siehe HTML Dokumentation für das Attribut style.

 
styleClassString Über dieses Attribut kann direkt ein HTML-class Attribut angegeben werden.

Anmerkung: Siehe HTML Dokumentation für das Attribut class.

 
styleIdString Über dieses Attribut kann direkt ein HTML-id Attribut angegeben werden.

Anmerkung: Siehe HTML Dokumentation für das Attribut id.

 
tabindexInteger Tabulator Index für dieses Element.  
tooltipString Ein Kurzer Hinweistext, welcher angezeigt wird, wenn der Anwender den Mauszeiger über das Element bewegt.  
valignAlignmentType Gibt die vertikale Ausrichtung in der Formularelement Zelle an
  • top = Ausrichtung oben
  • bottom = Ausrichtung unten
  • center = Ausrichtung zentriert
 
valueString Der Wert des Kontrollelementes kann mit diesem Attribut auch direkt als Litteral angegeben werden.  
widthString Setzt die Breite des Kontrollelmentes. Die Breite kann absolut oder prozentual angegeben werden.

Siehe HTML-Dokumentation

 

[ Beispiel ]

Formularelement mit Radio Button Gruppe


<%@ taglib uri="http://www.common-controls.com/cc/tags-forms"   prefix="forms" %>
<%@ taglib uri="http://struts.apache.org/tags-html"             prefix="html" %>
<%@ taglib uri="http://www.common-controls.com/cc/tags-base"   prefix="base" %>

<html:form action="/companyedit">

    <forms:form  type="edit"  caption="Company - Edit"  formid="frmEdit">

        <forms:text    
           label="Name"      
           property="name"  
           maxlength="80"  
           size="45"  
           required="true"/>

        
        <forms:radiogroup  
           label="Currency"  
           property="localCurrency" 
           columns="3" 
           required="true">


            <base:options property="currencyOptions"/>
        </forms:radiogroup>
    </forms:form>

</html:form>