JDAL Swing Spring Namespace

Desde la versión 1.2.1 JDAL Swing soporta custom namespaces de Spring con la intención de simplificar la configuración del contexto.

El namespace http://www.jdal.org/schema/swing define los siguientes elementos:



Defaults


El elemento defaults no tiene atributos y declara los siguientes beans :



Table


El elemento table simplifica la definición de tablas paginables. Asume la siguiente convención de nombres en los beans definidos en el contexto de la aplicación.

Es decir, los beans relacionados con la entidad de nombre simple Entity se denominan utilizando los siguientes sufijos:

Atributos

Subelementos

El elemento table admite un número indeterminado de elementos column para definir cada una de las columnas de la tabla.



Column

El elemento column se utiliza para la definición de las columnas en el elemento table o tiene subelementos y admite los siguientes elementos:



Declaración del namespace


Para utilizar el namespace, necesita declararlo en el elemento beans de forma similar al resto de namespaces de Spring.

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:swing="http://www.jdal.org/schema/swing"
    xsi:schemaLocation="
        http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
        http://www.jdal.org/schema/swing http://www.jdal.org/schema/jdal/jdal-swing.xsd"
 
        default-init-method="init">
 
    <swing:defaults />
 
    <!-- Project -->
    <swing:table entity="info.joseluismartin.gefa.model.Project" tableService="tableService" >
        <swing:columns>
            <swing:column name="name"        displayName="Name" />
            <swing:column name="customer"    displayName="Customer" />
            <swing:column name="bid"         displayName="Bid" />
            <swing:column name="description" displayName="Description" />
            <swing:column name="amount"      displayName="Amount" />
        </swing:columns>
    </swing:table>  
 
</beans>