abby Geschrieben 7. Oktober 2015 Geschrieben 7. Oktober 2015 (bearbeitet) Ich versuche eine im Servlet erstellte Arraylist auf einer JSP Seite auszugeben.Als langen String hab ich das schon geschafft. Das ist aber natürlich nicht gerade praktikabel. Vielleicht hat irgendjemand eine Idee, wie ich das ganze splitten kann?Bin generell mit diesen "Java Code ind JSP schreiben" sehr unsicher.Anm: JSTL funktioniert bei mir aus unerfindlichen Gründen nicht. Also muss ich das mit skriplets durchziehen. Für alternativen bin ich aber gerne dankbar JSP File: <body> <h2>Result Page test</h2> Reisenummer: <%=request.getParameter("Reisenummer") %><br> Vorgangsnummer: <%=request.getAttribute("Vorgangsnummer") %> <br> <table> <tr> <% ArrayList<String> result = (ArrayList<String>) request.getAttribute("Ergebnis"); for (String res : result) { %> <td><%=res%>,</td> <%}%> </tr> </table> </body> Auszug aus Servlet, Arraylist Erstellung: @Override public ArrayList getErgebnisse(String value) { String Reisenummer = "", Ort = "", Dateiname = "", Firma = "", Vorgangsnummer = "", Druckdatum = ""; logger.debug("executing with parameter",value); try { Class.forName(db_driver); con = DriverManager.getConnection(db_string, db_user, db_password); stmt = con.prepareStatement(loadQuery("searchbyVN")); stmt.setString(incVar(), value); resetVar(); rs = stmt.executeQuery(); logger.debug("executing Query"); while (rs.next()) { anzahlErgebnisse++; if (rs.getString("Reisenummer") != null) { Reisenummer = rs.getString("Reisenummer"); Ergebnis.add(Reisenummer); } if (rs.getString("Ort") != null) { Ort = rs.getString("Ort"); Ergebnis.add(Ort); } if (rs.getString("Dateiname") != null) { Dateiname = rs.getString("Dateiname"); Ergebnis.add(Dateiname); } if (rs.getString("Firma") != null) { Firma = rs.getString("Firma"); Ergebnis.add(Firma); } if (rs.getString("Vorgangsnummer") != null) { Vorgangsnummer = rs.getString("Vorgangsnummer"); Ergebnis.add(Vorgangsnummer); } if (rs.getString("Druckdatum") != null) { Druckdatum = rs.getString("Druckdatum"); Ergebnis.add(Druckdatum); } return (ArrayList) Ergebnis; } Auszug aus der doPost Methode: protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String Reisenummer, Vorgangsnummer; JDBC abfragen = new JDBC(); Reisenummer = request.getParameter("Reisenummer"); if (Reisenummer != null) { Vorgangsnummer = abfragen .getVorgangsnummerbyReisenummer(Reisenummer); } else { Vorgangsnummer = request.getParameter("Vorgangsnummer"); } ArrayList<Ergebnis> al = new ArrayList<Ergebnis>(); al = abfragen.getErgebnisse(Vorgangsnummer); request.setAttribute("Reisenummer", Reisenummer); request.setAttribute("Vorgangsnummer", Vorgangsnummer); request.setAttribute("Ergebnis", al); request.getRequestDispatcher("/WEB-INF/result.jsp").forward(request, response); } Bearbeitet 7. Oktober 2015 von abby Zitieren
abby Geschrieben 7. Oktober 2015 Autor Geschrieben 7. Oktober 2015 Edit::!!! hat sich erledigt, habs doch mit jtsl geschafft. Nun möchte ich einen Download link generieren auf meiner JSP Seite. Google ist da ehrlich gesagt keine große Hilfe.Der Link soll generiert werden aus dem Ort der Datei und dem Name. Diese bekomme ich durch jtsl:<c:forEach items="${Ergebnis}" var="result"> Ort = <c:out value="${result.ort}"/> <br> Dateiname = <c:out value="${result.dateiname}"/> <br> </c:forEach>wie setze ich dass zusammen, damit das einen Link auf die Datei ergibt?Einfach hintereinander hängen geht ja nicht Zitieren
Dragon8 Geschrieben 8. Oktober 2015 Geschrieben 8. Oktober 2015 Was heißt denn "Einfach hintereinander hängen geht ja nicht"? Ich kann es zwar nicht testen, aber folgendes sollte doch eigentlich funktionieren: <c:forEach items="${Ergebnis}" var="result"> Dateilink = <c:out value="${result.ort}/${result.dateiname}"/> <br> </c:forEach> Zitieren
abby Geschrieben 8. Oktober 2015 Autor Geschrieben 8. Oktober 2015 hm...als ich das hintereinander geschrieben hab war der Pfad leer. Das lag aber daran, dass ich bei dem jtsl Ausdruck Mist gebaut hab.So gehts, vielen Dank Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.