Goodmorning, I have a question for you. I'm a little bit newbie about Java and JSP and I'm learning, so please don't kill me :D
I have a similar problem in two parts of my code, in the first one: modificaprofilo.jsp
<div id="modinfopersonali" class="div1 tabcontent">
<% User u=(User)session.getAttribute("User");%>
<p>Email: <input type="email" value="<%= u.getEmail()%>" disabled></p>
<p>Nome: <input type="text" oninput="this.className = ''" value="<%=u.getFirstname() %>" ></p>
<p>Cognome: <input type="text" oninput="this.className = ''" value="<%= u.getLastname() %>"></p>
<p>Luogo di Nascita: <input type="text" oninput="this.className = ''" value="<%= u.getLuogodinascita() %>"></p>
<p>Indirizzo: <input type="text" oninput="this.className = ''" value="<%= u.getIndirizzo() %>"></p>
<button class="button" onclick="modificaInformazioni()">Modifica </button>
</div>
ModificaProfilo.java
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
HttpSession session=request.getSession();
String mod=request.getParameter("mod");
Database db=Database.getDatabase();
if(mod!=null) {
if(mod.equals("Profilo")) {
String login=request.getParameter("login");
String firstname=request.getParameter("firstname");
String lastname=request.getParameter("lastname");
String luogodinascita=request.getParameter("luogodinascita");
String indirizzo=request.getParameter("indirizzo");
User u = new User((String)session.getAttribute("Email"),login, firstname, lastname, luogodinascita, indirizzo);
try {
if(db.modificaProfilo(u)==true) {
session.removeAttribute("User");
session.setAttribute("User",u);
response.getWriter().write("true");
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}}
}
*I Add my file java, then you(and me) can understand better *
And I receive an error at line Email, but If I comment this line, I have an error at line Nome and then others.
The same error I find in:
<div class="row">
<div class=" column infouser1">
<h3>Informazioni Personali </h3><hr>
<p>Nome: <%=u.getFirstname()%></p>
<p>Cognome: <%= u.getLastname() %></p>
<p>Luogo di Nascita : <%= u.getLuogodinascita() %></p>
<p>Indirizzo : <%=u.getIndirizzo() %></p>
</div>
</div>
In line Nome, Cognome...
I don't understand why, I think the problem is the function u.getEmail but I think that it is right.
This is the error in the first case
GRAVE: Servlet.service() for servlet [jsp] in context with path [/Reservation] threw exception [An exception occurred processing [/modificaprofilo.jsp] at line [22]
19: </div>
20: <div id="modinfopersonali" class="div1 tabcontent">
21: <% User u=(User)session.getAttribute("User");%>
22: <p>Email: <input type="email" value="<%= u.getEmail()%>" disabled></p>
23: <p>Nome: <input type="text" oninput="this.className = ''" value="<%=u.getFirstname() %>" ></p>
24: <p>Cognome: <input type="text" oninput="this.className = ''" value="<%= u.getLastname() %>"></p>
25: <p>Luogo di Nascita: <input type="text" oninput="this.className = ''" value="<%= u.getLuogodinascita() %>"></p>
Stacktrace:] with root cause
java.lang.NullPointerException
at org.apache.jsp.modificaprofilo_jsp._jspService(modificaprofilo_jsp.java:143)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:444)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:386)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:330)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:494)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:651)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:412)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:754)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1385)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:748)