Example usage for org.apache.commons.chain.web.servlet ServletWebContext getApplicationScope

List of usage examples for org.apache.commons.chain.web.servlet ServletWebContext getApplicationScope

Introduction

In this page you can find the example usage for org.apache.commons.chain.web.servlet ServletWebContext getApplicationScope.

Prototype

public Map getApplicationScope() 

Source Link

Usage

From source file:org.apache.struts.chain.servlet.SelectModule.java

protected String getPrefix(Context context) {

    // Identify the URI from which we will match a module prefix
    ServletWebContext swcontext = (ServletWebContext) context;
    HttpServletRequest request = swcontext.getRequest();
    String uri = (String) request.getAttribute(Constants.INCLUDE_SERVLET_PATH);
    if (uri == null) {
        uri = request.getServletPath();// w  ww  .  j av a2 s . co m
    }
    if (uri == null) {
        throw new IllegalArgumentException("No path information in request");
    }

    // Identify the module prefix for the current module
    String prefix = ""; // Initialize to default prefix
    String prefixes[] = (String[]) swcontext.getApplicationScope().get(Globals.MODULE_PREFIXES_KEY);
    int lastSlash = 0;
    while (prefix.equals("") && ((lastSlash = uri.lastIndexOf("/")) > 0)) {
        uri = uri.substring(0, lastSlash);
        for (int i = 0; i < prefixes.length; i++) {
            if (uri.equals(prefixes[i])) {
                prefix = prefixes[i];
                break;
            }
        }
    }

    return (prefix);

}