Avatar billede dennish Nybegynder
19. november 2005 - 22:13 Der er 2 kommentarer og
1 løsning

Servlet der forwarder tilbage til JSP sider

Jeg har følgende kode:


// JSP udsnit - index.jsp

<html>
<body>

<%
   
    Boolean failed = (Boolean) request.getAttribute("loginFailed");
    if (failed != null)
    {
          if (failed.booleanValue() == true)
        {
%>
      <p>
      <strong>Could not log in!  Please try again.</strong>
      <p>
<%
      }
        }
%>

<body>
</html>

// servlet udsnit

public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException
    {
if ((loginName.equals("")) || (password.equals("")))
        {
        writeForm(request, response, true);
        }
private void writeForm(HttpServletRequest request, HttpServletResponse response, boolean showError) throws ServletException, IOException
    {
request.setAttribute("loginFailed", new Boolean(showError));
RequestDispatcher disp = this.getServletContext().getRequestDispatcher("/index.jsp");
}

Jeg får en java.lang.NullPointerException. Det jeg prøver er at hvis brugeren taster ingenting ind i password og brugernavn så forwarder min servlet tilbaget til JSP siden der tjekker om en boolean er sat hvis den er = true skulle JSP siden skrive
Could not log in!  Please try again.</strong>
Er der nogen der ved hvad jeg gør galt eller er der nogen der har et bedre eksemple på, hvorndan jeg forwarderer tilbaget til min index.jsp side ???
Avatar billede arne_v Ekspert
19. november 2005 - 22:18 #1
du kalder da ikke forward ??
Avatar billede dennish Nybegynder
19. november 2005 - 22:33 #2
Fik det ikke med i spørgsmålet. Men jeg har koden:
disp.forward(request, response); med i metoden writeform.

Får stadigvæk fejlen:

java.lang.NullPointerException
    at javax.servlet.GenericServlet.getServletContext(GenericServlet.java:159)
    at servlets.LoginServlet.writeForm(LoginServlet.java:94)
    at servlets.LoginServlet.doGet(LoginServlet.java:69)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:697)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
    at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
    at org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:39)
    at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:159)
    at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:59)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
    at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
    at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
    at java.lang.Thread.run(Thread.java:595)
Avatar billede dennish Nybegynder
20. november 2005 - 17:22 #3
fandt selv svaret: nedenstående kode virker:
request.getRequestDispatcher("index.jsp").forward(request,response);
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester