delete

this is popup area!

JSiter - block code editor

close resize
eti_workshop
Programma dei workshop in pianificazione
eti_jug
JSiter trae ispirazione e forza da Java. Lo staff di JSiter è felicissimo di poter condividere le sue esperienze di programmazione con altri esperti ed appassionati di Java che vivono e lavorano nel territorio salentino. Gli interessati ci segnalino la loro disponibilità a partecipare ad un incontro preliminare per la fondazione del JUG Salento.
eti_scuola
La semplicità d'uso fa di JSiter un efficace strumento didattico per l'apprendimento delle tecnologie: Html, Css, Xml, Xsl/Xslt, Jsp, JavaScript, etc.
Invitiamo docenti e istituzioni scolastiche interessate a contattarci per essere invitati a incontri di presentazione e workshop.
JSiter - Framework Java e Content Management System per applicazioni web su piattaforma Jsp/Servlet
Prodotto e distribuito da HASH - Lecce - Italia
tarantola_01
Hello world!!!!
Da una precisa idea di "web", dal tepore della nostra terra scolpita dal vento e dal mare, da litri e litri di calde e profumate tazzine di Java è nato "JSiter", il software della tarantola; il suo morso inebria, seduce e contagia...
Benvenuti nel mondo di JSiter, benvenuti nel web della tarantola! :-))
:-) P.L.
JSiter
JSiter è un'applicazione web installabile su application server implementanti le specifiche JSP/Servlet.
Dispone di meccanismi di gestione dei contenuti e di astrazione dalla lingua che ne fanno, già nella sua installazione minima, un efficace strumento di pubblicazione su web.
Agisce da 'contenitore' quindi a sua volta da struttura di base, 'piattaforma' per sotto-applicazioni (dette “moduli”) e di gestori di contenuto (detti “risorse”) che costituiscono i due principali costrutti dell'architettura.
Come "plug-in", moduli e risorse possono essere sviluppati anche da 'terze parti' implementando le rispettive interfacce esposte dal core-package.
In particolare il jar-file di installazione di un modulo può essere prodotto dalla stessa applicazione Jsiter configurata in modalità 'sviluppo' e conterrà tutto ciò che occorre per l'installazione: immagini, menu, elementi testuali, codice Jsp, Html, Css, Javascript, Xml, ... classi Java, base dati, parametri di configurazione, permessi ed anche eventuali sotto-moduli, strutturati ad 'albero'.
Centralizzando tutte le funzionalità di 'base' Jsiter permette agli sviluppatori di concentrarsi sulla logica di business.
Jsiter eroga ai 'moduli' servizi di:
  1. amministrazione degli utenti e autenticazione;
  2. politiche di accesso alle funzioni amministrative;
  3. configurazione;
  4. coordinamento e notifica di eventi
  5. backup/restore;
  6. produzione del jar-file di installazione;
  7. gestione dei contenuti (CMS): amministrazione di tutte le componenti dell'interfaccia utente come immagini, elementi testuali e di codice, menu, etc.
  8. internazionalizzazione e gestione delle etichette, dei messaggi di alert/warning/error in lingua; il programmatore e/o l'impaginatore deve/devono fare riferimento a nomi astratti: è Jsiter a occuparsi del corretto accoppiamento tra nome e risorsa in lingua.
  9. SEO (search engine optimization).

Caratteristiche principali di Jsiter per lo sviluppo

Si elencano nel seguito alcune caratteristiche di JSiter utili agli sviluppatori:
  • Perfetta integrabilità con IDE come Eclipse.
  • Rapida curva di apprendimento: competenze nello sviluppo di applicazioni Java possono essere velocemente indirizzate verso lo sviluppo di applicazioni web.
  • Razionalizzazione e coordinamento delle attività di sviluppo di un'applicazione: impaginazione, grafica, programmazione; la scalabilità e la modularità dell'architettura proposta da Jsiter rendono lo sviluppo un processo fortemente cooperativo riducendo sensibilmente il 'time to market'.
  • Possibilità di gestire con semplicità la persistenza dei dati ai livelli richiesta/sessione/utente/applicazione: le applicazioni web possono così essere dotate di 'memoria' utile per una migliore esperienza di 'navigazione' da parte dell'utente (per esempio una scelta effettuata dall'utente in un determinato contesto può persistere nella sessione oppure -a scelta dello sviluppatore- rendersi definitiva per tale utente).
  • Meccanismo di astrazione dalla lingua per l'internazionalizzazione dei contenuti.
  • Meccanismo di astrazione dal formato binario per la virtualizzazione dei contenuti dal layout.
  • Implementazione nel core-package di Jsiter di alcune classi "helper" per l'implementazione di elementi funzionali standardizzati (come la gestione di dati in tabella).
  • Flessibilità nella composizione dei layout basata sull'uso di marcature speciali (tag) definite ai vari livelli ('core', moduli e risorse) e su un originale meccanismo di espansione ricorsiva.
  • Granularità dei contenuti: ogni elemento del layout può essere creato ed amministrato da operatori distinti; oltre che a testo, immagini, menu, riferimenti a documenti, ecc., i singoli componenti possono:
    • contenere elementi testuali in XML
    • definire regole di trasformazione XSL/XSLT
    • contenere elementi dinamici (codice JSP) per attività di controllo, business e/o produzione di elementi testuali
    • fare riferimento a contenuti accessibili via HTTP e filtrabili attraverso espressioni regolari o classi Java
    • contenere elementi ad aggionamento automatico della parte client (richieste Ajax temporizzate).

Caratteristiche principali di Jsiter per l'amministrazione

La ricca disponibilità di strumenti di amministrazione fa di JSiter una piattaforma ideale per la gestione di una applicazione web da parte di una estesa comunità di 'operatori'; seguono le principali caratteristiche:
  • Completa amministrabilità via web.
  • Flessibilità e capillarità nell'assegnazione dei permessi e delle funzioni di controllo.
    Il sistema è basato sulla classificazione degli utenti in gruppi e sottogruppi: ogni utente può essere registrato in uno o più gruppi; nell'insieme dei gruppi è definita una relazione gruppo-sottogruppo che implicitamente assegna ad un utente l'appartenenza non solo ai gruppi nei quali è esplicitamente registrato ma anche ai sovra-gruppi degli stessi.
    Il sistema definisce l'entità ruolo alla quale attribuisce permessi di accesso e privilegi amministrativi; ad ogni gruppo si assegnano uno o più ruoli fissando così per ogni utente, come conseguenza della sua appartenenza esplicita o implicita ai gruppi, permessi e privilegi.
    In particolare per ogni singola tipologia di risorsa (elementi di codice, immagini, menu, ...) può essere definito uno schema di amministrazione estremamente capillare che regola:
    • le produzioni personali di utenti in un ruolo;
    • l'accesso degli utenti in un ruolo alle produzioni di altri utenti nello stesso ruolo;
    • l'accesso degli utenti in un ruolo alle produzioni di altri utenti in altri ruoli.
  • Installazione basata su un unico file di tipo JAR.
    Durante la fase di deploy:
    • viene configurato l'accesso alla base dati (via JDBC);
    • viene creata e inizializzata la base dati;
    • si definiscono gruppi e ruoli primari :root, reguser (utenti registrati) e guest (utenti anonimi).
  • Produzione istantanea di un file JAR di installazione.
    Da ogni applicazione JSiter è possibile estrarre un file jar di installazione di una nuova applicazione: ciò semplifica notevolmente la produzione di personalizzazioni e verticalizzazioni della piattaforma dando la possibilità agli sviluppatori di installare e customizzare più versioni della piattaforma da utilizzare come 'modelli' di produzione.
  • Esportazione delle sotto-applicazioni (moduli) con produzione immediata di un unico file JAR di installazione.
  • Installazione delle sotto-applicazioni (moduli) basata su un unico file JAR. Durante il processo di installazione (via web come ogni altra funzione amministrativa):
    1. viene creata e inizializzata la base dati di supporto alla sotto-applicazione;
    2. si esegue la mappatura dei ruoli previsti dall'applicazione (nella sua installazione 'sorgente') su ruoli esistenti nell'applicazione attuale, indicati dall'installatore.
    3. vengono importate tutte le risorse.
  • Installazione di nuove tipolgie di risorsa.
  • Amministrazione delle sotto-applicazioni.
    JSiter considera le sotto-applicazioni (dette 'moduli') come vere e proprie applicazioni fonendo il supporto per:
    • l'aggionamento a release successive per mezzo di upload di un singolo jar-file contenente l'aggionamento;
    • il controllo dell'integrità referenziale e aggionamento automatico della base dati successivo all'installazione di nuova release;
    • le procedure di backup (salvataggio) e restore (ripristino);
    • le procedure di esportazione/importazione (installazione);
    • uno strumento di configurazione (con sintassi XML);
    • la procedura di reset (re-inizializzazione della base dati di supporto al modulo);
  • Gestione dei contenuti 'al volo' basata su uso di tecniche Ajax. Funzionalità resa possibile dalla forte 'granularità' introdotta da Jsiter al livello dei componenti del layout (modellata nel costrutto 'risorsa'); l'effetto è quello di un approccio molto efficiente all'amministrazione dei contenuti del layout: caratterizzato da una relazione di appartenenza ad un preciso utente (il suo proprietario) ogni componente del layout può essere modificato al click dagli utenti accreditati in virtù del ruolo e delle relazioni tra ruoli definite per la specifica risorsa in fase di amministrazione; l'uso di tecniche Ajax rende pressoché istantanea tanto la modifica quanto l'aggionamento del layout.

Perché adottare Jsiter

Obiettivo 'dichiarato' di JSiter è quello di semplificare tanto il processo di sviluppo quanto quello di amministrazione di una web application. Riteniamo che ciò sia possibile, oltre che per quanto sopra elencato, per:
  1. L'uso di un linguaggio multi-piattaforma, Java, fortemente orientato agli oggetti, solido e ampiamente diffuso; ciò garantisce disponibilità di sviluppatori e di librerie di codice.
  2. La modularità dell'architettura di Jsiter: tale caratteristica favorisce, nel processo di sviluppo delle applicazioni, suddivisione delle attività e collaborazione.
  3. La disponibilità di plug-in di terze parti che l'adozione di una piattaforma rende possibile.
t-shirt_bgr

T-shirt di JSiter!!!

Pronte per i prossimi incontri di presentazione e di workshop le t-shirt di JSiter che saranno date in omaggio ai partecipanti.
Un'opportunità
JSiter è un'opportunità che vogliamo condividere con altri sviluppatori e progettisti; sin dal suo prossimo, primo rilascio con licenza freeware JSiter potrà essere adottato liberamente per lo sviluppo e la distribuzione di applicazioni web.
Il nostro staff sosterrà in ogni modo le iniziative di progettazione e sviluppo migliorando le prestazioni della piattaforma, aggiungendo ad essa nuove funzionalità anche su proposta di 'terze parti'.
Valutiamo con piacere e attenzione proposte di partnership per lo sviluppo e la distribuzione di verticalizzazioni della piattaforma.
Crediamo fortemente in un progetto italiano condiviso, finalizzato alla costruzione e alla divulgazione di uno strumento solido, professionale, efficiente per lo sviluppo delle applicazioni web e in tal senso stiamo anche studiando una politica di distribuzione open source della piattaforma che ne stimolerebbe, con maggiore efficacia l'evoluzione.
Invitiamo vivamente il lettore a contattarci.
Grazie per l'attenzione e... buon JSiter a tutti!

Flash news