This documentation is for WSO2 Carbon 4.4.0. View documentation for the latest release.
Configuring carbon.xml - Carbon 4.4.0 - WSO2 Documentation
Due to a known issue do not use JDK1.8.0_151 with WSO2 products. Use JDK 1.8.0_144 until JDK 1.8.0_162-ea is released.
Skip to end of metadata
Go to start of metadata

Users can change the configurations related to the default Carbon functionality by editing the  <PRODUCT_HOME>/repository/conf/carbon.xml file using the information given below.

 Click on the table and use the left and right arrow keys to scroll horizontally. 

XML Elements 

XML elementAttributeDescriptionData typeDefault valueMandatory/OptionalSample



Product Name.StringN/AMandatory<Name>WSO2 Application Server</Name>
Machine readable unique key to identify each product.StringN/AMandatory<ServerKey>AS</ServerKey>
Product Version.StringN/A
Host name or IP address of the machine hosting this server e.g., This is will become part of the End Point Reference of the services deployed on this server instance.StringN/AOptional<HostName></HostName>
Host name to be used for the Carbon management console.StringN/AOptional <MgtHostName></MgtHostName>
The URL of the back end server. This is where the admin services are hosted and will be used by the clients in the front end server. This is required only for the Front-end server. This is used when separating the BE server from the FE server.StringN/AMandatory<ServerURL>local:/${carbon.context}/services/</ServerURL>
The URL of the index page. This is where the user will be redirected after signing in to the carbon server.StringN/AOptional
For cApp deployment, we have to identify the roles that can be acted by the current server. The following property is used for that purpose. Any number of roles can be defined here. Regular expressions can be used in the role. Ex : <Role>.*</Role> means this server can act as any role.StringN/AMandatory<ServerRoles>ApplicationServer</ServerRoles>


The fully qualified name of the server.Stringorg.wso2.carbonMandatory
Webapp context root of WSO2 Carbon.String/Mandatory<WebContextRoot>/</WebContextRoot>
In-order to get the registry http Port from the back-end when the default http transport is not the same.IntN/AOptional
Number of items to be displayed on a management console page. This is used at the backend server for pagination of various items.IntN/AMandatory
The endpoint URL of the cloud instance management Web service.StringN/AOptional
Ports used by this server

Ports offset. This entry will set the value of the ports defined below to the define value + Offset. e.g. Offset=2 and HTTPS port=9443 will set the effective HTTPS port to 9445.Int0Mandatory<Offset>15</Offset>
The JMX Ports.Int
The port RMI registry is exposed.Int9999Mandatory
The port RMI server should be exposed.Int11111Mandatory
Embedded LDAP server specific ports.Int
Port which embedded LDAP server runs.Int10389Mandatory
Port which KDC (Kerberos Key Distribution Center) server runs.Int8000Mandatory
Embedded Qpid broker ports.Int
Broker TCP Port.Int5672Mandatory
SSL Port.Int8672Mandatory
Override datasources JNDIproviderPort defined in bps.xml and files.

Override receive port of thrift based entitlement service.IntN/AMandatory
JNDI Configuration.IntN/AOptional
The fully qualified name of the default initial context factory.Stringorg.wso2.carbon.tomcat.jndi.CarbonJavaURLContextFactoryMandatory
The restrictions that are done to various JNDI Contexts in a Multi-tenant environment.

Contexts that are common to all tenants.StringN/AOptional



__<UrlContext> _____

Contexts that will be available only to the super-tenant.StringN/AOptional
Property to determine if the server is running on a cloud deployment environment. This property should only be used to determine deployment specific details that are applicable only in a cloud deployment, i.e when the server is deployed *-as-a-service.BooleanFALSEMandatory
Property to determine whether usage data should be collected for metering purposes.BooleanFALSEMandatory
The Max time a thread should take for execution in seconds.Int600Mandatory
A flag to enable or disable Ghost Deployer. By default this is set to false. That is because the Ghost Deployer works only with the HTTP/S transports. If you are using other transports, don't enable Ghost Deployer.BooleanFALSEOptional
When <GhostDeployment> is enabled, the lazy loading feature will apply to artifacts deployed. That is, when a tenant loads, only the specific artifact requested by the service will be loaded.

<PartialUpdate> is a further enhancement to lazy loading of artifacts, which applies when <DeploymentSynchronizer> is enabled in a clustered environment.

Axis2 related configurations.

Location of the Axis2 Services & Modules repository This can be a directory in the local file system, or a URL. e.g. 1. /home/wso2wsas/repository/ - An absolute path 2. repository - In this case, the path is relative to CARBON_HOME 3. file:///home/wso2wsas/repository/ 4. http://wso2wsas/repository/.String${carbon.home}/repository/deployment/server/Mandatory
Deployment update interval in seconds. This is the interval between repository listener executions.Int15Mandatory
Location of the main Axis2 configuration descriptor file, a.k.a. axis2.xml file This can be a file on the local file system, or a URL e.g. 1. /home/repository/axis2.xml - An absolute path 2. conf/axis2.xml - In this case, the path is relative to CARBON_HOME 3. file:///home/carbon/repository/axis2.xml 4. http://repository/conf/axis2.xmlString${carbon.home}/repository/conf/axis2/axis2.xmlMandatory
ServiceGroupContextIdleTime, which will be set in ConfigurationContex for multiple clients which are going to access the same ServiceGroupContext Default Value is 30 Sec.String30000Mandatory
This repository location is used to crete the client side configuration context used by the server when calling admin services.String${carbon.home}/repository/deployment/client/Mandatory
This axis2 xml is used in creating the configuration context by the FE server calling to BE server.String${carbon.home}/repository/conf/axis2/axis2_client.xmlMandatory

If this parameter is set, the WSDL file on an admin service will not give the admin service WSDL. By default, this parameter is set to "true". Note that setting this parameter to false will expose WSO2 Storage Server operations through a WSDL. 

WARNING-Use With Care! Uncommenting bellow parameter would expose all AdminServices in HTTP transport. With HTTP transport your credentials and data routed in public channels are vulnerable for sniffing attacks. Use this parameter ONLY if your communication channels are confirmed to be secured by other means.StringN/AOptional
The default user roles which will be created when the server is started up for the first time.StringadminMandatory
Enable following config to allow Emails as usernames.Boolean
Security configurations.

KeyStore which will be used for encrypting/decrypting passwords and other sensitive information.String
Keystore file location.String${carbon.home}/repository/resources/security/wso2carbon.jksMandatory
Keystore type (JKS/PKCS12 etc.)StringJKSMandatory
Keystore password.Stringwso2carbonMandatory
Private Key alias.Stringwso2carbonMandatory
Private Key password.Stringwso2carbonMandatory
System wide trust-store which is used to maintain the certificates of all the trusted parties.String
Trust-store file location.String${carbon.home}/repository/resources/security/client-truststore.jksMandatory
Trust-store type.StringJKSMandatory
Trust-store password.Stringwso2carbonMandatory
The Authenticator configuration to be used at the JVM level. We extend the to make it possible to authenticate to given servers and proxies.StringN/AOptional

The pattern that would match a subset of URLs for which this authenticator would be used.StringN/AOptional
The type of this authenticator. Allowed values are: 1. server 2. proxy.StringN/AOptional
The username used to log in to server/proxy.StringN/AOptional
The password used to log in to server/proxy.StringN/AOptional
The Tomcat realm to be used for hosted Web applications. Allowed values are; 1. UserManager 2. Memory If this is set to 'UserManager', the realm will pick users & roles from the system's WSO2 User Manager. If it is set to 'memory', the realm will pick users & roles from CARBON_HOME/repository/conf/tomcat/tomcat-users.xml.StringUserManagerMandatory
Option to disable storing of tokens issued by STS.BooleanFALSEOptional
Security token store class name. If this is not set, default class will be
The temporary work directory.String${carbon.home}/tmp/workMandatory
House-keeping configuration.String
True - Start House-keeping thread on server startup false - Do not start House-keeping thread on server startup. The user will run it manually as and when he wishes.BooleanTRUEMandatory
The interval in *minutes*, between house-keeping runs.Int10Mandatory
The maximum time in *minutes*, temp files are allowed to live in the system. Files/directories which were modified more than "MaxTempFileLifetime" minutes ago will be removed by the house-keeping task.Int30Mandatory
Configuration for handling different types of file upload and other file uploading related config parameters. To map all actions to a particular FileUploadExecutor, use <Action>*</Action>.String
The total file upload size limit in MB.Int100Mandatory




Processors which process special HTTP GET requests such as ?wsdl, ?policy etc. In order to plug in a processor to handle a special request, simply add an entry to this section. The value of the Item element is the first parameter in the query string(e.g. ?wsdl) which needs special processing The value of the Class element is a class which implements org.wso2.carbon.transport.HttpGetRequestProcessorStringN/AMandatory




Deployment Synchronizer Configuration. Enabled when running with "svn based" dep sync. In master nodes you need to set both AutoCommit and AutoCheckout to true and in worker nodes set only AutoCheckout to true.StringN/AOptional
















_<MediationConfig> _
_<Persistence> _

Mediation persistence configurations. Only valid if mediation features are available i.e. ESB.StringN/AOptional
Server intializing code, specified as implementation classes of org.wso2.carbon.core.ServerInitializer. This code will be run when the Carbon server is initialized.StringN/AOptional

Indicates whether the Carbon Servlet is required by the system, and whether it should be registered.BooleanN/AMandatory
__<Property name>

Carbon H2 OSGI configuration. The following properties are set by default:

Note that H2 is not a recommended database for production environments. Enabling the H2 console using this configuration may introduce a security risk, as the http://<host>:8082 URL can be attacked by external servers.

  • name="web": Starts the web server with the H2 Console. 
  • name="webPort": The port (default: 8082).
  • name="webAllowOthers": Allows other computers to connect. 
  • name="webSSL": Uses encrypted HTTPS connections. 
  • name="tcp": Starts the TCP server.
  • name="tcpPort": The port (default: 9092).
  • name="tcpAllowOthers": Allows other computers to connect.
  • name="tcpSSL": Use encrypted SSL connections. 
  • name="pg": Starts the PG server. 
  • name="pgPort": The port (default: 5435).
  • name="pgAllowOthers": Allows other computers to connect. 
  • name="trace": Prints additional trace information for all servers. 
  • name="baseDir": The base directory for H2 databases; for all servers.
Disables the statistics reporter by default.StringN/AMandatory
Enables HTTP for WSO2 servers so that you can access the Admin Console via HTTP.StringN/AOptional
Default Feature Repository of WSO2 Carbon.StringN/AMandatory


Configure API Management.StringN/AOptional
Uses the embedded API Manager by default. If you want to use an external API Manager instance to manage APIs, configure below externalAPIManager.Boolean

___<ExternalAPIManager> ___<APIGatewayURL> ____<APIPublisherURL>
Uncomment and configure API Gateway and Publisher URLs to use external API Manager instance.String



  • No labels