Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
The example shows usage of an ORM / SQL approach using Apache Cayenne, server side application using Apache CXF (WS/REST) and Apache Wicket, client side using Eclipse RCP. For the server side application Apache Tomcat and OpenEJB is used.
The principle architecture is:
Assuming you have a set of data to manage via different channels (fat client gui, web interfaces, web services, batch jobs, ...) this example application shows how to use an object relational model (ORM) approach using Apache Cayenne to create the application. Using an ORM provides already an abstraction to concrete databases. Apache Cayenne offers the ability to design and create the database. First ensure you have a Database up and running. You will create the components below in order to get the example application running. The application uses a set of communication protocols like RESTful, Web Services and EJB's between the client and the server. EJB's are restricted to Java, so it is not a favorite if you want to mix with other languages.
This example has a simple user/role design to manage access and a person table with a log table to manage a sort of very simple address book. It is based on the YafraDb database schema.
The learning curve to get a Java application should be less painful and you will have all flexibility still to choose in which direction you will need to focus. You can mix as well between Java and other languages, mainly done between client and server.
- ServerCore based on the YafraDb schema
- direct handlers (working in the SAME JVM):
- Console client - mainly used to test
- Wicket //new since 1.0-M2//
- WS/REST //new with 1.0-M2//
- EJB distributed handlers:
- EJB with fat client RCPclient and a console test client
- Fat client
- Eclipse RCP client
Apache Wicket Demo client
Development / technical information
Follow the guidelines for Java Development.