A
Ajax
Aspect-Oriented
 
B
Bloggers
Build Systems
Business Intelligence
ByteCode
 
C
CMS
Cache Solutions
Charting & Reporting
Chat Servers
Code Analyzers
Code Beautifiers
Code Coverage
Collections
Command Line
Connection Pools
Crawlers
 
D
Databases
 
E
EJB Servers
ERP & CRM
ESB
Eclipse Plugins
Expression Languages
 
F
Financial Soft
Forum Soft
 
G
General Purpose
Geospatial
Groupware
 
H
HTML Parsers
 
I
IDEs
Installers
Inversion of Control
Issue Tracking
 
J
J2EE Frameworks
JDBC
JMS
JMX
JSP Tag Libraries
Job Schedulers
 
L
Localization
Logging Tools
 
M
Mail Clients
 
N
Network Clients
Network Servers
 
O
Obfuscators
 
P
PDF Libraries
Parser Generators
Persistence
Portals
Profilers
Project Management
 
R
RSS & RDF Tools
Rule Engines
 
S
SQL Clients
Scripting Languages
Search Engines
Security
Source Control
Swing
 
T
Template Engines
Testing Tools
Text Processing
 
U
UML & Modeling
 
V
Validation
 
W
Web Frameworks
Web Mail
Web Servers
Web Services
Web Testing
Wiki Engines
Workflow Engines
 
X
XML Parsers
XML UI Toolkits
 

Open Source Software in Java

Open Source Ajax Frameworks

  • Google Web Toolkit - Google Web Toolkit (GWT) is an open source Java software development framework that makes writing AJAX applications like Google Maps and Gmail easy for developers who don't speak browser quirks as a second language. Writing dynamic web applications today is a tedious and error-prone process; you spend 90% of your time working around subtle incompatibilities between web browsers and platforms, and JavaScript's lack of modularity makes sharing, testing, and reusing AJAX components difficult and fragile. GWT lets you avoid many of these headaches while offering your users the same dynamic, standards-compliant experience. You write your front end in the Java programming language, and the GWT compiler converts your Java classes to browser-compliant JavaScript and HTML.

Open Source Aspect-Oriented Frameworks in Java

  • AspectWerkz - AspectWerkz is a dynamic, lightweight and high-performant AOP framework for Java. AspectWerkz offers both power and simplicity and will help you to easily integrate AOP in both new and existing projects. AspectWerkz utilizes runtime bytecode modification to weave your classes at runtime. It hooks in and weaves classes loaded by any class loader except the bootstrap class loader. It has a rich and highly orthogonal join point model. Aspects, advices and introductions are written in plain Java and your target classes can be regular POJOs. You have the possibility to add, remove and re-structure advice as well as swapping the implementation of your introductions at runtime. Your aspects can be defined using either an XML definition file or using runtime attributes.

Open Source Bloggers in Java

  • SnipSnap - SnipSnap is a free and easy to install weblog and wiki tool written in Java.

Open Source Build Systems in Java

  • Ant - Ant is a software tool for automating software build processes. It uses XML to describe the build process and its dependencies.

Open Source Business Intelligence Tools in Java

  • Talend - Talend is a provider of open source data integration software. Talend offers open, innovative and powerful data integration solutions, used primarily for integration between operational systems, ETL, and migration by organizations of all sizes.

Open Source ByteCode Libraries in Java

  • Javassist - Javassist (Java programming assistant) is a load-time reflective system for Java. It is a class library for editing bytecodes in Java; it enables Java programs to define a new class at runtime and to modify a class file before the JVM loads it. Unlike other similar systems, Javassist provides source-level abstraction; programmers can modify a class file without detailed knowledge of the Java bytecode. They do not have to even write an inserted bytecode sequence; Javassist instead can compile a fragment of source text on line (for example, just a single statement). This ease of use is a unique feature of Javassit against other tools.

Open Source Content Management Systems (CMS) in Java

  • DSPACE - DSpace is a groundbreaking digital library system that captures, stores, indexes, preserves and redistributes the intellectual output of an organization's researchers in digital formats. Developed jointly by MIT Libraries and Hewlett-Packard (HP), DSpace is now freely available to organizations worldwide as an open source system that can be customized and extended. DSpace is an open source software system that enables institutions to: - Capture and describe digital works using a custom workflow process - Distribute an institution's digital works over the web, so users can search and retrieve items in the collection - Preserve digital works over the long term To collect, distribute, and preserve research materials in increasingly complex digital formats is a time-consuming and expensive chore for individual faculty and their departments, labs, and centers to manage themselves. The DSpace system provides a way to manage these research materials and publications in a professionally maintained repository to give them greater visibility and accessibility over time.

Open Source Cache Solutions in Java

  • OSCache - OSCache is a widely used, high performance J2EE caching framework. In addition to it's servlet-specific features, OSCache can be used as a generic caching solution for any Java application. A few of its generic features include:

     * Caching of Arbitrary Objects - You are not restricted to caching portions of JSP pages or HTTP requests. Any Java object can be cached.
     * Comprehensive API - The OSCache API gives you full programmatic control over all of OSCache's features.
     * Persistent Caching - The cache can optionally be disk-based, thereby allowing expensive-to-create data to remain cached even across application restarts.
     * Clustering - Support for clustering of cached data can be enabled with a single configuration parameter. No code changes required.
     * Expiry of Cache Entries - You have a huge amount of control over how cached objects expire, including pluggable RefreshPolicies if the default functionality does not meet your requirements.

Open Source Charting & Reporting Tools in Java

  • JFreeChart - JFreeChart is a free Java class library for generating charts, including:

     * pie charts (2D and 3D)
     * bar charts (regular and stacked, with an optional 3D effect)
     * line and area charts
     * scatter plots and bubble charts
     * time series, high/low/open/close charts and candle stick charts
     * combination charts
     * Pareto charts
     * Gantt charts
     * wind plots, meter charts and symbol charts
     * wafer map charts

Open Source Chat Servers in Java

  • LlamaChat - LlamaChat is designed to provide an open source, chat server/client pair for use on the web. It is written in java and supports many advanced chat functionality including secure connections, emoticons, administrative class users, and more.

Open Source Code Analyzers in Java

  • FindBugs - FindBugs looks for bugs in Java programs. It can detect a variety of common coding mistakes, including thread synchronization problems, misuse of API methods, etc.

Open Source Code Beautifiers

  • Jalopy - Jalopy is a source code formatter for the Sun Java programming language. It layouts any valid Java source code according to some widely configurable rules; to meet a certain coding style without putting a formatting burden on individual developers.

Open Source Code Coverage Tools in Java

  • Cobertura - Cobertura is a free Java tool that calculates the percentage of code accessed by tests. It can be used to identify which parts of your Java program are lacking test coverage. It is based on jcoverage. Features of Cobertura:

     * Can be executed from ant or from the command line.
     * Instruments Java bytecode after it has been compiled.
     * Can generate reports in HTML or XML.
     * Shows the percentage of lines and branches covered for each class, each package, and for the overall project.
     * Shows the McCabe cyclomatic code complexity of each class, and the average cyclomatic code complexity for each package, and for the overall product.
     * Can sort HTML results by class name, percent of lines covered, percent of branches covered, etc. And can sort in ascending or decending order.

Open Source Collections Libraries in Java

  • Commons Primitives - Apache Jakarta Commons Primitives provides a collection of types and utilities optimized for working with Java primitives (boolean, byte, char, double, float, int, long, short). Generally, the Commons-Primitives classes are smaller, faster and easier to work with than their purely Object based alternatives.

Open Source Command Line Interpreters in Java

  • JArgs - JArgs is a comprehensive command line option parsing suite, for use by Java programmers. Initially, parsing compatible with GNU-style 'getopt' is provided. JArgs is easy to use, thoroughly tested and well documented.

Open Source Database Connection Pools

  • Jakarta DBCP - DBCP is a database connection pool that relies on code in the Jakarta commons-pool package to provide the underlying object pool mechanisms that it utilizes. Applications can use the DBCP component directly or through the existing interface of their container / supporting framework.

Open Source Crawlers in Java

  • Heritrix - Heritrix is the Internet Archive's open-source, extensible, web-scale, archival-quality web crawler project.

Open Source Database Engines in Java

  • Apache Derby - Apache Derby, an Apache DB subproject, is an open source relational database implemented entirely in Java and available under the Apache License, Version 2.0. Some key advantages include:

     * Derby has a small footprint -- about 2 megabytes for the base engine and embedded JDBC driver.
     * Derby is based on the Java, JDBC, and SQL standards.
     * Derby provides an embedded JDBC driver that lets you embed Derby in any Java-based solution.
     * Derby also supports the more familiar client/server mode with the Derby Network Client JDBC driver and Derby Network Server.
     * Derby is easy to install, deploy, and use.

Open Source EJB Servers

  • OpenEJB - A modular, configurable, and extendable EJB Container System that comes with Servers for both Local and Remote access

Open Source ERP & CRM Software

  • OFBiz - The Open For Business (OFBiz) project is an open source enterprise automation software project licensed under the MIT Open Source License. By open source enterprise automation we mean: Open Source ERP, Open Source CRM, Open Source E-Business / E-Commerce, Open Source SCM, Open Source MRP, Open Source CMMS/EAM, and so on.

Open Source Enterprise Service Bus in Java

  • ServiceMix - Apache ServiceMix is an open source distributed Enterprise Service Bus (ESB) and SOA toolkit built from the ground up on the semantics and APIs of the Java Business Integration (JBI) specification JSR 208 and released under the Apache license. ServiceMix is lightweight and easily embeddable, has integrated Spring support and can be run at the edge of the network (inside a client or server), as a standalone ESB provider or as a service within another ESB. You can use ServiceMix in Java SE or a Java EE application server. ServiceMix uses ActiveMQ to provide remoting, clustering, reliability and distributed failover.

Open Source Eclipse Plugins

  • Argus Codewatch - Argus is a highly integrated Eclipse plug-in. The purpose of this plug-in is to add additional Errors and Warnings to the Eclipse Framework, assisting Java programmers to create bug free, high quality code. Obvious problems such as syntax errors are already detected by the Java compiler, and therefore will not be checked by Argus Codewatch. Instead, the plug-in tries to detect bad coding practices (such as unconditional loops) or violations of contract (such as when overriding Object.equals()). This plug-in also provides a framework for adding new checks. This allows developers to easily add new checks as they see fit, or to provide quickfixes to existing checks.

Open Source Expression Languages in Java

  • Jakarta JXPath - JXPath defines a simple interpreter of an expression language called XPath. JXPath applies XPath expressions to graphs of objects of all kinds: JavaBeans, Maps, Servlet contexts, DOM etc, including mixtures thereof.

Open Source Financial Software in Java

  • JMoney - JMoney is a personal finance manager. It supports multiple accounts in different currencies, double entry banking, income/expense categories, various reports and Quicken file (QIF) exchange. It is built using the Eclipse RCP and can be extended using plug-ins.

Open Source Forum Software in Java

  • JForum - JForum is a powerful and robust discussion board system implemented in Javatm. It provides an attractive interface, an efficient forum engine, an easy to use administrative panel, an advanced permission control system and much more.

Open Source General Purpose Libraries in Java

  • Joda-Time - Joda-Time provides a quality replacement for the Java date and time classes. The design allows for multiple calendar systems, while still providing a simple API. The 'default' calendar is the ISO8601 standard which is used by XML. The Gregorian, Julian, Buddhist and Coptic systems are also included, and we welcome further additions. Supporting classes include time zone, duration, format and parsing.

Open Source Geospacial Software in Java

  • deegree - deegree is a Java Framework offering the main building blocks for Spatial Data Infrastructures. Its entire architecture is developed using standards of the Open Geospatial Consortium (OGC) and ISO/TC 211 (ISO Technical Committee 211 -- Geographic Information/Geomatics). deegree encompasses OGC Web Services as well as Clients and security components.

Open Source Groupware Software in Java

  • Coefficient - Coefficient is a scalable open source project based collaboration platform that can run in J2EE and web application containers. It currently provides basic collaboration tools as hot deployable modules. It also provides a workflow engine to help guide projects through their development cycle.

Open Source HTML Parsers in Java

  • TagSoup - TagSoup is a SAX-compliant parser written in Java that, instead of parsing well-formed or valid XML, parses HTML as it is found in the wild: nasty and brutish, though quite often far from short. TagSoup is designed for people who have to process this stuff using some semblance of a rational application design. By providing a SAX interface, it allows standard XML tools to be applied to even the worst HTML.

Open Source IDEs in Java

  • Eclipse - Eclipse is a kind of universal tool platform - an open extensible IDE for anything and nothing in particular.

Open Source Installers Generators in Java

  • Launch4J - Windows native executable (.exe) java application wrapper. Offers native splash screen, application icon, search for JRE or use bundled one, feedback on startup failure, passes command line arguments.

Open Source Inversion of Control Containers

  • HiveMind - HiveMind is a services and configuration microkernel: Services: HiveMind services are POJOs (Plain Old Java Objects) that can be easily accessed and combined. Each service defines a Java interface it implements. HiveMind takes care of instantiating and configuring each service just as necessary. HiveMind lets services collaborate with each other via dependency injection. Configuration: HiveMind allows you to provide complex configuration data to your services in a format you define. HiveMind will integrate the contributions of such data from multiple modules and convert it all into data objects for you. HiveMind configurations allow for powerful, data-driven solutions which combine seemlessly with the service architecture. Microkernel: HiveMind is a framework for creating applications, not an application, or even an application server, itself. The 'core' of HiveMind is the startup logic that knows how to parse and understand the module deployment descriptors, and use that information to instantiate and initialize all those services and configurations. In HiveMind, a service is an implementation of a Java interface. Unlike other SOAs (Service Oriented Architectures, such as a SOAP, or EJBs), HiveMind is explicitly about combining Java code within a single JVM. HiveMind uses a descriptor to describe different services, their lifecycles, and how they are combined. HiveMind takes care of thread-safe, just-in-time creation of singleton service objects so your code doesn't have to.

Open Source Issue Tracking Software in Java

  • Scarab - The goal of the Scarab project is to build an Artifact tracking system that has the following features:

     * A full feature set similar to those found in other Artifact tracking systems: data entry, queries, reports, notifications to interested parties, collaborative accumulation of comments, dependency tracking
     * In addition to the standard features, Scarab has fully customizable and unlimited numbers of Modules (your various projects), Artifact types (Defect, Enhancement, Requirement, etc), Attributes (Operating System, Status, Priority, etc), Attribute options (P1, P2, P3) which can all be defined on a per Module basis so that each of your modules is configured for your specific tracking requirements.
     * Built using Java Servlet technology for speed, scalability, maintainability, and ease of installation.
     * Import/Export ability via XML allowing for easy migration from other systems (e.g. Bugzilla).
     * Modular code design that allows manageable modifications of existing and new features over time.
     * Fully customizable through a set of administrative pages.
     * Easily modified UI look and feel.
     * Can be integrated into larger systems by re-implementing key interfaces.
     * Is a ready to use issue management system

Open Source J2EE Frameworks

  • Spring - Spring is a layered Java/J2EE application framework, based on code published in Expert One-on-One J2EE Design and Development

Open Source JDBC Drivers

  • C-JDBC - C-JDBC is a free open source database cluster middleware that allows any Java application (standalone application, servlet or EJB container, ...) to transparently access a cluster of databases through JDBC(tm). The database is distributed and replicated among several nodes and C-JDBC balances the queries among these nodes. C-JDBC handles node failures and provides support for checkpointing and hot recovery.

Open Source JMS

  • ActiveMQ - ActiveMQ is an open source, Apache 2.0 licenced Message Broker and JMS 1.1 implementation which integrates seamlessly into Geronimo, light weight containers and any Java application.

Open Source JMX Tools

  • MX4J - MX4J is a project to build an Open Source implementation of the Java(TM) Management Extensions (JMX) and of the JMX Remote API (JSR 160) specifications, and to build tools relating to JMX.

Open Source JSP Tag Libraries

  • JPivot - JPivot is a JSP custom tag library that renders an OLAP table and let users perform typical OLAP navigations like slice and dice, drill down and roll up. It uses Mondrian as its OLAP Server.

Open Source Job Schedulers in Java

  • Quartz - Quartz is an open source job scheduling system that can be integrated with, or used along side virtually any J2EE or J2SE application. Quartz can be used to create simple or complex schedules for executing tens, hundreds, or even tens-of-thousands of jobs; jobs whose tasks are defined as standard Java components or EJBs.

Open Source Localization & Internationalization Tools

  • ICU4J - ICU4J is a java libraries providing Unicode and Globalization support for software applications. Here are a few highlights of the services provided by ICU:

     * Code Page Conversion: Convert text data to or from Unicode and nearly any other character set or encoding. ICU's conversion tables are based on charset data collected by IBM over the course of many decades, and is the most complete available anywhere.
     * Collation: Compare strings according to the conventions and standards of a particular language, region or country. ICU's collation is based on the Unicode Collation Algorithm plus locale-specific comparison rules from the Common Locale Data Repository, a comprehensive source for this sort of data.
     * Formatting: Format numbers, dates, times and currency amounts according the conventions of a chosen locale. This includes translating month and day names into the selected language, choosing appropriate abbreviations, ordering fields correctly, etc. Again, ICU uses data from the Common Locale Data Repository.
     * Unicode Support: ICU closely tracks the Unicode standard, providing easy access to all of the many Unicode character properties, Unicode Normalization, Case Folding and other fundamental operations as specified by the Unicode Standard.
     * Regular Expression: ICU's regular expressions fully support Unicode while providing very competitive performance.
     * Bidi: support for handling text containing a mixture of left to right (English) and right to left (Arabic or Hebrew) data.
     * Text Boundaries: Locate the positions of words, sentences, paragraphs within a range of text, or identify locations that would be suitable for line wrapping when displaying the text.

Open Source Logging Tools in Java

  • Log4j - Log4j is a logging tool that allows you to log at runtime without modifying the application binary. The log4j package is designed so that logging statements can remain in shipped code without incurring a heavy performance cost. Logging behavior can be controlled by editing a configuration file, without touching the application binary.

Open Source Mail Clients in Java

  • Columba - Columba is an Email Client written in Java, featuring a user-friendly graphical interface with wizards and internationalization support. Its a powerful email management tool with features to enhance your productivity and communication.

Open Source Network Clients in Java

  • jCIFS - JCIFS is an Open Source client library that implements the CIFS/SMB networking protocol in 100% Java. CIFS is the standard file sharing protocol on the Microsoft Windows platform (e.g. Map Network Drive ...). This client is used extensively in production on large Intranets.

Open Source Network Servers in Java

  • Apache James - The Apache JAMES Project delivers a rich set of open source solutions, written in Java, related to internet mail and news. JAMES is organized into subprojects with JAMES Server and the Mailet API as their core. Apache JAMES is a project of The Apache Software Foundation (ASF) which encourages a collaborative, consensus-based development process under an open software license. The ASF maintains other Java projects which may also be of interest. These are detailed on the ASF Projects page. We recommended that users of JAMES products subscribe to the JAMES users mailing list.

Open Source Obfuscators in Java

  • ProGuard - ProGuard is a free Java class file shrinker and obfuscator. It can detect and remove unused classes, fields, methods, and attributes. It can then rename the remaining classes, fields, and methods using short meaningless names. The resulting jars are smaller and harder to reverse-engineer.

Open Source PDF Libraries in Java

  • PDF Box - PDFBox is a Java PDF Library. This project will allow access to all of the components in a PDF document. More PDF manipulation features will be added as the project matures. This ships with a utility to take a PDF document and output a text file.

Open Source Parser Generators in Java

  • ANTLR - ANother Tool for Language Recognition, (formerly PCCTS) is a language tool that provides a framework for constructing recognizers, compilers, and translators from grammatical descriptions containing Java, C#, or C++ actions. ANTLR provides excellent support for tree construction, tree walking, and translation.

Open Source Persistence Frameworks in Java

  • Apache OpenJPA - It is a feature-rich implementation of the persistence part of Enterprise Java Beans 3.0, also known as the Java Persistence API (JPA), and is available under the terms of the Apache Software License. OpenJPA can be used as a stand-alone POJO persistence layer, or it can be integrated into any EJB3.0 compliant container and many lightweight frameworks.

Open Source Portals in Java

  • Jakarta Pluto - Pluto is the Reference Implementation of the Java Portlet Specfication (JSR 168)

Open Source Profilers in Java

  • Cougaar Memory Profiler - The Cougaar memory profiler is a tool for debugging memory usage and leaks in any Java application. It features a scalable 100% Java design that is lighter weight than existing JVMPI-based profilers.

Open Source Project Management Tools in Java

  • Memoranda - Memoranda (formerly known as jNotes2) is an open source cross-platform diary manager and the tool for scheduling personal projects

Open Source RSS & RDF Tools in Java

  • Commons Feedparser - Generic FeedParser interface and concrete implementations for Atom , FOAF, OPML and RSS. These FeedParser implementations are based on JDOM and Jaxen and is based around XPath and JDOM iteration.

Open Source Rule Engines in Java

  • Drools - Drools is an Object-Oriented Rule Engine for Java. Drools is an augmented implementation of Forgy's Rete algorithm tailored for the Java language. Adapting Rete to an object-oriented interface allows for more natural expression of business rules with regards to business objects. More importantly, Drools provides for declarative logic programming and is flexible enough to match the semantics of your problem domain. The various parts that compose a rule may be extended to lend domain-specific sense to the rule.

Open Source SQL Clients in Java

  • SQuirreL SQL Client - SQuirreL SQL Client is a graphical Java program that will allow you to view the structure of a JDBC compliant database, browse the data in tables, issue SQL commands etc. The minimum version of Java supported is 1.3

Open Source Scripting Languages in Java

  • Jython - Jython is an implementation of the high-level, dynamic, object-oriented language Python written in 100% Pure Java, and seamlessly integrated with the Java platform. It thus allows you to run Python on any Java platform.

Open Source Search Engines in Java

  • Compass - The Compass Framework is a first class open source Java framework, enabling the power of Search Engine semantics to your application stack declaratively. Built on top of the amazing Lucene Search Engine, Compass integrates seamlessly to popular development frameworks like Hibernate and Spring. It provides search capability to your application data model and synchronises changes with the datasource. With Compass: write less code, find data quicker.

Open Source Security & Cryptography Tools in Java

  • Bouncy Castle Crypto - The Bouncy Castle Crypto APIs is a lightweight cryptography API in Java with a provider for the JCE and JCA, a clean room implementation of the JCE 1.2.1, a library for reading and writing encoded ASN.1 objects and generator for:

     * Version 1 and Version 3 X.509 certificates and PKCS12 files.
     * Version 2 X.509 attribute certificates.
     * S/MIME and CMS (PKCS7).
     * OCSP (RFC 2560).
     * TSP (RFC 3161).
     * OpenPGP (RFC 2440). The lightweight API works with everything from the J2ME to the JDK 1.5

Source Control Tools in Java

  • jCVS - JCVS is a CVS client package written entirely in Java. JCVS provides a complete CVS client/server protocol package that allows any Java program to implement the complete suite of CVS operations. JCVS also provides a Swing based client that provides a commercial quality GUI client for CVS. Finally, jCVS provides a Servlet that allows any Servlet enabled web server to present any CVS repository on the internet for browsing and download.

Open Source Swing Frameworks & Components

  • JGoodies Binding - The JGoodies Binding synchronizes object properties with Swing components. And it helps you represent the state and behavior of a presentation independently of the GUI components used in the interface.

Open Source Template Engines in Java

  • FreeMarker - FreeMarker is a template engine. It provides an easy way to generate textual (HTML, RTF, PostScript, TeX, source code, etc) output from your data and helps you separate design issues from application logic. Integrates with servlets, XML, Python and more.

Open Source Testing Tools in Java

  • JUnit - JUnit is a regression testing framework written by Erich Gamma and Kent Beck. It is used by the developer who implements unit tests in Java.

Open Source Text Processing Tools

  • Jakarta ORO - The Jakarta-ORO Java classes are a set of text-processing Java classes that provide Perl5 compatible regular expressions, AWK-like regular expressions, glob expressions, and utility classes for performing substitutions, splits, filtering filenames, etc. This library is the successor to the OROMatcher, AwkTools, PerlTools, and TextTools libraries originally from ORO, Inc. Despite little activity in the form of new development initiatives, issue reports, questions, and suggestions are responded to quickly.

Open Source UML & Modeling in Java

  • AndroMDA - AndroMDA is a code generation framework that follows the Model Driven Architecture (MDA) paradigm. It takes a UML model from a CASE-tool and generates classes and deployable components (J2EE or other) specific for your application architecture. AndroMDA comes with a host of ready-made cartridges like Axis, jBPM, Struts, JSF, Spring and Hibernate. AndroMDA also contains a toolkit for building your own cartridges or customize existing ones - the meta cartridge.

Open Source Validation Frameworks

  • Commons Validator - Commons Validator provides the building blocks for both client side validation and server side data validation. It may be used standalone or with a framework like Struts.

Open Source Web Frameworks in Java

  • Tapestry - Tapestry is a powerful, open-source, all-Java framework for creating leading edge web applications in Java. Tapestry reconceptualizes web application development in terms of objects, methods and properties instead of URLs and query parameters. Tapestry is an alternative to scripting environments such as JavaServer Pages or Velocity. Tapestry goes far further, providing a complete framework for creating extremely dynamic applications with minimal amounts of coding.

Open Source Web Mail Clients in Java

  • GatorMail - GatorMail is a servlet-based Webmail built on the Struts framework. It was originally developed to meet the needs of the University of Florida. Efficient interaction with the mail store along with a low support overhead are the goals of the project.

Open Source Web Servers in Java

  • Jigsaw - Jigsaw is W3C's leading-edge Web server platform, providing a sample HTTP 1.1 implementation and a variety of other features on top of an advanced architecture implemented in Java.

Open Source Web Services Tools in Java

  • Apache CXF - Apache CXF is an open source (web) services framework. CXF helps you build and develop services using frontend programming APIs, like JAX-WS. These services can speak a variety of protocols such as SOAP, XML/HTTP, RESTful HTTP, or CORBA and work over a variety of transports such as HTTP, JMS or JBI.

Open Source Web Testing Tools in Java

  • HtmlUnit - HtmlUnit is a java unit testing framework for testing web based applications. It is similar in concept to httpunit but is very different in implementation. Which one is better for you depends on how you like to write your tests. HttpUnit models the http protocol so you deal with request and response objects. HtmlUnit on the other hand, models the returned document so that you deal with pages and forms and tables.

Open Source Wiki Engines in Java

  • JSPWiki - A WikiWiki web clone written using JSPs and Servlets

Open Source Workflow Engines in Java

  • Apache ODE - Apache ODE (Orchestration Director Engine) executes business processes written following the WS-BPEL standard. It talks to web services, sending and receiving messages, handling data manipulation and error recovery as described by your process definition. It supports both long and short living process executions to orchestrate all the services that are part of your application.

Open Source XML Parsers in Java

  • JDOM - JDOM is, quite simply, a Java representation of an XML document. JDOM provides a way to represent that document for easy and efficient reading, manipulation, and writing. It has a straightforward API, is a lightweight and fast, and is optimized for the Java programmer. It's an alternative to DOM and SAX, although it integrates well with both DOM and SAX.

Open Source XML UI Toolkits in Java

  • Laszlo - Laszlo is an open source platform for the development and delivery of rich Internet applications on the World Wide Web. It is released under the OSI-certified Common Public License. The Laszlo platform consists of the LZX language and the Laszlo Presentation Server. LZX is an XML and JavaScript description language similar in spirit to XUL and XAML. LZX enables a declarative, text-based development process that supports rapid prototyping and software development best practices. The Laszlo Presentation Server (LPS) is a Java servlet that compiles LZX applications into executable binaries for targeted run-time environments. Laszlo currently targets the Flash Player. The LPS compiles LZX applications into SWF bytecode for the Flash Player, serves and caches these compiled applications to any Web browser enabled with Flash 5 or later, and proxies application requests for back-end XML data sources and web services.




Java is a trademark or registered trademark of Sun Microsystems, Inc. in the United States and other countries. This site is independent of Sun Microsystems, Inc.