kongcurrent provides an easy-to use helper to assist debugging issues which cause exceptions under concurrent access. It was inspired by a problem in which a non-thread-safe Map object held by a third party framework was accidentally shared between threads, causing a ConcurrentModificationException. The helper (a "monitor") creates a proxied version of an object implementing some interface. The proxy can track invocations of the objects' methods and can report on potential concurrent access on the object. This can be used to help find code paths which concurrently access the object through its interface methods. By design, the helper is extensible, and can be adapted to more specific needs.
OpenLaszlo Schema Generator provides methods to enhance LZX-Markup from the OpenLaszlo RIA with full schema/namespace support and validation. You can run it from the command line or from inside your project using ANT. The JAR contains tasks to generate an XSD from your project LZX files; by doing that, you have full Schema Validation in Eclipse, and it will show you all your XML schema errors. The validation is aware of ALL tags and attributes: the LZX base components (+incubator) and your project specific code. Further, you get content-sensitive drop down menus for Tags and Attributes.
uimaFIT provides Java annotations for describing UIMA components which can be used to directly describe the UIMA components in Java code without the need for traditional UIMA XML descriptors. This greatly simplifies refactoring a component definition (e.g., changing a configuration parameter name). uimaFIT also makes it easy to instantiate UIMA components without using XML descriptor files by providing convenient factory methods. This makes uimaFIT an ideal library for testing UIMA components because the component can be easily instantiated and invoked without requiring a descriptor file to be created first. uimaFIT is very useful in research environments in which programmatic/dynamic instantiation of UIMA pipelines can simplify experimentation. For example, when performing 10-fold cross-validation across a number of experimental conditions, it can be quite laborious to create a different set of descriptor files for each run, or even a script which generates such descriptor files. uimaFIT is type system agnostic and does not depend on (or provide) a specific type system. This project has been superseded by the Apache uimaFIT project.
Evo Class Index is an annotation processor that at compile-time generates an index of classes implementing a given interface, classes annotated by given annotation, or placed in a common package. Its small run-time performance impact makes it an interesting alternative to any annotation scanning library like Reflections or Scannotations. The generated indexes are compatible with the ServiceLoader framework, so you will never need to create the files in META-INF/services by hand.
tools4j-config supports long-running enterprise Java applications with a framework for handling configuration changes without restarting. It also aids in developing applications which are decoupled from knowing how and where to store, retrieve, and validate configurations. The aim is to liberate applications to use configurations seamlessly on the terms of their particular environment, without constraining them to Java SE, EE, OSGi, Spring, CDI, or any other programming model or framework.
jWeb1T is an Java tool for efficiently searching n-gram data in the Web 1T 5-gram corpus format. It is based on a binary search algorithm that finds the n-grams and returns their frequency counts in logarithmic time. As the corpus is stored in many files, a simple index is used to retrieve the files containing the n-grams.
Rythm Template Engine is a general-purpose, high-performance Java template engine which uses a Razor-like syntax. It is 2-to-3 times faster than Velocity. It supports variables, expression evaluation, control flow (if-else-if), looping, template inheritance(decoration/layout), and many features. There is a Play!Framework plugin based on Rythm. You can use Rythm in any place to generate any type of text file, including HTML, XML, Json, SQL, and any kind of source code.