Presentation is loading. Please wait.

Presentation is loading. Please wait.

DSPACE UI Challange Roberto Suardi – Luigi Andrea Pascarelli www.cineca.it.

Similar presentations


Presentation on theme: "DSPACE UI Challange Roberto Suardi – Luigi Andrea Pascarelli www.cineca.it."— Presentation transcript:

1 DSPACE UI Challange Roberto Suardi – Luigi Andrea Pascarelli www.cineca.it

2 spring-mvc sitemesh spring-security cineca-framework-lite technology platform www.cineca.it

3 define Controller (former Servlet) in xml configuration files Annotation @Controller, @RequestMapping auto-binding of variable in the method signature @PathVariable @RequestParam @Command write just the business logic to retrieve the model spring-mvc - Controller www.cineca.it

4 -The model is passed to the view dispatcher that displays that handles the correct page to be displayed -ViewBuilder instance called «viewName» -jsp located at path «viewName» spring-mvc – View dispatcher www.cineca.it

5 Focus on content, not on layout No business logic Taglib v.2 (tagfile), not scriptlet views - jsp www.cineca.it

6 -Html fragment’s displaying text, inputs, selects, div, fieldset, label (etc.) -Tags has many attribute that change how it’s displayed (calendar, number, autocomplete, wysiwyg, errror, info, etc.) -In tags is defined the layout of the single component (line, labels, content): change in one place to change it everywhere cineca-framework-lite: widget tags www.cineca.it

7 Define layout separate from content Different layout depending on urls (default, popup, empty, ajax) Organized in sections North (header) West (menu on the left/right) Page-content Breadcrumbs Messages Content of the page ( ) south Londinium theme (collection of usefull css and javascript) sitemesh - layout www.cineca.it

8 Menus stored in database tables Stored in memory at startup Change values by just adding/editing rows Display a menu depending on path Display a menu depending on user Display a menu depending on logic Reload menu in memory cineca-framework-lite: menu www.cineca.it

9 Static i18n: loaded from files Multiple files Dynamic i18n: loaded from DB at startup and reloadable cineca-framework-lite: i18n www.cineca.it

10 Java filter Change stylesheet or any other static files at runtime Using a overlapped «virtual» file system UI to Load files in file system –Open source http://elfinder.org/ issued under a 3-clauses BSD licensehttp://elfinder.org/ cineca-framework-lite: CMS www.cineca.it

11 Widgets «display» mode and «enabled» mode Bind complex class (@ModelAttribute) Spring Validation – binding errors Custom Validation spring-mvc – Controller 2 www.cineca.it

12 Views stored in DB, saved in memory during startup and reloadable Change views Add/change widgets Add custom validation Field validation (@Required, @Length) Custom field validation (@Script of type javax.Scripts executed server-side) Bean/class validation cineca-framework-lite: ViewBuilder www.cineca.it

13 External authentication provider: jasig- CAS Open-source, large community Support many authentication providers (saml2, openauth, ldap) Handles multiple providers spring-security - authentication www.cineca.it

14 Extends functionality of spring-security Definition of «Protected Resources» buttons, page, an instance of a class, single functionality The authorization is the link between Protected Resource and the Identity Identity can be a user or a group of users cineca-framework-lite: authorization www.cineca.it

15 Full integration of Authorization/authentication (already integrated in IRIS) Integration of Cineca-framework-lite: Configuration lib (change configuration values at runtime) (already integrated in IRIS) Integration of Cineca-framework-lite: SearchBuilder lib (change how searches (hibernate, solr, sql) are handled at runtime) (already integrated in IRIS) UI for edit Widget/ViewBuilder/Menu/Authorization Cineca-framework-lite: Model lib  (define input-form at runtime, like DSpace-CRIS) to do www.cineca.it


Download ppt "DSPACE UI Challange Roberto Suardi – Luigi Andrea Pascarelli www.cineca.it."

Similar presentations


Ads by Google