当前位置: 首页>>代码示例>>Java>>正文


Java ErrorDispatcher类代码示例

本文整理汇总了Java中org.apache.jasper.compiler.ErrorDispatcher的典型用法代码示例。如果您正苦于以下问题:Java ErrorDispatcher类的具体用法?Java ErrorDispatcher怎么用?Java ErrorDispatcher使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


ErrorDispatcher类属于org.apache.jasper.compiler包,在下文中一共展示了ErrorDispatcher类的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: getEncoding

import org.apache.jasper.compiler.ErrorDispatcher; //导入依赖的package包/类
/**
 * Autodetects the encoding of the XML document supplied by the given
 * input stream.
 *
 * Encoding autodetection is done according to the XML 1.0 specification,
 * Appendix F.1: Detection Without External Encoding Information.
 *
 * @return Two-element array, where the first element (of type
 * java.lang.String) contains the name of the (auto)detected encoding, and
 * the second element (of type java.lang.Boolean) specifies whether the 
 * encoding was specified using the 'encoding' attribute of an XML prolog
 * (TRUE) or autodetected (FALSE).
 */
public static Object[] getEncoding(String fname, JarFile jarFile,
                                   JspCompilationContext ctxt,
                                   ErrorDispatcher err)
    throws IOException, JasperException
{
    InputStream inStream = JspUtil.getInputStream(fname, jarFile, ctxt,
                                                  err);
    XMLEncodingDetector detector = new XMLEncodingDetector();
    Object[] ret = detector.getEncoding(inStream, err);
    inStream.close();

    return ret;
}
 
开发者ID:liaokailin,项目名称:tomcat7,代码行数:27,代码来源:XMLEncodingDetector.java

示例2: getEncoding

import org.apache.jasper.compiler.ErrorDispatcher; //导入依赖的package包/类
private Object[] getEncoding(InputStream in, ErrorDispatcher err) throws IOException, JasperException {
	this.stream = in;
	this.err = err;
	createInitialReader();
	scanXMLDecl();

	return new Object[] { this.encoding, Boolean.valueOf(this.isEncodingSetInProlog),
			Boolean.valueOf(this.isBomPresent), Integer.valueOf(this.skip) };
}
 
开发者ID:how2j,项目名称:lazycat,代码行数:10,代码来源:XMLEncodingDetector.java

示例3: getEncoding

import org.apache.jasper.compiler.ErrorDispatcher; //导入依赖的package包/类
private Object[] getEncoding(InputStream in, ErrorDispatcher err)
    throws IOException, JasperException
{
    this.stream = in;
    this.err=err;
    createInitialReader();
    scanXMLDecl();

    return new Object[] { this.encoding,
                          Boolean.valueOf(this.isEncodingSetInProlog),
                          Boolean.valueOf(this.isBomPresent),
                          Integer.valueOf(this.skip) };
}
 
开发者ID:nkasvosve,项目名称:beyondj,代码行数:14,代码来源:XMLEncodingDetector.java

示例4: handleJspException

import org.apache.jasper.compiler.ErrorDispatcher; //导入依赖的package包/类
/**
 * <p>Attempts to construct a JasperException that contains helpful information
 * about what went wrong. Uses the JSP compiler system to translate the line
 * number in the generated servlet that originated the exception to a line
 * number in the JSP.  Then constructs an exception containing that
 * information, and a snippet of the JSP to help debugging.
 * Please see http://bz.apache.org/bugzilla/show_bug.cgi?id=37062 and
 * http://www.tfenne.com/jasper/ for more details.
 *</p>
 *
 * @param ex the exception that was the cause of the problem.
 * @return a JasperException with more detailed information
 */
protected JasperException handleJspException(Exception ex) {
    try {
        Throwable realException = ex;
        if (ex instanceof ServletException) {
            realException = ((ServletException) ex).getRootCause();
        }

        // First identify the stack frame in the trace that represents the JSP
        StackTraceElement[] frames = realException.getStackTrace();
        StackTraceElement jspFrame = null;

        for (int i=0; i<frames.length; ++i) {
            if ( frames[i].getClassName().equals(this.getServlet().getClass().getName()) ) {
                jspFrame = frames[i];
                break;
            }
        }

        
        if (jspFrame == null ||
                this.ctxt.getCompiler().getPageNodes() == null) {
            // If we couldn't find a frame in the stack trace corresponding
            // to the generated servlet class or we don't have a copy of the
            // parsed JSP to hand, we can't really add anything
            return new JasperException(ex);
        }

        int javaLineNumber = jspFrame.getLineNumber();
        JavacErrorDetail detail = ErrorDispatcher.createJavacError(
                jspFrame.getMethodName(),
                this.ctxt.getCompiler().getPageNodes(),
                null,
                javaLineNumber,
                ctxt);

        // If the line number is less than one we couldn't find out
        // where in the JSP things went wrong
        int jspLineNumber = detail.getJspBeginLineNumber();
        if (jspLineNumber < 1) {
            throw new JasperException(ex);
        }

        if (options.getDisplaySourceFragment()) {
            return new JasperException(Localizer.getMessage
                    ("jsp.exception", detail.getJspFileName(),
                            "" + jspLineNumber) + Constants.NEWLINE +
                            Constants.NEWLINE + detail.getJspExtract() +
                            Constants.NEWLINE + Constants.NEWLINE + 
                            "Stacktrace:", ex);
            
        }

        return new JasperException(Localizer.getMessage
                ("jsp.exception", detail.getJspFileName(),
                        "" + jspLineNumber), ex);
    } catch (Exception je) {
        // If anything goes wrong, just revert to the original behaviour
        if (ex instanceof JasperException) {
            return (JasperException) ex;
        }
        return new JasperException(ex);
    }
}
 
开发者ID:liaokailin,项目名称:tomcat7,代码行数:77,代码来源:JspServletWrapper.java

示例5: handleJspException

import org.apache.jasper.compiler.ErrorDispatcher; //导入依赖的package包/类
/**
 * <p>Attempts to construct a JasperException that contains helpful information
 * about what went wrong. Uses the JSP compiler system to translate the line
 * number in the generated servlet that originated the exception to a line
 * number in the JSP.  Then constructs an exception containing that
 * information, and a snippet of the JSP to help debugging.
 * Please see http://issues.apache.org/bugzilla/show_bug.cgi?id=37062 and
 * http://www.tfenne.com/jasper/ for more details.
 *</p>
 *
 * @param ex the exception that was the cause of the problem.
 * @return a JasperException with more detailed information
 */
protected JasperException handleJspException(Exception ex) {
    try {
        Throwable realException = ex;
        if (ex instanceof ServletException) {
            realException = ((ServletException) ex).getRootCause();
        }

        // First identify the stack frame in the trace that represents the JSP
        StackTraceElement[] frames = realException.getStackTrace();
        StackTraceElement jspFrame = null;

        for (int i=0; i<frames.length; ++i) {
            if ( frames[i].getClassName().equals(this.getServlet().getClass().getName()) ) {
                jspFrame = frames[i];
                break;
            }
        }

        if (jspFrame == null) {
            // If we couldn't find a frame in the stack trace corresponding
            // to the generated servlet class, we can't really add anything
            return new JasperException(ex);
        }
        else {
            int javaLineNumber = jspFrame.getLineNumber();
            JavacErrorDetail detail = ErrorDispatcher.createJavacError(
                    jspFrame.getMethodName(),
                    this.ctxt.getCompiler().getPageNodes(),
                    null,
                    javaLineNumber,
                    ctxt);

            // If the line number is less than one we couldn't find out
            // where in the JSP things went wrong
            int jspLineNumber = detail.getJspBeginLineNumber();
            if (jspLineNumber < 1) {
                throw new JasperException(ex);
            }

            if (options.getDisplaySourceFragment()) {
                return new JasperException(Localizer.getMessage
                        ("jsp.exception", detail.getJspFileName(),
                                "" + jspLineNumber) +
                                "\n\n" + detail.getJspExtract() +
                                "\n\nStacktrace:", ex);
                
            } else {
                return new JasperException(Localizer.getMessage
                        ("jsp.exception", detail.getJspFileName(),
                                "" + jspLineNumber), ex);
            }
        }
    } catch (Exception je) {
        // If anything goes wrong, just revert to the original behaviour
        if (ex instanceof JasperException) {
            return (JasperException) ex;
        } else {
            return new JasperException(ex);
        }
    }
}
 
开发者ID:lamsfoundation,项目名称:lams,代码行数:75,代码来源:JspServletWrapper.java

示例6: handleJspException

import org.apache.jasper.compiler.ErrorDispatcher; //导入依赖的package包/类
/**
 * <p>
 * Attempts to construct a JasperException that contains helpful information
 * about what went wrong. Uses the JSP compiler system to translate the line
 * number in the generated servlet that originated the exception to a line
 * number in the JSP. Then constructs an exception containing that
 * information, and a snippet of the JSP to help debugging. Please see
 * http://bz.apache.org/bugzilla/show_bug.cgi?id=37062 and
 * http://www.tfenne.com/jasper/ for more details.
 * </p>
 *
 * @param ex
 *            the exception that was the cause of the problem.
 * @return a JasperException with more detailed information
 */
protected JasperException handleJspException(Exception ex) {
	try {
		Throwable realException = ex;
		if (ex instanceof ServletException) {
			realException = ((ServletException) ex).getRootCause();
		}

		// First identify the stack frame in the trace that represents the
		// JSP
		StackTraceElement[] frames = realException.getStackTrace();
		StackTraceElement jspFrame = null;

		for (int i = 0; i < frames.length; ++i) {
			if (frames[i].getClassName().equals(this.getServlet().getClass().getName())) {
				jspFrame = frames[i];
				break;
			}
		}

		if (jspFrame == null || this.ctxt.getCompiler().getPageNodes() == null) {
			// If we couldn't find a frame in the stack trace corresponding
			// to the generated servlet class or we don't have a copy of the
			// parsed JSP to hand, we can't really add anything
			return new JasperException(ex);
		}

		int javaLineNumber = jspFrame.getLineNumber();
		JavacErrorDetail detail = ErrorDispatcher.createJavacError(jspFrame.getMethodName(),
				this.ctxt.getCompiler().getPageNodes(), null, javaLineNumber, ctxt);

		// If the line number is less than one we couldn't find out
		// where in the JSP things went wrong
		int jspLineNumber = detail.getJspBeginLineNumber();
		if (jspLineNumber < 1) {
			throw new JasperException(ex);
		}

		if (options.getDisplaySourceFragment()) {
			return new JasperException(
					Localizer.getMessage("jsp.exception", detail.getJspFileName(), "" + jspLineNumber)
							+ Constants.NEWLINE + Constants.NEWLINE + detail.getJspExtract() + Constants.NEWLINE
							+ Constants.NEWLINE + "Stacktrace:",
					ex);

		}

		return new JasperException(
				Localizer.getMessage("jsp.exception", detail.getJspFileName(), "" + jspLineNumber), ex);
	} catch (Exception je) {
		// If anything goes wrong, just revert to the original behaviour
		if (ex instanceof JasperException) {
			return (JasperException) ex;
		}
		return new JasperException(ex);
	}
}
 
开发者ID:how2j,项目名称:lazycat,代码行数:72,代码来源:JspServletWrapper.java

示例7: handleJspException

import org.apache.jasper.compiler.ErrorDispatcher; //导入依赖的package包/类
/**
 * <p>Attempts to construct a JasperException that contains helpful information
 * about what went wrong. Uses the JSP compiler system to translate the line
 * number in the generated servlet that originated the exception to a line
 * number in the JSP.  Then constructs an exception containing that
 * information, and a snippet of the JSP to help debugging.
 * Please see http://issues.apache.org/bugzilla/show_bug.cgi?id=37062 and
 * http://www.tfenne.com/jasper/ for more details.
 *</p>
 *
 * @param ex the exception that was the cause of the problem.
 * @return a JasperException with more detailed information
 */
protected JasperException handleJspException(Exception ex) {
    try {
        Throwable realException = ex;
        if (ex instanceof ServletException) {
            realException = ((ServletException) ex).getRootCause();
        }

        // First identify the stack frame in the trace that represents the JSP
        StackTraceElement[] frames = realException.getStackTrace();
        StackTraceElement jspFrame = null;

        for (int i=0; i<frames.length; ++i) {
            if ( frames[i].getClassName().equals(this.getServlet().getClass().getName()) ) {
                jspFrame = frames[i];
                break;
            }
        }


        if (jspFrame == null ||
                this.ctxt.getCompiler().getPageNodes() == null) {
            // If we couldn't find a frame in the stack trace corresponding
            // to the generated servlet class or we don't have a copy of the
            // parsed JSP to hand, we can't really add anything
            return new JasperException(ex);
        }

        int javaLineNumber = jspFrame.getLineNumber();
        JavacErrorDetail detail = ErrorDispatcher.createJavacError(
                jspFrame.getMethodName(),
                this.ctxt.getCompiler().getPageNodes(),
                null,
                javaLineNumber,
                ctxt);

        // If the line number is less than one we couldn't find out
        // where in the JSP things went wrong
        int jspLineNumber = detail.getJspBeginLineNumber();
        if (jspLineNumber < 1) {
            throw new JasperException(ex);
        }

        if (options.getDisplaySourceFragment()) {
            return new JasperException(Localizer.getMessage
                    ("jsp.exception", detail.getJspFileName(),
                            "" + jspLineNumber) + System.lineSeparator() +
                            System.lineSeparator() + detail.getJspExtract() +
                            System.lineSeparator() + System.lineSeparator() +
                            "Stacktrace:", ex);

        }

        return new JasperException(Localizer.getMessage
                ("jsp.exception", detail.getJspFileName(),
                        "" + jspLineNumber), ex);
    } catch (Exception je) {
        // If anything goes wrong, just revert to the original behaviour
        if (ex instanceof JasperException) {
            return (JasperException) ex;
        }
        return new JasperException(ex);
    }
}
 
开发者ID:nkasvosve,项目名称:beyondj,代码行数:77,代码来源:JspServletWrapper.java

示例8: handleJspException

import org.apache.jasper.compiler.ErrorDispatcher; //导入依赖的package包/类
/**
 * <p>Attempts to construct a JasperException that contains helpful information
 * about what went wrong. Uses the JSP compiler system to translate the line
 * number in the generated servlet that originated the exception to a line
 * number in the JSP.  Then constructs an exception containing that
 * information, and a snippet of the JSP to help debugging.
 * Please see http://issues.apache.org/bugzilla/show_bug.cgi?id=37062 and
 * http://www.tfenne.com/jasper/ for more details.
 *</p>
 *
 * @param ex the exception that was the cause of the problem.
 * @return a JasperException with more detailed information
 */
protected JasperException handleJspException(Exception ex) {
    try {
        Throwable realException = ex;
        if (ex instanceof ServletException) {
            realException = ((ServletException) ex).getRootCause();
        }

        // First identify the stack frame in the trace that represents the JSP
        StackTraceElement[] frames = realException.getStackTrace();
        StackTraceElement jspFrame = null;

        for (int i=0; i<frames.length; ++i) {
            if ( frames[i].getClassName().equals(this.getServlet().getClass().getName()) ) {
                jspFrame = frames[i];
                break;
            }
        }

        
        if (jspFrame == null ||
                this.ctxt.getCompiler().getPageNodes() == null) {
            // If we couldn't find a frame in the stack trace corresponding
            // to the generated servlet class or we don't have a copy of the
            // parsed JSP to hand, we can't really add anything
            return new JasperException(ex);
        }

        int javaLineNumber = jspFrame.getLineNumber();
        JavacErrorDetail detail = ErrorDispatcher.createJavacError(
                jspFrame.getMethodName(),
                this.ctxt.getCompiler().getPageNodes(),
                null,
                javaLineNumber,
                ctxt);

        // If the line number is less than one we couldn't find out
        // where in the JSP things went wrong
        int jspLineNumber = detail.getJspBeginLineNumber();
        if (jspLineNumber < 1) {
            throw new JasperException(ex);
        }

        if (options.getDisplaySourceFragment()) {
            return new JasperException(Localizer.getMessage
                    ("jsp.exception", detail.getJspFileName(),
                            "" + jspLineNumber) + Constants.NEWLINE +
                            Constants.NEWLINE + detail.getJspExtract() +
                            Constants.NEWLINE + Constants.NEWLINE + 
                            "Stacktrace:", ex);
            
        }

        return new JasperException(Localizer.getMessage
                ("jsp.exception", detail.getJspFileName(),
                        "" + jspLineNumber), ex);
    } catch (Exception je) {
        // If anything goes wrong, just revert to the original behaviour
        if (ex instanceof JasperException) {
            return (JasperException) ex;
        }
        return new JasperException(ex);
    }
}
 
开发者ID:deathspeeder,项目名称:class-guard,代码行数:77,代码来源:JspServletWrapper.java


注:本文中的org.apache.jasper.compiler.ErrorDispatcher类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。