2013-08-05 244 views
0

由於行System.out.println(sendURL.substring(0, sendURL.lastIndexOf("/"))); sendURL不爲空,它具有值。任何人都請幫我解決這個問題。提前致謝!無法編譯JSP,Eception:org.apache.jasper.JasperException

消息

描述服務器遇到阻止其完成此請求一個內部錯誤()。

異常

org.apache.jasper.JasperException: An exception occurred processing JSP page /jsp/authenticate.jsp at line 47 

44:  config = getServletConfig(); 
45:  String localStoreurl=application.getInitParameter("localstorefile"); 
46:  String domain=application.getInitParameter("domain"); 
47:  System.out.println(sendURL.substring(0, sendURL.lastIndexOf("/"))); 
48: %> 
49: <html xmlns="http://www.w3.org/1999/xhtml"> 
50:  <head> 


Stacktrace:  org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:519) 
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:428) 
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) 
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) 
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 
root cause java.lang.NullPointerException 
    org.apache.jsp.jsp.authenticate_jsp._jspService(authenticate_jsp.java:103) 
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) 
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:386) 
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) 
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) 
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 
note The full stack trace of the root cause is available in the Apache Tomcat/6.0.30 logs. 

的Apache Tomcat/6.0.30

+0

你爲什麼不在這裏發佈完整的scriptlet?或多或少清楚地表明錯誤與'sendURL'變量有關,但如果我們不知道如何聲明/初始化它,我們不能提供幫助 –

回答

0

我認爲這是投擲IndexOutOfBoundsException,它被拋出如果將beginIndex爲負,或者endIndex大的長度大此String對象或beginIndex大於endIndex。讀它是documentation

在你的情況下,如果字符串不包含任何'/',beginIndex將大於endIndex。

您應該在調用subString方法之前檢查這些條件。

0

請檢查sendURL變量可能是它的值null。