Мы классные, нас не отчислят...
Разработать приложение на базе JavaServer Faces Framework, которое осуществляет проверку попадания точки в заданную область на координатной плоскости.
Приложение должно включать в себя 2 facelets-шаблона - стартовую страницу и основную страницу приложения, а также набор управляемых бинов (managed beans), реализующих логику на стороне сервера.
- "Шапку", содержащую ФИО студента, номер группы и номер варианта.
- Интерактивные часы, показывающие текущие дату и время, обновляющиеся раз в 5 секунд.
- Ссылку, позволяющую перейти на основную страницу приложения.
- Набор компонентов для задания координат точки и радиуса области в соответствии с вариантом задания. Может потребоваться использование дополнительных библиотек компонентов - ICEfaces (префикс "ace") и PrimeFaces (префикс "p"). Если компонент допускает ввод заведомо некорректных данных (таких, например, как буквы в координатах точки или отрицательный радиус), то приложение должно осуществлять их валидацию.
- Динамически обновляемую картинку, изображающую область на координатной плоскости в соответствии с номером варианта и точки, координаты которых были заданы пользователем. Клик по картинке должен инициировать сценарий, осуществляющий определение координат новой точки и отправку их на сервер для проверки её попадания в область. Цвет точек должен зависить от факта попадания / непопадания в область. Смена радиуса также должна инициировать перерисовку картинки.
- Таблицу со списком результатов предыдущих проверок.
- Ссылку, позволяющую вернуться на стартовую страницу.
- Все результаты проверки должны сохраняться в базе данных под управлением СУБД PostgreSQL.
- Для доступа к БД необходимо использовать JPA с ORM-провайдером на усмотрение студента. (я использовал Hibernate)
- Для управления списком результатов должен использоваться Session-scoped Managed Bean.
- Конфигурация управляемых бинов должна быть задана с помощью параметров в конфигурационном файле.
- Правила навигации между страницами приложения должны быть заданы в отдельном конфигурационном файле.
Для доступа к БД используем datasource, чтоб лучше было...
Для этого нужно в каталоге wildfly, в файле standalone/configuration/standalone.xml в разделе прописать свой datasource на который мы ссылаемся в persistence.xml, выглядит это примерно так:
<datasource jndi-name="java:jboss/datasources/ds-web3-1" pool-name="ds-web3-1" enabled="true" use-java-context="true" statistics-enabled="true">
<connection-url>jdbc:postgresql://pg:5432/studs</connection-url>
<driver>postgresql-42.2.19.jar</driver>
<security>
<user-name>sТАБЕЛЬНЫЙ_НОМЕР</user-name>
<password>ПАРОЛЬ_ОТ_ГЕЛИОСА</password>
</security>
</datasource>
Для того чтобы, таблицы сами создавались в persistence.xml там написан property:
<property name="hibernate.hbm2ddl.auto" value="update">