2009-03-12 17 views
6

Utilizzo Java per lo sviluppo lato client con Swing. Adoro Swing; Credo che sia uno dei migliori framework GUI lì. Quello che mi manca, tuttavia, è il supporto per la convalida dichiarativa. Come this snippet da XForms.Convalida dichiarativa dei moduli in Java/Swing

Conoscete qualche libreria che consente di convalidare l'inserimento di dati nei moduli in modo dichiarativo, non scrivendo brutti ascoltatori di documenti di convalida per ogni componente lì?

+0

Non direi lato client Swing è obsoleto. Probabilmente è una parte significativa degli sviluppatori su cui lavorare. –

+0

@mmyers: La bella gente ha ancora buone maniere. Penso che sia culturale, in alcuni posti questo è ancora forte. Vorrei riverificare la tua modifica tranne che ... Non posso più. : P – OscarRyz

+0

@Oscar: questo è stato discusso molte volte e Jeff Atwood è favorevole alla rimozione di saluti e firme se stai già modificando per qualche motivo: http://blog.stackoverflow.com/2009/03/the- grande-edit-guerre/# comment-15830. –

risposta

6

Si potrebbe provare una delle implementazioni di JSR 303 Bean Validation. Non penso che sia ancora finalizzato, ma ci sono alcune implementazioni in giro come Hibernate Validator e Agimatec Validation. Non ho nemmeno provato, ma leggere alcuni esempi di come verrà utilizzato Bean Validation lo rende promettente. Ecco un interview con il piombo della specifica. Quello che mi piace di più della proposta è che le regole di convalida possono essere riutilizzate in diversi livelli e con diversi framework. Puoi scegliere tra annotazioni e xml per fare la 'dichiarazione'.

Infine, è possibile controllare Swing Java Builders che fornisce un modo dichiarativo per la definizione di GUI e l'esecuzione di convalida e associazione di dati con Swing.

+0

Non so se ottengo bug di IE o cosa, ma il primo link continua a funzionare nel secondo link (quindi tutto tra "JSR 303" e "around like" fa parte del collegamento). Con le modifiche di Joel Coehoorn, il primo collegamento non era affatto un collegamento - sembrava "http://jcp.org/en/jsr/detail?id=303>JSR 303" ... –

+0

Forse insieme a qualcosa come Beans Binding o JGoodies Binding keuleJ

0

Basta scrivere brutti modelli di convalida una sola volta. Puoi loro usarli in modo "dichiarativo". Le attuali librerie Swing utili sono una domanda più difficile.

+1

Lo so. Ma sto affrontando un progetto con un sacco di moduli (e regole di convalida), quindi preferirei non reinventare la ruota. –

+0

Che cosa c'entra il numero di moduli? –

+0

Sta reinventando la ruota. Perché hai bisogno di scrivere un validatore di indirizzi e-mail? Queste cose dovrebbero essere già implementate. – umpirsky