org.apache.jasper.JasperException: Une exception s'est produite traitement page JSP /editinfo.jsp

J'ai ce code jsp où je suis en train de modifier les informations de l'utilisateur de ma page web. Je suis nouvelle dans les jsp de la programmation et je suis en train de vivre des erreurs. Voici mon code:

<%@page import="DatabaseTransactions.UserPhotosDataContext"%>
<%@page import="java.sql.ResultSet"%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%
if (session.getAttribute("id") == null) {
response.sendRedirect(request.getContextPath() + "/sign-in.jsp");
}
int userId = Integer.parseInt(session.getAttribute("id").toString());
ResultSet userInfo = UserPhotosDataContext.getUserProfileInfo(userId);
%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Edit Information</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<!-- Bootstrap -->
<link href="css/bootstrap.min.css" rel="stylesheet" media="screen">
<link href="styles.css" rel="stylesheet">
</head>
<body class="bodybg">
<jsp:include page="/navigation.jsp"/>
<% userInfo.next();%>
<div class="boxouter" style="margin-top:50px;">
<h3 class="muted">Edit Information</h3>
<!--- more code here---->
<br><br>
<form id="update-form" method="" action="">
<table style="margin:auto">
<tr>
<!--username-->
<td>
<label>Username <span id="uname-error" class="form-error"></span></label>
<input type="text" title="Use at least 6 characters"
name="username" id="uname"
value="<%=userInfo.getString("username")%>"
placeholder="Username" disabled="true">
</td>
<!--email-->
<td>
<label>Email <span id="email-error" class="form-error"></span></label>
<input type="text"
name="email" id="email"
value="<%=userInfo.getString("email")%>"
placeholder="Email" disabled="true">
</td>
</tr>
<!--- more code here---->
</table>
<center/>
<button class="btn btn-info" onclick="enablefields();" id="enablebtn" style="visibility:visible">Edit Information</button>
<a id="savelink" href="#" style="color:white;">
<button class="btn btn-info" id="savebtn" type="submit" style="visibility:hidden">Save</button>
</a>
<a href="#" style="color:white">
<button class="btn btn-info" id="deactivatebtn" style="visibility:visible">Deactivate Account</button>
</a>
</form>
</div>
</div>
<br><br>
<!--- more code here---->
<script type="text/javascript">
function setValues() {
if ("<%=userInfo.getString("gender")%>" == "Male")
$('select option:contains("Male")').prop('selected',true);
else if ("<%=userInfo.getString("gender")%>" == "Female")
$('select option:contains("Female")').prop('selected',true);
}
window.onload = setValues;
</script>
<script type="text/javascript" src="<%=request.getContextPath()%>/js/jquery.js"></script>
<script type="text/javascript" src="<%=request.getContextPath()%>/js/bootstrap.js"></script>
<script type="text/javascript" src="<%=request.getContextPath()%>/js/bootstrap.min.js"></script>
<script type="text/javascript" src="<%=request.getContextPath()%>/js/bootstrap-modal.js"></script>
<script type="text/javascript" src="<%=request.getContextPath()%>/js/bootstrap-popover.js"></script>
<script type="text/javascript" src="<%=request.getContextPath()%>/js/bootstrap-modalmanager.js"></script>
<script type="text/javascript" src="<%=request.getContextPath()%>/js/editinfo.js"></script>
<script type="text/javascript" src="<%=request.getContextPath()%>/js/holder.js"></script>
<script type="text/javascript" src="<%=request.getContextPath()%>/js/logout.js"></script>
<script type="text/javascript" src="<%=request.getContextPath()%>/js/bootstrap-dropdown.js"></script>
</body>
</html>

Quand je le lance, j'obtiens cette erreur:

org.apache.jasper.JasperException: Une exception s'est produite traitement
Page JSP /editinfo.jsp à la ligne 61

Ligne 61:

value="<%=userInfo.getString("email")%>"

- Je supprimer cette ligne et il fonctionne parfaitement bien (mais j'ai besoin de cela pour obtenir la valeur). Quand j'ai garder la ligne 61 et essayer d'enlever cette:

value="<%=userInfo.getString("nom")%>"

qui est à la ligne 52 de ma page, ça ne fonctionne toujours pas.

J'ai aussi remplacer la ligne 52 à la ligne 61 et ça fonctionne.

Je reçois aussi ces erreurs:

javax.servlet.ServletException: java.sql.SQLException: la Colonne "e-mail" est introuvable.
java.sql.SQLException: la Colonne "e-mail" est introuvable.

Mais je suis sûr à 100% que ma base de données d'une colonne email. Aussi, quand j'ai essayer ce pour les autres colonnes de ma base de données, il donne la même erreur. Il ne fonctionne que si elle est "nom d'utilisateur" de la colonne. S'il vous plaît aider moi. Comment puis-je résoudre ce problème?

Le problème, c'est concernant l'exception sql que vous avez obtenu. Essayez de tester cette ligne de code userInfo.getString("nom d'utilisateur") à l'extérieur de votre jsp, et de vérifier si les œuvres.
J'ai essayé d'afficher une alerte et il fonctionne.
que voulez-vous dire? Je l'ai ici:ResultSet userInfo = UserPhotosDataContext.getUserProfileInfo(userId);
Ça ne marche toujours pas. S'il vous plaît aider 🙁
value="<%=userInfo.getString("nom")%>" si cela fonctionne pour vous, alors vous devez vérifier votre courriel de type varchar ou un format de chaîne de caractères

OriginalL'auteur achll | 2013-08-08