Cercherò di spiegare la mia domanda con un esempio. Diciamo che stiamo scrivendo un sistema di prenotazioni alberghiere basato sul web usando Java. Avremo diversi metodi di pagamento, ad esempio Paypal, Master Card e Visa. Diversi clienti del nostro prodotto useranno solo metodi di pagamento diversi. (L'hotel XYZ, che è il nostro cliente, desidera utilizzare solo Paypal e l'hotel ABC vuole solo mostrare le opzioni Master Card e Visa).
In questo tipo di scenario, il modo normale di fare le cose sarebbe avere i diversi metodi di pagamento come plugin. E installa solo i plugin necessari in un ambiente cliente.
La mia domanda è, come ottenere ciò in un'applicazione web? Da quanto ho capito, la struttura delle cartelle per un'applicazione web Java è come mostrato qui . Ma se disponiamo di metodi di pagamento collegabili, gli stessi plugin dovrebbero essere in grado di registrare i componenti dell'interfaccia utente piuttosto che averli nell'applicazione principale. (Per esempio, diciamo che c'è il file master_card.jsp che gestisce i pagamenti della carta principale e visa.jsp ecc.). Con il tipo di struttura delle cartelle sopraindicato, mi sembra che dovremmo inserire quei file jsp nella webapp anche se alcuni clienti potrebbero non averne bisogno.
Qualcuno può farmi sapere se
- se la mia osservazione precedente è corretta
- come avere sopra il tipo di struttura di plugin con Java / Java EE?
- ci sono dei framework in Java supporta sopra il genere di cose?