Misc Java Projects

These are various Java projects and utilities you may find useful. Some of them look like they are part of Madura but, while Madura uses them, they are stand alone. All of them are in github and published to maven central.

  • weblogic-jndi-startup Unlike Tomcat, JBoss and Glassfish there is no way to define a custom JNDI object (eg a URL) in Weblogic. This provides a very simple way to do it. We use it to define a lookup to a Madura Bundle directory and/or an application configuration file that lives outside the war file.
  • SchemaTranslatorMavenPlugin a maven plugin that generates a DDL file from JPA annotated classes.
  • Madura DateTime is an extensible way to configure holiday dates, including complex ones like Easter and a simple API to determine if a date is a holiday
  • Madura Docs is useful if you produce documentation in bulk and need a simple, cheap (free!) way to manage it. It is more suitable for developers than for people who insist on a WISIWG interface. Its advantage is that it uses tools you already know well (if you are developer) like Git and XML. We use this for all our release notes and user guides. We store the source of those documents in the project itself and the build generates PDFs and publishes them as maven artifacts along with the jar files etc.
  • madura-resource-loader will automatically load resources into a Spring context bundle. This is particularly useful if the resource files are inside a jar file as, for example, in Madura Objects and Madura Rules.
  • schema-builder extracts an XSD file from an existing database.
  • mobi-template is not actually a Java project but it fits here better than anywhere else. You can use this to build a mobi file suitable for uploading to Amazon. Instructions are included in the project.
  • MaduraConfiguration can be used to connect Apache Commons Configuration with Spring Beans. It is less useful than it was before Spring introduced better support for importing properties so this one is more legacy than useful.
  • madura-dbloader ant task that will run multiple sql files using potentially multiple schemas