ERLEDIGT
JA
JA
ANTWORTEN
11
11
ZUGRIFFE
704
704
EMPFEHLEN
-
05.11.11 15:42 #1
Hallo,
ich hoffe es kann mir hier jemand helfen. Mein Problem:
Ich habe in JSF 2.0 ein Datatable. Diese habe ich mit einer Bean verbunden. Er gibt mir auch das aus was ich will, nur er gibt mir den Inhalt zwei mal aus, d.h.
Was muss ich machen, damit das nur einmal auftaucht, also so:Allgemein
Support
...
Allgemein
Support
...
Falls Code gewünscht ist, bitte bescheid geben! DankeAllgemein
Support
...
PS: er gibt mir aus dem array (Inhalte) die richtige Anzahl der Zeilen aus, in meinem Fall 9, nur anzeigen tut er 18!
MfG
Masterpurzel
-
05.11.11 15:56 #2
Hey,
wenn der Inhalt aus dem Array stimmt, dann wirst du die Ausgabe wahrscheinlich zwei mal machen. Zeig mal den Code, wo du den Inhalt in dem Array übergeben bekommst, bis zu der zweiten Ausgabe.
Gruß
FabioBitte die Code-Tags verwenden. Bei Java-Code: [java]...[/java]
Tutorials:
Automatisches erzeugen eines Inhaltsverzeichnisses (Javascript)
JAnimationPanel - Animationen für Swing/AWT
SWTRatingBar (Bewertungs-Composite) selbst programmieren
____________________________________________________________________________
Über eine Bewertung (Stern links unter dem Beitrag) oder ein Danke freue ich mich sehr.
-
05.11.11 16:03 #3
Hier die Bean:
Code java:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116
int rows; String timestamp; String[] timestamp_ = new String[6]; String datum; String zeit; ResultSet rs; public List getForum_ansicht() { int i = 0; try{ Class.forName(db_driver); try{ Connection db = DriverManager.getConnection(db_url, db_username, db_password); if(req.getParameter("forumID") == null && req.getParameter("threadID") == null) { String rowStatement = "SELECT id FROM forum_foren"; PreparedStatement row_prepStmt = db.prepareStatement(rowStatement); ResultSet row_rs = row_prepStmt.executeQuery(); row_rs.next(); row_rs.last(); rows = row_rs.getRow(); String selectStatement = "SELECT id, titel FROM forum_foren"; PreparedStatement select_prepStmt = db.prepareStatement(selectStatement); rs = select_prepStmt.executeQuery(); while(rs.next()) { array.add(i, new forum_ansicht_spalten(rs.getInt("id"), rs.getString("titel"))); i++; } } else if(req.getParameter("forumID") != null && Integer.parseInt(req.getParameter("forumID")) > 0 && req.getParameter("threadID") == null) { String rowStatement = "SELECT id, forenid FROM forum_threads WHERE forenid = ?"; PreparedStatement row_prepStmt = db.prepareStatement(rowStatement); row_prepStmt.setString(1, req.getParameter("forumID")); ResultSet row_rs = row_prepStmt.executeQuery(); row_rs.next(); row_rs.last(); rows = row_rs.getRow(); String selectStatement = "SELECT id, titel, forenid FROM forum_threads WHERE forenid = ? ORDER BY timestamp_edit DESC"; PreparedStatement select_prepStmt = db.prepareStatement(selectStatement); select_prepStmt.setString(1, req.getParameter("forumID")); rs = select_prepStmt.executeQuery(); while(rs.next()) { array.add(i, new forum_ansicht_spalten(rs.getInt("id"), rs.getString("titel"), rs.getInt("forenid"))); i++; } } else if(req.getParameter("forumID") != null && Integer.parseInt(req.getParameter("forumID")) > 0 && req.getParameter("threadID") != null && Integer.parseInt(req.getParameter("threadID")) > 0) { String rowStatement = "SELECT id, forenid, threadid FROM forum_messages WHERE forenid = ? AND threadid = ?"; PreparedStatement row_prepStmt = db.prepareStatement(rowStatement); row_prepStmt.setString(1, req.getParameter("forumID")); row_prepStmt.setString(2, req.getParameter("threadID")); ResultSet row_rs = row_prepStmt.executeQuery(); row_rs.next(); row_rs.last(); rows = row_rs.getRow(); String selectStatement = "SELECT forum_messages.id AS forum_messages_id, forum_messages.titel, forum_messages.forenid, forum_messages.threadid, forum_messages.message, forum_messages.userid, forum_messages.userid_edit, forum_messages.timestamp_create, forum_messages.timestamp_edit, users.id AS forum_users_id, users.username, users.profil_image FROM forum_messages, users WHERE forum_messages.forenid = ? AND forum_messages.threadid = ? AND forum_messages.userid = users.id ORDER BY forum_messages.timestamp_create ASC"; PreparedStatement select_prepStmt = db.prepareStatement(selectStatement); select_prepStmt.setString(1, req.getParameter("forumID")); select_prepStmt.setString(2, req.getParameter("threadID")); rs = select_prepStmt.executeQuery(); while(rs.next()) { timestamp = new Date(rs.getLong("timestamp_create")*1000).toString(); timestamp_ = timestamp.split(" "); if(timestamp_[0].equals("Sun")) { timestamp_[0] = "Sonntag"; } else if(timestamp_[0].equals("Mon")) { timestamp_[0] = "Montag"; } else if(timestamp_[0].equals("Thu")) { timestamp_[0] = "Dienstag"; } else if(timestamp_[0].equals("Wed")) { timestamp_[0] = "Mittwoch"; } else if(timestamp_[0].equals("Thur")) { timestamp_[0] = "Donnerstag"; } else if (timestamp_[0].equals("Fri")) { timestamp_[0] = "Freitag"; } else if(timestamp_[0].equals("Sat")) { timestamp_[0] = "Samstag"; } if(timestamp_[1].equals("Jan")) { timestamp_[1] = "01"; } else if(timestamp_[1].equals("Feb")) { timestamp_[1] = "02"; } else if(timestamp_[1].equals("Mar")) { timestamp_[1] = "03"; } else if(timestamp_[1].equals("Apr")) { timestamp_[1] = "04"; } else if(timestamp_[1].equals("May")) { timestamp_[1] = "05"; } else if (timestamp_[1].equals("Jun")) { timestamp_[1] = "06"; } else if(timestamp_[1].equals("July")) { timestamp_[1] = "07"; } else if(timestamp_[1].equals("Aug")) { timestamp_[1] = "08"; } else if(timestamp_[1].equals("Sept")) { timestamp_[1] = "09"; } else if(timestamp_[1].equals("Oct")) { timestamp_[1] = "10"; } else if(timestamp_[1].equals("Nov")) { timestamp_[1] = "11"; } else if(timestamp_[1].equals("Dec")) { timestamp_[1] = "12"; } datum = timestamp_[0] + ", " + timestamp_[2] + "." + timestamp_[1] + "." + timestamp_[5]; zeit = timestamp_[3]; array.add(i, new forum_ansicht_spalten(rs.getInt("forum_messages_id"), datum, zeit, rs.getString("forum_messages.titel"), rs.getString("forum_messages.message"), rs.getString("users.username"), rs.getString("users.profil_image"))); i++; } } rs.close(); db.close(); } catch(Exception db_error) { System.out.println(db_error); } } catch(Exception db_driver_error) { System.out.println(db_driver_error); } return array; }
und hier die Datatable:
Ich hoffe es war das, was du gemeint hast.HTML-Code:<h:dataTable id="forum" value="#{Forum__frontend.forum_ansicht}" var="item" bgcolor="#F1F1F1" border="10" cellpadding="5" cellspacing="3" first="#{Forum__frontend.first}" rows="5" width="100%" dir="LTR" frame="hsides" rules="all" summary="This is a JSF code to create dataTable.">
MfG
Masterpurzel
-
05.11.11 16:06 #4
In welcher If-Abfrage tritt die doppelte Ausgabe auf? In allen dreien oder nur in einer bestimmten?
Bitte die Code-Tags verwenden. Bei Java-Code: [java]...[/java]
Tutorials:
Automatisches erzeugen eines Inhaltsverzeichnisses (Javascript)
JAnimationPanel - Animationen für Swing/AWT
SWTRatingBar (Bewertungs-Composite) selbst programmieren
____________________________________________________________________________
Über eine Bewertung (Stern links unter dem Beitrag) oder ein Danke freue ich mich sehr.
-
05.11.11 16:11 #5
-
05.11.11 16:17 #6
Naja... ich würde mal sagen, dass das daran liegt, dass du in allen dreien If-Bedingungen jeweils 2 mal einen DB-Statement ausführst.

1. Hier fragst du nur die ID ab...
2. und hier fragst du die ID nochmal mit dem Titel ab...Code java:1 2 3
String rowStatement = "SELECT id FROM forum_foren"; PreparedStatement row_prepStmt = db.prepareStatement(rowStatement); ResultSet row_rs = row_prepStmt.executeQuery();
dann würde es doch eine Abfrage auch tun oder nicht?Code java:1 2 3
String selectStatement = "SELECT id, titel FROM forum_foren"; PreparedStatement select_prepStmt = db.prepareStatement(selectStatement); rs = select_prepStmt.executeQuery();
Bitte die Code-Tags verwenden. Bei Java-Code: [java]...[/java]
Tutorials:
Automatisches erzeugen eines Inhaltsverzeichnisses (Javascript)
JAnimationPanel - Animationen für Swing/AWT
SWTRatingBar (Bewertungs-Composite) selbst programmieren
____________________________________________________________________________
Über eine Bewertung (Stern links unter dem Beitrag) oder ein Danke freue ich mich sehr.
-
05.11.11 16:20 #7
Geändert von Masterpurzel (05.11.11 um 16:24 Uhr)
-
05.11.11 16:47 #8
Ok, das dachte ich mir schon fast. Aber ich würde dir drotzdem empfehlen die 2 Statements zu einem zusammen zu fassen, aufgrund von Performanceeinsparungen.

Soweit ich das jetzt berurteilen kann, liegt der Fehler nicht in diesem Code-Abschnitt. Kannst du noch den Code posten, in dem die Methode 'getForum_ansicht' aufgerufen wird?Bitte die Code-Tags verwenden. Bei Java-Code: [java]...[/java]
Tutorials:
Automatisches erzeugen eines Inhaltsverzeichnisses (Javascript)
JAnimationPanel - Animationen für Swing/AWT
SWTRatingBar (Bewertungs-Composite) selbst programmieren
____________________________________________________________________________
Über eine Bewertung (Stern links unter dem Beitrag) oder ein Danke freue ich mich sehr.
-
05.11.11 17:04 #9
Das wäre diese hier in der jsp:
in java wird sie nirgends mehr aufgerufen, nur in der jsp bzw. in der faces-config.xml definiert:HTML-Code:<h:dataTable id="forum" value="#{Forum__frontend.forum_ansicht}" var="item" bgcolor="#F1F1F1" border="10" cellpadding="5" cellspacing="3" first="#{Forum__frontend.first}" rows="5" width="100%" dir="LTR" frame="hsides" rules="all" summary="This is a JSF code to create dataTable."> ... </h:dataTable>
Code :1 2 3 4 5
<managed-bean> <managed-bean-name>Forum__frontend</managed-bean-name> <managed-bean-class>de.pcpowerplay.frontend.forum.forum_ansicht</managed-bean-class> <managed-bean-scope>request</managed-bean-scope> </managed-bean>
-
05.11.11 17:20 #10
Mh... der Fehler muss eigentlich irgendwo im JSP liegen, wobei ich momentan keinen finden kann. Kannst du noch ein wenig mehr von der JSP preis geben? Weil an dem kleinen Schnipsel liegt das Problem meiner Ansicht nach nicht.
Bitte die Code-Tags verwenden. Bei Java-Code: [java]...[/java]
Tutorials:
Automatisches erzeugen eines Inhaltsverzeichnisses (Javascript)
JAnimationPanel - Animationen für Swing/AWT
SWTRatingBar (Bewertungs-Composite) selbst programmieren
____________________________________________________________________________
Über eine Bewertung (Stern links unter dem Beitrag) oder ein Danke freue ich mich sehr.
-
05.11.11 17:28 #11
Ok, hier das ganze datatable:
Code java:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86
<h:dataTable id="forum" value="#{Forum__frontend.forum_ansicht}" var="item" bgcolor="#F1F1F1" border="10" cellpadding="5" cellspacing="3" first="#{Forum__frontend.first}" rows="5" width="100%" dir="LTR" frame="hsides" rules="all" summary="This is a JSF code to create dataTable."> <f:facet name="header"> <% if(request.getParameter("forumID") == null && request.getParameter("threadID") == null) { %><h:outputText value="#{Forum__frontend.rows} Foren"></h:outputText><% } else if(request.getParameter("forumID") != null && request.getParameter("threadID") == null) { %><h:outputText value="#{Forum__frontend.rows} Themen"></h:outputText><% } else if(request.getParameter("forumID") != null && request.getParameter("threadID") != null) { %><h:outputText value="#{Forum__frontend.rows} Beiträge"></h:outputText><% } %> </f:facet> <h:column> <f:facet name="header"> <h:outputText value=""></h:outputText> </f:facet> <% if(request.getParameter("forumID") == null && request.getParameter("threadID") == null) { %><h:outputText value=""></h:outputText><% } else if(request.getParameter("forumID") != null && request.getParameter("threadID") == null) { %><h:outputText value=""></h:outputText><% } else if(request.getParameter("forumID") != null && request.getParameter("threadID") != null) { %><h:outputText value="#{item.username}"></h:outputText><br /><h:graphicImage alt="Profil-Image" url="./resources/images/user/#{item.profil_image}" width="70" height="60" rendered="#{item.profil_image != null}"></h:graphicImage><h:graphicImage alt="Profil-Image" url="./resources/images/user/default.jpg" rendered="#{item.profil_image eq null}"></h:graphicImage><% } %> </h:column> <h:column> <f:facet name="header"> <h:outputText value="Titel"></h:outputText> </f:facet> <% if(request.getParameter("forumID") == null && request.getParameter("threadID") == null) { %><h:form id="commandLinkForum"><h:commandLink value="#{item.titel}" action="#{Forum__frontend.goToForum}"><f:param name="forumid" value="#{item.id}" /></h:commandLink></h:form><% } else if(request.getParameter("forumID") != null && request.getParameter("threadID") == null) { %><h:form id="commandLinkThread"><h:commandLink value="#{item.titel}" action="#{Forum__frontend.goToThread}"><f:param name="forumid" value="#{item.forumid}" /><f:param name="threadid" value="#{item.id}" /></h:commandLink></h:form><% } else if(request.getParameter("forumID") != null && request.getParameter("threadID") != null) { %> <h2><h:outputText value="#{item.datum}"></h:outputText>, <h:outputText value="#{item.zeit}"></h:outputText> | <h:outputText value="#{item.titel}"></h:outputText></h2> <h:outputText value="#{item.message}" escape="false"></h:outputText> <br /> <h:outputLink value="forum.faces?edit=#{item.id}" rendered="#{item.username eq Login_Logout.username}"><h:outputText value="Bearbeiten"></h:outputText></h:outputLink> <% } %> </h:column> <% if(request.getParameter("forumID") == null && request.getParameter("threadID") == null) { %> <h:column> <f:facet name="header"> <h:outputText value="Anzahl Themen" /> </f:facet> <h:outputText value="1"></h:outputText> </h:column> <h:column> <f:facet name="header"> <h:outputText value="Moderatoren"></h:outputText> </f:facet> <h:outputText value="admin"></h:outputText> </h:column> <% } else if(request.getParameter("forumID") != null && request.getParameter("threadID") == null) { %> <h:column> <f:facet name="header"> <h:outputText value="Anzahl Beiträge" escape="false"></h:outputText> </f:facet> <h:outputText value="1"></h:outputText> </h:column> <% } else if(request.getParameter("forumID") != null && request.getParameter("threadID") != null) { %> <% } %> <f:facet name="footer"> <h:panelGroup> <h:form> <h:commandButton value="Zurück" action="#{Forum__frontend.zurueck}" rendered="#{pricelistBean.zurueckVisible}" /> <h:commandButton value="Weiter" action="#{Forum__frontend.weiter}" rendered="#{pricelistBean.weiterVisible}" /> </h:form> Test Anzahl Reihen: <h:outputText value="#{Forum__frontend.test}"></h:outputText> </h:panelGroup> </f:facet> </h:dataTable>
-
06.11.11 17:10 #12
Hallo,
mir wurde vor ca. einer Stunde ein Tipp gegeben, das mein Array falsch aufgebaut ist!
Damit die anderen, die an der gleichen Stelle hängen auch die Lösung haben, werde ich den Quelltext hier mal posten:
ForumBean: (wichtig: Zeile 85, 87, 104, 196)
Code java:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292
package de.pcpowerplay.frontend.forum; import java.io.IOException; import java.io.Serializable; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.Map; import java.util.logging.Level; import java.util.logging.Logger; import javax.faces.context.FacesContext; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; /** * * @author purzel */ public class forum implements Serializable { /** * Datenbank */ final String db_driver = "com.mysql.jdbc.Driver"; final String db_url = "jdbc:mysql://000.000.000.000:3306/pcpowerplay"; final String db_username = "username"; final String db_password = "password"; int first; int rows; String timestamp; String[] timestamp_ = new String[6]; String datum; String zeit; ResultSet rs; private List array = new ArrayList(); HttpServletRequest req = (HttpServletRequest)FacesContext.getCurrentInstance().getExternalContext().getRequest(); HttpServletResponse res = (HttpServletResponse)FacesContext.getCurrentInstance().getExternalContext().getResponse(); public int count() { try{ Class.forName(db_driver); try{ Connection db = DriverManager.getConnection(db_url, db_username, db_password); if(req.getParameter("forumID") == null && req.getParameter("threadID") == null) { String rowStatement = "SELECT id FROM forum_foren"; PreparedStatement row_prepStmt = db.prepareStatement(rowStatement); ResultSet row_rs = row_prepStmt.executeQuery(); row_rs.next(); row_rs.last(); rows = row_rs.getRow(); } else if(req.getParameter("forumID") != null && Integer.parseInt(req.getParameter("forumID")) > 0 && req.getParameter("threadID") == null) { String rowStatement = "SELECT id, forenid FROM forum_threads WHERE forenid = ?"; PreparedStatement row_prepStmt = db.prepareStatement(rowStatement); row_prepStmt.setString(1, req.getParameter("forumID")); ResultSet row_rs = row_prepStmt.executeQuery(); row_rs.next(); row_rs.last(); rows = row_rs.getRow(); } else if(req.getParameter("forumID") != null && Integer.parseInt(req.getParameter("forumID")) > 0 && req.getParameter("threadID") != null && Integer.parseInt(req.getParameter("threadID")) > 0) { String rowStatement = "SELECT id, forenid, threadid FROM forum_messages WHERE forenid = ? AND threadid = ?"; PreparedStatement row_prepStmt = db.prepareStatement(rowStatement); row_prepStmt.setString(1, req.getParameter("forumID")); row_prepStmt.setString(2, req.getParameter("threadID")); ResultSet row_rs = row_prepStmt.executeQuery(); row_rs.next(); row_rs.last(); rows = row_rs.getRow(); } rs.close(); db.close(); } catch(Exception db_error) { System.out.println(db_error); } } catch(Exception db_driver_error) { System.out.println(db_driver_error); } return rows; } private forum_spalten[] forum = new forum_spalten[count()]; public forum_spalten[] getForum() { int i = 0; try{ Class.forName(db_driver); try{ Connection db = DriverManager.getConnection(db_url, db_username, db_password); if(req.getParameter("forumID") == null && req.getParameter("threadID") == null) { /*String rowStatement = "SELECT id FROM forum_foren"; PreparedStatement row_prepStmt = db.prepareStatement(rowStatement); ResultSet row_rs = row_prepStmt.executeQuery(); row_rs.next(); row_rs.last(); rows = row_rs.getRow();*/ String selectStatement = "SELECT id, titel FROM forum_foren"; PreparedStatement select_prepStmt = db.prepareStatement(selectStatement); rs = select_prepStmt.executeQuery(); while(rs.next()) { forum[i] = new forum_spalten(rs.getInt("id"), rs.getString("titel")); array.add(i, new forum_spalten(rs.getInt("id"), rs.getString("titel"))); i++; } } else if(req.getParameter("forumID") != null && Integer.parseInt(req.getParameter("forumID")) > 0 && req.getParameter("threadID") == null) { /*String rowStatement = "SELECT id, forenid FROM forum_threads WHERE forenid = ?"; PreparedStatement row_prepStmt = db.prepareStatement(rowStatement); row_prepStmt.setString(1, req.getParameter("forumID")); ResultSet row_rs = row_prepStmt.executeQuery(); row_rs.next(); row_rs.last(); rows = row_rs.getRow();*/ String selectStatement = "SELECT id, titel, forenid FROM forum_threads WHERE forenid = ? ORDER BY timestamp_edit DESC"; PreparedStatement select_prepStmt = db.prepareStatement(selectStatement); select_prepStmt.setString(1, req.getParameter("forumID")); rs = select_prepStmt.executeQuery(); while(rs.next()) { array.add(i, new forum_spalten(rs.getInt("id"), rs.getString("titel"), rs.getInt("forenid"))); i++; } } else if(req.getParameter("forumID") != null && Integer.parseInt(req.getParameter("forumID")) > 0 && req.getParameter("threadID") != null && Integer.parseInt(req.getParameter("threadID")) > 0) { /*String rowStatement = "SELECT id, forenid, threadid FROM forum_messages WHERE forenid = ? AND threadid = ?"; PreparedStatement row_prepStmt = db.prepareStatement(rowStatement); row_prepStmt.setString(1, req.getParameter("forumID")); row_prepStmt.setString(2, req.getParameter("threadID")); ResultSet row_rs = row_prepStmt.executeQuery(); row_rs.next(); row_rs.last(); rows = row_rs.getRow();*/ String selectStatement = "SELECT forum_messages.id AS forum_messages_id, forum_messages.titel, forum_messages.forenid, forum_messages.threadid, forum_messages.message, forum_messages.userid, forum_messages.userid_edit, forum_messages.timestamp_create, forum_messages.timestamp_edit, users.id AS forum_users_id, users.username, users.profil_image FROM forum_messages, users WHERE forum_messages.forenid = ? AND forum_messages.threadid = ? AND forum_messages.userid = users.id ORDER BY forum_messages.timestamp_create ASC"; PreparedStatement select_prepStmt = db.prepareStatement(selectStatement); select_prepStmt.setString(1, req.getParameter("forumID")); select_prepStmt.setString(2, req.getParameter("threadID")); rs = select_prepStmt.executeQuery(); while(rs.next()) { timestamp = new Date(rs.getLong("timestamp_create")*1000).toString(); timestamp_ = timestamp.split(" "); if(timestamp_[0].equals("Sun")) { timestamp_[0] = "Sonntag"; } else if(timestamp_[0].equals("Mon")) { timestamp_[0] = "Montag"; } else if(timestamp_[0].equals("Thu")) { timestamp_[0] = "Dienstag"; } else if(timestamp_[0].equals("Wed")) { timestamp_[0] = "Mittwoch"; } else if(timestamp_[0].equals("Thur")) { timestamp_[0] = "Donnerstag"; } else if (timestamp_[0].equals("Fri")) { timestamp_[0] = "Freitag"; } else if(timestamp_[0].equals("Sat")) { timestamp_[0] = "Samstag"; } if(timestamp_[1].equals("Jan")) { timestamp_[1] = "01"; } else if(timestamp_[1].equals("Feb")) { timestamp_[1] = "02"; } else if(timestamp_[1].equals("Mar")) { timestamp_[1] = "03"; } else if(timestamp_[1].equals("Apr")) { timestamp_[1] = "04"; } else if(timestamp_[1].equals("May")) { timestamp_[1] = "05"; } else if (timestamp_[1].equals("Jun")) { timestamp_[1] = "06"; } else if(timestamp_[1].equals("July")) { timestamp_[1] = "07"; } else if(timestamp_[1].equals("Aug")) { timestamp_[1] = "08"; } else if(timestamp_[1].equals("Sept")) { timestamp_[1] = "09"; } else if(timestamp_[1].equals("Oct")) { timestamp_[1] = "10"; } else if(timestamp_[1].equals("Nov")) { timestamp_[1] = "11"; } else if(timestamp_[1].equals("Dec")) { timestamp_[1] = "12"; } datum = timestamp_[0] + ", " + timestamp_[2] + "." + timestamp_[1] + "." + timestamp_[5]; zeit = timestamp_[3]; array.add(i, new forum_spalten(rs.getInt("forum_messages_id"), datum, zeit, rs.getString("forum_messages.titel"), rs.getString("forum_messages.message"), rs.getString("users.username"), rs.getString("users.profil_image"))); i++; } } rs.close(); db.close(); } catch(Exception db_error) { System.out.println(db_error); } } catch(Exception db_driver_error) { System.out.println(db_driver_error); } //return array; return forum; } public void goToForum() { FacesContext context = FacesContext.getCurrentInstance(); Map requestMap = context.getExternalContext().getRequestParameterMap(); String s_forumid = (String)requestMap.get("forumid"); int forumid = Integer.parseInt(s_forumid); try { FacesContext.getCurrentInstance().getExternalContext().redirect("forum.faces?forumID=" + forumid); } catch (IOException ex) { Logger.getLogger(forum.class.getName()).log(Level.SEVERE, null, ex); } } public void goToThread() { FacesContext context = FacesContext.getCurrentInstance(); Map requestMap = context.getExternalContext().getRequestParameterMap(); String s_forumid = (String)requestMap.get("forumid"); String s_threadid = (String)requestMap.get("threadid"); int forumid = Integer.parseInt(s_forumid); int threadid = Integer.parseInt(s_threadid); try { FacesContext.getCurrentInstance().getExternalContext().redirect("forum.faces?forumID=" + forumid + "&threadID=" + threadid); } catch (IOException ex) { Logger.getLogger(forum.class.getName()).log(Level.SEVERE, null, ex); } } public String weiter() { first = first + 9; if(first > array.size()) { first = array.size() - 9; } return null; } public String zurueck() { first = first - 9; if(first < 0) { first = 0; } return null; } public boolean weiterVisible() { if(first > array.size()) { return false; } else { return true; } } public boolean zurueckVisible() { if(first < 0) { return false; } else { return true; } } public int getRows() { return rows; } public void setRows(int rows) { this.rows = rows; } public int getFirst() { return first; } public int getTest() { return array.size(); } public String getForumid() { return req.getParameter("forumID"); } public void goToNewTopic() { try { FacesContext.getCurrentInstance().getExternalContext().redirect("forum__new_topic.faces"); } catch (IOException ex) { Logger.getLogger(forum.class.getName()).log(Level.SEVERE, null, ex); } } public void goToNewArticle() { try { FacesContext.getCurrentInstance().getExternalContext().redirect("forum__new_article.faces"); } catch (IOException ex) { Logger.getLogger(forum.class.getName()).log(Level.SEVERE, null, ex); } } }
forum.jsp: (Auszug)
MfGHTML-Code:<h:dataTable id="forum" value="#{Forum__frontend.forum}" var="item" bgcolor="#F1F1F1" border="10" cellpadding="5" cellspacing="3" first="#{Forum__frontend.first}" rows="15" width="100%" dir="LTR" frame="hsides" rules="all" summary="This is a JSF code to create dataTable."> <f:facet name="header"> <% if(request.getParameter("forumID") == null && request.getParameter("threadID") == null) { %><h:outputText value="#{Forum__frontend.rows} Foren"></h:outputText><% } else if(request.getParameter("forumID") != null && request.getParameter("threadID") == null) { %><h:outputText value="#{Forum__frontend.rows} Themen"></h:outputText><% } else if(request.getParameter("forumID") != null && request.getParameter("threadID") != null) { %><h:outputText value="#{Forum__frontend.rows} Beiträge"></h:outputText><% } %> </f:facet> <h:column> <f:facet name="header"> <h:outputText value=""></h:outputText> </f:facet> <% if(request.getParameter("forumID") == null && request.getParameter("threadID") == null) { %><h:outputText value=""></h:outputText><% } else if(request.getParameter("forumID") != null && request.getParameter("threadID") == null) { %><h:outputText value=""></h:outputText><% } else if(request.getParameter("forumID") != null && request.getParameter("threadID") != null) { %><h:outputText value="#{item.username}"></h:outputText><br /><h:graphicImage alt="Profil-Image" url="./resources/images/user/#{item.profil_image}" width="70" height="60" rendered="#{item.profil_image != null}"></h:graphicImage><h:graphicImage alt="Profil-Image" url="./resources/images/user/default.jpg" rendered="#{item.profil_image eq null}"></h:graphicImage><% } %> </h:column> <h:column> <f:facet name="header"> <h:outputText value="Titel"></h:outputText> </f:facet> <% if(request.getParameter("forumID") == null && request.getParameter("threadID") == null) { %><h:form id="commandLinkForum"><h:commandLink value="#{item.titel}" action="#{Forum__frontend.goToForum}"><f:param name="forumid" value="#{item.id}" /></h:commandLink></h:form><% } else if(request.getParameter("forumID") != null && request.getParameter("threadID") == null) { %><h:form id="commandLinkThread"><h:commandLink value="#{item.titel}" action="#{Forum__frontend.goToThread}"><f:param name="forumid" value="#{item.forumid}" /><f:param name="threadid" value="#{item.id}" /></h:commandLink></h:form><% } else if(request.getParameter("forumID") != null && request.getParameter("threadID") != null) { %> <h2><h:outputText value="#{item.datum}"></h:outputText>, <h:outputText value="#{item.zeit}"></h:outputText> | <h:outputText value="#{item.titel}"></h:outputText></h2> <h:outputText value="#{item.message}" escape="false"></h:outputText> <br /> <h:outputLink value="forum.faces?edit=#{item.id}" rendered="#{item.username eq Login_Logout.username}"><h:outputText value="Bearbeiten"></h:outputText></h:outputLink> <% } %> </h:column> <% if(request.getParameter("forumID") == null && request.getParameter("threadID") == null) { %> <h:column> <f:facet name="header"> <h:outputText value="Anzahl Themen" /> </f:facet> <h:outputText value="1"></h:outputText> </h:column> <h:column> <f:facet name="header"> <h:outputText value="Moderatoren"></h:outputText> </f:facet> <h:outputText value="admin"></h:outputText> </h:column> <% } else if(request.getParameter("forumID") != null && request.getParameter("threadID") == null) { %> <h:column> <f:facet name="header"> <h:outputText value="Anzahl Beiträge" escape="false"></h:outputText> </f:facet> <h:outputText value="1"></h:outputText> </h:column> <% } else if(request.getParameter("forumID") != null && request.getParameter("threadID") != null) { %> <% } %> <f:facet name="footer"> <h:panelGroup> <h:form> <h:commandButton value="Zurück" action="#{Forum__frontend.zurueck}" rendered="#{Forum__frontend.zurueckVisible}" /> <h:commandButton value="Weiter" action="#{Forum__frontend.weiter}" rendered="#{Forum__frontend.weiterVisible}" /> </h:form> Test Anzahl Reihen: <h:outputText value="#{Forum__frontend.test}"></h:outputText> </h:panelGroup> </f:facet> </h:dataTable> <br /><br />
MasterpurzelGeändert von Masterpurzel (06.11.11 um 17:23 Uhr)
Ähnliche Themen
-
Kein Abstand zwischen Inhalt einer Tabellenzelle und dem Rand (IceFaces DataTable)
Von cuchulainn im Forum Enterprise Java (JEE, J2EE, Spring & Co.)Antworten: 0Letzter Beitrag: 23.04.09, 10:15 -
DataTable-Inhalt sortieren
Von ceene im Forum Enterprise Java (JEE, J2EE, Spring & Co.)Antworten: 2Letzter Beitrag: 23.09.08, 12:44 -
Inhalt eines zwei Div skalieren
Von TribunM im Forum CSSAntworten: 2Letzter Beitrag: 07.05.08, 08:47 -
Flash Textbox spuckt Inhalt mit Formatierung aus
Von paraphan im Forum Flash PlattformAntworten: 2Letzter Beitrag: 18.03.08, 22:28 -
DataTable zu anderer DataTable hinzufügen
Von broetchen im Forum .NET DatenverwaltungAntworten: 4Letzter Beitrag: 12.09.05, 15:00





Zitieren
Login





