Я пытаюсь отправить partyList из AddPartyServlet.java в addParty.jsp. Всякий раз, когда открывается файл addParty.jsp, partyList не отображается и никакие записи не отображаются. Это просто показывает, что вы еще не добавили ни одной группы.. Однако все записи магическим образом появляются только после добавления группы с помощью кнопки «Добавить группу». Партии добавляются нормально, как это отражено в базе данных. Я хочу, чтобы все стороны отображались при каждом открытии страницы jsp и не отображали пустые данные, когда данные действительно присутствуют.PartyDaoImp.java:
package com.company.dao;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import com.company.dao.PartyDaoImp;
import com.company.util.DBUtil;
import jakarta.servlet.http.Part;
public class PartyDaoImp implements PartyDao {
@Override
public List
getAllParties() {
List partyList = new ArrayList();
String query = "SELECT * FROM party ORDER BY vote_count DESC";
try (
Connection connection = DBUtil.getConnection(); // works fine
PreparedStatement preparedStatement = connection.prepareStatement(query)) { //works fine
ResultSet resultSet = preparedStatement.executeQuery(); //works fine
while (resultSet.next()) {
int party_id = resultSet.getInt("party_id");
String party_name = resultSet.getString("party_name");
byte[] party_symbol = resultSet.getBytes("party_symbol");
int vote_count = resultSet.getInt("vote_count");
partyList.add(new Party(party_id, party_name, party_symbol, vote_count));
System.out.println("Fetched Party: id=" + party_id +
", name=" + party_name +
", vote_count=" + vote_count +
", party_symbol_length=" + (party_symbol != null ? party_symbol.length : 0));
}
System.out.println("Reached partyList logging section.");
} catch (Exception e) {
e.printStackTrace();
}
return partyList;
}
}
AddPartyServlet.java:
package com.company.servlet;
import jakarta.servlet.ServletException;
import jakarta.servlet.annotation.MultipartConfig;
import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.servlet.http.Part;
import java.io.IOException;
import java.util.List;
import com.company.dao.Party;
import com.company.dao.PartyDao;
import com.company.dao.PartyDaoImp;
@WebServlet("/AddPartyServlet")
@MultipartConfig
public class AddPartyServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
private static PartyDao pDao = new PartyDaoImp();
public AddPartyServlet() {
super();
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// ADD PARTY
int party_id = Integer.parseInt(request.getParameter("party_id"));
String party_name = request.getParameter("party_name");
Part partySymbolPart = request.getPart("party_symbol");
int rowsInserted = pDao.addPartyToDatabase(party_id, party_name, partySymbolPart);
if (rowsInserted > 0) {
List
partyList = pDao.getAllParties(); // On success, fetch the updated party list and forward
request.setAttribute("partyList", partyList);
request.setAttribute("error", "0");
request.getRequestDispatcher("addParty.jsp").forward(request, response);
} else {
request.setAttribute("error", "1");
response.sendRedirect("addParty.jsp"); // On failure, redirect with error message
}
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
List partyList = pDao.getAllParties();
request.setAttribute("partyList", partyList);
request.getRequestDispatcher("addParty.jsp").forward(request, response);
}
}
addParty.jsp:
Add Party
Hi !
Manage Political Parties
Party ID
Party Name
Party Symbol
Vote Count
Action
[img]data:image/png;base64,
Подробнее здесь: https://stackoverflow.com/questions/792 ... d-not-show
Как сделать так, чтобы данные отображались при каждом открытии страницы JSP и не отображали пустые данные, когда данные ⇐ JAVA
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение