Ik heb al even rondgekeken op got en al gegoogled, maar ik kon geen antwoord op mijn vraag vinden.
Ik heb een jsp pagina die er als volgt uit ziet:
De bijbehorende bean ziet er zo uit:
De jsp pagina is via tomcat normaal bereikbaar en de jsp pagina word zonder problemen omgezet in een servlet.
Het probleem is nu als volgt:
De gegenereerde servlet wil niet compileren, omdat de instantie van de dbbean niet aangemaakt kan worden. Dit komt omdat de java compiler de klasse van het type dbbean niet kan vinden.
Deze klasse (Van de dbbean) wordt ook niet in de gegenereerde servlet geplaatst, en er wordt ook geen import aangemaakt.
De foutmelding van de server is als volgt:
Extra informatie:
jsp pagina (Die wel via de browser toegankelijk is):
/webapps/internet/jsp/test.jsp
dbbean (Die bij het omzetten van jsp naar servlet wel gevonden kan worden):
/webapps/internet/WEB-INF/classes/dbbean.class
gegenereerde servlet (Die niet compileert):
/work/Standalone/localhost/internet/jsp/test_jsp.java
tomcat versie: 4.1.31
linux versie: slackware current
JDK versie: 1.5
Ik heb een jsp pagina die er als volgt uit ziet:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
| <html> <head> <title>Gegevens</title> </head> <body> <jsp:useBean id='Mydbbean' class='dbbean' scope='session'/> <jsp:setProperty name="Mydbbean" property="user" value="*****"/> <jsp:setProperty name="Mydbbean" property="pass" value="*****"/> <jsp:setProperty name="Mydbbean" property="user" value="*****"/> <jsp:setProperty name="Mydbbean" property="voornaam" value=""/> <jsp:setProperty name="Mydbbean" property="tussenvoegsel" value=""/> <jsp:setProperty name="Mydbbean" property="achternaam" value=""/> <jsp:setProperty name="Mydbbean" property="email" value=""/> <jsp:getProperty name="Mydbbean" property="voornaam"/><br> <jsp:getProperty name="Mydbbean" property="tussenvoegsel"/><br> <jsp:getProperty name="Mydbbean" property="achternaam"/><br> <jsp:getProperty name="Mydbbean" property="email"/><br> </body> </html> |
De bijbehorende bean ziet er zo uit:
code:
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
| import java.sql.*;
public class dbbean {
private String voornaam = "";
private String tussenvoegsel = "";
private String achternaam = "";
private String email = "";
private String user = "";
private String pass = "";
private String name = "";
public String getVoornaam() {
return voornaam;
}
public void setVoornaam(String voornaam) {
this.voornaam = voornaam;
}
public String getTussenvoegsel() {
return tussenvoegsel;
}
public void setTussenvoegsel(String tussenvoegsel) {
this.tussenvoegsel = tussenvoegsel;
}
public String getAchternaam() {
return achternaam;
}
public void setAchternaam(String achternaam) {
this.achternaam = achternaam;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public boolean CheckEmail(String email) {
return true;
}
public void WriteGebruiker() {
try {
java.sql.Connection cn = GetConnection();
String sql = "[correct SQL statement]";
cn.createStatement().executeUpdate(sql);
cn.close();
} catch (SQLException e)
{
System.err.println("Foutje: " + e);
}
}
public ResultSet GetGebruikers() {
try {
java.sql.Connection cn = GetConnection();
String sql = "select * from gebruikers";
ResultSet r = cn.createStatement().executeQuery(sql);
cn.close();
return r;
} catch (SQLException e)
{
System.err.println("Foutje: " + e);
}
return null;
}
private java.sql.Connection GetConnection() {
try {
Class.forName("com.mysql.jdbc.Driver").newInstance();
return java.sql.DriverManager.getConnection(name, user, pass);
} catch (Exception e) {
System.err.println("Foutje: " + e);
}
return null;
}
public dbbean() {
}
} |
De jsp pagina is via tomcat normaal bereikbaar en de jsp pagina word zonder problemen omgezet in een servlet.
Het probleem is nu als volgt:
De gegenereerde servlet wil niet compileren, omdat de instantie van de dbbean niet aangemaakt kan worden. Dit komt omdat de java compiler de klasse van het type dbbean niet kan vinden.
Deze klasse (Van de dbbean) wordt ook niet in de gegenereerde servlet geplaatst, en er wordt ook geen import aangemaakt.
De foutmelding van de server is als volgt:
code:
1
2
3
4
5
6
7
8
9
10
11
12
| org.apache.jasper.JasperException: Unable to compile class for JSP
An error occurred at line: 6 in the jsp file: /jsp/test.jsp
Generated servlet error:
[javac] Compiling 1 source file
/work/Standalone/localhost/internet/jsp/test_jsp.java:47: cannot find symbol
symbol : class dbbean
location: class org.apache.jsp.test_jsp
dbbean Mydbbean = null;
^ |
Extra informatie:
jsp pagina (Die wel via de browser toegankelijk is):
/webapps/internet/jsp/test.jsp
dbbean (Die bij het omzetten van jsp naar servlet wel gevonden kan worden):
/webapps/internet/WEB-INF/classes/dbbean.class
gegenereerde servlet (Die niet compileert):
/work/Standalone/localhost/internet/jsp/test_jsp.java
tomcat versie: 4.1.31
linux versie: slackware current
JDK versie: 1.5
edit:
Ik zie dat ik in de topic titel de [jsp] vergeten ben, en het is: "compileert"
Ik zie dat ik in de topic titel de [jsp] vergeten ben, en het is: "compileert"
[ Voor 11% gewijzigd door mrClass op 11-11-2004 11:33 ]