2012-11-23 44 views
0

我下面这个教程 http://netbeans.org/kb/docs/web/quickstart-webapps.html为什么运行java web应用程序时出现以下错误?

,并提到我已经创建了两个JSP pages.My index.jsp页面看起来像这样

%@page contentType="text/html" pageEncoding="UTF-8"%> 
<!DOCTYPE html> 
<html> 
    <head> 
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
     <title>JSP Page</title> 
    </head> 
    <body> 

     Name<form name="Name Input Form" action="response.jsp"> 
      <input type="text" name="name" value="" /> 
      <input type="submit" value="OK" /> 
     </form> 

    </body> 
</html> 

和我的response.jsp看起来像这样

<%@page contentType="text/html" pageEncoding="UTF-8"%> 
<!DOCTYPE html> 
<html> 
    <head> 
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
     <title>JSP Page</title> 
    </head> 
    <body> 

     <jsp:useBean id="useBean" scope="session" class="abc.NameHandler" /> 

     <jsp:setProperty name="myBean" property="name" /><h1>Hello</h1> 
     <jsp:getProperty name="myBean" property="name" /> 

    </body> 
</html> 

我创建了一个名为abc的包,其中我定义了一个名为NameHandler的类。

package abc; 

public class NameHandler 
{ 

    private String name; 

    public NameHandler() 
    { 
     name =null; 

    } 

    /** 
    * @return the name 
    */ 
    public String getName() { 
     return name; 
    } 

    /** 
    * @param name the name to set 
    */ 
    public void setName(String name) { 
     this.name = name; 
    } 
} 
当我运行该项目的index.jsp

正确显示和它的命令输入一个名称,它有一个提交button.Now当我按下提交按钮,我收到以下错误。

HTTP Status 500 - 

type Exception report 

message 

descriptionThe server encountered an internal error() that prevented it from fulfilling this request. 

exception 

org.apache.jasper.JasperException: java.lang.NullPointerException 

root cause 

java.lang.NullPointerException 

note The full stack traces of the exception and its root causes are available in the GlassFish Server Open Source Edition 3.1 logs. 
GlassFish Server Open Source Edition 3.1 

和我不知道为什么我得到这个错误。请任何人请解释?

[更新]

这个错误是什么意思?在jsp:useBean

WARNING: StandardWrapperValve[jsp]: PWC1406: Servlet.service() for servlet jsp threw exception 
java.lang.NullPointerException 
    at org.apache.jasper.runtime.JspRuntimeLibrary.internalIntrospecthelper(JspRuntimeLibrary.java:368) 
    at org.apache.jasper.runtime.JspRuntimeLibrary.introspecthelper(JspRuntimeLibrary.java:354) 
    at org.apache.jsp.response_jsp._jspService(response_jsp.java from :68) 
    at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:111) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:848) 
    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:403) 
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:492) 
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:378) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:848) 
    at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1534) 
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:281) 
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) 
    at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:655) 
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:595) 
    at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:98) 
    at com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:91) 
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:162) 
    at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:326) 
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:227) 
    at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:170) 
    at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:822) 
    at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:719) 
    at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1013) 
    at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:225) 
    at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137) 
    at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104) 
    at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90) 
    at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79) 
    at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54) 
    at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59) 
    at com.sun.grizzly.ContextTask.run(ContextTask.java:71) 
    at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532) 
    at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513) 
    at java.lang.Thread.run(Thread.java:619) 
+0

随着错误消息建议看看完整的堆栈跟踪:它会告诉你哪里出错发生。 – Matteo

+0

我不unsentand什么错误日志说WARNING [org.openide.filesystems.Ordering]:不是所有的孩子在/标记的位置属性:[org-netbeans-modules-editor-java-JavaBracesMatcher.shadow],但有一些是[org-netbeans-modules-editor-bracesmatching-LegacyEssMatcher.instance,org-netbeans-modules-editor-bracesmatching-DefaultMatcher.instance] INFO [org.netbeans.lib.profiler.infolog]:>>> Profiler agent [ port = 5140,id = -1]:STATE_INACTIVE – user1720616

+0

“GlassFish服务器开源版本3.1日志中提供了异常及其根本原因的完整堆栈跟踪。” GlassFish服务器开源版本3.1“。如果看起来您正在使用glassfish,请检查glassfish安装中的server.log文件。 – Matteo

回答

0

Id和bean的名称和jsp:setProperty/jsp:getProperty应符合:

<jsp:useBean id="myBean" scope="session" class="abc.NameHandler" /> 

    <jsp:setProperty name="myBean" property="name" /><h1>Hello</h1> 
    <jsp:getProperty name="myBean" property="name" /> 
+0

非常感谢你:) – user1720616

相关问题