2010-12-01 5 views
0

Possible en double:
Calling a servlet from JSP fileComment appeler une servlet à partir de la page JSP?

J'ai utilisé le code suivant pour appeler un conn.java (servlet) de index.jsp. Ça marche.

<%@page import= "java.util.ArrayList"%> 
<%@page contentType="text/html" pageEncoding="UTF-8"%> 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
    "http://www.w3.org/TR/html4/loose.dtd"> 
<%@ page import= "aa.conn" %> 
<jsp:useBean id= "conne" class= "conn" scope= "session"/> 
<jsp:setProperty name= "conne" property= "*"/> 
<html> 
    <head> 
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
     <title>JSP</title> 

    </head> 
    <body> 
     <link rel="stylesheet" href="rowcolor.css" type="text/css"> 
     <% 

     conne.con(request, response); 
    ArrayList newlist=null; 
    newlist=(ArrayList)request.getAttribute("data1"); 
    int noofrows=(Integer)newlist.get(0); 
    int q = noofrows/5; 
    if(noofrows%5!=0) 
     q+=1; 
    out.println("Pages --->>>"); 
     for (int t = 1; t <= q; t++) { 
      out.println("<a href=index.jsp?id=" + t + " name=" + t + "id=" + t + ">"); 
      out.println(" " + t); 
      out.println("</a>"); 
     } 
    conne.disp(request, response); 
    conne.dispgraphtab(request, response); 
     %> 




    </body> 
</html> 

Mais, ce code suivant ne fonctionne pas. Je veux appeler NewServlet de graphcon.jsp.

<%@page contentType="text/html" pageEncoding="UTF-8"%> 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
    "http://www.w3.org/TR/html4/loose.dtd"> 
<%@ page import= "aa.NewServlet" %> 
<jsp:useBean id= "co" class= "NewServlet" scope= "session"/> 
<jsp:setProperty name= "co" property= "*"/> 
<html> 
    <head> 
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
     <title>JSP Page</title> 
    </head> 
    <body> 

    </body> 
</html> 

Quel est le problème avec ce code? L'erreur est:

exception 
javax.servlet.ServletException: java.lang.InstantiationException: NewServlet 
root cause 
java.lang.InstantiationException: NewServlet 
+0

page JSP faree

+0

en ce moment - les exemples de code que vous avez utilisé et l'énoncé du problème semble être en désaccord complet Pouvez-vous passer un peu de temps pour mettre en forme. votre question correctement, et le rendre un peu plus clair à comprendre – anirvan

+0

Il suffit de cliquer sur le lien "Modifier" pour apporter les changements, ajouter vos changements dans les commentaires ajoute au désordre – anirvan

Répondre

-1

Renseignez votre question. Décrivez d'abord ce que vous voulez faire, puis décrivez les étapes que vous avez suivies pour accomplir les choses que vous voulez faire et ensuite les problèmes qui se produisent avec vos pas. Je suppose que ce que vous voulez est de rediriger votre demande à une servlet. Pour ce faire, utilisez la fonction sendredirect.

+2

Je pense qu'il est plus approprié de mettre cela comme un commentaire et non comme une 'réponse' – anirvan

+0

J'ai déjà appelé conn.java à partir index.jsp en utilisant la balise usebean. – faree

+0

mais le même code pour appeler NewSrvlet.java à partir de graphcon.jsp. . mais ça ne marche pas. (Conn.java et NewServlet.java tous les deux dans le même paquet.index.jsp et graphcon.jsp tous les deux dans le même paquet.) – faree

-1

Si vous voulez appeler Servlet à partir du fichier JSP, puis procédez comme suit:

Dans JSP Fichier

<html> 
    <head></head> 
    <body> 
     <form action="/dataBase/DBInit" method="post"> // here call Servlet 
      Design 
     </form> 
     <%  Logic   %> 
    </body> 
</html> 

Dans Web.xml

<servlet> 
    <servlet-name>dbname</servlet-name> 
    <servlet-class>com.db.DBInit</servlet-class>  // Servlet Path Define Here 
</servlet> 
<servlet-mapping> 
    <servlet-name>dbname</servlet-name> 
    <url-pattern>/DBInit</url-pattern> 
</servlet-mapping> 
Questions connexes