Default installation paths
The directories below are set during the installation process. You can find these Repose directories by following the appropriate paths:
- Repose ear files are installed in
Repose valve jar is installed in
- Repose logs are available in
- Repose default config directory is
- Repose start up script is
Configuration management helps save time, simplify deployments, and increase reliability. Check out our Configuration Management repositories:
To start Repose via the service command (recommended):
To stop Repose via the service command (recommended):
To start Repose via the startup script:
To stop Repose via the script:
To start Repose with executable Repose valve jar, use action "start."
To stop Repose using command line:
Send a request to verify that Repose is running:
The default installation returns:
Validate configurations with XSDs
You can validate your XML configurations using either an online validator or a command line validator. If you are interested in using an online validator, you may want to look at FreeFormatter or the W3C XML Schema (XSD) Validator. If you prefer to use a command line validator and use Linux or Mac, you can use the xmllint program that is included in libxml2.
Use xmllint to check the validity of your XML configurations against the XSD by typing the following command in your terminal:
For test.xsd use the schema file, and for test.xml use your XML file.
The --noout flag prints only the validation results while preventing the XML file from printing to standard.
Deployment required configurations
Below are files of the default configuration settings that come with this installation. These default files are required to run Repose.
|XML Schema definition||Example Config|
Repose configuration files are evaluated:
- When Repose is started
- If there are any invalid configuration files, then Repose logs the error and returns 503 response codes for all requests until all the configuration files are fixed.
- Every 15 seconds. This check interval is not configurable.
- If valid configuration files are updated, making them invalid, Repose logs the error and continues running with the previous good configuration.
Each Repose component specifies a unique configuration name. For information and examples, see Filters and services.
Repose can load Java Servlet Filters and process the requests and responses traveling between the client and server.
A Filter is an HTTP message interceptor that provides a specific piece of business functionality. A filter contains a Repose specific named reference.
A Filter Chain is a sequence of filters that will intercept the request from the first filter of the sequence to the last enumerated filter in the sequence.
How to add filters
You can add filters to Repose using the System Model configuration file. See the
system-model.cfg.xml example below. The filter name's to use in the system-model.cfg.xml are defined in the each filter bundle's web-fragment.xml.
More about directories
|All consumable artifacts meant for deployment through Repose must conform to the Java Platform, Enterprise Edition (JEE 6) specification for Enterprise ARchive (EAR) files.|
Upon completion of the Repose installation the following default directories are made accessible. These directories are described below:
Default directory model
Listen ports and system model interrogator
When Repose starts, it needs to know on which ports (http and/or https) it is listening for requests. It uses this information for a few things
- If using the distributed datastore, Repose uses this port when communicating to other nodes in the cluster.
- Repose uses the port information in addition to the local network address information to determine to which cluster it belongs.
Via & X-Forwarded-For
The 'via' attribute in the container.cfg.xml file will configure what Repose will set in the Via Header of the request and response. If this attribute is not configured or left blank Repose will default to passing the version of Repose which is deployed.
When deploying under GlassFish please set a jvm option 'sun.net.http.allowRestrictedHeaders' to 'true' so as to allow repose to set the 'Via' header
Repose will add/set the X-Forwarded-For Header to all processed requests.
The 'content-body-read-limit' attribute in the container.cfg.xml file will allow you to configure the maximum size of the request content in bytes, if the attribute is not set the default will be what ever the application server maximum value will be allowed. If the 'content-body-read-limit' is set and the request sends the content larger than the maximum value set Repose will send response with 413 response code.
A corresponding system-model.cfg.xml could be:
In this example, Repose would determine that it is running in the repose-cluster "repose" and is identified by node "node1"
<THIS IS A STUB>
# Set root logger level
log4j.rootLogger=DEBUG, debugFile, infoFile, warnFile, errorFile
log4j.appender.debugFile.layout = org.apache.log4j.PatternLayout
log4j.appender.debugFile.layout.ConversionPattern=%d %-4r [%t] %-5p %c %x - %m%n
log4j.appender.infoFile.layout = org.apache.log4j.PatternLayout
log4j.appender.infoFile.layout.ConversionPattern=%d %-4r [%t] %-5p %c %x - %m%n
log4j.appender.warnFile.layout = org.apache.log4j.PatternLayout
log4j.appender.warnFile.layout.ConversionPattern=%d %-4r [%t] %-5p %c %x - %m%n
log4j.appender.errorFile.layout = org.apache.log4j.PatternLayout
log4j.appender.errorFile.layout.ConversionPattern=%d %-4r [%t] %-5p %c %x - %m%n