Skip to content

jaxio/javaee-lab

Repository files navigation

Java EE 7 Celerio Templates + Demo

NOTE: This is still a work in progress, we are looking for feedbacks from Java EE 7 experts.

For the demo, Celerio, a code generator, reverses this sample SQL schema and generate a full S-CRUD Java EE 7 web application.

S-CRUD means: Search, Create, Read, Update, Delete

The code generation templates that Celerio interprets to generate the demo web application are present in the following folder:

You may edit the file celerio-template-packs.xml to choose between a conversation-based front end or a simpler front end version. By default, the simpler front end is enabled.

The generated application depends on the following library, which for convenience is part of the JavaEE Lab github project.

The generated application runs on WildFly 10, it is a pure Java EE 7 application, it relies on:

  • JPA with Hibernate
  • Search with Hibernate Search / Lucene
  • JSF 2.2
  • Primefaces 5.3 / Omnifaces 2.1
  • Shiro for authentication

It also relies on house-made solution for:

  • JSF conversation (depending on if you choose this front-end version or not)

Requirements

  • Java 8
  • Maven 3.1.1
  • Latest WildFly version (we currently use 10.0.0-CR4)

How to run it

Step 0: build the JPA query by example lib

cd javaee7-jpa-query-by-example
mvn clean install

Step 1: start WildFly

From wildfly distribution root folder, run:

./bin/standalone.sh

Step 2: reverse the sample SQL schema and generate the source code

From this folder run:

cd demo
mvn -Pdb,metadata,gen generate-sources

Step 3: deploy on WildFly

From the demo folder:

mvn wildfly:undeploy  <== if you deployed previously, undeploy it first

mvn wildfly:deploy

Step 4: access the app and play

http://localhost:8080/demo

Extra tip: delete generated code

From the demo folder:

mvn -PcleanGen clean

Contribute

You may contribute in several ways:

  • By using the generated app and trying to find its limits
  • By reviewing the generated code, is Java EE 7 properly used ?
  • By trying to generate a project using your own database schema

You may of course report issues and/or submit pull requests.

Limitations

  • Cache does not seem to work (ehcache)
  • LocalDate not supported by PrimeFaces p:calendar, even with our converter!

About

Code generation Templates for pure Java EE 7 application

Resources

License

Stars

14 stars

Watchers

7 watching

Forks

Packages

 
 
 

Contributors