30. august 2001 - 12:38
Der er
16 kommentarer og 3 løsninger
Hvordan får jeg fat på min bean fra jsp filen?
Jeg har lavet en bean altså en class fil. Men hvor skal jeg lægge den i jakarte.tomcat for at jsp filen kan finde den. Og skal jeg lave det til en jar fil i stedet for? Lige nu får jeg fejlen. org.apache.jasper.JasperException: Unable to compile class for JSPC:\\jakarta-tomcat-3.2.3\\work\\localhost_8080\\_0002ftemp_00032_0002ejsptemp2_jsp_4.java:16: Package DbHandlerBean not found in import. import DbHandlerBean.*;
Annonceindlæg tema
Offentlig digitalisering
Fra effektivisering til digital suverænitet. Hvordan skaber det offentlige en digital fremtid med AI, sikkerhed og kontrol i centrum?
30. august 2001 - 12:40
#1
har du importert/initialisert din bean på din side ?
30. august 2001 - 12:42
#2
På din webserver skal der i rodden være en skuffe der hedder web-inf under den en der hedder classes altså web-inf\\classes derunder skal din packages ligge så skriver du f.eks. <jsp:useBean id=\"gb\" scope=\"request\" class=\"disky.guestbook.Guestbook\" /> <jsp:setProperty name=\"gb\" property=\"*\"/> <jsp:useBean id=\"wf\" scope=\"request\" class=\"disky.guestbook.WhereField\" /> <jsp:setProperty name=\"wf\" property=\"*\"/> I din jsp fil øverst, her loader jeg 2 beans, og sørger for at alle felter bliver sat automatisk.
30. august 2001 - 12:44
#3
Fra din jsp side skal du skrive eks: <jsp:useBean id=\"Leverandoer\" scope=\"session\" class=\"Leverandoer\"/> - for at kunne bruge bønnen. Du tilgår klasserne som eks: <select name=\"produkt\"> <option value = \"\">Vælg Produkt</option> <% if (reloadet && !lev_id.equals(\"nada\")) { produkter=Leverandoer.getProducts(lev_id); while (produkter.next()) { %> <option value = \"<%=produkter.getString(\"id\")%>\"><%=produkter.getString(\"name\")%> </option> <% } } else { %> <option value=\"\">Ingen</option><% } %> </select> og sidst men ikke mindst skal du jo compilere din bønne før du kan bruge den!
30. august 2001 - 12:48
#4
Ok nu kan den finde klassen men jeg får nogle underlige fejl kan i lige se hvad jeg gør forkert her? <html> <head> <title>Untitled Document</title> <meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-1\"> </head> <body bgcolor=\"#FFFFFF\" text=\"#000000\"> <%@ page import=\"java.sql.*,javax.sql.*,com.codestudio.sql.*,DbHandler\"%> <% <jsp:useBean id=\"dbhandler\" class=\"DbHandler.class\" /> boolean a = dbhandler.open(); ResultSet rs = dbhandler.doQuery(\"Select * from ansatte\"); ResultSetMetaData rsm = rs.getMetaData(); while( rsm.next() ) { out.println(rsm.getString(\"adresse\")); } dbhandler.close(); %> </body> </html>
30. august 2001 - 12:51
#5
flytt denne linje: <jsp:useBean id=\"dbhandler\" class=\"DbHandler.class\" /> ut av dine <%,%> tags: <html> <head> <title>Untitled Document</title> <meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-1\"> </head> <jsp:useBean id=\"dbhandler\" class=\"DbHandler.class\" /> <body bgcolor=\"#FFFFFF\" text=\"#000000\"> <%@ page import=\"java.sql.*,javax.sql.*,com.codestudio.sql.*,DbHandler\"%> <% boolean a = dbhandler.open(); ResultSet rs = dbhandler.doQuery(\"Select * from ansatte\"); ResultSetMetaData rsm = rs.getMetaData(); while( rsm.next() ) { out.println(rsm.getString(\"adresse\")); } dbhandler.close(); %> </body> </html>
30. august 2001 - 12:56
#6
Er det selve min bean der er bøvl med så? org.apache.jasper.JasperException: Unable to compile class for JSPC:\\jakarta-tomcat-3.2.3\\work\\localhost_8080\\_0002ftemp_00032_0002ejsptemp2_jsp_4.java:65: Invalid type expression. DbHandler.class dbhandler = null; ^ C:\\jakarta-tomcat-3.2.3\\work\\localhost_8080\\_0002ftemp_00032_0002ejsptemp2_jsp_4.java:68: Invalid type expression. dbhandler= (DbHandler.class) ^ C:\\jakarta-tomcat-3.2.3\\work\\localhost_8080\\_0002ftemp_00032_0002ejsptemp2_jsp_4.java:73: Invalid type expression. dbhandler = (DbHandler.class) Beans.instantiate(this.getClass().getClassLoader(), \"DbHandler.class\"); ^ 3 errors
30. august 2001 - 12:57
#7
Husk at java er case sensitive!
30. august 2001 - 12:58
#8
fjern .class fra ditt <jsp:usebean> tag: <jsp:useBean id=\"dbhandler\" class=\"DbHandler\" /> /nute
30. august 2001 - 12:58
#9
Det er ikke der fejlen er.... tror jeg ikke ihvertfald. Men hvad betyder den fejlmeddelelse?
30. august 2001 - 13:16
#10
Så nu kommer den ihvertfald ned i databasen via bønne men kan nogen give en forklaring på det her? 1 Fritz Kadelle [B@5fcb47 [B@3b9fae [B@1abc69 [B@4792d4 FK Kok ja [B@78dc4c [B@470b0d 2 Nasse Natmad [B@26a1a7 [B@706da8 [B@3ef361 [B@5c98f3 NN Opvasker ja [B@3d9460 [B@5840cd 3 Iver Piver Leth [B@67fc9 [B@2f356f [B@2f8116 [B@43e82b IPL null ja [B@3f7b23 [B@2d7440 4 Børste Slamberg [B@2b349d [B@5d252d [B@b567c [B@5afbaf BS Chef ja [B@41c92b [B@7e4dee Det er det jeg får ud via denne kode. <html> <head> <title>Untitled Document</title> <meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-1\"> </head> <body bgcolor=\"#FFFFFF\" text=\"#000000\"> <%@ page import=\"java.sql.*,javax.sql.*,com.codestudio.sql.*,DbHandler\"%> <jsp:useBean id=\"dbhandler\" class=\"DbHandler\" /> <% boolean a = dbhandler.open(); ResultSet rs = dbhandler.doQuery(\"Select * from ansatte\"); ResultSetMetaData rsm = rs.getMetaData(); while( rs.next() ) { for( int i = 1; i <= rsm.getColumnCount(); i++ ) { out.println(rs.getString(i)); } } dbhandler.close(); %> </body> </html>
30. august 2001 - 13:19
#11
Det du udskriver er åbenbart ikke kun String. brug en getxxx hvor xxx passer til indholdet af den kolonne. Forresten brug hellere navnet på kolonnen frem for dens nummer.
30. august 2001 - 13:21
#12
I mysql databasen er det defineret som text det hele men i eks. adresse skriver jeg jo også et tal så funger det ikke eller hvad?
30. august 2001 - 13:22
#13
Det er lidt mystisk.
30. august 2001 - 13:26
#14
Prøv at lav dit while loop om til while( rs.next() ) { out.println(rs.getString(\"min_første_kolonne\") + \"<br>\"); } .. hvad skriv den så?
30. august 2001 - 13:27
#15
Nu har jeg prøvet at skifte dataene ud med rent text i databasen og det gør ingen forskel...
30. august 2001 - 13:28
#16
Ok det viser sig at de tubler jeg har defineret som char og en længde vises korrekt med getString men de tubler der hedder text bliver noget krims krams.
30. august 2001 - 14:19
#17
Hvordan får jeg så vist krims kramset rigtigt? =)
30. august 2001 - 14:23
#18
krims krams = [B@5c98f3 NN Opvasker ja Ellers hvad?
30. august 2001 - 15:42
#19
Jeg har fået styr på det. Men hvis i finder ud af hvad man skal hive en text variable ud af en mysql database med så skriv det lige. Tak for hjælpen endnu en gang alle sammen.
Kurser inden for grundlæggende programmering