The Apache Software Foundation

Apache Software Foundation Index: Project Listing

This is a simple list of all the projects currently indexed. It's sorted alphabetically on the name of the project.

Apache .NET Ant Library
This is a library of Ant tasks that help developing .NET software. It includes the "old" .NET tasks like a C# compiler task but also comes with support for NUnit testing or running the popular NAnt or MSBuild build tools.
Categories: build-management
Languages: Java
PMC: Apache Ant
Apache ActiveMQ
ActiveMQ is a fast and powerful Message Broker which supports many Cross Language Clients and Protocols and many advanced features while fully supporting JMS 1.1 and J2EE 1.4.
Anakia
Anakia is an XML transformation tool that uses JDOM and Velocity to transform XML documents into the format of your choice. It provides an alternative to using Ant's <style> task and XSL to process XML files.
Categories: library
Languages: Java
PMC: Apache Velocity
Apache Ant
Apache Ant is a Java-based build tool. In theory, it is kind of like Make, but without Make's wrinkles.
Categories: build-management
Languages: Java
PMC: Apache Ant
Apache AntUnit
The Ant Library provides Ant tasks for testing Ant task, it can also be used to drive functional and integration tests of arbitrary applications with Ant.
Categories: build-management, testing
Languages: Java
PMC: Apache Ant
Apache Batik
Batik is a Java-based toolkit for applications or applets to use images in the Scalable Vector Graphics (SVG) format for various purposes, such as display, generation and manipulation.
Categories: xml, graphics
Languages: SVG
PMC: Apache XML Graphics
Apache Beehive
Our goal is to make J2EE programming easier by building a simple object model on J2EE and Struts. Using Java 5 annotations, Beehive reduces the coding necessary for J2EE. The initial Beehive project has three pieces. NetUI: An annotation-driven web application programming framework that is built atop Struts. NetUI centralizes navigation logic, state, metadata, and exception handling in a single encapsulated and reusable Page Flow Controller class. In addition, NetUI provides a set of JSP tags for rendering HTML / XHTML and higher-level UI constructs such as data grids and trees and has first-class integration with JavaServer Faces and Struts. Controls: A lightweight, metadata-driven component framework that reduces the complexity of being a client of enterprise resources. Controls provide a unified client abstraction that can be implemented to access a diverse set of enterprise resources using a single configuration model. Web Service Metadata (WSM): An implementation of JSR 181 which standardizes a simplified, annotation-driven model for building Java web services. In addition, Beehive includes a set of system controls that are abstractions for low-level J2EE resource APIs such as EJB, JMS, JDBC, and web services.
Categories: web-framework
Languages: Java
PMC: Apache Beehive
Apache Cayenne
Cayenne is a powerful, full-featured, opensource framework created for developers working with relational databases. it seamlessly maps any relational database to Java objects, reducing development time and adding considerable functionality to any application which requires a database. Developers using Cayenne will be able to concentrate on the core business requirements and the data model instead of the SQL details. The application can then be easily moved to any JDBC-capable database. In addition to management of persistent Java objects mapped to relational databases, Cayenne provides a plethora of features including single method call queries and updates (including atomic updates of all modified objects), seamless integration of multiple databases into a single virtual data source, three tier persistence with caching on the remote client, paging of results, record locking, and many more features. JPA compliance is in progress.
Apache Chainsaw
Apache Chainsaw is a GUI log viewer.
Categories: network-client
Languages: Java
PMC: Apache Logging Services
Apache Cocoon
Apache Cocoon is a web development framework built around the concepts of separation of concerns (making sure people can interact and collaborate on a project, without stepping on each other toes) and component-based web development. Cocoon implements these concepts around the notion of "component pipelines", each component on the pipeline specializing on a particular operation. This makes it possible to use a "building block" approach for web solutions, hooking together components into pipelines without any required programming.
Apache Commons Attributes
A package for handling runtime information about types (including Java classes)
Categories: library
Languages: Java
PMC: Apache Commons
Apache Commons BeanUtils
BeanUtils provides an easy-to-use but flexible wrapper around reflection and introspection.
Categories: library
Languages: Java
PMC: Apache Commons
Apache Commons Betwixt
Commons Betwixt: mapping beans to XML
Categories: library
Languages: Java
PMC: Apache Commons
Apache Commons Chain
An implmentation of the GoF Chain of Responsibility pattern
Categories: library
Languages: Java
PMC: Apache Commons
Apache Commons CLI
Commons CLI provides a simple API for presenting, proecessing and validating a command line interface.
Categories: library
Languages: Java
PMC: Apache Commons
Apache Commons Codec
The codec package contains simple encoder and decoders for various formats such as Base64 and Hexadecimal. In addition to these widely used encoders and decoders, the codec package also maintains a collection of phonetic encoding utilities.
Categories: library
Languages: Java
PMC: Apache Commons
Apache Commons Collections
Types that extend and augment the Java Collections Framework.
Categories: library
Languages: Java
PMC: Apache Commons
Apache Commons Configuration
Library to use configuration/preferences of various sources and formats.
Categories: library
Languages: Java
PMC: Apache Commons
Apache Commons Daemon
Commons Daemon
Categories: library
Languages: Java
PMC: Apache Commons
Apache Commons DBCP
Commons Database Connection Pooling
Categories: library
Languages: Java
PMC: Apache Commons
Apache Commons DbUtils
A package of Java utility classes for easing JDBC development
Categories: library
Languages: Java
PMC: Apache Commons
Apache Commons Digester
The Digester package lets you configure an XML->Java object mapping module which triggers certain actions called rules whenever a particular pattern of nested XML elements is recognized.
Categories: library
Languages: Java
PMC: Apache Commons
Apache Commons Discovery
Commons Discovery
Categories: library
Languages: Java
PMC: Apache Commons
Apache Commons EL
JSP 2.0 Expression Language Interpreter Implementation
Categories: library
Languages: Java
PMC: Apache Commons
Apache Commons Email
Commons-Email aims to provide a API for sending email. It is built on top of the Java Mail API, which it aims to simplify.
Categories: library
Languages: Java
PMC: Apache Commons
Apache Commons FileUpload
The FileUpload component provides a simple yet flexible means of adding support for multipart file upload functionality to servlets and web applications.
Categories: library
Languages: Java
PMC: Apache Commons
Apache Commons HttpClient
Commons HttpClient is a library for client-side HTTP communication. It provides support for HTTP/1.1 and HTTP/1.0, plus various authentication schemes and cookie policies. Thanks to it's widespread use and years of development, it is a very mature and stable codebase. However, due to limitations in the API design, Commons HttpClient will eventually be replaced by HttpClient 4.0 with a completely redesigned API based on HttpCore.
Apache Commons IO
Commons-IO contains utility classes, stream implementations, file filters, file comparators and endian classes.
Categories: library
Languages: Java
PMC: Apache Commons
Apache Commons JCI
Commons-JCI provides a unified interface to any of several Java compilers.
Categories: library
Languages: Java
PMC: Apache Commons
Apache Commons Jelly
Jelly is a Java and XML based scripting engine. Jelly combines the best ideas from JSTL, Velocity, DVSL, Ant and Cocoon all together in a simple yet powerful scripting engine.
Categories: library
Languages: Java
PMC: Apache Commons
Apache Commons JEXL
Jexl is an implementation of the JSTL Expression Language with extensions.
Categories: library
Languages: Java
PMC: Apache Commons
Apache Commons JXPath
A Java-based implementation of XPath 1.0 that, in addition to XML processing, can inspect/modify Java object graphs (the library's explicit purpose) and even mixed Java/XML structures.
Categories: library
Languages: Java
PMC: Apache Commons
Apache Commons Lang
Commons Lang, a package of Java utility classes for the classes that are in java.lang's hierarchy, or are considered to be so standard as to justify existence in java.lang.
Categories: library
Languages: Java
PMC: Apache Commons
Apache Commons Launcher
Launcher are a set of Java classes which aim at making a cross platform Java application launcher.
Categories: library
Languages: Java
PMC: Apache Commons
Apache Commons Logging
Commons Logging is a thin adapter allowing configurable bridging to other, well known logging systems.
Categories: library
Languages: Java
PMC: Apache Commons
Apache Commons Math
The Math project is a library of lightweight, self-contained mathematics and statistics components addressing the most common practical problems not immediately available in the Java programming language or commons-lang.
Categories: library
Languages: Java
PMC: Apache Commons
Apache Commons Modeler
Commons Modeler
Categories: library
Languages: Java
PMC: Apache Commons
Apache Commons Net
Categories: library
Languages: Java
PMC: Apache Commons
Apache Commons Pool
Commons Object Pooling Library
Categories: library
Languages: Java
PMC: Apache Commons
Apache Commons Primitives
Commons Primitives is a set of collection and utility classes for primitive types. The Java language has a clear distinction between Object and primitive types. A lot of functionality is provided for Object types, including the Java Collection Framework. Relatively little functionality is provided by the JDK for primitives. This package addresses this by providing a set of utility and collection classes for primitives.
Categories: library
Languages: Java
PMC: Apache Commons
Apache Commons SCXML
An implementation of the State Chart XML specification aimed at creating and maintaining a Java SCXML engine. It is capable of executing an environment agnostic state machine defined using a SCXML document.
Categories: library
Languages: Java
PMC: Apache Commons
Apache Commons Transaction
Commons Transaction
Categories: library
Languages: Java
PMC: Apache Commons
Apache 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.
Categories: library
Languages: Java
PMC: Apache Commons
Apache Commons VFS
VFS is a Virtual File System library.
Categories: library
Languages: Java
PMC: Apache Commons
Apache Derby
Apache Derby is an open source relational database implemented entirely in Java. It has a small footprint that makes it easy to embed in any Java-based application, but it also supports the more familiar client/server mode. It is based on the Java, JDBC, and SQL standards, making code developed more portable to standards-compliant databases.
Categories: database
Languages: Java
PMC: Apache DB
Apache Directory
Categories: network-server
Languages: Java
PMC: Apache Directory
Apache Directory Server
ApacheDS is an an embeddable directory server entirely written in Java, which has been certified LDAPv3 compatible by the Open Group. Besides LDAP it supports Kerberos 5 and the Change Password Protocol.
Categories: network-server
Languages: Java
PMC: Apache Directory
Apache Directory Studio
Apache Directory Studio is a complete LDAP tooling platform intended to be used with any LDAP server however it is particularly designed for use with the Apache Directory Server. Developed as a sub-project of the Directory Top Level Project, Apache Directory Studio is an Eclipse RCP application that takes full advantage of the benefits inherent in the Eclipse platform. Composed of several Eclipse (OSGi) plugins, Apache Directory Studio can be easily upgraded with additional plugins. Apache Directory Studio plugins can even run within a full installation of Eclipse itself.
Categories:
Languages: Java
PMC: Apache Directory
Apache ECS
The Element Construction Set is a Java API for generating elements for various markup languages it directly supports HTML 4.0 and XML, but can easily be extended to create tags for any markup language.
Categories: library
Languages: Java
PMC:
Apache Excalibur
The predecessor of Apache Avalon, Apache Excalibur hosts the Avalon framework, a Java container framework, the Excalibur and Fortress inversion of control containers, and a rich library of components. Excalibur code powers Apache James and Cocoon and numerous other open source and commercial projects.
Categories: network-server
Languages: Java
PMC: Apache Excalibur
Apache Felix
OSGi Framework implementation and related technologies.
Categories: network-server
Languages: Java
PMC: Apache Geronimo
Apache FOP
FOP (Formatting Objects Processor) is the world's first print formatter driven by XSL formatting objects (XSL-FO) and the world's first output independent formatter. It is a Java application that reads a formatting object (FO) tree and renders the resulting pages to a specified output. Output formats currently supported include PDF, PCL, PS, SVG, XML (area tree representation), Print, AWT, MIF and TXT. The primary output target is PDF.
Categories: xml, graphics
Languages: Java
PMC: Apache XML Graphics
Apache Forrest
Apache Forrest is a publishing framework that transforms input from various sources into a unified presentation in one or more output formats. The modular and extensible plugin architecture is based on Apache Cocoon and relevant standards, which separates presentation from content. Forrest can generate static documents, or be used as a dynamic server, or be deployed by its automated facility.
Apache Gump
Gump provides large scale continuous integration for various open source projects.
Categories: build-management, testing
Languages: Python
PMC: Apache Gump
Apache Hadoop
Hadoop Core contains a distributed computing platform. This includes the Hadoop Distributed Filesystem (HDFS) and an implementation of MapReduce.
Categories: database
Languages: Java
PMC: Apache Hadoop
Apache Harmony
Apache Harmony is the Java SE project of the Apache Software Foundation. Please help us make this a world class, certified implementation of the Java Platform Standard Edition! The aim of the project is to produce a large and healthy community of those interested in runtime platforms tasked with creation of : * A compatible, independent implementation of Java SE 5 under the Apache License v2 * A community-developed modular runtime (VM and class library) architecture.
Categories: virtual-machine
Languages: Java, C
PMC: Apache Harmony
Apache Hivemind
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.
Categories: library
Languages: Java
PMC:
Apache HTTP Server
The Apache HTTP Server is an open-source HTTP server for modern operating systems including UNIX, MS-Windows, Macintosh and Netware. The goal of this project is to provide a secure, efficient and extensible server that provides HTTP services in sync with the current HTTP standards. Apache has been the most popular web server on the Internet since April of 1996.
Categories: network-server, http, httpd-module
Languages: C
PMC: Apache HTTP Server
Apache HttpComponents Client
HttpClient is a library for client-side HTTP communication built on HttpCore. It provides connection management, cookie management, and authentication. This is the successor to the widely used Jakarta Commons HttpClient 3.1.
Apache HttpComponents Core
HttpCore (main) is a library for HTTP communication that can be used on either client or server side. A second library, HttpCore-NIO, adds support for Java NIO. HttpCore has no dependencies beyond the JVM, but also no built-in support for advanced features such as cookie management or authentication. It defines a framework for plugging in these features.
Apache Jackrabbit
Apache Jackrabbit is a fully conforming implementation of the Content Repository for Java Technology API (JCR). A content repository is a hierarchical content store with support for structured and unstructured content, full text search, versioning, transactions, observation, and more. Typical applications that use content repositories include content management, document management, and records management systems.
Apache Jakarta BCEL
The Byte Code Engineering Library is intended to give users a convenient possibility to analyze, create, and manipulate (binary) Java class files (those ending with .class). Classes are represented by objects which contain all the symbolic information of the given class: methods, fields and byte code instructions, in particular.
Categories: library
Languages: Java
PMC: Apache Jakarta
Apache Jakarta BSF
Bean Scripting Framework (BSF) is a set of Java classes which provides scripting language support within Java applications, and access to Java objects and methods from scripting languages. BSF allows one to write JSPs in languages other than Java while providing access to the Java class library. In addition, BSF permits any Java application to be implemented in part (or dynamically extended) by a language that is embedded within it. This is achieved by providing an API that permits calling scripting language engines from within Java, as well as an object registry that exposes Java objects to these scripting language engines.
Categories: library
Languages: Java
PMC: Apache Jakarta
Apache Jakarta Cactus
The intent of Cactus is to lower the cost of writing tests for server-side code. It uses JUnit and extends it. Cactus implements an in-container strategy, meaning that tests are executed inside the container.
Categories: testing
Languages: Java
PMC: Apache Jakarta
Apache Jakarta JCS
Comprehensive Caching System
Categories: library
Languages: Java
PMC: Apache Jakarta
Apache Jakarta JMeter
Apache Jakarta JMeter may be used to test performance both on static and dynamic resources (files, Servlets, Perl scripts, Java Objects, Data Bases and Queries, FTP Servers and more). It can be used to simulate a heavy load on a server, network or object to test its strength or to analyze overall performance under different load types. You can use it to make a graphical analysis of performance or to test your server/script/object behavior under heavy concurrent load.
Categories: testing
Languages: Java
PMC: Apache Jakarta
Apache Jakarta POI
APIs for manipulating various file formats based upon Microsoft's OLE 2 Compound Document format using pure Java. POI is your Java Excel solution as well as your Java Word solution. However, we have a complete API for porting other OLE 2 Compound Document formats and welcome others to participate.
Categories: library
Languages: Java
PMC:
Apache Jakarta Reusable Dialog Components (RDC) Taglib
Server-side generation of HTML has proven an effective way of generating the user interface for visual web applications. Over time, the effort involved in such HTML generation has been reduced by the availability of various JSP tag libraries that abstract away the minutiae of HTML markup. The RDC project aims to achieve for voice and multimodal applications what JSP tag libraries have already achieved in the world of visual web applications.
Categories: library
Languages: JSP
PMC: Apache Jakarta
Apache JAMES
The Apache Java Enterprise Mail Server (a.k.a. Apache James) is a 100% pure Java SMTP and POP3 Mail server and NNTP News server. We have designed James to be a complete and portable enterprise mail engine solution based on currently available open protocols. James is also a mail application platform. We have developed a Java API to let you write Java code to process emails that we call the mailet API. A mailet can generate an automatic reply, update a database, prevent spam, build a message archive, or whatever you can imagine. A matcher determines whether your mailet should process an email in the server. The James project hosts the Mailet API, and James provides an implementation of this mail application platform API.
Categories: mail, network-server
Languages: Java
PMC: Apache James
Apache Lenya
Apache Lenya is an Open Source Java/XML Content Management Framework and comes with revision control, site management, scheduling, search, WYSIWYG editors, and workflow.
Categories: web-framework, xml
Languages: Java
PMC: Apache Lenya
Apache log4cxx
Apache log4cxx provides logging services for C++.
Categories: library
Languages: C
PMC: Apache Logging Services
Apache log4j
Apache log4j provides logging services for Java.
Categories: library
Languages: Java
PMC: Apache Logging Services
Apache log4net
Apache log4net provides logging services for .NET.
Categories: library
Languages: C
PMC: Apache Logging Services
Apache Lucene Java
Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.
Categories: database
Languages: Java
PMC: Apache Lucene
Apache Maven
Maven is a project development management and comprehension tool. Based on the concept of a project object model: builds, dependency management, documentation creation, site publication, and distribution publication are all controlled from the declarative file. Maven can be extended by plugins to utilise a number of other development tools for reporting or the build process.
Categories: build-management
Languages: Java
PMC: Apache Maven
Apache mod_perl
mod_perl is a unique piece of software that integrates the power of Perl with the flexibility and stability of the Apache Web server. With mod_perl, you can harness the power of the full Apache API with Perl and develop Web applications quickly, without sacrificing performance.
Categories: httpd-module
Languages: C, Perl
PMC: Perl-Apache
Apache MyFaces
MyFaces is the free open source implementation of JavaServer(tm) Faces, a new and upcoming web application framework that accomplishes the MVC paradigm. It is comparable to the well-known Struts Framework but has features and concepts that are beyond those of Struts - especially the component orientation.
Categories: web-framework
Languages: Java
PMC: Apache MyFaces
Apache Nutch
Nutch is open source web-search software. It builds on Lucene Java and Hadoop, adding web-specifics, such as a crawler, a link-graph database, parsers for HTML and other document formats, etc.
Categories: web-framework
Languages: Java
PMC: Apache Lucene
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. WS-BPEL is an XML-based language defining several constructs to write business processes. It defines a set of basic control structures like conditions or loops as well as elements to invoke web services and receive messages from services. It relies on WSDL to express web services interfaces. Message structures can be manipulated, assigning parts or the whole of them to variables that can in turn be used to send other messages.
Categories: xml, network-server
Languages: Java
PMC: Apache Ode
Apache OFBiz
The Open For Business Project (Apache OFBiz) is an open source enterprise automation software project. 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. It is one of the few apps of this type to be developed by a community, rather than one corporation.
Apache ORO
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.
Categories: library, regexp
Languages: Java
PMC:
Apache Portable Runtime
The mission of the Apache Portable Runtime (APR) project is to create and maintain software libraries that provide a predictable and consistent interface to underlying platform-specific implementations. The primary goal is to provide an API to which software developers may code and be assured of predictable if not identical behaviour regardless of the platform on which their software is built, relieving them of the need to code special-case conditions to work around or take advantage of platform-specific deficiencies or features.
Categories: library
Languages: C
PMC: Apache Portable Runtime
Apache Regexp
100% Pure Java Regular Expression package
Categories: library, regexp
Languages: Java
PMC:
Apache Scout
Apache Scout is an implementation of the JSR 93 (JAXR). It provides an implementation to access UDDI registries (particularly Apache jUDDI) in a standard way.
Categories: xml
Languages: Java
PMC: Apache Web Services
Apache 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.
Categories: network-server, xml
Languages: Java
PMC: Apache ServiceMix
Apache Shale
Shale is a modern web application framework, fundamentaly based on JavaServer Faces, and focused on improving ease of use for developers adopting JSF as a foundational technology in their own development environments.
Categories: web-framework
Languages: Java
PMC: Apache Shale
Apache Solr
Solr is an open source enterprise search server based on the Lucene Java search library, with XML/HTTP and JSON, Ruby, and Python APIs, hit highlighting, faceted search, caching, replication, and a web administration interface.
Categories: web-framework
Languages: Java
PMC: Apache Lucene
Apache SpamAssassin
Apache SpamAssassin is an extensible email filter which is used to identify spam. Using its rule base, it uses a wide range of advanced heuristic and statistical analysis tests on mail headers and body text to identify "spam", also known as unsolicited bulk email. Once identified, the mail can then be optionally tagged as spam for later filtering. It provides a command line tool to perform filtering, a client-server system to filter large volumes of mail, and Mail::SpamAssassin, a set of Perl modules.
Categories: mail
Languages: Perl, C
PMC: Apache SpamAssassin
Apache Struts
The Apache Struts Project offers two major versions of the Struts framework. Struts 1 is recognized as the most popular web application framework for Java. Struts 1 is the best choice for teams who value proven solutions to common problems. Struts 2 was originally known as WebWork 2. The 2.x framework is the best choice for teams who value elegant solutions to difficult problems.
Categories: web-framework
Languages: Java
PMC: Apache Struts
Apache Synapse
Apache Synapse is a simple and highly effective Web Services intermediary and SOA framework. It can be added to your existing network very simply either as a services gateway or as an HTTP proxy. Once Apache Synapse is mediating your service requests it can perform many functions including routing, load-balancing, transformation and protocol switching. Apache Synapse can be used to build an Enterprise Service Bus (ESB) or Service Oriented Architecture (SOA). Apache Synapse has been designed to support very fast XML routing with a streaming XML design based upon Apache Axiom. in addition, the use of a completely asynchronous architecture and non-blocking IO based on Java NIO ensures that Synapse has very low overhead and can scale to support thousands of concurrent clients without dropping messages.
Apache Tapestry
Tapestry is a component-based web application framework, written in Java. Tapestry is more than a simple templating system; Tapestry builds on the Java Servlet API to build a platform for creating dynamic, interactive web sites. More than just another templating language, Tapestry is a real framework for building complex applications from simple, reusable components. Tapestry offloads much of the error-prone work in creating web applications into the framework itself, taking over mundane tasks such as dispatching incoming requests, constructing and interpretting URLs encoded with information, handling localization and internationalization and much more besides.
Categories: web-framework
Languages: Java
PMC:
Texen
Texen is a general purpose text generating utility. It is capable of producing almost any sort of text output. Driven by Ant, essentially an Ant Task, Texen uses a control template, an optional set of worker templates, and control context to govern the generated output. Although TexenTask can be used directly, it is usually subclassed to initialize your control context before generating any output.
Categories: library
Languages: Java
PMC: Apache Velocity
Apache Tobago
The goal of Tobago is to provide the community with a well designed set of user interface components based on JSF.
Categories: web-framework
Languages: Java
PMC: Apache MyFaces
Apache Tomcat
Apache Tomcat is the servlet container that is used in the official Reference Implementation for the Java Servlet and JavaServer Pages technologies. The Java Servlet and JavaServer Pages specifications are developed by Sun under the Java Community Process. Apache Tomcat is developed in an open and participatory environment and released under the Apache Software License. Apache Tomcat is intended to be a collaboration of the best-of-breed developers from around the world. We invite you to participate in this open development project. To learn more about getting involved, click here. Apache Tomcat powers numerous large-scale, mission-critical web applications across a diverse range of industries and organizations. Some of these users and their stories are listed on the PoweredBy wiki page.
Categories: network-server
Languages: Java
PMC: Apache Tomcat
Apache Torque
Torque is an object-relational mapper for Java. In other words, Torque lets you access and manipulate data in a relational database using java objects. Unlike most other object-relational mappers, Torque does not use reflection to access user-provided classes, but it generates the necessary classes (including the Data Objects) from an XML schema describing the database layout (which can either be written by hand or generated from an existing database). The XML schema can also be used to generate and execute a SQL script which creates all the tables in the database.
Categories: database
Languages: Java
PMC: Apache DB
Apache Triplesec
Triplesec is what you get when you combine 2-factor strong authentication with identity management. Triplesec is a strong identity management solution. A strong identity management server is used to centralize the management of authentication, authorization and auditing (AAA) concerns in your applications (services and operating systems) while further protecting access to them using multiple factors for authentication.
Categories: network-server
Languages: Java
PMC: Apache Directory
Apache Turbine
Turbine is a servlet based framework that allows experienced Java developers to quickly build web applications. Turbine allows you to use personalize the web sites and to use user logins to restrict access to parts of your application. Turbine is a matured and well established framework that is used as the base of many other projects (like e.g. the excellent Jetspeed 1 Portals framework. Turbine is an excellent choice for developing applications that make use of a services-oriented architecture. Some of the functionality provided with Turbine includes a security management system, a scheduling service, XML-defined form validation server, and an XML-RPC service for web services. It is a simple task to create new services particular to your application. The Turbine core is free of any dependency on a presentation layer technology. Both JavaServer Pages (JSP) and Velocity are supported inside Turbine. For developers already familiar with JSP, or have existing JSP tag libraries, Turbine offers support for the Sun standard. Velocity is the favorite view technology of most users of the Turbine framework; try it out and see if Velocity can help you develop your web applications faster and work more easily with non-programming designers. Turbine is developed in an open, participatory environment and released under the Apache Software License. Turbine is intended to be a collaboration of the best-of-breed developers from around the world. We invite you to participate in this open development project. To learn more about getting involved, look at our "How to Help" pages.
Categories: web-framework
Languages: Java
PMC: Apache Turbine
Apache Velocity
Velocity is a Java-based template engine. It permits anyone to use a 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 its lifespan and providing a viable alternative to Java Server Pages (JSPs) or PHP.
Categories: library
Languages: Java
PMC: Apache Velocity
Apache Velocity DVSL
DVSL (Declarative Velocity Style Language) is a tool modeled after XSLT and is intended for general XML transformations using the Velocity Template Language as the templating language for the transformations. The key differences are that it incorporates easy access to Java objects and allows you to use the Velocity template language and it's features for expressing the transformation templates.
Categories: library
Languages: Java
PMC: Apache Velocity
Apache Velocity Tools
VelocityTools is a collection of Velocity subprojects with a common goal of creating tools and infrastructure for building both web and non-web applications using the Velocity template engine.
Categories: library
Languages: Java
PMC: Apache Velocity
Apache Websh
Websh is a rapid development environment for building powerful, fast, and reliable web applications in Tcl. Websh is versatile and handles everything from HTML generation to data-base driven one-to-one page customization. Websh can be run CGI environments and as Apache module.
Categories: web-framework, httpd-module
Languages: C, Tcl
PMC: Apache Tcl
Apache Xerces C++ XML Parser
Xerces-C++ is a validating XML parser written in a portable subset of C++. Xerces-C++ makes it easy to give your application the ability to read and write XML data. A shared library is provided for parsing, generating, manipulating, and validating XML documents. Xerces-C++ is faithful to the XML 1.0 recommendation and many associated standards. The parser provides high performance, modularity, and scalability. Source code, samples and API documentation are provided with the parser. For portability, care has been taken to make minimal use of templates, no RTTI, and minimal use of #ifdefs.
Categories: xml
Languages: C
PMC: Apache Xerces
Apache Xerces Java XML Parser
Xerces-J is an high performance, fully compliant validating XML parser written in Java. It is a fully conforming XML Schema processor that includes a complete implementation of the Document Object Model Level 3 Core and Load/Save W3C Recommendations and provides a complete implementation of the XML Inclusions (XInclude) W3C Recommendation. It also provides support for OASIS XML Catalogs v1.1. Xerces 2.x introduced the Xerces Native Interface (XNI), a complete framework for building parser components and configurations that is extremely modular and easy to program. XNI is merely an internal set of interfaces. There is no need for an XML application programmer to learn XNI if they only intend to interface to the Xerces2 parser using standard interfaces like JAXP, DOM, and SAX. Xerces developers and application developers that need more power and flexibility than that provided by the standard interfaces should read and understand XNI. The latest version released, 2.9.1, fixes several bugs which were present in Xerces-J 2.9.0 and also includes a few minor enhancements and performance improvements.
Categories: xml
Languages: Java
PMC: Apache Xerces
Apache Xerces Perl XML Parser
XML::Xerces is the Perl API to the Apache project's Xerces XML parser. It is implemented using the Xerces C++ API, and it provides access to most of the C++ API from Perl. Because it is based on Xerces-C, XML::Xerces provides a validating XML parser that makes it easy to give your application the ability to read and write XML data. Classes are provided for parsing, generating, manipulating, and validating XML documents. XML::Xerces is faithful to the XML 1.0 recommendation and associated standards (DOM levels 1, 2, and 3, SAX 1 and 2, Namespaces, and W3C XML Schema). The parser provides high performance, modularity, and scalability, and provides full support for Unicode. XML::Xerces implements the vast majority of the Xerces-C API (if you notice any discrepancies please mail the list). The exception is some functions in the C++ API which either have better Perl counterparts (such as file I/O) or which manipulate internal C++ information that has no role in the Perl module. The majority of the API is created automatically using Simplified Wrapper Interface Generator (SWIG). However, care has been taken to make most method invocations natural to perl programmers, so a number of rough C++ edges have been smoothed over (See the Special Perl API Features section).
Categories: xml
Languages: Perl
PMC: Apache Xerces
Apache Xindice
Pure Java based native XML database. Supports XPath and XUpdate.
Categories: xml
Languages: Java
PMC: Apache XML
Apache XML Commons External
The External components portion of Apache XML Commons contains interfaces that are defined by external standards organizations. For DOM, that's the W3C; for SAX it's David Megginson (http://www.saxproject.org); for JAXP it's Sun. While we could send users to each of the primary sources for these deliverables, keeping our own versions of these in the XML Commons repository gives us a number of advantages: 1) Simplicity of downloads; users get the whole product from one place, 2) Better version control; we can only take fixes we want and add Apache-specific changes, 3) Better overview documentation of how these interfaces fit into the XML processing world, 4) More chance for cross-project community building within Apache projects.
Categories: xml
Languages: Java
PMC: Apache Xerces
Apache XML Commons Resolver
The XML Commons Resolver can be used in a wide variety of XML parsing, processing and related programs to resolve various public or system identifiers into accessible URLs for use by your application. The resolver supports several catalog types for mapping, including OASIS XML, OASIS TR 9401 and XCatalog styles.
Categories: xml
Languages: Java
PMC: Apache Xerces
Apache XML Graphics Commons
Apache XML Graphics Commons is a library that consists of several reusable components used by Apache Batik and Apache FOP. Many of these components can easily be used separately outside the domains of SVG and XSL-FO. You will find components such as a PDF library, an RTF library, Graphics2D implementations that let you generate PDF and PostScript files and much more.
Categories: graphics
Languages: Java
PMC: Apache XML Graphics
Apache XML Security Java
Library implementing XML Digital Signature Specification & XML Encryption Specification
Categories: xml
Languages: Java
PMC: Apache XML
Apache XMLBeans
XMLBeans is a tool that allows you to access the full power of XML in a Java friendly way. The idea is that you can take advantage of the richness and features of XML and XML Schema and have these features mapped as naturally as possible to the equivalent Java language and typing constructs. XMLBeans uses XML Schema to compile Java interfaces and classes that you can then use to access and modify XML instance data. Using XMLBeans is similar to using any other Java interface/class, you will see things like getFoo or setFoo just as you would expect when working with Java. While a major use of XMLBeans is to access your XML instance data with strongly typed Java classes there are also API's that allow you access to the full XML infoset (XMLBeans keeps XML Infoset fidelity) as well as to allow you to reflect into the XML schema itself through an XML Schema Object model. For more details on XMLBeans see the XMLBeans Wiki pages or the XMLBeans documentation (the Documentation tab on this website). What Makes XMLBeans Different There are at least two major things that make XMLBeans unique from other XML-Java binding options. 1. Full XML Schema support. XMLBeans fully supports XML Schema and the corresponding java classes provide constructs for all of the major functionality of XML Schema. This is critical since often times you do not have control over the features of XML Schema that you need to work with in Java. Also, XML Schema oriented applications can take full advantage of the power of XML Schema and not have to restrict themselvs to a subset. 2. Full XML Infoset fidelity.When unmarshalling an XML instance the full XML infoset is kept and is available to the developer. This is critical because because of the subset of XML that is not easily represented in java. For example, order of the elements or comments might be needed in a particular application. A major objective of XMLBeans has been to be applicable in all non-streaming (in memory) XML programming situations. You should be able to compile your XML Schema into a set of java classes and know that 1) you will be able to use XMLBeans for all of the schemas you encounter (even the warped ones) and 2) that you will be able to get to the XML at whatever level is necessary - and not have to resort to multple tools to do this. To accomplish this XMLBeans provides three major APIs: * XmlObject The java classes that are generated from an XML Schema are all derived from XmlObject. These provide strongly typed getters and setters for each of the elements within the defined XML. Complex types are in turn XmlObjects. For example getCustomer might return a CustomerType (which is an XmlObject). Simple types turn into simple getters and setters with the correct java type. For example getName might return a String. * XmlCursor From any XmlObject you can get an XmlCursor. This provides efficient, low level access to the XML Infoset. A cursor represents a position in the XML instance. You can move the cursor around the XML instance at any level of granularity you need from individual characters to Tokens. * SchemaType XMLBeans provides a full XML Schema object model that you can use to reflect on the underlying schema meta information. For example, you might want to generate a sample XML instance for an XML schema or perhaps find the enumerations for an element so that you can display them. All of this was built with performance in mind. Informal benchmarks and user feedback indicate that XMLBeans is extremely fast.
Categories: xml
Languages: Java
PMC: Apache XML Beans

Copyright 1999-2008, The Apache Software Foundation

Licensed under the Apache License, Version 2.0.