Zum Inhalt springen

JSP - "OwnClass cannot be resolved to a type"


madbat

Empfohlene Beiträge

Mojn Mojn,

ich hab da mal wieder ein Problem mit dem bösen EE, ich muss einfach nur auf eine java classe zugreifen, standardmäßig habe ich so angefangen:


<select name="savedCustomers" Size="1" type="submit">
<%@ page import="de.xyz.proto.Customers" %>
<% Customers cs = new Customers(); %>
<%= cs.getOptions(); %>
</select>
[/PHP]

Aber egal wie ich es drehe oder wende ich komme einfach nicht dran, er sage mir immer:

[PHP]org.apache.jasper.JasperException: Unable to compile class for JSP:

An error occurred at line: 6 in the generated java file
Only a type can be imported. de.tcom.proto.Customers resolves to a package

An error occurred at line: 51 in the jsp file: /result.jsp
Customers cannot be resolved to a type
48:
49: <%@ page import="de.xyz.proto.Customers" %>
50: <%
51: Customers cs = new Customers();
52: %>
53: </select></td>
54: </tr>


An error occurred at line: 51 in the jsp file: /result.jsp
Customers cannot be resolved to a type
48:
49: <%@ page import="de.xyz.proto.Customers" %>
50: <%
51: Customers cs = new Customers();
52: %>
53: </select></td>
54: </tr>


Stacktrace:
org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:92)
org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330)
org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:439)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:334)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:312)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:299)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:589)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

Langsam krieg ich die Kriese, das irgendwie nie sowas klappt wie es vorher schon mal geklappt hat... <_<

Grüße,

madbat

Link zu diesem Kommentar
Auf anderen Seiten teilen

Die Klasse gibt es:

package de.xyz.proto;

import java.io.BufferedInputStream;
import java.io.DataInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.Properties;

public class Customers {

public Customers(){
}

public String getOptions() throws IOException{
String out = new String();
File customersFile = new File("/customers.cust");

FileInputStream fis = new FileInputStream(customersFile);
BufferedInputStream bis = new BufferedInputStream(fis);
DataInputStream dis = new DataInputStream(bis);

Properties props = new Properties();
props.load(dis);
dis.close();
bis.close();
fis.close();

int size = Integer.parseInt(props.getProperty("size"));
int last = 0;
for (int i = 0; i < size; i++) {
last++;
out = out + ("\n<Option Value=\"" + i + "\">"
+ props.getProperty("name" + i) + "</Option>");
}

out = out +("\n<Option Value=\"" + (last++)
+ "\">Leerer Datensatz...</Option>");
out = out +("\n<Option Value=\"" + (last++)
+ "\">Aktuellen Datensatz speichern...</Option>");
out = out +("\n<Option Value=\"" + (last++)
+ "\">Aktuellen Datensatz loeschen.../Option>");
return out;
}

}
[/PHP]

Link zu diesem Kommentar
Auf anderen Seiten teilen

an der Meldung nichts,

nur warum sie aufblöbt, da ich ja auf eine class und kein package verwiesen hab

Hast du überprüft ob nicht aus irgendwelchen Gründen dennoch ein Package mit dem selben Namen vorhanden ist? Hast du eine andere Klasse testweise in einem komplett neuen Package erstellt und überprüft ob diese Klasse lesbar ist? Hast du den Classpath (nochmals?) kontrolliert und überprüft ob die Klasse tatsächlich verfügbar ist?
Link zu diesem Kommentar
Auf anderen Seiten teilen

joah hab ich schon, kann allgemein auf keien classen zugreifen bis auf die zwei die schon existieren...

kann man irgendwie eine sicherung machen, das man nicht auf nicht eingetragene klassen zugreifen kann? vielleicht muss ich da nochwas nachtragen, weil in die standard sachen isse komplet eingetragen

Link zu diesem Kommentar
Auf anderen Seiten teilen

kann man irgendwie eine sicherung machen, das man nicht auf nicht eingetragene klassen zugreifen kann? vielleicht muss ich da nochwas nachtragen, weil in die standard sachen isse komplet eingetragen
Ich habe nichts von dem verstanden, was du hiermit sagen wolltest. Formulier deine Fragestellung nochmal vernünftig und dann sehen wir weiter.
Link zu diesem Kommentar
Auf anderen Seiten teilen

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.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...