Quindi non sono sicuro se questo è davvero il posto giusto per chiedere o anche la domanda giusta ma voglio provarlo.
Requisiti:
Dovremmo avere un database & webservice (o qualcosa di simile) che viene eseguito nel nostro ufficio, i clienti possono accedere all'applicazione via internet ("wohooo"). I clienti devono essere in grado di creare ordini con una semplice maschera. C'è una maschera di base (che tutti i client hanno), ma la maschera può anche avere alcune cose specifiche del cliente. Quando hanno creato l'ordine, un'etichetta con un codice a barre (che contiene il numero dell'ordine) viene stampata localmente (e automaticamente) nel proprio ufficio su una stampante di etichette. Prendono l'etichetta e la mettono su un campione, che poi ci inviano (sul vero post-modo). Otteniamo il campione, scansioniamo il codice a barre sull'etichetta e l'ordine appare nella nostra "schermata di amministrazione". Abbiamo quindi tutte le informazioni di cui abbiamo bisogno sull'ordine (e sul campione). Sicuramente abbiamo anche bisogno di un back-end in cui i nostri membri dello staff possano modificare la maschera specifica del cliente e aggiungere alcuni campi (per client specifici) e altri dati master.
Tutto sommato, questo non sembra troppo complesso. L'unica cosa che si distingue un po ', potrebbe essere la stampa automatica delle etichette al loro posto immagino. Per questo motivo potrebbe non essere possibile utilizzare un'architettura "server-side only" (come jsf o spring con jsp e così via), perché devi avere accesso direttamente alle loro stampanti locali.
Quindi ho pensato che un buon modo è forse quello di usare Spring (con Hybernate, JavaBeans (JEE)) insieme a JavaFX che consentirebbe di accedere alle stampanti locali e così via. Pensavo che avremmo potuto creare un webinstaller / webstart per l'applicazione, che installa i client JavaFX per i client. Il client JavaFX potrebbe quindi comunicare con il server web (molla) e inserire l'ordine lì, ottenere tutte le informazioni richieste come il numero dell'ordine per la stampa dell'etichetta e così via. Per il back-end nel nostro ufficio potrei anche immaginare di usare JavaFX ...
Allora, dov'è la mia domanda?
È semplice: è un buon modo per farlo? Sono queste tecnologie adeguate per farlo? O è già complicato e questo potrebbe essere realizzato in un modo molto più semplice? Se sì, cosa suggerisci?
Ovviamente voglio anche concentrarmi su estensibilità e manutenibilità facili.