Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
Ich möchte eine Seite erstellen, in der Besucher eine künstliche Intelligenz in Java schreiben können und gegeneinander antreten lassen.
Ich erzeuge aus einer Textarea einen String, der auch in einer Datenbank gespeichert werden soll. Nun beiße ich mir aber die Zähme daran aus, aus dem String ein Objekt zu erzeugen. Ich hoffe hier kann mir jemand weiterhelfen ( bin noch ein Anfänger ).
test.jsp
Java:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>random</title>
</head>
<body>
<form action="test2.jsp" method="post">
<div>
<label for="text">Klasse</label>
<textarea id="text" name="text" cols="100" rows="50">
public class test {
String teststring;
public test() {
this.teststring ="Hallo";
}
}
</textarea>
<input type="submit" value="Senden" />
</div>
</form>
</body>
</html>
test2.jsp
Java:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>random</title>
</head>
<body>
<%
StringBuffer text = new StringBuffer(request.getParameter("text"));
int loc = (new String(text)).indexOf('\n');
while(loc > 0){
text.replace(loc, loc+1, "<BR>");
loc = (new String(text)).indexOf('\n');
}
out.println(text);
// aus der Variable "text" soll hier eine Klasse dynamisch geladen werden und ein Objekt dieser Klasse erzeugt werden.
//out.println(o.teststring);
%>
</body>
</html>
Verstehe offen gestanden kein Wort ... kannst Du bitte mal verständlich erklären, was Du damit meinst?? text ist vom Typ StringBuffer, wie soll aus dem Inhalt eine Klasse geladen werden ??
@Biobauer
1.) Ein String ist ein Objekt und kein primitiver Typ.
2.) Dein Code sieht nicht besonders gut aus. Schau dir mal in Bezug auf Java-Webanwendungen das MVC Pattern an. Auf jedenfall würde ich in der JSP-Datei keine Java-Klasse deklarieren.
Das Projekt ist ist nach MVC modelliert. Der hier gesuchte Code soll auch später in einer Bean() ausgeführt werden. Hier geht nur darum, das fehlende Stück Code zu finden.
Ich möchte aus dem Text aus der Textarea zur Laufzeit eine Klasse laden und ein Objekt erstellen.
So wie ich das verstehe muss die Klasse vorher im Datei-System vorhanden sein.
Bei mir sollen die Textarea's in einer Datenbank als VARCHAR(max) gespeichert werden.
Aus dieser Datenbank hole ich dann den String und möchte dann aus diesem String versucht werden eine Klasse zu erzeugen und ein Objekt zu erstellen.