Requirements  |  Contact

Technical requirements


Application to test various technologies.

Application example

The application must follow development rules defined by Orange.


Because the application sample but be applicable to the various contexts the designers/developpers will face, the application must be deployable on many different platforms without code modification (at worse parameterization).

The pluggable aspects of the application are :

  • J2EE platform, with support for deployment on :
  • Pluggable persistence layer
    • JDBC : SQL92-compatible RDBMS, with support for :
      • MySQL 3.23
      • Oracle 8.1.7
    • JDO, with support for :
      • Apache OBJ
      • Libelis LiDO

Warning: Note that some pluggability aspects are only there to match the various technical contexts the designers/developpers could face, and are not there as a recommended guideline. For example designing an application for using various persistence paradigms may be anti-productive and not match real-world requirements. An application architecture should usually be designed for only one persistence paradigm, not many.


The application must provide answers/examples for the following common technical issues :

  • J2EE
    • form authentication
  • Pattern
    • instance security based on roles (façade)
  • integration
    • developping DAO
    • Composite/Second Class Object (O)
  • JSP
    • Developing a taglib
  • Together
    • generating struts-config from activity diagram
  • Struts
    • back/reload problem (transaction token)
    • client-side (JavaScript) form validation
    • server-side form validation (TODO)
    • displaying form errors
    • displaying messages
    • internationalization (message ressources)
    • nested tags
    • Dispatch Action
    • Forward action
  • JDBC
    • Get unique identifier (generate primary keys for new objects)
    • How to make SCO persistent
  • JDO
    • How to migrate from JDBC
    • How to perform SQL queries from a JDO context
    • How to make SCO persistent