Sto ctreando una web application in Netbeans: come si attivano i metodi delle classi java da una pagina jsp?
Sto ctreando una web application in Netbeans: come si attivano i metodi delle classi java da una pagina jsp?
M
Che vuol dire "come si attivano i metodi" ???Originariamente inviato da marta2
come si attivano i metodi delle classi java da una pagina jsp?
In una pagina JSP vuoi mettere dello "scriptlet" che usa qualunque altra classe?
Es.
codice:<%@ page import="java.util.*" %> <% Date d = new Date(); %>
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
Premetto che sono alle prime armi con netbeans: voglio creare una pagina jsp con una form: cliccando su un button voglio che venga istanziata una classe e sia attivato un suo metodo.
M
L'invio del form causerà una nuova "request" al server, ad esempio ad una pagina JSP (la stessa o un'altra). Cosa faccia questa pagina .... sono questioni tue, ma come ho già mostrato, non ci sono problemi ad importare e usare qualunque altra classe Java.Originariamente inviato da marta2
Premetto che sono alle prime armi con netbeans: voglio creare una pagina jsp con una form: cliccando su un button voglio che venga istanziata una classe e sia attivato un suo metodo.
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
fin qui ci sono: nella pagina jsp di arrivo ho scritto il seguente codice:
<%@ page import="java.util.*" %>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!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=UTF-8">
<title>JSP Page</title>
</head>
<body>
<h1>
<%
Prova p = new Prova();//classe creata in Sorce Packages
p.getName();
%>
</h1>
</body>
</html>
In cosa sbaglio?!?
M
Qualunque classe che si deve referenziare all'interno di una pagina JSP dovrebbe essere dichiarata dentro un package.Originariamente inviato da marta2
In cosa sbaglio?!?
E il motivo è semplice: il container trasla una pagina JSP in un sorgente .java (per una Servlet) che poi compila. Ma il nome di questa classe e sopratutto il suo package sono specifici del container. E dal momento che non si può importare il package "unnamed" (quello di default) ne consegue che la servlet derivata dalla JSP deve per forza usare tutte classi che sono in package specifici.
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
ok grazie ora almeno non mi da più errore, anche se non mi visualizza il risultato del metodo nella pagina web. sai per caso come si fa?
M
Ma io non so cosa devi realmente fare ..... e se ti riferisci a quel:Originariamente inviato da marta2
anche se non mi visualizza il risultato del metodo nella pagina web.
Non so cosa intendevi fare .... vedo solo che viene istanziato un oggetto, a cui non viene passato alcunché ... e quindi non ho idea di cosa volevi ottenere. Vuoi invocare getName(), ok mi pare chiaro. Ma non so cosa ti aspetti ... l'oggetto è nuovo.codice:<% Prova p = new Prova(); p.getName(); %>
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
questo è il codice della mia classe:
public class Prova {
private String name;
public Prova() {
name = "ciao";
}
public String getName() {
return name;
}
}
E' banale, ma non so come scrivere il contenuto della variabile 'name', restituito dalla funzione, nella mia pagina web.
M
Ok, qualcosa quindi hai in name.Originariamente inviato da marta2
public class Prova {
private String name;
public Prova() {
name = "ciao";
}
public String getName() {
return name;
}
}
Con uno scriptlet:Originariamente inviato da marta2
E' banale, ma non so come scrivere il contenuto della variabile 'name', restituito dalla funzione, nella mia pagina web.
<%
out.print(unaEspressione);
%>
o con una expression:
<%= unaEspressione %>
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet