Example usage for com.google.gwt.core.server StackTraceDeobfuscator fromResource

List of usage examples for com.google.gwt.core.server StackTraceDeobfuscator fromResource

Introduction

In this page you can find the example usage for com.google.gwt.core.server StackTraceDeobfuscator fromResource.

Prototype

public static StackTraceDeobfuscator fromResource(String symbolMapsPath) 

Source Link

Document

Creates a deobfuscator that loads symbol and source map files under given resource path.

Usage

From source file:com.allen_sauer.gwt.log.server.RemoteLoggerServlet.java

License:Apache License

@Override
public final void init(ServletConfig config) throws ServletException {
    super.init(config);

    deobfuscatorList = new ArrayList<StackTraceDeobfuscator>();
    for (@SuppressWarnings("unchecked")
    Enumeration<String> e = config.getInitParameterNames(); e.hasMoreElements();) {
        String name = e.nextElement();
        String value = config.getInitParameter(name);

        if (name.startsWith(PARAMETER_SYMBOL_MAPS_FILE_SYSTEM)) {
            deobfuscatorList.add(StackTraceDeobfuscator.fromFileSystem(value));
        } else if (name.startsWith(PARAMETER_SYMBOL_MAPS_RESOURCE_PATH)) {
            deobfuscatorList.add(StackTraceDeobfuscator.fromResource(value));
        } else if (name.startsWith(PARAMETER_SYMBOL_MAPS_URL)) {
            try {
                URL url = new URL(value);
                deobfuscatorList.add(StackTraceDeobfuscator.fromUrl(url));
            } catch (MalformedURLException ex) {
                Log.error(//from   ww  w. jav  a  2  s .c  o m
                        "Servlet configuration parameter '" + name + "' specifies invalid URL '" + value + "'",
                        ex);
            }
        } else if (name.startsWith(PARAMETER_SYMBOL_MAPS)) {
            Log.warn("Servlet configuration parameter '" + name + "' is no longer supported");
        }
    }
    if (deobfuscatorList.isEmpty()) {
        Log.warn("In order to enable stack trace deobfuscation, please specify the '" + PARAMETER_SYMBOL_MAPS
                + "' <init-param> for the " + RemoteLoggerServlet.class.getName() + " servlet in your web.xml");
    }

    accessControlAllowOriginHeader = config.getInitParameter(ACCESS_CONTROL_ALLOW_ORIGIN);
}