|
|
pl:miw:2009:piw09_j2eecases [2009/06/20 21:09] piw09 |
pl:miw:2009:piw09_j2eecases [2019/06/27 15:50] |
====== CasesJ2EE ====== | |
===== Autorzy ===== | |
* Grzegorz Leśniakiewicz | |
* Tomasz Maruszak | |
| |
===== Opis projektu ===== | |
Projekt polega na wyszukaniu aplikacji napisanej w technologii j2ee, zrealizowanej zgodnie z modelem MVC oraz na zapisaniu logiki biznesowej w postaci reguł. | |
| |
===== Sprint ===== | |
=== Wykorzystanie biznesowe === | |
Sprint jest to aplikacja stworzona na potrzeby wydziału EAIIE. Umożliwia obsługę rejestracji użytkowników, tworzenia newsów, zarządzania artykułami, zarządzania kalendarzem. Dodatkowo został stworzony moduł e-Protokół, umożliwiający automatyzację procesu obsługi protokołów w obrębie wydziału Eaiie. | |
E-protokół, obsługuje przepływ e-protokołów od momentu stworzenia, lub importu poprzez obsługę w dziekanacie, dziekanatach katedr, przez prowadzących zajęcia do momentu zamknięcia, wydruku i eksportu e-protokołu. | |
| |
Aplikacja obecnie jest wdrożona na środowisku developerskim. Główne funkcjonalności systemu zostaną wdrożone produkcyjnie w najbliższym czasie, natomiast wdrożenie produkcyjne modułu e-Protokołu przewidziane jest na wrzesień bieżącego roku. | |
| |
=== Technologia === | |
Aplikacja jest napisana w technologii j2ee. Model MVC został zaimplementowany za pomocą komponentów: | |
* Model - logika biznesowa, wykorzystane zostały sesyjne, stanowe beany | |
* View - warstwa prezentacji została stworzona w oparciu o technologie facelets | |
* Controller - za kontrole i obsługę działania aplikacji odpowiedzialny jest framework Seam | |
| |
Aplikacja jest uruchamiana na serwerze aplikacji JBoss 4.2.2. | |
| |
| |
=== Opisanie projektu w postaci reguł === | |
| |
EProtocolPrintBean | |
| |
unlockEProtocol(EProtocol) | |
{ | |
rule1: | |
if count(CourseUserRel, EProtocol) > 0 | |
EProtocol.state is ACCEPTED | |
else | |
EProtocol.state is NEW | |
rule2: | |
if EProtocol.closeDate is not null | |
EProtocol.closeDate is null | |
rule3: | |
if EProtocol is not null | |
persist(EProtocol) | |
} | |
| |
Bean.metoda(Class parameter1, Class parameter2) | |
if parameter1.state = CLOSED | |
then parameter1.state is NEW | |
else parameter1.state is ACCEPTED | |
if parameter1.state = CLOSED | |
then persist(parameter2) | |
| |