我試圖讓用戶在登錄頁面後登錄;我在使用jsp頁面(沒有servlet,它是一個大學項目),沒有DB的Apache Tomcat。保持用戶使用jsp登錄
我的問題是,登錄頁面後,用戶有正確的用戶名和密碼(我驗證這與<%System.out.println(usernameUser + " " + passwordUser); %>
在新的頁面)。 在這個新的頁面我有一個新的表格,用戶可以提交其他信息(obv不同於他的用戶名和密碼);這個提交是在這個頁面上,但是在這個用戶名和密碼變成「null」之後。
下面的代碼
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<jsp:useBean id="proprietarioBean" scope="session" class="gestioneLocazioni.ProprietarioBean" />
<jsp:setProperty name="proprietarioBean" property="*" />
<%System.out.println(request.getParameter("username") + " " + request.getParameter("password")); %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
[OTHER CODE]
<form action="ProprietarioLogin.jsp" name="myform" method="POST">
<table>
<tr>
<td>Nome locazione:</td>
<td><input name="nomeLoc" id="nomeLoc" type="text"></td>
</tr>
<tr>
<td>Nome proprietario della locazione:</td>
<td><input name="nomeProp" id="nomeProp" type="text"></td>
</tr>
<tr>
<td><input name="aggLoc" id="aggLoc" type="submit" value="Aggiunti locazione"> </td>
</tr>
<tr>
<td>
<%if(request.getParameter("aggLoc") != null){
String nomeLoc = request.getParameter("nomeLoc");
String nomeProp = request.getParameter("nomeProp");
if(proprietarioBean.validateInsert(nomeLoc, nomeProp)){
System.out.println("Locazione inserita: " + request.getParameter("nomeLoc"));
proprietarioBean.richiediInserimento(request.getParameter("nomeLoc"), request.getParameter("nomeProp"));>
<p><b>Locazione inserita:</b> <%=request.getParameter("nomeLoc")%> </p>
<% int k = proprietarioBean.dimList();
System.out.println("k vale: "+ k);
for(int i = 0; i <= k; i++){
%><p> <%=proprietarioBean.getLocazionePend(i) %></p><%
}
}
else{
System.out.println("Dati errati"); %>
<p><strong>DATI ERRATI</strong></p><%
}
}%>
</td>
</tr>
</table>
</form>
如果需要我可以追加登錄的代碼。 預先感謝您。
編輯 現在我能得到正確的用戶名和密碼這樣的:
String username = (String) session.getAttribute("username");
String password = (String) session.getAttribute("password");
System.out.println("Da session.getAttribute: " + username + " " + password +"\n");
現在我必須使用此信息爲JSP:的setProperty?
編輯2:解決!
感謝大家的回答。 我解決了這一點:
proprietarioBean.setUsername((String) session.getAttribute("username"));
proprietarioBean.setPassword((String) session.getAttribute("password"));
不完全是一個好的做法,但罰款的學校項目。 http://www.tutorialspoint.com/jsp/jsp_session_tracking.htm ...保存** session **中的內容。每一個命中jsp頁面檢查會話對象 –
是的,使用request.getSession()。setAttribute(「loginName」,loginName)或類似的。 –
謝謝。 問題是,他從「新字符串(」blabla「);」而不是來自「request.getParameter(..)」。 我可以嘗試,但我不知道如何適合我的代碼,你能建議我一些嗎? – bigghe