This topic applies to WebSphere Application Server Liberty V8.5.5.9 and earlier. For the latest Liberty topics, see the WebSphere Application Server Liberty documentation.

Liberty features

Features are the units of functionality by which you control the pieces of the runtime environment that are loaded into a particular server.

The following table lists the Liberty features that are supported for each WebSphere® Application Server Liberty edition.

Tip: To install all features that apply your Liberty edition, you can install a feature bundle addon. WebSphere Application Server Network Deployment Liberty has two bundles: The ndMemberBundle addon contains most features and is for servers that are clustered and auto-scaled in a Liberty collective, and the ndControllerBundle addon contains a small set of features only for managing Liberty collectives.
Table 1. Liberty features supported for each WebSphere Application Server Liberty edition
Liberty feature WebSphere Application Server Liberty Core WebSphere Application Server

and

WebSphere Application Server - Express®

WebSphere Application Server Network Deployment (Distributed operating systems and IBM® i) WebSphere Application Server for z/OS®
Feature bundle addon libertyCoreBundle baseBundle ndMemberBundle: All except controller features

ndControllerBundle: Only features marked with 1

zosBundle
 
Java™ EE 7 Web Profile
[8.5.5.6 or later]beanValidation-1.1
[8.5.5.6 or later]cdi-1.2
[8.5.5.6 or later]ejbLite-3.2
el-3.0
[8.5.5.6 or later]jaxrs-2.0
[8.5.5.6 or later]jaxrsClient-2.0
jdbc-4.1
jndi-1.0
[8.5.5.6 or later]jpa-2.1
[8.5.5.6 or later]jsf-2.2
jsonp-1.0
jsp-2.3
managedBeans-1.0
servlet-3.1
[8.5.5.6 or later]webProfile-7.0
websocket-1.0
websocket-1.1
 
Java EE 7 Full Platform
[8.5.5.6 or later]appClientSupport-1.0  
[8.5.5.6 or later]appSecurityClient-1.0  
[8.5.5.6 or later]batch-1.0  
concurrent-1.0
[8.5.5.6 or later]ejb-3.2  
[8.5.5.6 or later]ejbHome-3.2  
[8.5.5.6 or later]ejbPersistentTimer-3.2  
[8.5.5.6 or later]ejbRemote-3.2  
[8.5.5.6 or later]j2eeManagement-1.1  
[8.5.5.6 or later]jacc-1.5
[8.5.5.6 or later]jaspic-1.1
[8.5.5.6 or later]javaee-7.0  
[8.5.5.6 or later]javaeeClient-7.0  
[8.5.5.6 or later]javaMail-1.5
jaxb-2.2  
jaxws-2.2  
[8.5.5.6 or later]jca-1.7  
jcaInboundSecurity-1.0  
[8.5.5.6 or later]jms-2.0  
[8.5.5.6 or later]jmsMdb-3.2  
[8.5.5.6 or later]mdb-3.2  
[8.5.5.6 or later]wasJmsClient-2.0  
wasJmsSecurity-1.0  
wasJmsServer-1.0  
 
Extended Programming Models
cloudant-1.0  
couchdb-1.0  
distributedMap-1.0
json-1.0
mongodb-2.0  
[8.5.5.7 or later]rtcomm-1.0  
[8.5.5.7 or later]rtcommGateway-1.0  
[8.5.5.7 or later]sipServlet-1.1  
 
Enterprise OSGi
blueprint-1.0
osgiAppIntegration-1.0
[8.5.5.9 or later]osgiBundle-1.0
osgi.jpa-1.0
wab-1.0
 
Operations
[8.5.5.8 or later]apiDiscovery-1.0
appSecurity-1.0
appSecurity-2.0
[8.5.5.6 or later]batchManagement-1.0  
[8.5.5.7 or later]bells-1.0
[8.5.5.9 or later]bluemixUtility-1.0
[8.5.5.6 or later]eventLogging-1.0
ldapRegistry-3.0
localConnector-1.0
[8.5.5.9 or later]logstashCollector-1.0
monitor-1.0
oauth-2.0
openid-2.0
openidConnectClient-1.0
openidConnectServer-1.0
osgiConsole-1.0
[8.5.5.9 or later]passwordUtilities-1.0  
[8.5.5.6 or later]requestTiming-1.0
restConnector-1.0
[8.5.5.7 or later]samlWeb-2.0
serverStatus-1.0
sessionDatabase-1.0
spnego-1.0
ssl-1.0
timedOperations-1.0
webCache-1.0
[8.5.5.6 or later]wmqJmsClient-2.0  
wsSecurity-1.1  
[8.5.5.9 or later]wsAtomicTransaction-1.2  
 
Systems Management
adminCenter-1.0 1
clusterMember-1.0    
collectiveController-1.0     1
collectiveMember-1.0
dynamicRouting-1.0     1
[8.5.5.7 or later]healthAnalyzer-1.0    
[8.5.5.7 or later]healthManager-1.0     1
scalingController-1.0     1
scalingMember-1.0    
 
z/OS
zosConnect-1.0      
[8.5.5.7 or later]zosConnect-1.2      
zosLocalAdapters-1.0      
zosSecurity-1.0      
zosTransaction-1.0      
zosWlm-1.0      
 
Java EE 6 Web Profile
beanValidation-1.0
cdi-1.0
ejbLite-3.1
jdbc-4.0
jndi-1.0
jpa-2.0
jsf-2.0
jsp-2.2
servlet-3.0
webProfile-6.0
 
Java EE 6 Technologies
jaxb-2.2  
jaxrs-1.1
jaxws-2.2  
jca-1.6  
jcaInboundSecurity-1.0  
jms-1.1  
jmsMdb-3.1  
mdb-3.1  
wasJmsClient-1.1  
wasJmsSecurity-1.0  
wasJmsServer-1.0  
wmqJmsClient-1.1  

Feature descriptions

The following list contains information about the features you can add to your server configuration. Including a feature in the configuration might cause one or more additional features to be loaded automatically. For example, if you include the wab-1.0 feature, the servlet-3.0 and blueprint-1.0 features are loaded automatically. Each feature includes a brief description, and an example of how the feature is declared within the <featureManager> element inside the server.xml file. For example:
<server>
  <featureManager>
    <feature>servlet-3.0</feature>
    <feature>localConnector-1.0</feature>
  </featureManager>
</server>
Java EE 7 Web Profile
[8.5.5.6 or later]Bean validation
<feature>beanValidation-1.1</feature>

The beanvalidation-1.1 feature provides validations for JavaBeans at each layer of an application. The validation can be applied to all layers of JavaBeans in an application by using annotations or a validation.xml deployment descriptor.

See Bean validation feature restrictions.

For beanValidation-1.1 feature configuration information, see Bean Validation 1.1.

[8.5.5.6 or later]CDI
<feature>cdi-1.2</feature>

The cdi-1.2 feature enables support for the Contexts and Dependency Injection 1.2 specification on Liberty.

See Administering Contexts and Dependency Injection applications on Liberty.

For cdi-1.2 feature configuration information, see Contexts and Dependency Injection 1.2.

Enterprise Java Beans (EJB) Lite
[8.5.5.6 or later]<feature>ejbLite-3.2</feature>
The ejbLite-3.2 feature provides support for EJB applications that are written to the EJB Lite subset of the EJB 3.2 specification.
Note that the EJB 3.2 Lite API Group does not include the embeddable EJB container, and the product does not provide an EJB 3.2 embeddable container.
Also, the following features are not compatible with the ejbLite-3.2 feature:
  • cdi-1.0
  • jmsMdb-3.1
  • mdb-3.1

For ejbLite-3.2 feature configuration information, see Enterprise JavaBeans Lite 3.2.

Expression Language 3.0
<feature>el-3.0</feature>

This feature enables support for the Expression Language (EL) 3.0.

See Configuring Liberty for Expression Language 3.0.

For el-3.0 feature configuration information, see Expression Language 3.0.

[8.5.5.6 or later]Java API for RESTful Web Services (JAX-RS)
<feature>jaxrs-2.0</feature>

The jaxrs-2.0 feature provides support for the Java API for RESTful Web Services on Liberty.

See Configuring JAX-RS 2.0 client and JAX-RS 2.0 integration with EJB and CDI.

For jaxrs-2.0 feature configuration information, see Java RESTful Services 2.0.

[8.5.5.6 or later]Java EE Client API for JAX-RS 2.0
<feature>jaxrsClient-2.0</feature>

The jaxrsClient-2.0 feature provides support for Java Client API for JAX-RS 2.0

See Configuring JAX-RS 2.0 client and JAX-RS 2.0 integration with EJB and CDI.

For jaxrsClient-2.0 feature configuration information, see Java RESTful Services Client 2.0.

Java Database Connectivity (JDBC)
<feature>jdbc-4.1</feature>

You can take an existing application that uses Java Database Connectivity (JDBC) and a data source, and deploy the application to a server. The jdbc-4.1 feature provides support for applications that access a database.

See Configuring relational database connectivity in Liberty.

For jdbc-4.1 feature configuration information, see Java Database Connectivity 4.1.

Java Naming and Directory Interface (JNDI)
<feature>jndi-1.0</feature>

The jndi-1.0 feature provides support for a single JNDI entry definition in the server configuration of Liberty.

See Developing with the JNDI default namespace in a Liberty feature.

For jndi-1.0 feature configuration information, see Java Naming and Directory Interface.

[8.5.5.6 or later]Java Persistence API 2.1
<feature>jpa-2.1</feature>

The jpa-2.1 feature provides support for applications that use application-managed and container-managed JPA written to the JPA 2.1 specification and is backed by EclipseLink.

See Java Persistence API (JPA) feature overview.

For jpa-2.1 feature configuration information, see Java Persistence API 2.1.

[8.5.5.6 or later]JavaServer Faces (JSF)
<feature>jsf-2.2</feature>

This feature enables support for web applications that use the Java Server Faces (JSF) 2.2 framework. This framework simplifies the construction of user interfaces.

See Configuring Liberty for JavaServer Faces 2.2.

For jsf-2.2 feature configuration information, see JavaServer Faces 2.2.

JavaScript Object Notation Processing
<feature>jsonp-1.0</feature>

The Java API for JSON Processing (JSON-P) feature provides a standardized method for constructing and manipulating data to be rendered in JavaScript Object Notation (JSON).

For jsonp-1.0 feature configuration information, see JavaScript Object Notation Processing.

JavaServer Pages (JSP)
<feature>jsp-2.3</feature>

This feature enables support for Java Server Pages (JSPs) that are written to the JSP 2.3 specification. This framework simplifies the construction of user interfaces. Enabling this feature also enables the Expression Language (EL) version 3.0 feature. el-3.0.

See Configuring Liberty for JavaServer Pages 2.3.

For jsp-2.3 feature configuration information, see JavaServer Pages 2.3.

Managed Beans
<feature>managedBeans-1.0</feature>

The managedBeans-1.0 feature provides support for the Managed Beans 1.0 specification (JSR-316). This feature enables use of the javax.annotation.ManagedBean annotation.

For managedBeans-1.0 feature configuration information, see Java EE Managed Bean 1.0.

Servlet 3.1
<feature>servlet-3.1</feature>

The servlet-3.1 feature enables support for HTTP Servlets that are written to the Java Servlet 3.1 specification.

See Configuring Liberty for Servlet 3.1 and Servlet 3.1 behavior changes.

For servlet-3.1 feature configuration information, see Java Servlets 3.1.

[8.5.5.6 or later]Web Profile 7.0
<feature>webProfile-7.0</feature>

This feature provides a convenient combination of the Liberty features that are required to support the Java EE 7 Web Profile.

For webProfile-7.0 feature configuration information, see Java EE Web Profile 7.0.

WebSocket

<feature>websocket-1.0</feature>

<feature>websocket-1.1</feature>

WebSocket is a standard protocol that enables a web browser or client application and a web server application to communicate by using one full duplex connection.

See Liberty: WebSocket and Developing WebSocket applications in Liberty.

For websocket-1.0 feature configuration information, see Java WebSocket 1.0.

For websocket-1.1 feature configuration information, see Java WebSocket 1.1.

Java EE 7 Full Platform
[8.5.5.6 or later]Application Client Support
<feature>appClientSupport-1.0</feature>

The appClientSupport-1.0 feature enables the server to process Java EE metadata inside the client module of an application, for example, read the deployment descriptor XML file and/or annotations and make them available to other modules in the application if necessary. It also enables the remote application client process to communicate with the server to do JNDI lookups.

The appClientSupport-1.0 feature is enabled in the server.xml file only.

[8.5.5.6 or later]Application Client Container Security
<feature>appSecurityClient-1.0</feature>

To enable security on the client container, add the appSecurityClient-1.0 feature to your client.xml file.

The appSecurityClient-1.0 feature enables SSL, CSIv2, and JAAS on the client. You must configure SSL to ensure communications between the client and server are secure and encrypted.

[8.5.5.6 or later]Batch
<feature>batch-1.0</feature>

The batch-1.0 feature enables the use of the JSR-352 programming model.

Managed Executors and Thread Factories
<feature>concurrent-1.0</feature>

The concurrent-1.0 feature enables the creation of managed executor services that allow applications to submit tasks to run concurrently, with thread context that is managed by the application server. The feature also enables the creation of managed thread factories to create threads that run with the thread context of the component that looks up the managed thread factory.

See Configuring managed scheduled executors.

For concurrent-1.0 feature configuration information, see Concurrency Utilities for Java EE 1.0.

Enterprise Java Beans (EJB)
[8.5.5.6 or later]<feature>ejb-3.2</feature>

The ejb-3.2 feature provides support for EJB applications that are written to the EJB 3.2 specification.

This feature includes the following features:
  • [8.5.5.6 or later]<feature>ejbLite-3.2</feature>

    This feature gives support for EJB applications that are written to the EJB Lite subset of the EJB 3.2 specification. For ejbLite-3.2 feature configuration information, see Enterprise JavaBeans Lite 3.2.

  • [8.5.5.6 or later]<feature>ejbHome-3.2</feature>

    This feature gives support for the EJB 2.x APIs.

  • [8.5.5.6 or later]<feature>ejbPersistentTimer-3.2</feature>

    This feature gives support for persistent EJB timers.

  • [8.5.5.6 or later]<feature>ejbRemote-3.2</feature>

    This feature gives support for remote EJB interfaces.

  • [8.5.5.6 or later]<feature>mdb-3.2</feature>

    This feature gives support for message-driven beans.

    The mdb-3.2 feature supersedes the jmsMdb-3.2 feature.

If full EJB 3.2 support is not required, various combinations of these features can be used to provide the support that you need.

[8.5.5.6 or later]J2EE Management 1.1
<feature>j2eeManagement-1.1</feature>

The j2eeManagement-1.1 feature provides standard interfaces to manageable aspects of Java EE 7 and enables applications to use the interfaces defined in the JSR 77 specification.

To invoke Management EJB APIs, the server configuration must have both the j2eeManagement-1.1 and ejbRemote-3.2 features in a feature manager. After both features are in the server configuration, you can invoke Management EJB API through JNDI name lookup. The Management EJB binding name (JNDI lookup name) is ejb/mejb/MEJB.

[8.5.5.6 or later]Java Authorization Contract for Containers 1.5
<feature>jacc-1.5</feature>
The jacc-1.5 feature enables support for Java Authorization Contract for Containers (JACC) version 1.5 In order to add the jacc-1.5 feature to your server, you need to add the third party JACC provider which is not a part of the WebSphere Application Server Liberty.
[8.5.5.6 or later]Java Authentication SPI for Containers 1.1
<feature>jaspic-1.1</feature>
The jaspic-1.1 feature enables support for securing the server runtime environment and applications using Java Authentication SPI for Containers (JASPIC) providers as defined in JSR-196.
[8.5.5.6 or later]Java EE
<feature>javaee-7.0</feature>

This feature provides a convenient combination of the Liberty features that are required to support the Java EE 7.0 Full Platform.

[8.5.5.6 or later]Java EE Application Client 7.0
<feature>javaeeClient-7.0</feature>

This feature enables support for Java EE Application Client 7.0.

[8.5.5.6 or later]JavaMail API

<feature>javaMail-1.5</feature>

The JavaMail API supports communication between external mail servers and Liberty applications. See Administering JavaMail on Liberty.

For javaMail-1.5 feature configuration information, see JavaMail 1.5.

Java Architecture for XML Binding (JAXB)
<feature>jaxb-2.2</feature>

The jaxb-2.2 feature provides support for the Java Architecture for XML Binding (JAXB) on Liberty.

See JAXB.

Java API for XML-Based Web Services (JAX-WS)
<feature>jaxws-2.2</feature>
The jaxws-2.2 feature provides support for the Java API for XML-Based Web Services on Liberty.
  • For web applications that support the JAX-WS programming model, you must enable the servlet-3.0 and jaxws-2.2 server features in the server.xml file.
  • For EJB applications that support the JAX-WS programming model, you must enable the ejbLite-3.1, servlet-3.0, and jaxws-2.2 server features in the server.xml file.
  • For applications that use the global handler services, you must enable the jaxrs-1.1 or the jaxws-2.2 feature in the server.xml file.
[8.5.5.6 or later]Java EE Connector Architecture 1.7
<feature>jca-1.7</feature>

The jca-1.7 feature provides configuration elements to define instances of connection factories, administered objects, and activation specifications, and to associate these instances with an installed resource adapter.

Java EE Connector Architecture Inbound Security
<feature>jcaInboundSecurity-1.0</feature>

The jcaInboundSecurity-1.0 feature enables security inflow for resource adapters.

[8.5.5.6 or later]Java Message Service 2.0
<feature>jms-2.0</feature>

The jms-2.0 feature enables the configuration of resource adapters to access messaging systems using the Java Message Service API. This also includes the configuration JMS connection factories, queues, topics and activation specifications. Any JMS resource adapter that complies with the JCA 1.6 specification can be used.

Embedded Liberty Messaging features
[8.5.5.6 or later]<feature>wasJmsClient-2.0</feature>

The wasJmsClient-2.0 feature supersedes the wasJmsClient-1.1 feature. The wasJmsClient-2.0 feature is compliant with the JMS 2.0 specification and is supported only on IBM JDK 7 or later.

<feature>wasJmsSecurity-1.0</feature>
The wasJmsSecurity-1.0 feature supports secure connections to the messaging engine. When the wasJmsSecurity-1.0 feature is enabled, it starts authenticating and authorizing the users who are trying to connect to the messaging engine. The user is authenticated against the registry that is defined in the server.xml file. When the user wants to access a destination such as a topic or a queue, then the user must be granted the required permissions. The access to the destination is defined in the <messagingSecurity> element (the child element of the messagingEngine element) in the server.xml file. If the wasJmsSecurity-1.0 feature is added and the <messagingSecurity> element is not defined in the server.xml file, then the users cannot connect to the messaging engine or perform any messaging action (for example, sending or receiving messages from the destinations).
Notes:
  • Configuring the user registry is a prerequisite for the wasJmsSecurity-1.0 feature. Ensure that a user registry is configured before the wasJmsSecurity-1.0 feature is enabled.
  • When you enable the wasJmsSecurity-1.0 feature, you must also configure the <messagingSecurity> element, which is the child element of the <messagingEngine> element, in the server.xml file. This configuration enables authorized users to access messaging destinations.
<feature>wasJmsServer-1.0</feature>

The wasJmsServer-1.0 feature enables the JMS messaging engine run time to be initialized. The messaging run time is responsible for providing the application connectivity, managing the state of destinations such as topics or queues, and handling quality of service, security, and transactions. This feature also provides support for the inbound connections from the remote messaging applications. The remote messaging applications can connect to the JMS messaging engine through TCP/IP over SSL or non-SSL.

To connect using SSL, you must enable the SSL feature.
Extended Programming Models
CouchDB
<feature>couchdb-1.0</feature>

The couchdb-1.0 feature provides support for CouchDB instances and associated database connections. Access to CouchDB connections is available either by JNDI lookup or resource injection.

Cache Service
<feature>distributedMap-1.0</feature>

This feature provides a local cache service that can be accessed by using the DistributedMap API. A default cache is bound in JNDI at services/cache/distributedmap. You can distribute a cache by adding a network cache provider such as WebSphere eXtreme Scale.

For distributedMap-1.0 feature configuration information, see Distributed Map interface for Dynamic Caching.

JavaScript Object Notation (JSON4J) Library
<feature>json-1.0</feature>

The json-1.0 feature provides access to the JSON4J library that provides a set of JSON handling classes for Java environments. The JSON4J library provides a simple Java model for constructing and manipulating data to be rendered as JSON data.

See Using JSON content in JAX-RS application requests and responses and JSON4J Libraries API.

For json-1.0 feature configuration information, see JavaScript Object Notation for Java.

MongoDB
<feature>mongodb-2.0</feature>

The mongodb-2.0 feature provides support for MongoDB instances and associated database connections. Access to MongoDB connections is available either by JNDI lookup or resource injection. The native com.mongodb API performs the database manipulation.

[8.5.5.7 or later]Real-Time Communications
<feature>rtcomm-1.0</feature>
The Liberty Real-Time Communications feature enables a highly-scalable call signalling engine that can be used to connect WebRTC clients into real-time audio/video/data calls. The feature supports both registration of clients as well as the exchange of signalling needed to create a WebRTC peer connection between two endpoints.
[8.5.5.7 or later]RTComm Gateway
<feature>rtcommGateway-1.0</feature>
The rtcommGateway-1.0 feature adds the capability for connecting Session Initiation Protocol (SIP) with RTComm WebRTC endpoints for the exchange of audio and video streams.
[8.5.5.7 or later]SIP Servlet
<feature>sipServlet-1.1</feature>

The sipServlet-1.1 feature provides support for SIP Servlet Specification 1.1, also known as JSR 289. Session Initiation Protocol (SIP) is a control protocol for many interactive services, including audio, video, and peer-to-peer communication.

Enterprise OSGi
Blueprint
<feature>blueprint-1.0</feature>

The blueprint-1.0 feature enables support for deploying OSGi applications that use the OSGi blueprint container specification. With the OSGi Applications support in WebSphere Application Server, you can develop and deploy modular applications that use Java EE and OSGi technologies.

See Locating OSGi applications and OSGi Applications.

For blueprint-1.0 feature configuration information, see OSGi Blueprint.

OSGi application integration
<feature>osgiAppIntegration-1.0</feature>

Use the osgiAppIntegration-1.0 feature to enable the OSGi applications that are available within the same Java virtual machine to share their services with each other.

For more information about Application-ImportService and Application-ExportService headers, see Application manifest files.

For osgiAppIntegration-1.0 feature configuration information, see OSGi Application Integration.

[8.5.5.9 or later]OSGi bundle
<feature>osgiBundle-1.0</feature>

This feature enables support for deploying OSGi applications. With the OSGi Applications support, you can develop and deploy modular applications that use Java EE and OSGi technologies.

For osgiBundle-1.0 feature configuration information, see osgiBundle-1.0.

OSGi JPA
<feature>osgi.jpa-1.0</feature>

The osgi.jpa-1.0 feature provides JPA support for OSGi applications on Liberty.

See Deploying OSGi applications to Liberty.

For osgi.jpa-1.0 feature configuration information, see OSGi Java Persistence API.

Web application bundle (WAB)
<feature>wab-1.0</feature>

This feature enables support for warnings to be logged when certain operations in the application server are running more slowly than expected. The wab-1.0 feature provides support for WABs that are inside enterprise bundles.

The wab-1.0 feature provides support for WABs that are inside enterprise bundles.
This feature supports the following resources packaged inside a WAB:
  • Static web content and JSPs.
  • HTTP servlets written to the Servlet 3.0 specification.
  • Blueprint applications.

If you include the wab-1.0 feature, you also include the servlet-3.0 and blueprint-1.0 features.

See Deploying OSGi applications to Liberty.

For wab-1.0 feature configuration information, see OSGi Web Application Bundles.

Operations
[8.5.5.8 or later]
API Discovery
<feature>apiDiscovery-1.0</feature>

The apiDiscovery-1.0 feature enables you to discover your REST API documentation. Use the feature to find REST APIs that are available on a Liberty server and then use the Swagger user interface to invoke the found REST endpoints. See Discovering REST API documentation on a Liberty server.

Security
<feature>appSecurity-2.0</feature>
This version of the appSecurity feature provides only certain aspects of security, based explicitly on the presence of other features. Additionally, it does not automatically include the servlet-3.0 or ldapRegistry-3.0 features, thereby reducing the server footprint. To secure web applications, you must include the servlet-3.0 feature. To enable EJB security, you must include the ejbLite-3.1 feature. To support an LDAP user registry, you must include the ldapRegistry-3.0 feature.
Note:
  • The appSecurity-2.0 feature supersedes appSecurity-1.0. The features are the same except that appSecurity-2.0 does not automatically include servlet-3.0 or ldapRegistry-3.0. You can choose to use the appSecurity-2.0 version instead in your server configuration. See Superseded features.
    • To enable web security, you must specify the servlet-3.0 feature in the server.xml file.
    • To enable support for LDAP, you must specify the ldapRegistry-3.0 feature in the server.xml file.
The appSecurity-1.0 and appSecurity-2.0 features provide support for securing the server runtime environment and applications. The following aspects are supported:
  • Basic user registry
  • Lightweight Directory Access Protocol (LDAP) user registry
  • Basic authorization
  • Web application security
    • Basic authentication login
    • Form-login Form-logout
    • Programmatic APIs: getRemoteUser, getUserPrincipal, isUserInRole, authenticate, logout, and login.
  • EJB application security
    • All security annotations and all security elements that can be specified in the ejb-jar.xml file.
    • Programmatic APIs: getCallerPrincipal, isCallerInRole, and getCallerIdentity. The getCallerIdentity API is not supported for Singleton session beans.
    • EJB extension settings in the ibm-ejb-jar-ext.xml file for run-as-mode of CALLER_IDENTITY and SPECIFIED_IDENTITY (SYSTEM_IDENTITY is not supported).
When you add the appSecurity-1.0 or appSecurity-2.0 feature to your server, you must also configure a user registry, such as the basic user registry or the LDAP user registry.
See Securing Liberty and its applications and appSecurity-2.0 feature restrictions..

For appSecurity-1.0 feature configuration information, see Application Security 1.0.

For appSecurity-2.0 feature configuration information, see Application Security 2.0.

[8.5.5.6 or later]Managed Batch
<feature>batchManagement-1.0</feature>

The batchManagement-1.0 feature provides a REST interface for remote job submission and the batchManager command-line client utility.

[8.5.5.7 or later]Basic Extensions using Liberty Libraries (BELL)

<feature>bells-1.0</feature>

This feature enables the configuration of Basic Extensions using Liberty Libraries (BELL). Use this feature to extend some parts of the server runtime using libraries, rather than using Liberty features. BELL uses the Java Service Loader pattern to provide the implementation class name.

For bells-1.0 feature configuration information, see Basic Extensions using Liberty Libraries.

[8.5.5.9 or later]Bluemix Utility
<feature>bluemixUtility-1.0</feature>

This feature makes it easier to configure access to IBM Bluemix managed services. See Setting up a Liberty server to use Bluemix services.

For bluemixUtility-1.0 feature configuration information, see bluemixUtility-1.0.

[8.5.5.6 or later]Event Logging
<feature>eventLogging-1.0</feature>

The eventLogging-1.0 feature logs a record of events, such as the JDBC requests and servlet requests, and their durations.

See Event Logging.

For eventLogging-1.0 feature configuration information, see Event Logging.

ldapRegistry-3.0
<feature>ldapRegistry-3.0</feature>

The ldapRegistry-3.0 feature provides support for LDAP user registry. The version 3.0 of the ldapRegistry-3.0 feature is compliant with the LDAP Version 3 specifications. The ldapRegistry-3.0 feature is not automatically enabled by the appSecurity-2.0 feature. Using this feature, you can federate multiple LDAP repositories. Two or more LDAP repositories can be configured in the server.xml file, and you can get the consolidated results from multiple repositories for all LDAP operations.

For ldapRegistry-3.0 feature configuration information, see LDAP User Registry.

Local JMX Connector
<feature>localConnector-1.0</feature>

The localConnector-1.0 feature provides a local JMX connector that is built into the JVM. The JMX connector can be used only on the same host machine by someone running under the same user ID and the same JDK. It enables local access by JMX clients such as jConsole, or other JMX clients that use the Attach API.

See Connecting to Liberty by using JMX.

For localConnector-1.0 feature configuration information, see JMX Local Connector.

[8.5.5.9 or later]logstashCollector-1.0
<feature>logstashCollector-1.0</feature>

This feature gathers data from various sources and forwards the data to a Logstash server using Lumberjack protocol.

For logstashCollector-1.0 feature configuration information, see logstashCollector-1.0.

Monitoring
<feature>monitor-1.0</feature>

The monitor-1.0 feature provides Performance Monitoring Infrastructure (PMI) support on Liberty.

See Monitoring the Liberty server runtime environment.

For monitor-1.0 feature configuration information, see Performance Monitoring.

OAuth
<feature>oauth-2.0</feature>

The oauth-2.0 feature provides support for securing access to resources using the OAuth 2.0 protocol.

For oauth-2.0 feature configuration information, see OAuth.

OpenID
<feature>openid-2.0</feature>

This feature enables users to authenticate themselves to multiple entities without the need to manage multiple accounts or sets of credentials. Liberty supports OpenID 2.0 and plays a role as a Relying Party in web single-sign-on. Accessing various entities like websites often requires a unique account that is associated with each entity. OpenID enables a single set of credentials that are handled by an OpenID Provider to grant access to any number of entities that support OpenID. See OpenID.

For openid-2.0 feature configuration information, see OpenID.

OpenID Connect Client
<feature>openidConnectClient-1.0</feature>

This feature enables web applications to integrate OpenID Connect Client 1.0 for authenticating users instead of, or in addition to, the configured user registry. See OpenID Connect.

For openidConnectClient-1.0 feature configuration information, see OpenID Connect Client.

OpenID Connect Provider
<feature>openidConnectServer-1.0</feature>

This feature enables web applications to integrate OpenID Connect Server 1.0 for authenticating users instead of, or in addition to, the configured user registry. See OpenID Connect.

For openidConnectServer-1.0 feature configuration information, see OpenID Connect Provider.

OSGi Console
<feature>osgiConsole-1.0</feature>

This feature enables an OSGi console to aid the debugging of the runtime environment. It can be used to display information about bundles, packages, and services. This information can be useful when developing your own features for product extensions.

See Using an OSGi console.

For osgiConsole-1.0 feature configuration information, see OSGi Debug Console.

[8.5.5.9 or later]Password Utilities
<feature>passwordUtilities-1.0</feature>

This feature enables support for obtaining AuthData from an application using security plug-points.

[8.5.5.6 or later]Request Timing
<feature>requestTiming-1.0</feature>

The requestTiming-1.0 provides warnings and diagnostic information for the slow or hung requests.

See Slow and hung request detection.

For requestTiming-1.0 feature configuration information, see Request Timing.

REST connector 1.0
<feature>restConnector-1.0</feature>

The restConnector-1.0 feature provides a secure JMX connector that can be used locally or remotely using any JDK. It enables remote access by JMX clients through a REST-based connector and requires SSL and basic user security configuration.

See Connecting to Liberty by using JMX and, for details on REST connectors, see Configuring secure JMX connection to Liberty.

[8.5.5.6 or later]For information about using REST APIs to transfer files, see File transfer. For information about using REST APIs to transfer files to and from collective controllers, collective members, and registered hosts of a collective, see Transferring files in a Liberty collective. To use the REST APIs, you add the restConnector-1.0 feature to the server configuration.

For restConnector-1.0 feature configuration information, see JMX REST Connector 1.0.

[8.5.5.7 or later]SAML Web Browser SSO
<feature>samlWeb-2.0</feature>
The samlWeb-2.0 feature enables web applications to delegate user authentication to a SAML identity provider instead of a configured user registry.

For samlWeb-2.0 feature configuration information, see SAML web single sign-on version 2.0.

Server status
<feature>serverStatus-1.0</feature>

The serverStatus-1.0 feature enables Liberty servers to automatically publish their status to WebSphere Application Server deployment managers and job managers that are aware of the server as a resource in their Job configuration. The known states are Started and Stopped.

See Submitting jobs to manage Liberty servers and Installing Liberty server resources using the job manager.

For serverStatus-1.0 feature configuration information, see Job Manager Integration.

Session Persistence
<feature>sessionDatabase-1.0</feature>

The sessionDatabase-1.0 feature provides session affinity and failover support on Liberty.

See Configuring session persistence for Liberty.

For sessionDatabase-1.0 feature configuration information, see Database Session Persistence.

SPNEGO
<feature>spnego-1.0</feature>

This feature enables users to log in to the Microsoft Domain controller once and access protected applications on Liberty servers without getting prompted again.

For more information on configuring SPNEGO on the Liberty server, see Configuring SPNEGO authentication in Liberty.

For spnego-1.0 feature configuration information, see Simple and Protected GSSAPI Negotiation Mechanism.

Secure Sockets Layer (SSL)
<feature>ssl-1.0</feature>

The ssl-1.0 feature provides support for Secure Sockets Layer (SSL) connections. To use the secure HTTPS listener, you must enable this feature.Liberty provides a dummy keystore and a dummy truststore, which are the same as those provided by previous versions of WebSphere Application Server. The secure HTTPS listener is not started unless the ssl-1.0 feature is enabled. If the feature is unavailable, the HTTPS listener is stopped. To specify the SSL certificates, add a pointer in the server.xml file; see Securing communications in Liberty. To change the HTTPS port, set the <httpsPort> attribute of the <httpEndpoint> element in the server.xml file; see Specifying Liberty bootstrap properties.

For ssl-1.0 feature configuration information, see Secure Socket Layer.

Timed Operations
<feature>timedOperations-1.0</feature>

This feature enables support for warnings to be logged when certain operations in the application server are running more slowly than expected.

See Timed operations and JDBC calls.

For timedOperations-1.0 feature configuration information, see Timed Operations.

Dynamic caching service
<feature>webCache-1.0</feature>

This feature enables local caching for web responses. It includes the Cache Service (distributedMap) feature and performs automatic caching of web application responses to improve response times and throughput. To customize the response caching, you can include a cache-spec.xml file in your applications. You can distribute the cache by adding a network cache provider such as WebSphere eXtreme Scale.

For webCache-1.0 feature configuration information, see Web Response Cache.

[8.5.5.6 or later]WebSphere MQ Messaging feature
<feature>wmqJmsClient-2.0</feature>

The wmqJmsClient-2.0 feature provides applications with access to message queues hosted on IBM MQ through the JMS 2.0 API.

Web services security
<feature>wsSecurity-1.1</feature>

The wsSecurity-1.1 feature provides support for securing web services at the message level. To secure web services messages, you must enable this feature and the appSecurity-2.0 and jaxws-2.2 features. Web services security policies defined in a WSDL file are ignored and are not enforced unless the wsSecurity-1.1 feature is enabled.

[8.5.5.9 or later]Web Services Atomic Transaction
<feature>wsAtomicTransaction-1.2</feature>

The wsAtomicTransaction is an interoperable transaction protocol. It enables you to flow distributed transactions by using Web service messages, and coordinate in an interoperable manner between heterogeneous transaction infrastructures.

For wsAtomicTransaction-1.2 configuration information in Liberty, see Web Services Atomic Transaction in Liberty.

Systems Management

Administrative Center
<feature>adminCenter-1.0</feature>

The adminCenter-1.0 feature is a web-based graphical interface for managing Liberty servers and applications and other resources from a web browser on a cell phone, tablet, or computer.

See Administering Liberty using Admin Center and Admin Center feature restrictions.

For adminCenter-1.0 feature configuration information, see Admin Center.

Cluster member
<feature>clusterMember-1.0</feature>

To add a member to a collective, add the clusterMember-1.0 feature and optionally <clusterMember name="cluster_name"/> to its server configuration. The cluster name is published to the controller, and this server becomes part of the specified cluster.

Collective controller
<feature>collectiveController-1.0</feature>

The collectiveController-1.0 feature enables controller functionality for a management collective and includes a management repository MBean that is accessible using the JMX/REST connector that is provided by the restConnector-1.0 feature. The collective controller acts as a storage and collaboration mechanism to which collective members can connect. The collectiveController-1.0 feature includes a ServerCommandMbean that can be used to remote start or stop servers that are managed by the collective controller. The collectiveController-1.0 feature and its capabilities are available only in IBMWebSphere Application Server Liberty Network Deployment. The feature is not available in IBM WebSphere Application Server Liberty, IBM WebSphere Application Server Liberty - Express, or IBM WebSphere Application Server Liberty Core.

Collective member
<feature>collectiveMember-1.0</feature>

The collectiveMember-1.0 feature enables a server to be a member of a management collective, allowing it to be managed by the collective controller.

See Setting up the server-management environment for Liberty by using collectives.

For collectiveMember-1.0 feature configuration information, see Collective Member.

Dynamic Routing
<feature>dynamicRouting-1.0</feature>

The Intelligent Management feature of the WebSphere plugin for Apache and IHS provides On Demand Router (ODR) capabilities for the plugin. This feature enables a server to run the dynamic routing service. The plugin can then connect to the ODR in order to dynamically route to all servers in the liberty collective.

[8.5.5.7 or later]
Health Analyzer
<feature>healthAnalyzer-1.0</feature>

The Health Analyzer feature provides health data collection for the health manager for the Intelligent Management feature Health Management. The health analyzer feature provides monitoring services to a member server. It registers as an analytics handler, collects the necessary stats (PMI, HealthCenter) via the analytics collector and analyses the conditions.

[8.5.5.7 or later]
Health Manager
<feature>healthManager-1.0</feature>

The Health Manager feature provides health monitoring and automatic actions based on health policies for the Intelligent Management feature Health Management. The health manager feature embodies the core functions of health management. Selecting this feature will also enable the default condition plugins. This feature requires the presence of the collectiveController feature.

Scaling Controller
<feature>scalingController-1.0</feature>

The scalingController-1.0 feature makes scaling decisions for Liberty. Multiple servers can run the Scaling Controller feature for high availability purposes. Only one server is actively making scaling decisions at any time. If that server is stopped, another server that is running the Scaling Controller feature can take over making scaling decisions.

Scaling Member
<feature>scalingMember-1.0</feature>

The scalingMember-1.0 feature can be added to the featureManagement element of the server.xml of servers that are collective members. This will enable auto clustering of the collective members and will allow the servers to dynamically start/stop based on criteria specified by the scaling policy. This feature works in conjunction with the scaling controller feature. The scaling controller feature should be enabled in the collective controllers that are part of the collective.

z/OS

z/OS Connect
<feature>zosConnect-1.0</feature>

The zosConnect-1.0 feature is service that encapsulates calling z/OS target applications using REST calls.

[8.5.5.7 or later]z/OS Connect 1.2
<feature>zosConnect-1.2</feature>

This feature provides a gateway between mobile, cloud, and web clients and z/OS back-end systems, such as CICS Transaction Server, IMS, and batch applications. It provides RESTful APIs and enables you to route HTTP requests to remote REST endpoints. It also accepts and returns JSON payloads and communicates with back-end systems by providing a data transformation service that converts JSON payloads to/from byte arrays consumable by z/OS native-language applications written in Cobol, PL/I, and C.

z/OS optimized local adapters
<feature>zosLocalAdapters-1.0</feature>

The zosLocalAdapters-1.0 feature enables high-performance calling between native-language applications on z/OS and business logic in a Liberty server environment.

z/OS security
<feature>zosSecurity-1.0</feature>

The zosSecurity-1.0 feature provides support on the z/OS platform for basic interactions with the SAF Registry, including authenticating users, and retrieving users, groups, or groups associated with users, from the SAF Registry.

z/OS transaction management
<feature>zosTransaction-1.0</feature>

Specifying this feature enables the application server to synchronize and appropriately manage transactional activity between the Resource Recovery Services (RRS), the transaction manager of the application server, and the resource manager.

z/OS workload management
<feature>zosWlm-1.0</feature>

The zosWlm-1.0 feature provides access to z/OS native workload management (WLM) services.

Java EE 6 Web Profile
Bean validation
<feature>beanValidation-1.0</feature>

The beanvalidation-1.0 feature provides validations for JavaBeans at each layer of an application. The validation can be applied to all layers of JavaBeans in an application by using annotations or a validation.xml deployment descriptor.

See Bean validation feature restrictions.

For beanValidation-1.0 feature configuration information, see Bean Validation 1.0.

CDI
<feature>cdi-1.0</feature>

The cdi-1.0 feature enables support for the Contexts and Dependency Injection 1.0 specification on Liberty.

See Administering Contexts and Dependency Injection applications on Liberty.

For cdi-1.0 feature configuration information, see Contexts and Dependency Injection 1.0.

Enterprise JavaBeans (EJB) Lite subset
<feature>ejbLite-3.1</feature>

The ejbLite-3.1 feature provides support for EJB applications written to the EJB Lite subset of the EJB 3.1 specification.

The following functions are supported:
  • An EJB module packaged in an EAR file.
  • EJBs packaged in a WAR file.
  • The @Stateful, @Stateless, @Singleton, and @EJB annotations.
  • The javax.annotation.security annotations.
  • Injection of JPA EntityManager, EntityManagerFactory, and JDBC DataSource into all types of session bean types.
  • ejb-jar.xml.
  • EJB interceptors.
  • No-Interface View.
  • Bean managed transactions (UserTransaction).

See ejbLite-3.1 feature restrictions.

For ejbLite-3.1 feature configuration information, see Enterprise JavaBeans Lite 3.1.

Java Database Connectivity (JDBC)
<feature>jdbc-4.0</feature>

You can take an existing application that uses Java Database Connectivity (JDBC) and a data source, and deploy the application to a server. The jdbc-4.0 feature provides support for applications that access a database.

See Deploying an existing JDBC application to Liberty.

For jdbc-4.0 feature configuration information, see Java Database Connectivity 4.0.

Java Naming and Directory Interface (JNDI)
<feature>jndi-1.0</feature>

The jndi-1.0 feature provides support for a single JNDI entry definition in the server configuration of Liberty.

For jndi-1.0 feature configuration information, see Java Naming and Directory Interface.

Java Persistence API (JPA)
<feature>jpa-2.0</feature>

The jpa-2.0 feature provides support for applications that use application-managed and container-managed JPA written to the JPA 2.0 specification.The support is built on Apache OpenJPA with extensions to support the container-managed programming model.

Extended Persistence Context is now available for use with Stateful Session beans.

See Deploying a JPA application to Liberty.

For jpa-2.0 feature configuration information, see Java Persistence API 2.0.

JavaServer Faces (JSF)
<feature>jsf-2.0</feature>

The jsf-2.0 feature provides support for web applications that use the JSF framework. This framework simplifies the construction of user interfaces.If you include the jsf-2.0 feature, you also include the jsp-2.2 feature, because the JSF framework is an extension of the JSP framework.

For jsf-2.0 feature configuration information, see JavaServer Faces 2.0.

JavaServer Pages (JSP)
<feature>jsp-2.2</feature>

If you include the jsf-2.0 feature, you also include the jsp-2.2 feature, because the JSF framework is an extension of the JSP framework. If you include the jsp-2.2 feature, you also include the servlet-3.0 feature.

See jsp-2.2 feature restrictions.

For jsp-2.2 feature configuration information, see JavaServer Pages 2.2.

Servlet 3.0
<feature>servlet-3.0</feature>

The servlet-3.0 feature provides support for HTTP Servlets written to the Java Servlet 3.0 specification.

See Securing Liberty and its applications.

For servlet-3.0 feature configuration information, see Java Servlets 3.0.

Web Profile
<feature>webProfile-6.0</feature>

This feature provides a convenient combination of the Liberty features that are required to support the Java EE 6.0 Web Profile.

For webProfile-6.0 feature configuration information, see Java EE Web Profile 6.0.

Java EE 6 Technologies

Java Architecture for XML Binding (JAXB)
<feature>jaxb-2.2</feature>

The jaxb-2.2 feature provides support for the Java Architecture for XML Binding (JAXB) on Liberty.

See JAXB.

Java API for RESTful Web Services (JAX-RS)
<feature>jaxrs-1.1</feature>
The jaxrs-1.1 feature provides support for the Java API for RESTful Web Services on Liberty.
  • For EJB applications that use the jaxrs-1.1 server feature, you must enable the ejbLite-3.1 feature in the server.xml file.
  • For JAX-RS applications that use CDI, you must enable the cdi-1.0 feature in the server.xml file.
  • For applications that use the global handler services, you must enable the jaxrs-1.1 or the jaxws-2.2 feature in the server.xml file.

For jaxrs-1.1 feature configuration information, see Java RESTful Services 1.1.

Java API for XML-Based Web Services (JAX-WS)
<feature>jaxws-2.2</feature>
The jaxws-2.2 feature provides support for the Java API for XML-Based Web Services on Liberty.
  • For web applications that support the JAX-WS programming model, you must enable the servlet-3.0 and jaxws-2.2 server features in the server.xml file.
  • For EJB applications that support the JAX-WS programming model, you must enable the ejbLite-3.1, servlet-3.0, and jaxws-2.2 server features in the server.xml file.
  • For applications that use the global handler services, you must enable the jaxrs-1.1 or the jaxws-2.2 feature in the server.xml file.
Java EE Connector Architecture
<feature>jca-1.6</feature>

The jca-1.6 feature provides configuration elements to define instances of connection factories, administered objects, and activation specifications, and to associate these instances with an installed resource adapter.

Java EE Connector Architecture Inbound Security
<feature>jcaInboundSecurity-1.0</feature>

The jcaInboundSecurity-1.0 feature enables security inflow for resource adapters.

Java Message Service 1.1
<feature>jms-1.1</feature>

The jms-1.1 feature enables the configuration of resource adapters to access messaging systems using the Java Message Service API. This also includes the configuration JMS connection factories, queues, topics, and activation specifications. Any JMS resource adapter that complies with the JCA 1.6 specification can be used.

Message-Driven beans
<feature>jmsMdb-3.1</feature>

The jmsMdb-3.1 feature provides support for deploying and configuring the JMS resources that are required for the message-driven beans (MDB) to run within Liberty. This feature enables MDB to interact with either the embedded Liberty messaging or WebSphere MQ.

Message-Driven Beans 3.1
<feature>mdb-3.1</feature>

The mdb-3.1 feature enables the use of Message-Driven Enterprise JavaBeans. MDBs allow asynchronous processing of messages within a Java EE component.

Embedded Liberty Messaging features
<feature>wasJmsClient-1.1</feature>

The wasJmsClient-1.1 feature enables support for JMS resource configurations (such as the connection factories, activation specifications, and queue and topic resources) and also provides the client libraries that are required by the messaging applications to connect to the JMS server on Liberty.

<feature>wasJmsSecurity-1.0</feature>
The wasJmsSecurity-1.0 feature supports secure connections to the messaging engine. When the wasJmsSecurity-1.0 feature is enabled, it starts authenticating and authorizing the users who are trying to connect to the messaging engine. The user is authenticated against the registry that is defined in the server.xml file. When the user wants to access a destination such as a topic or a queue, then the user must be granted the required permissions. The access to the destination is defined in the <messagingSecurity> element (the child element of the messagingEngine element) in the server.xml file. If the wasJmsSecurity-1.0 feature is added and the <messagingSecurity> element is not defined in the server.xml file, then the users cannot connect to the messaging engine or perform any messaging action (for example, sending or receiving messages from the destinations).
Notes:
  • Configuring the user registry is a prerequisite for the wasJmsSecurity-1.0 feature. Ensure that a user registry is configured before the wasJmsSecurity-1.0 feature is enabled.
  • When you enable the wasJmsSecurity-1.0 feature, you must also configure the <messagingSecurity> element, which is the child element of the <messagingEngine> element, in the server.xml file. This configuration enables authorized users to access messaging destinations.
<feature>wasJmsServer-1.0</feature>

The wasJmsServer-1.0 feature enables the JMS messaging engine run time to be initialized. The messaging run time is responsible for providing the application connectivity, managing the state of destinations such as topics or queues, and handling quality of service, security, and transactions. This feature also provides support for the inbound connections from the remote messaging applications. The remote messaging applications can connect to the JMS messaging engine through TCP/IP over SSL or non-SSL.

To connect using SSL, you must enable the SSL feature.
WebSphere MQ Messaging feature
<feature>wmqJmsClient-1.1</feature>

The wmqJmsClient-1.1 feature enables applications to use JMS messaging that connects to a IBM MQ server.


Icon that indicates the type of topic Reference topic



Timestamp icon Last updated: Tuesday, 12 December 2017
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=phil&product=was-libcore-mp&topic=rwlp_feat
File name: rwlp_feat.html