Es gibt ein Problem in meinem Projekt. Ich habe eine JSP-Seite und ein Java-Servlet. Das Servlet muss eine Liste mit Namen in der Sitzung mit session.setAttribute() speichern. Auf der JSP-Seite muss aus der Session mit session.getAttribute() gelesen werden und alle Namen aus der Liste mit einer for-Schleife ausgedruckt werden. Das aktuelle Problem ist, ich weiß nicht, wie man die Obect/ArrayList in ein normales String-Array umwandelt. Ich weiß, es gibt viel bessere Möglichkeiten, dies zu tun, aber ich muss es so machen.Cast ArrayList zu regulären String-Array
Hier ist mein Code
Servlets:
private ArrayList<String> userlist = new ArrayList<String>(Arrays.asList("bla1","bla2","bla3","bla4")); // unsynchronisiert
public void addName(String name){
userlist.add(name);
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
addName(request.getParameter("username"));
System.out.println(userlist);
HttpSession session = request.getSession();
session.setAttribute("userlist", userlist);
}
JSP:
String[] names = (String[]) session.getAttribute("userlist");
System.out.println(names);
Sie können eine ArrayList nicht in einen String [] umwandeln. Warum wirfst du es nicht auf ArrayList? Wenn Sie einen String [] benötigen, können Sie ihn über list.toArray (new String [list.size()]) analysieren. –
okay, ich könnte das lösen, aber es sagt mir immer noch "null". Ich verstehe nicht warum? – WeSt