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 in the Liberty profile of each WebSphere® Application Server edition.

Table 1. Liberty features supported in the Liberty profile of each WebSphere Application Server edition
Liberty feature WebSphere Application Server, Liberty Core (All operating systems) WebSphere Application Server (All operating systems)

Express® (All operating systems)

Network Deployment (Distributed operating systems)

Network Deployment (IBM® i)

Network Deployment (z/OS®)
Java™ EE Web Profile
beanValidation-1.0
Fix Pack 8550 cdi-1.0
Fix Pack 8550 ejbLite-3.1
jaxrs-1.1
jdbc-4.0
jndi-1.0
jpa-2.0
jsf-2.0
json-1.0
jsp-2.2
Fix Pack 8550 managedBeans-1.0
servlet-3.0
Fix Pack 8550 webProfile-6.0
Enterprise OSGi
blueprint-1.0
osgi.jpa-1.0
wab-1.0
Operations
appSecurity-1.0
Fix Pack 8550 appSecurity-2.0
Fix Pack 8550 collectiveMember-1.0
Fix Pack 8550 concurrent-1.0
Fix Pack 8550 distributedMap-1.0
Fix Pack 8550 ldapRegistry-3.0
localConnector-1.0
monitor-1.0
Fix Pack 8550 oauth-2.0
Fix Pack 8550 osgiConsole-1.0
restConnector-1.0
serverStatus-1.0
sessionDatabase-1.0
ssl-1.0
timedOperations-1.0
Fix Pack 8550 webCache-1.0
Extended Programming Models
Fix Pack 8550 jaxb-2.2  
Fix Pack 8550 jaxws-2.2  
Fix Pack 8550 jmsMdb-3.1  
Fix Pack 8550 mongodb-2.0  
Fix Pack 8550 wasJmsClient-1.1  
Fix Pack 8550 wasJmsSecurity-1.0  
Fix Pack 8550 wasJmsServer-1.0  
Fix Pack 8550 wmqJmsClient-1.1  
Fix Pack 8550 wsSecurity-1.1  
Systems Management
Fix Pack 8550 clusterMember-1.0    
Fix Pack 8550 collectiveController-1.0    
z/OS
zosSecurity-1.0      
zosTransaction-1.0      
zosWlm-1.0      
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>

Features that can be used in a server configuration have public visibility and are part of the Liberty product externals; use of those features in the server configuration will be supported in future updates of the product. The Liberty profile also provides a set of features with protected visibility; these features cannot be used directly in the server configuration but can be included in your own features; see Including protected features.

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 also beanvalidation-1.0 feature restrictions.
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.
Fix Pack 8550 CDI
<feature>cdi-1.0</feature>
The cdi-1.0 feature enables support for the Contexts and Dependency Injection 1.0 specification on the Liberty profile.
The supported entry point into CDI is through an expression language lookup of an @Named CDI style bean, with other CDI beans injected into it. See also cdi-1.0 feature restrictions.
Fix Pack 8550 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 the Liberty profile using collectives.
Fix Pack 8550 Dynamic cache
<feature>webCache-1.0</feature>
Important: The webCache-1.0 feature enables support for the dynamic cache service on the Liberty profile.
The following functions are supported:
  • A cache instance can serve as both an object and a servlet cache. There is no differentiation of cache instance type.
  • Query dynamic cache Mbean using ObjectName WebSphere:type=DynaCache,*
  • The default disk cache location is the server workarea directory
     wlp /	wlp.install.dir		Root of WebSphere Liberty Profile installation
      +- usr/		wlp.user.dir		User directory
      |  +- servers/
      |  |  +- <serverName>	** server.config.dir	Server configuration   
      |  |  |  +- workarea 	Server workarea directory
    For more information of server directories, see Liberty profile: Directory locations and properties.
  • You can configure caches in three ways:
    • The server.xml file
      <server>
        <featureManager>
          <feature>webCache-1.0</feature>
        </featureManager>
      
        <distributedMap id="baseCache" libraryRef="idgenerator">
          <diskCache/> 
        </distributedMap>
      
        <application type="war" id="dynacachetests" name="dynacachetests" location="dynacachetests.war">
          <classloader commonLibraryRef="idgenerator" /> 
        </application>
      </server>
    • The cacheinstances.properties or distributedmap.properties file in the WEB-INF or META-INF directories of the application
    • Programmatically create a cache using the com.ibm.wsspi.cache.DistributedObjectCacheFactory class.
  • Package custom application objects that need to be serialized for storage in the disk cache in a shared library, and associate the library with the cache instance.
  • When you enable the webCache-1.0 feature, the following caches are configured and created:
    • basecache with JNDI name services/cache/basecache
    • default with JNDI name services/cache/distributedmap
You can enable a third-party cache provider in the server.xml file by adding the following feature:
<feature>usr:testCache</feature>
Replace testCache with the name of the third-party cache provider that you want to enable.

See also Dynamic cache feature restrictions.

Fix Pack 8550 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.
Fix Pack 8550 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 also ejbLite-3.1 feature restrictions.
Fix Pack 8550 Executor Service
<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.
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 the Liberty profile.
  • Fix Pack 8550 For EJB applications that use the jaxrs-1.1 server feature, you must enable the ejbLite-3.1 feature in the server.xml file.
  • Fix Pack 8550 For JAX-RS applications that use CDI, you must enable the cdi-1.0 feature in the server.xml file.
See also jaxrs-1.1 feature restriction.
Fix Pack 8550 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 the Liberty profile.
  • Fix Pack 8550 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.
  • Fix Pack 8550 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.
See also jaxws-2.2 feature restrictions.
Fix Pack 8550 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 the Liberty profile.
See also JAXB.
Fix Pack 8550 See also jaxb-2.2 feature restriction.
Java Database Connectivity (JDBC)
<feature>jdbc-4.0</feature>
The jdbc-4.0 feature provides support for applications that access a database. You can take an existing application that uses Java Database Connectivity (JDBC) and a data source, and deploy the application to a server.
See also Deploying an existing JDBC application to the Liberty profile.
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 the Liberty profile.
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.
Fix Pack 8550 Extended Persistence Context is now available for use with Stateful Session beans.
See also Deploying a JPA application to the Liberty profile and jpa-2.0 feature restrictions.
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.
See also jsf-2.0 feature restrictions.
JavaServer Pages (JSP)
<feature>jsp-2.2</feature>
The jsp-2.2 feature provides support for JSPs that are written to the JSP 2.2 specification.
If you include the jsp-2.2 feature, you also include the servlet-3.0 feature.
See also jsp-2.2 feature restrictions.
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 also Using JSON content in JAX-RS application requests and responses and JSON4J Libraries API.
Fix Pack 8550 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.
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 the Liberty profile by using JMX.
Fix Pack 8550 Local Web Caching
<feature>distributedMap-1.0</feature>
This feature enables local caching for web responses. It includes the distributedMap feature (local programmatic cache) and performs automatic caching of web application responses to improve response times and throughput. Applications can include a cache-spec.xml file to customize the response caching. The cache can be distributed through addition of a network cache provider such as WebSphere eXtreme Scale.
Fix Pack 8550 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.
Fix Pack 8550 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 the Liberty profile. This feature enables MDB to interact with either the embedded Liberty messaging or WebSphere MQ.
Fix Pack 8550 Messaging
Embedded Liberty Messaging features:
<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.

<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 the Liberty profile.

To connect using SSL, you must enable the SSL feature.

See Enabling JMS messaging for the Liberty profile.

<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.
See Enabling secure JMS messaging for the Liberty profile.
Fix Pack 8550 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.
See Creating Liberty applications that use MongoDB.
Monitoring
<feature>monitor-1.0</feature>
The monitor-1.0 feature provides Performance Monitoring Infrastructure (PMI) support on the Liberty profile.
See Monitoring the Liberty profile.
Fix Pack 8550 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.
OSGi JPA
<feature>osgi.jpa-1.0</feature>
The osgi.jpa-1.0 feature provides JPA support for OSGi applications on the Liberty profile.
REST connector
<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 the Liberty profile by using JMX.
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.
The Liberty profile 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 with the Liberty profile.
To change the HTTPS port, set the <httpsPort> attribute of the <httpEndpoint> element in the server.xml file; see Specifying Liberty profile bootstrap properties.
Security
<feature>Fix Pack 8550 appSecurity-2.0</feature>
Fix Pack 8550 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; login
  • Fix Pack 8550 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 getCallerIdentity1.
    • Fix Pack 8550 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.
Fix Pack 8550 See also Securing the Liberty profile and its applications and appSecurity-2.0 feature restrictions.
Fix Pack 8550 <feature>oauth-2.0</feature>
The oauth-2.0 feature provides support for securing access to resources using the OAuth 2.0 protocol.
Server status
<feature>serverStatus-1.0</feature>
The serverStatus-1.0 feature enables Liberty profile 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 profile servers and Installing Liberty profile server resources using the job manager.
Servlet
<feature>servlet-3.0</feature>
The servlet-3.0 feature provides support for HTTP Servlets written to the Java Servlet 3.0 specification.
See also Securing the Liberty profile and its applications.
Session Persistence
<feature>sessionDatabase-1.0</feature>
The sessionDatabase-1.0 feature provides session affinity and failover support on the Liberty profile.
See Configuring session persistence for the Liberty profile.
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.
Web application bundle (WAB)
<feature>wab-1.0</feature>
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.
Fix Pack 8550 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 Web Profile.
Fix Pack 8550 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.
Fix Pack 8550 WebSphere MQ Messaging feature:
<feature>wmqJmsClient-1.1</feature>
The wmqJmsClient-1.1 feature enables applications to use JMS messaging that connects to a WebSphere MQ server.
1 The getCallerIdentity API is not supported for Singleton session beans.

Icon that indicates the type of topic Reference topic

Terms and conditions for information centers | Feedback


Timestamp icon Last updated: Wednesday, 22 May 2013
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=phil&product=was-nd-mp&topic=rwlp_feat
File name: rwlp_feat.html