Apache开源项目Java部分清单(英文去连接版)

原版: http://projects.apache.org/indexes/language.html#Javahtml

翻译版:http://www.open-open.com/56.htmjava

 

• 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
node


• 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
ios


• Apache ACE
When assembling software out of reusable components, the task of deploying software onto an ever increasing number of targets is not trivial to solve. This becomes even harder when these targets require different components based on who's using them. Apache ACE allows you to group those components and assign them to a managed set of targets. This allows you to distribute updates and new components easily, while keeping a full history of what was installed where during what period. It also helps you setup an automated development, QA/testing, staging and production environment.
Categories: osgi
Languages: Java
PMC: Apache Ace
git


• Apache Abdera
The goal of the Apache Abdera project is to build a functionally-complete, high-performance implementation of the IETF Atom Syndication Format (RFC 4287) and Atom Publishing Protocol (RFC 5023) specifications.
Categories: xml
Languages: Java
PMC: Apache Abdera
web


• Apache Accumulo
The Apache Accumulo sorted, distributed key/value store is based on Google's BigTable design. It is built on top of Apache Hadoop, Zookeeper, and Thrift. It features a few novel improvements on the BigTable design in the form of cell-level access labels and a server-side programming mechanism that can modify key/value pairs at various points in the data management process.
Categories: database
Languages: Java
PMC: Apache Accumulo
express


• 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.
Categories: network-server, network-client
Languages: Java, C, C++, Ruby, Perl, Python, PHP, C#
PMC: Apache ActiveMQ
apache


• Apache Ant
Apache Ant is a Java-based build tool.
Categories: build-management
Languages: Java
PMC: Apache Ant
api


• 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
cookie


• Apache Archiva
Archiva is the perfect companion for build tools such as Maven, Continuum, and ANT. Archiva offers several capabilities, amongst which remote repository proxying, security access management, build artifact storage, delivery, browsing, indexing and usage reporting, extensible scanning functionality and many more!
Categories: build-management
Languages: Java
PMC: Apache Archiva


• Apache Aries
The Aries project is delivering a set of pluggable Java components enabling an enterprise OSGi application programming model. This includes implementations and extensions of application-focused specifications defined by the OSGi Alliance Enterprise Expert Group (EEG) and an assembly format for multi-bundle applications, for deployment to a variety of OSGi based runtimes.
Categories: library
Languages: Java
PMC: Apache Aries


• Apache Avro
Apache Avro is a data serialization system.
Categories: library, big-data
Languages: C, C++, C#, Java, PHP, Python, Ruby
PMC: Apache Avro


• Apache Axiom
Apache Axiom is a StAX-based, XML Infoset compliant object model which supports on-demand building of the object tree. It supports a novel "pull-through" model which allows one to turn off the tree building and directly access the underlying pull event stream. It also has built in support for XML Optimized Packaging (XOP) and MTOM, the combination of which allows XML to carry binary data efficiently and in a transparent manner. The combination of these is an easy to use API with a very high performant architecture!
Categories: library, xml
Languages: Java
PMC: Apache Web Services


• Apache Axis2
Apache Axis2 is a toolkit for creating and using Web Services, including SOAP, MTOM, XML/HTTP and advanced WS-* standards such as WSRM and WSSecurity. Axis2 includes a very fast runtime engine, together with tooling support for WSDL and WS-Policy, and plugin support for WS-Addressing, WS-ReliableMessaging, WS-Security, WS-Eventing, WS-Transactions, WS-Trust and WS-SecureConversation. Axis2 runs either standalone or hosted in Tomcat or other servlet containers.
Categories: xml, http, network-server, network-client
Languages: Java, C
PMC: Apache Axis


• Apache Batik
Batik is a Java-based toolkit for applications or applets to use p_w_picpaths in the Scalable Vector Graphics (SVG) format for various purposes, such as display, generation and manipulation.
Categories: xml, graphics
Languages: Java
PMC: Apache XML Graphics


• Apache Bean Validation (incubating)
The goal of the Bean Validation project is to deliver an implementation of the Bean Validation Specfication (JSR303), which is TCK compliant and works on Java SE 5 or later. The initial codebase for the project was donated to the ASF by a SGA from Agimatec GmbH and uses the ASL 2.0 license. The project is currently undergoing incubation in the Apache Incubator.
Categories: javaee, library
Languages: Java
PMC: Apache Incubator


• 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, retired
Languages: Java
PMC: Apache Attic


• Apache CXF
Apache CXF is an open source services framework. CXF helps you build and develop services using frontend programming APIs like JAX-WS and JAX-RS. 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.
Categories: library, xml, network-client, network-server
Languages: Java
PMC: Apache CXF


• Apache Camel
Apache Camel is a powerful open source integration framework based on known Enterprise Integration Patterns. Rules for Camel's routing and mediation engine can be defined in either a Java based DSL, XML or using DSLs for dynamic languages such as Groovy or Scala.
Categories: osgi, network-server, network-client
Languages: Java, XML, Python, Groovy, JavaScript, Ruby, SQL, Scala, PHP
PMC: Apache Camel


• Apache Cassandra
Linear scalability and proven fault-tolerance on commodity hardware or cloud infrastructure make Apache Cassandra the perfect platform for mission-critical data. Cassandra's support for replicating across multiple datacenters is best-in-class. Cassandra is in use at Netflix, Twitter, Urban Airship, Constant Contact, Reddit, Cisco, OpenX, Digg, CloudKick, Ooyala, and more companies that have large, active data sets. Cassandra provides full Hadoop integration, including with Pig and Hive.
Categories: database
Languages: Java
PMC: Apache Cassandra


• 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.
Categories: database, library, network-server, network-client, xml, web-framework
Languages: Java
PMC: Apache Cayenne


• Apache Chainsaw
Apache Chainsaw is a GUI log viewer.
Categories: network-client
Languages: Java
PMC: Apache Logging Services


• Apache Chemistry
Apache Chemistry provides open source implementations of the Content Management Interoperability Services (CMIS) specification. Libraries are available for Java, Python, PHP and .NET.
Categories: library
Languages: Java, Python, PHP, C#, Objective-C
PMC: Apache Chemistry


• Apache Click
Apache Click is a modern Java web application framework, providing a natural rich client style programming model. Click provides a page and component oriented design with a event based programming model. Leveraging a stateless architecture Click encourages loosely coupled pages for easier maintenance. Click is designed to be very easy to learn and use, with developers getting up and running within a day. Support is provided for Velocity, JSP or FreeMarker page rendering. Click also provides exceptional performance for high volume web sites.
Categories: library, network-server, network-client, xml, web-framework
Languages: Java
PMC: Apache Click


• 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.
Categories: database, graphics, http, network-client, network-server, web-framework, xml
Languages: Java, XML
PMC: Apache Cocoon


• Apache Commons Attributes
A package for handling runtime information about types (including Java classes)
Categories: library
Languages: Java
PMC: Apache Commons


• Apache Commons 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 Commons


• Apache Commons 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 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 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 Chain
An implmentation of the GoF Chain of Responsibility pattern
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 Compress
Commons Compress: working with zip, ar, jar, bz2, cpio, tar, gz, dump, pack200 and xz files.
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 DBCP
Commons Database Connection Pooling
Categories: library
Languages: Java
PMC: Apache Commons


• Apache Commons Daemon
Commons Daemon
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 Exec
A library to reliably execute external processes from within the JVM
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.
Categories: http, library, network-client
Languages: Java
PMC: Apache HttpComponents


• 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 JCS
Comprehensive Caching System
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 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 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 Proxy
Commons Dynamic Proxy Library
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 VFS
VFS is a Virtual File System library.
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 Compress Ant Library
This is a library of Ant tasks and types uses Apache Commons Compress to support additional archive formats like ar, pack200, xz and cpio.
Categories: build-management
Languages: Java
PMC: Apache Ant


• Apache Continuum
Whether you have a centralized build team or want to put control of releases in the hands of developers, Apache Continuum can help you improve quality and maintain a consistent build environment. Follow us on Twitter @apachecontinuum to get the latest news and updates!
Categories: build-management
Languages: Java
PMC: Apache Continuum


• Apache Cordova
Apache Cordova is a set of device APIs that allow a mobile app developer to access native device function such as the camera or accelerometer from JavaScript. Combined with a UI framework such as jQuery Mobile or Dojo Mobile or Sencha Touch, this allows a smartphone app to be developed with just HTML, CSS, and JavaScript.
Categories: mobile, library
Languages: JavaScript, Java, Objective-C, C++, C#, node.js
PMC: Apache Cordova


• 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
The Apache Directory project provides directory solutions entirely written in Java. These include a directory server, which has been certified as LDAP v3 compliant by the Open Group (ApacheDS), and Eclipse-based directory tools (Apache Directory Studio).
Categories: network-server, network-client
Languages: Java
PMC: Apache Directory


• Apache Directory Server
ApacheDS is an extensible and 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. It has been designed to introduce triggers, stored procedures, queues and views to the world of LDAP which has lacked these rich constructs.
Categories: network-server
Languages: Java
PMC: Apache Directory


• Apache Directory Studio
Apache Directory Studio is a complete directory tooling platform intended to be used with any LDAP server however it is particularly designed for use with ApacheDS. It is an Eclipse RCP application, composed of several Eclipse (OSGi) plugins, that can be easily upgraded with additional ones. These plugins can even run within Eclipse itself.
Categories: network-client
Languages: Java
PMC: Apache Directory


• Apache Droids (incubating)
Apache Droids (incubating) aims to be an intelligent standalone robot framework that allows to create robots as plugins, which can automatically seeks out relevant online information based on the user's specifications. Droids makes it very easy to extend existing robots or write a new one from scratch, which can automatically seek out relevant online information based on the user's specifications. Droids (plural) is not designed for a special usecase, it is a framework: Take what you need, do what you want.
Categories:
Languages: Java
PMC: Apache Incubator


• 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, retired
Languages: Java
PMC: Apache Attic


• Apache Empire-db
Apache Empire-db is a relational database abstraction layer that allows developers to take a much more SQL-centric approach in application development than traditional Object/Relational mapping frameworks (ORM). With its unique object orientated command API it allows the creation of SQL-statements of any complexity that take full advantage of all DBMS features which leads to highly efficient database operations and code. Additionally by eliminating the use of error-prone string operations it also offers an unprecedented level of ease-of-use and compile-time-safety.
Categories: database
Languages: Java
PMC: Apache Empire-db


• Apache Etch
Etch is a cross-platform, language- and transport-independent framework for building and consuming network services. The Etch toolset includes a network service description language, a compiler, and binding libraries for a variety of programming languages. Etch is also transport-independent, allowing for a variety of different transports to be used based on need and circumstance. The goal of Etch is to make it simple to define small, focused services that can be easily accessed, combined, and deployed in a similar manner. With Etch, service development and consumption becomes no more difficult than library development and consumption.
Categories: network-server, network-client, library
Languages: C, C#, C++, Go, Java, JavaScript, Python
PMC: Apache Etch


• 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, retired
Languages: Java
PMC: Apache Attic


• Apache Felix
OSGi framework implementation and related technologies.
Categories: network-server
Languages: Java
PMC: Apache Felix


• Apache Forrest
Apache Forrest™ software is a publishing framework that transforms input from various sources into a unified presentation in one or more output formats. The modular and extensible plug-in architecture of Apache Forrest is based on Apache Cocoon and the relevant industry standards that separate presentation from content. Forrest can generate static documents, or be used as a dynamic server, or be deployed by its automated facility.
Categories: build-management, database, graphics, http, network-client, network-server, web-framework, xml
Languages: Java
PMC: Apache Forrest


• Apache FtpServer
The Apache FtpServer is a 100% pure Java FTP server. It's designed to be a complete and portable FTP server engine solution based on currently available open protocols. FtpServer can be run standalone as a Windows service or Unix/Linux daemon, or embedded into a Java application. We also provide support for integration within Spring applications and provide our releases as OSGi bundles.
Categories: network-server
Languages: Java
PMC: Apache Mina


• Apache Geronimo
Apache Geronimo is an open source server runtime that integrates the best open source projects to create Java/OSGi server runtimes that meet the needs of enterprise developers and system administrators. Our most popular distribution is a fully certified Java EE 5 application server runtime.
Categories: javaee, network-server, http, web-framework
Languages: Java
PMC: Apache Geronimo


• Apache Gora
Although there are various excellent ORM frameworks for relational databases, data modeling in NoSQL data stores differ profoundly from their relational cousins. Moreover, data-model agnostic frameworks such as JDO are not sufficient for use cases, where one needs to use the full power of the data models in column stores. Gora fills this gap by giving the user an easy-to-use in-memory data model and persistence for big data framework with data store specific mappings and built in Apache Hadoop support.
Categories: database
Languages: Java
PMC: Apache Gora


• Apache HBase
Use Apache HBase software when you need random, realtime read/write access to your Big Data. This project's goal is the hosting of very large tables -- billions of rows X millions of columns -- atop clusters of commodity hardware. HBase is an open-source, distributed, versioned, column-oriented store modeled after Google's Bigtable: A Distributed Storage System for Structured Data by Chang et al. Just as Bigtable leverages the distributed data storage provided by the Google File System, HBase provides Bigtable-like capabilities on top of Hadoop and HDFS.
Categories: database
Languages: Java
PMC: Apache HBase


• Apache Hadoop
Hadoop is 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 software is a modular Java runtime with class libraries and associated tools.
Categories: virtual-machine, retired
Languages: Java, C
PMC: Apache Attic


• Apache Hive
The Apache Hive (TM) data warehouse software facilitates querying and managing large datasets residing in distributed storage. Built on top of Apache Hadoop (TM), it provides * tools to enable easy data extract/transform/load (ETL) * a mechanism to impose structure on a variety of data formats * access to files stored either directly in Apache HDFS (TM) or in other data storage systems such as Apache HBase (TM) * query execution via MapReduce Hive defines a simple SQL-like query language, called HiveQL, that enables users familiar with SQL to query the data. At the same time, this language also allows programmers who are familiar with the MapReduce framework to be able to plug in their custom mappers and reducers to perform more sophisticated analysis that may not be supported by the built-in capabilities of the language. HiveQL can also be extended with custom scalar functions (UDF's), aggregations (UDAF's), and table functions (UDTF's).
Categories: database
Languages: Java
PMC: Apache Hive


• 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, retired
Languages: Java
PMC: Apache Attic


• 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.
Categories: http, library, network-client
Languages: Java
PMC: Apache HttpComponents


• Apache HttpComponents Core
HttpCore is a set of low level HTTP transport components that can be used to build custom client and server side HTTP services with a minimal footprint. HttpCore supports two I/O models: blocking I/O model based on the classic Java I/O and non-blocking, event driven I/O model based on Java NIO. The blocking I/O model may be more appropriate for data intensive, low latency scenarios, whereas the non-blocking model may be more appropriate for high latency scenarios where raw data throughput is less important than the ability to handle thousands of simultaneous HTTP connections in a resource efficient manner.
Categories: http, library, network-client, network-server
Languages: Java
PMC: Apache HttpComponents


• Apache Isis
Apache Isis is a framework for rapidly developing domain-driven apps in Java. Write your business logic in entities, domain services and repositories, and the framework dynamically (at runtime) generates a representation of that domain model as a webapp or as a RESTful API. Use for prototyping or production.
Categories: web-framework
Languages: Java
PMC: Apache Isis


• Apache Ivy
Apache Ivy is a very powerful dependency manager oriented toward Java dependency management, even though it could be used to manage dependencies of any kind.
Categories: build-management
Languages: Java
PMC: Apache Ant


• Apache IvyDE
IvyDE lets you manage your dependencies declared in an ivy.xml in your Java Eclipse projects. IvyDE will contribute to the classpath of your Java project, with the classpath container. It also bring an editor of ivy.xml files, with completion.
Categories: build-management
Languages: Java
PMC: Apache Ant


• 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 JMeter
Apache 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 JMeter


• Apache JSPWiki (incubating)
Apache JSPWiki is a feature-rich and extensible WikiWiki engine built around the standard J2EE components (Java, servlets, JSP). It features: - WikiMarkup/Structured Text - File p_w_uploads - Templates support - Data storage through 3 WikiPage Providers, with the capability to plug new ones - Security: Authorization and authentication fine grain control - Easy plugin interface - UTF-8 support - JSP-based - Easy-ish installation - Page locking to prevent editing conflicts - Support for Multiple Wikis
Categories: content
Languages: Java
PMC: Apache Incubator


• 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.
Categories: database, library, network-server, xml
Languages: Java
PMC: Apache Jackrabbit


• 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, retired
Languages: Java
PMC: Apache Attic


• Apache Jena
Apache Jena provides a complete framework for building Semantic Web and Linked Data applications in Java, and provides: parsers for RDF/XML, Turtle and N-triples; a Java programming API; a complete implementation of the SPARQL query language; a rule-based inference engine for RDFS and OWL entailments; TDB (a non-SQL persistent triple store); SDB (a persistent triples store built on a relational store) and Fuseki, an RDF server using web protocols. Jena complies with all relevant recommendations for RDF and related technologies from the W3C.
Categories: library
Languages: Java
PMC: Apache Jena


• Apache Karaf
Apache Karaf is a small OSGi based runtime which provides a lightweight container onto which various components and applications can be deployed.
Categories: network-server, osgi
Languages: Java
PMC: Apache Karaf


• 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 Lucene Core
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 MINA
Apache MINA is a network application framework which helps users develop high performance and high scalability network applications easily. It provides an abstract, event-driven, asynchronous API over various transports such as TCP/IP and UDP/IP via Java NIO.
Categories: network-client, network-server
Languages: Java
PMC: Apache Mina


• Apache Mahout
Scalable machine learning library
Categories: library
Languages: Java
PMC: Apache Mahout


• Apache ManifoldCF
ManifoldCF is an effort to provide an open source framework for connecting source content repositories like Microsoft Sharepoint and EMC Documentum, to target repositories or indexes, such as Apache Solr , OpenSearchServer or ElasticSearch. ManifoldCF also defines a security model for target repositories that permits them to enforce source-repository security policies.
Categories: content
Languages: Java
PMC: Apache ManifoldCF


• 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 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, javaee
Languages: Java
PMC: Apache MyFaces


• Apache Nutch
Apache Nutch is an open source web-search software project. Stemming from Apache Lucene, it now builds on Apache Solr adding web-specifics, such as a crawler, a link-graph database and parsing support handled by Apache Tika for HTML and and array other document formats. Apache Nutch can run on a single machine, but gains a lot of its strength from running in a Hadoop cluster The system can be enhanced (eg other document formats can be parsed) using a highly flexible, easily extensible and thoroughly maintained plugin infrastructure.
Categories: web-framework
Languages: Java
PMC: Apache Nutch


• 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
Apache OFBiz (The Apache Open For Business Project) 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.
Categories: web-framework, database, network-server, xml, http
Languages: Java, Groovy, JavaScript, XML
PMC: Apache OFBiz


• Apache OODT
Apache OODT software is component based, and offers a software architecture beyond simple science applications.
Categories: web-framework
Languages: Java
PMC: Apache OODT: Object Oriented Data Technology


• 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, retired
Languages: Java
PMC: Apache Attic


• Apache OpenJPA
Apache OpenJPA is a Java persistence project at The Apache Software Foundation that can be used as a stand-alone POJO persistence layer or integrated into any Java EE compliant container and many other lightweight frameworks, such as Tomcat and Spring. The 1.x releases are a production ready, feature-rich, compliant implementation of the Java Persistence API (JPA) 1.0 part of the JSR-220 Enterprise Java Beans 3.0 specification, which pass the Sun JPA 1.0b Technology Compatibility Kit. The 2.x releases are a production ready, compliant implement of the JSR-317 Java Persistence 2.0 specification, which is backwards compatible to the JPA 1.0 specification and passes the Sun JPA 2.0 Technology Compatibility Kit.
Categories: database, library, javaee
Languages: Java
PMC: Apache OpenJPA


• Apache OpenWebBeans
OpenWebBeans is an ALv2-licensed implementation of the "Contexts and Dependency Injection for the Java EE platform" specification which is defined as JSR-299.
Categories: javaee
Languages: Java
PMC: Apache OpenWebBeans


• Apache PDFBox
The Apache PDFBox library is an open source Java tool for working with PDF documents.
Categories: content, library
Languages: Java
PMC: Apache PDFBox


• Apache POI
APIs for manipulating various file formats based upon Open Office XML (ECMA-376) and Microsoft's OLE 2 Compound Document formats using pure Java. Apache POI is your Java Excel, Word and PowerPoint solution. We have a complete API for porting other OOXML and OLE 2 Compound Document formats and welcome others to participate.
Categories: content, library
Languages: Java
PMC: Apache POI


• Apache Pig
Apache Pig is a platform for analyzing large data sets that consists of a high-level language for expressing data analysis programs, coupled with infrastructure for evaluating these programs. The salient property of Pig programs is that their structure is amenable to substantial parallelization, which in turns enables them to handle very large data sets. Pig's infrastructure layer consists of a compiler that produces sequences of Map-Reduce programs. Pig's language layer consists of a textual language called Pig Latin, which has the following key properties: * Ease of programming. It is trivial to achieve parallel execution of simple, "embarrassingly parallel" data analysis tasks. Complex tasks comprised of multiple interrelated data transformations are explicitly encoded as data flow sequences, making them easy to write, understand, and maintain. * Optimization opportunities. The way in which tasks are encoded permits the system to optimize their execution automatically, allowing the user to focus on semantics rather than efficiency. * Extensibility. Users can create their own functions to do special-purpose processing.
Categories: database
Languages: Java
PMC: Apache Pig


• Apache Pivot
Apache Pivot is an open-source platform for building installable Internet applications (IIAs). It combines the enhanced productivity and usability features of a modern user interface toolkit with the robustness of the Java platform.
Categories: library
Languages: Java
PMC: Apache Pivot


• Apache Portals
The Apache Portals project provides various software products, including Apache Jetspeed-2, Apache Pluto, and Apache Portals Applications.
Categories: web-framework
Languages: Java
PMC: Apache Portals


• Apache Props Ant Library
The Apache Props Antlib is a library of supplementary handlers for Apache Ant properties resolution. The types provided are instances of org.apache.tools.ant.PropertyHelper.Delegate and can be invoked using the <propertyhelper> task provided in Ant 1.8.0.
Categories: build-management
Languages: Java
PMC: Apache Ant


• Apache Qpid
Apache Qpid implements the latest AMQP specification, the first open standard for enterprise messaging, and provides transaction management, queuing, distribution, security, management, clustering, federation and heterogeneous multi-platform support and a lot more.
Categories: network-server, network-client
Languages: C++, Java, C#, Python, Ruby
PMC: Apache Qpid


• Apache Rat
Apache Rat improves accuracy and efficiency when reviewing and auditing releases. It is heuristic in nature: making guesses about possible problems. It will produce false positives and cannot find every possible issue with a release. It's reports require interpretation. Apache Rat was developed in response to a need felt in the Apache Incubator to be able to review releases for the most common faults less labour intensively. It is therefore highly tuned to the Apache style of releases.
Categories: build-management
Languages: Java
PMC: Apache Creadur


• Apache Rave
Apache Rave is a new web and social mashup engine. It will provide an out-of-the-box as well as an extendible lightweight Java platform to host, serve and aggregate (Open)Social Gadgets and services through a highly customizable and Web 2.0 friendly front-end. Rave is targeted as engine for internet and intranet portals and as building block to provide context-aware personalization and collaboration features for multi-site/multi-channel (mobile) oriented and content driven websites and (social) network oriented services and platforms. For the OpenSocial container and services the (Java) Apache Shindig will be integrated. At a later stage further generalization is envisioned to also transparently support W3C Widgets using Apache Wookie.
Categories: web-framework
Languages: Java
PMC: Apache Rave


• Apache Regexp
100% Pure Java Regular Expression package
Categories: library, regexp, retired
Languages: Java
PMC: Apache Attic


• Apache River
Apache River software provides a JINI service, which is a service oriented architecture that defines a programming model which both exploits and extends Java technology to enable the construction of secure, distributed systems consisting of federations of services and clients. Jini technology can be used to build adaptive network systems that are scalable, evolvable and flexible as typically required in dynamic computing environments.
Categories: javaee
Languages: Java
PMC: Apache River


• Apache Roller
Roller is a Java web application that should be able to run on any Java EE server and any relational database. Currently, Roller is best supported on Tomcat and MySQL -- but users have reported success running Roller on Glassfish, Websphere, JBoss, Resin, Geronimo, Derby, PostgresSQL, Oracle, etc.) Here are some of Roller's key features: - Multi-user blogging: can support tens of thousands of users and blogs - Group blogging with three permisson levels (editor, author and limited) - Support for comment moderation and comment spam prevention measures - Bloggers have complete control over blog layout/style via templates - Built-in search engine indexes weblog entry content - Pluggable cache and rendering system - Support for blog clients that support MetaWeblog API - All blogs have entry and comment feeds in both RSS 2.0 and Atom 1.0 formats
Categories: content
Languages: Java
PMC: Apache Roller


• Apache SIS
Apache SIS is an ASFv2 licensed open source toolkit for enabling representation of coordinates, geometries and shapes for searching, data clustering, archiving, or any other relevant spatial needs.
Categories: library
Languages: Java
PMC: Apache Incubator


• Apache SSHD
Apache SSHD is a 100% pure java library to support the SSH protocols on both the client and server side. This library is based on Apache MINA, a scalable and high performance asynchronous IO library. SSHD does not really aim at being a replacement for the SSH client or SSH server from Unix operating systems, but rather provides support for Java based applications requiring SSH support.
Categories: network-server
Languages: Java
PMC: Apache Mina


• Apache Sandesha2
Apache Sandesha2 is an Axis2 module that implements the WS-ReliableMessaging specification. It can be used both on the client side and on the server side.
Categories: xml
Languages: Java
PMC: Apache Axis


• Apache Santuario
Library implementing XML Digital Signature Specification & XML Encryption Specification
Categories: xml
Languages: Java, C
PMC: Apache Santuario (XML Security)


• 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 jUDDI


• 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, retired
Languages: Java
PMC: Apache Attic


• Apache Shindig
Apache Shindig is a container for hosting social application consisting of four parts: Gadget Container core JavaScript foundation for general gadget functionality (read more about gadget functionality). This JavaScript manages security, communication, UI layout, and feature extensions, such as the OpenSocial API. Gadget Rendering Server: used to render the gadget XML into JavaScript and HTML for the container to expose via the container JavaScript. OpenSocial Container JavaScript environment that sits on top of the Gadget Container JavaScript and provides OpenSocial specific functionality (profiles, friends, activities, datastore). OpenSocial Data Server: an implementation of the server interface to container-specific information, including the OpenSocial REST APIs, with clear extension points so others can connect it to their own backends. Apache Shindig is the reference implementation of OpenSocial API specifications, versions 0.8.x and 0.9.x, a standard set of Social Network APIs.
Categories: javaee
Languages: Java
PMC: Apache Shindig


• Apache Shiro
Apache Shiro is a powerful and easy-to-use Java security framework that performs authentication, authorization, cryptography, and session management. With Shiro’s easy-to-understand API, you can quickly and easily secure any JVM-based application – from the smallest mobile applications to the largest web and enterprise applications.
Categories: library, web-framework
Languages: Java
PMC: Apache Shiro


• Apache Sling
Apache Sling is a web framework that uses a Java Content Repository, such as Apache Jackrabbit, to store and manage content. Sling applications use either scripts or Java servlets, selected based on simple name conventions, to process HTTP requests in a RESTful way. The embedded Apache Felix OSGi framework and console provide a dynamic runtime environment, where code and content bundles can be loaded, unloaded and reconfigured at runtime. As the first web framework dedicated to JSR-170 Java Content Repositories, Sling makes it very simple to implement simple applications, while providing an enterprise-level framework for more complex applications.
Categories:
Languages: Java
PMC: Apache Sling


• 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, network-server
Languages: Java
PMC: Apache Lucene


• Apache Stanbol
Apache Stanbol is a modular software stack and reusable set of components for semantic content management.
Categories: content
Languages: Java
PMC: Apache Stanbol


• Apache Struts
The Apache Struts Project offers two major versions of the the Apache Struts web 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 ESB, 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.
Categories: xml, http, network-server, network-client
Languages: Java
PMC: Apache Synapse


• Apache Syncope
Apache Syncope is an Open Source system for managing digital identities in enterprise environments, implemented in JEE technology and released under Apache 2.0 license. Identity management (or IdM) represents the joint result of business process and IT to manage user data on systems and applications. IdM involves considering user attributes, roles, resources and entitlements in trying to give a decent answer to the question bumping at every time in IT administrators’ mind: Who has access to What, When, How, and Why?
Categories: /network-server
Languages: Java
PMC: Apache Syncope


• Apache Tapestry
Tapestry is a component-oriented Java web application framework. Its design emphasizes ease of use and developer productivity. Component classes are simple POJOs, with Tapestry using byte code manipulation to enhance classes at runtime. Configuration is via annotations and naming conventions rather than XML. Web page and component templates use regular (X)HTML that can be edited by any web designer. Live Class Reloading enables you to edit Java code and immediately see results by reloading the page in the web browser, resulting in a very "code it - see it - fix it" loop.
Categories: web-framework
Languages: Java
PMC: Apache Tapestry


• Apache Tentacles
Apache Tentacles helps the reviewer by automating interactions with the repository containing the artifacts comprising the release.
Categories: build-management
Languages: Java
PMC: Apache Creadur


• Apache Thrift
Apache Thrift allows you to define data types and service interfaces in a simple definition file. Taking that file as input, the compiler generates code to be used to easily build RPC clients and servers that communicate seamlessly across programming languages. Instead of writing a load of boilerplate code to serialize and transport your objects and invoke remote methods, you can get right down to business.
Categories: http, library, network-client, network-server
Languages: ActionScript, C, C#, C++, Cocoa, D, Delphi, Erlang, Go, Haskell, Java, JavaScript, node.js, Ocaml, Perl, PHP, Python, SmallTalk
PMC: Apache Thrift


• Apache Tika
The Apache Tika toolkit is an ASFv2 licensed open source tool for extracting information from digital documents. Tika allows search engines, content management systems and other applications that work with various kinds of digital documents to easily detect and extract metadata and content from all major file formats.
Categories: library
Languages: Java
PMC: Apache Tika


• Apache Tiles
Apache Tiles™ is a templating framework built to simplify the development of web application user interfaces. Tiles allows authors to define page fragments which can be assembled into a complete page at runtime. These fragments, or tiles, can be used as simple includes in order to reduce the duplication of common page elements or embedded within other tiles to develop a series of reusable templates. These templates streamline the development of a consistent look and feel across an entire application.
Categories: web-framework
Languages: Java
PMC: Apache Tiles


• 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 a web server that is an open source software implementation of the Java Servlet and JavaServer Pages technologies. The Java Servlet and JavaServer Pages specifications are developed under the Java Community Process. Apache Tomcat is developed in an open and participatory environment and released under the Apache License version 2. 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. 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, http, javaee
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 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 UIMA
The Apache UIMA project supports the community working on the analysis of unstructured information with a unifying Java and C++ framework, tooling, and analysis components, guided by the OASIS UIMA standard. It includes support for very large scaleout using networked clusters of compute nodes.
Categories:
Languages: Java, C++
PMC:


• Apache VSS Ant Library
The Apache VSS Antlib provides an interface to the Microsoft Visual SourceSafe SCM. The original Ant tasks have been expanded upon in this Antlib. Some fixes to issues in the original tasks have also been incorporated.
Categories: build-management
Languages: Java
PMC: Apache Ant


• 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 Vysper
Apache Vysper aims to be a modular, full featured XMPP (Jabber) server. Vysper is implemented in Java.
Categories: network-server
Languages: Java
PMC: Apache Mina


• Apache Whirr
Apache Whirr is a set of libraries for running cloud services Whirr provides: 1. A cloud-neutral way to run services. You don't have to worry about the idiosyncrasies of each provider. 2. A common service API. The details of provisioning are particular to the service. 3. Smart defaults for services. You can get a properly configured system running quickly, while still being able to override settings as needed. You can also use Whirr as a command line tool for deploying clusters.
Categories: network-server
Languages: Java, Bash
PMC: Apache Whirr


• Apache Whisker
Apache Whisker allows an application to models the licensing characteristics of the contents of its distributions. Use cases are auditing the model against the contents of a distribution, reporting on the contents of a distribution and generation licensing documents (LICENSE, NOTICE and so on) for a distribution. Whisker distributes tooling for the command line and build system such as Maven.
Categories: build-management
Languages: Java
PMC: Apache Creadur


• Apache Wicket
With proper mark-up/logic separation, a POJO data model, and a refreshing lack of XML, Apache Wicket makes developing web-apps simple and enjoyable again. Swap the boilerplate, complex debugging and brittle code for powerful, reusable components written with plain Java and HTML.
Categories: web-framework
Languages: Java
PMC: Apache Wicket


• Apache Woden
The Woden project is a subproject of the Apache Web Services Project to develop a Java class library for reading, manipulating, creating and writing WSDL documents, initially to support WSDL 2.0 but with the longer term aim of supporting past, present and future versions of WSDL. There are two main deliverables: an API and an implementation. The Woden API will consist of a set of Java interfaces. The WSDL 2.0-specific portion of the Woden API will conform to the W3C WSDL 2.0 specification. The implementation will be a high performance implementation directly usable in other Apache projects such as Axis2.
Categories: xml
Languages: Java
PMC: Apache Web Services


• 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 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


• Apache Xalan for Java XSLT Processor
Xalan-J is an XSLT processor for transforming XML documents into HTML, text, or other XML document types. It implements XSL Transformations (XSLT) Version 1.0 and XML Path Language (XPath) Version 1.0 and can be used from the command line, in an applet or a servlet, or as a module in other program. Xalan-J implements the javax.xml.transform interface in Java API for XML Processing (JAXP) 1.3. This interface provides a modular framework and a standard API for performing XML transformations, and utilizes system properties to determine which Transformer and which XML parser to use.
Categories: xml
Languages: Java
PMC: Apache Xalan


• Apache Xerces for Java XML Parser
Xerces-J is a 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.11.0, expands on Xerces' experimental support for XML Schema 1.1 by providing implementations for the simplified complex type restriction rules (also known as subsumption), xs:override and a few other XML Schema 1.1 features. This release also introduces experimental support for XML Schema Component Designators (SCD). It fixes several bugs which were present in Xerces-J 2.10.0 and also includes a few other minor enhancements.
Categories: xml
Languages: Java
PMC: Apache Xerces


• Apache Xindice
Pure Java based native XML database. Supports XPath and XUpdate.
Categories: xml, retired
Languages: Java
PMC: Apache Attic


• Apache ZooKeeper
Apache ZooKeeper is an effort to develop and maintain an open-source server which enables highly reliable distributed coordination.
Categories: database
Languages: Java
PMC: Apache ZooKeeper


• Apache log4j
Apache log4j provides logging services for Java.
Categories: library
Languages: Java
PMC: Apache Logging Services

• 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