org.apache.jk.config
Class ApacheConfig

java.lang.Object
  extended byorg.apache.jk.config.BaseJkConfig
      extended byorg.apache.jk.config.ApacheConfig
All Implemented Interfaces:
LifecycleListener

public class ApacheConfig
extends BaseJkConfig

Generates automatic apache mod_jk configurations based on the Tomcat server.xml settings and the war contexts initialized during startup.

This config interceptor is enabled by inserting an ApacheConfig Listener in the server.xml file like so:

 < Server ... >
   ...
   org.apache.ajp.tomcat4.config.ApacheConfig 
       options />
   ...
 < /Server >
    
where options can include any of the following attributes:

Author:
Costin Manolache, Larry Isaacs, Mel Martinez, Bill Barker

Field Summary
static java.lang.String JK_LOG_LOCATION
          default mod_jk log file location
static java.lang.String MOD_JK
          default location of mod_jk Apache plug-in.
static java.lang.String MOD_JK_CONFIG
          default path to mod_jk .conf location
static java.lang.String WORKERS_CONFIG
          default path to workers.properties file This should be also auto-generated from server.xml.
 
Fields inherited from class org.apache.jk.config.BaseJkConfig
append, configHome, forwardAll, jkDebug, jkLog, jkWorker, legacy, noRoot, regenerate, tomcatHome, workersConfig
 
Constructor Summary
ApacheConfig()
           
 
Method Summary
protected  boolean addExtensionMapping(java.lang.String ctxPath, java.lang.String ext, java.io.PrintWriter mod_jk)
          Add an Apache extension mapping.
protected  boolean addMapping(java.lang.String fullPath, java.io.PrintWriter mod_jk)
          Add a fulling specified Appache mapping.
protected  boolean addMapping(java.lang.String ctxP, java.lang.String ext, java.io.PrintWriter mod_jk)
          Add a partially specified Appache mapping.
protected  void generateContextMappings(Context context, java.io.PrintWriter mod_jk)
           
protected  boolean generateJkHead(java.io.PrintWriter mod_jk)
          Generate the loadModule and general options
protected  void generateSSLConfig(java.io.PrintWriter mod_jk)
          Generate SSL options
protected  void generateStupidMappings(Context context, java.io.PrintWriter mod_jk)
          Forward all requests for a context to tomcat.
protected  void generateVhostHead(Host host, java.io.PrintWriter mod_jk)
          Generate Virtual Host start
protected  void generateVhostTail(Host host, java.io.PrintWriter mod_jk)
          Generate Virtual Host end
protected  java.io.PrintWriter getWriter()
          Get the output Writer.
protected  void initProperties()
          Initialize defaults for properties that are not set explicitely
 void setCertsIndicator(java.lang.String s)
          What is the indicator for the client SSL certificated(default is SSL_CLIENT_CERT
 void setCipherIndicator(java.lang.String s)
          What is the indicator for client SSL cipher suit (default is SSL_CIPHER)
 void setExtractSSL(boolean sslMode)
          By default mod_jk is configured to collect SSL information from the apache environment and send it to the Tomcat workers.
 void setHttpsIndicator(java.lang.String s)
          What is the indicator for SSL (default is HTTPS)
 void setJkConfig(java.lang.String path)
          set the path to the output file for the auto-generated mod_jk configuration file.
 void setModJk(java.lang.String path)
          set the path to the mod_jk Apache Module
 void setSessionIndicator(java.lang.String s)
          What is the indicator for SSL session (default is SSL_SESSION_ID)
 
Methods inherited from class org.apache.jk.config.BaseJkConfig
execute, executeContext, executeEngine, executeHost, executeServer, generateJkTail, getAbsoluteDocBase, getConfigFile, getHost, isAbsolute, lifecycleEvent, patch, setAppend, setConfigHome, setForwardAll, setJkDebug, setJkLog, setJkWorker, setLegacy, setNoRoot, setWorkersConfig
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

MOD_JK_CONFIG

public static final java.lang.String MOD_JK_CONFIG
default path to mod_jk .conf location

See Also:
Constant Field Values

WORKERS_CONFIG

public static final java.lang.String WORKERS_CONFIG
default path to workers.properties file This should be also auto-generated from server.xml.

See Also:
Constant Field Values

JK_LOG_LOCATION

public static final java.lang.String JK_LOG_LOCATION
default mod_jk log file location

See Also:
Constant Field Values

MOD_JK

public static final java.lang.String MOD_JK
default location of mod_jk Apache plug-in.

Constructor Detail

ApacheConfig

public ApacheConfig()
Method Detail

setJkConfig

public void setJkConfig(java.lang.String path)
set the path to the output file for the auto-generated mod_jk configuration file. If this path is relative then it will be resolved absolutely against the getConfigHome() path.

Parameters:
path - String path to a file

setModJk

public void setModJk(java.lang.String path)
set the path to the mod_jk Apache Module

Parameters:
path - String path to a file

setExtractSSL

public void setExtractSSL(boolean sslMode)
By default mod_jk is configured to collect SSL information from the apache environment and send it to the Tomcat workers. The problem is that there are many SSL solutions for Apache and as a result the environment variable names may change. The following JK related SSL configureation can be used to customize mod_jk's SSL behaviour. Should mod_jk send SSL information to Tomact (default is On)


setHttpsIndicator

public void setHttpsIndicator(java.lang.String s)
What is the indicator for SSL (default is HTTPS)


setSessionIndicator

public void setSessionIndicator(java.lang.String s)
What is the indicator for SSL session (default is SSL_SESSION_ID)


setCipherIndicator

public void setCipherIndicator(java.lang.String s)
What is the indicator for client SSL cipher suit (default is SSL_CIPHER)


setCertsIndicator

public void setCertsIndicator(java.lang.String s)
What is the indicator for the client SSL certificated(default is SSL_CLIENT_CERT


initProperties

protected void initProperties()
Initialize defaults for properties that are not set explicitely

Overrides:
initProperties in class BaseJkConfig

getWriter

protected java.io.PrintWriter getWriter()
                                 throws java.io.IOException
Description copied from class: BaseJkConfig
Get the output Writer. Override with method to generate web server specific configuration.

Overrides:
getWriter in class BaseJkConfig
Throws:
java.io.IOException

generateJkHead

protected boolean generateJkHead(java.io.PrintWriter mod_jk)
Generate the loadModule and general options

Overrides:
generateJkHead in class BaseJkConfig

generateVhostHead

protected void generateVhostHead(Host host,
                                 java.io.PrintWriter mod_jk)
Description copied from class: BaseJkConfig
Generate Virtual Host start

Overrides:
generateVhostHead in class BaseJkConfig

generateVhostTail

protected void generateVhostTail(Host host,
                                 java.io.PrintWriter mod_jk)
Description copied from class: BaseJkConfig
Generate Virtual Host end

Overrides:
generateVhostTail in class BaseJkConfig

generateSSLConfig

protected void generateSSLConfig(java.io.PrintWriter mod_jk)
Description copied from class: BaseJkConfig
Generate SSL options

Overrides:
generateSSLConfig in class BaseJkConfig

generateStupidMappings

protected void generateStupidMappings(Context context,
                                      java.io.PrintWriter mod_jk)
Forward all requests for a context to tomcat. The default.

Overrides:
generateStupidMappings in class BaseJkConfig

generateContextMappings

protected void generateContextMappings(Context context,
                                       java.io.PrintWriter mod_jk)
Overrides:
generateContextMappings in class BaseJkConfig

addExtensionMapping

protected boolean addExtensionMapping(java.lang.String ctxPath,
                                      java.lang.String ext,
                                      java.io.PrintWriter mod_jk)
Add an Apache extension mapping.

Overrides:
addExtensionMapping in class BaseJkConfig

addMapping

protected boolean addMapping(java.lang.String fullPath,
                             java.io.PrintWriter mod_jk)
Add a fulling specified Appache mapping.

Overrides:
addMapping in class BaseJkConfig

addMapping

protected boolean addMapping(java.lang.String ctxP,
                             java.lang.String ext,
                             java.io.PrintWriter mod_jk)
Add a partially specified Appache mapping.



Copyright © 2000-2012 Apache Software Foundation. All Rights Reserved.