Salve,
ho la necessità di eseguire un applet invocandola da una Servlet in modo da nascondere il suo reale indirizzo URL. Ho utilizzato la classe URLConnection, che sembra eseguire correttamente le operazioni richieste cioè carica il codice HTML della pagina che contiene l'applet. Tuttavia, la servlet anche se interpreta correttamente l'HTML, NON CARICA l'applet e la console Java informa che la classe no è stata trovata. Questo è il codice nella doGet della servlet
codice:
//url invocata per l'applet
//la stessa url invocata direttamente mostra correttamente l'applet
URL url = new URL("http://192.168.0.2/WelcomeApplet.html");
URLConnection conn = url.openConnection();
conn.setRequestProperty("Content-Language", "en-US"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setDoInput(true);
conn.setUseCaches(false);
conn.setAllowUserInteraction(true);
BufferedInputStream buffer = new BufferedInputStream(conn.getInputStream()); StringBuilder builder = new StringBuilder();
int byteRead;
while ((byteRead = buffer.read()) != -1)
builder.append((char) byteRead);
buffer.close();
out.write(builder.toString());
Evidentemente, il codice non è corretto. Non so se è un problema di applet non firmata, perchè la console comunque non mi restituisce un errore di sicurezza:
caricamento: classe WelcomeApplet.class non trovata.
l'html della pagina (correttamente intrepretato dalla servlet) è il seguente :
codice:
<html> <applet code="WelcomeApplet.class" archive="WelcomeApplet.jar" width=300 height=30> </applet> </html>
Grazie