Velocity is a Java-based template engine. It permits anyone to use the simple yet powerful template language to reference objects defined in Java code. When Velocity is used for Web development, Web designers can work in parallel with Java programmers to develop Web sites according to the Model-View-Controller (MVC) model, meaning that Web page designers can focus solely on creating a site that looks good, and programmers can focus solely on writing top-notch code. Velocity separates Java code from the Web pages, making the web site more maintainable over the long run and providing a viable alternative to Java Server Pages (JSPs) or PHP. Velocity also provides template services for the Turbine Web application framework, making a template service that allows Web applications to be developed according to a true MVC model.
ALF is a native logging framework for Java with the unique advantage of supporting automated method tracing. This platform-independent library allows developers to debug their applications quickly without adding any code. By simply adding an argument to the JVM, you will get immediate method tracing, which can be filtered by package or class and sent to the console or a file. You can also use the ALF logging library to integrate information, warning, error, or exception statements into the output.
Barcode4J is a barcode generation package. The following symbologies are currently implemented: Interleaved 2 of 5, Code 39, Codabar, Code 128, UPC-A and UPC-E (with supplementals), EAN-13 and EAN-8 (with supplementals), EAN-128, POSTNET, Royal Mail Customer Barcode, PDF417, and DataMatrix. Supported output formats are SVG, EPS (Encapsulated PostScript), Bitmap images (such as PNG or JPEG), and Java2D (AWT). Additional features include two APIs (XML-oriented and Bean-style), a Servlet with support for SVG, EPS, and bitmap output, a command-line interface, a demonstration applet, and extensions for Apache Xalan-J, SAXON, and Apache FOP.
Better ASN is a Java ASN.1 API that focuses on speed and efficiency rather than extended functionality. This strategy prescribes one-pass decoding and near 100% encoding efficiency for typical ASN.1 usage patterns. Although BASN was developed for use by a Certificate Authority, the release comes packaged with an ASN.1 to Java compiler, which can be used to generate Java implementations of ASN.1 structures. This allows the API to be used for any Java application that may require ASN.1 decoding/manipulation/encoding.
Doodle is a desktop search engine for Linux. It searches your hard drive for files using pattern matching on meta-data. It extracts file-format specific meta-data using libextractor and builds a suffix tree to index the files. The index can then be searched rapidly. It is similar to locate, but can take advantage of information such as ID3 tags. It is possible to do full-text indexing using the appropriate libextractor plugins. It also supports using FAM to keep the database up-to-date.
Dozer is a powerful, yet simple Java Bean to Java Bean mapper that recursively copies data from one object to another. Typically, these Java Beans will be of different complex types. Dozer supports simple property mapping, complex type mapping, bi-directional mapping, implicit-explicit mapping, as well as recursive mapping. This includes mapping collection attributes that also need mapping at the element level. It not only supports mapping between attribute names, but also conversion between types. Many conversion scenarios are supported out of the box, but custom conversions can be specified via XML.
FDT is an application for efficient data transfers that is capable of reading and writing at disk speed over wide area networks (with standard TCP). It can be used to stream a large set of files across the network, so a large dataset composed of thousands of files can be sent or received at full speed, without the network transfer restarting between files. It is written in Java, runs an all major platforms, and is easy to use.
FireStorm/DAO is a Java Code Generator that can import existing database schemas (from a SQL script or from a live JDBC connection) and can then generate a complete persistence tier. It generates Java source code and configuration files that developers would otherwise have to write by hand, and that is compliant with the Data Access Object (DAO) design pattern.