Esempio di applicazione JSF completa

Forum relativo ai framework per l'utilizzo della tecnologia JSP

Esempio di applicazione JSF completa

Messaggioda alesslud » dom gen 27, 2008 12:51 pm

Esempio di applicazione JSF completa:

l'applicazione di esempio è stata sviluppata a fini didattici e non è garantito il suo funzionamento in un ambiente di produzione

Numerosissimi esempi di JSF è possibile trovarli qui:
viewforum.php?f=9
alesslud
Site Admin
 
Messaggi: 779
Iscritto il: mer nov 08, 2006 8:09 am

MyQuizBean.java

Messaggioda alesslud » dom gen 27, 2008 12:51 pm

package com.aquilasiti;

public class MyQuizBean {
private int problemiAttuali;

private int tries;

private int punteggio;

private String risposta;

private String risposteCorrette;

private Problema[] problemi = {
new Problema("Qual'è lo slogan di Java?", "eseguito ovunque"),
new Problema("Un tipo primitivo a 64 bit senza numeri decimali",
"Long"),
new Problema(
"Cosa stampa il senguente codice? System.out.println(1+\"3\");",
"13"),
new Problema(
"Come si fa a definire che una classe è una sottoclasse?",
"extends"),
new Problema(
"Qual'è il nome originale del linguaggio di programmazione Java?",
"Oak"),
new Problema(
"Qual'è la Collection maggiormente utilizzata in Java?",
"ArrayList") };

public MyQuizBean() {
punteggio();
}

public String getDomanda() {
return problemi[problemiAttuali].getDomanda();
}

public String getRisposteCorrette() {
return risposteCorrette;
}

public int getPunteggio() {
return punteggio;
}

public String getRisposta() {
return risposta;
}

public void setRisposta(String newValue) {
risposta = newValue;
}

public String rispostaAction() {
tries++;
if (problemi[problemiAttuali].isCorrect(risposta)) {
punteggio++;
quitzSuccessivo();
if (problemiAttuali == problemi.length)
return "done";
else
return "success";
} else if (tries == 1) {
return "again";
} else {
quitzSuccessivo();
if (problemiAttuali == problemi.length)
return "done";
else
return "failure";
}
}

public String startOverAction() {
punteggio();
return "startOver";
}

private void punteggio() {
problemiAttuali = 0;
punteggio = 0;
tries = 0;
risposta = "";
}

private void quitzSuccessivo() {
risposteCorrette = problemi[problemiAttuali].getRisposta();
problemiAttuali++;
tries = 0;
risposta = "";
}
}
alesslud
Site Admin
 
Messaggi: 779
Iscritto il: mer nov 08, 2006 8:09 am

Problema.java

Messaggioda alesslud » dom gen 27, 2008 12:52 pm

package com.aquilasiti;

public class MyQuizBean {
private int problemiAttuali;

private int tries;

private int punteggio;

private String risposta;

private String risposteCorrette;

private Problema[] problemi = {
new Problema("Qual'è lo slogan di Java?", "eseguito ovunque"),
new Problema("Un tipo primitivo a 64 bit senza numeri decimali",
"Long"),
new Problema(
"Cosa stampa il senguente codice? System.out.println(1+\"3\");",
"13"),
new Problema(
"Come si fa a definire che una classe è una sottoclasse?",
"extends"),
new Problema(
"Qual'è il nome originale del linguaggio di programmazione Java?",
"Oak"),
new Problema(
"Qual'è la Collection maggiormente utilizzata in Java?",
"ArrayList") };

public MyQuizBean() {
punteggio();
}

public String getDomanda() {
return problemi[problemiAttuali].getDomanda();
}

public String getRisposteCorrette() {
return risposteCorrette;
}

public int getPunteggio() {
return punteggio;
}

public String getRisposta() {
return risposta;
}

public void setRisposta(String newValue) {
risposta = newValue;
}

public String rispostaAction() {
tries++;
if (problemi[problemiAttuali].isCorrect(risposta)) {
punteggio++;
quitzSuccessivo();
if (problemiAttuali == problemi.length)
return "done";
else
return "success";
} else if (tries == 1) {
return "again";
} else {
quitzSuccessivo();
if (problemiAttuali == problemi.length)
return "done";
else
return "failure";
}
}

public String startOverAction() {
punteggio();
return "startOver";
}

private void punteggio() {
problemiAttuali = 0;
punteggio = 0;
tries = 0;
risposta = "";
}

private void quitzSuccessivo() {
risposteCorrette = problemi[problemiAttuali].getRisposta();
problemiAttuali++;
tries = 0;
risposta = "";
}
}
alesslud
Site Admin
 
Messaggi: 779
Iscritto il: mer nov 08, 2006 8:09 am

messages.properties

Messaggioda alesslud » dom gen 27, 2008 12:52 pm

titolo=Alcuni quitz di Java
rispondi=Rispondi
start=Start
rispostaCorretta=Risposta esatta.
rispostaErrata=Risposta errata: riprova!
RispostaAncoraErrata=Risposta errata ancora: riprova.
rispostaCorretta=La risposta esatta era:
punteggio=Il tuo punteggio è
grazie=Grazie per aver partecipato al quitz
Ultima modifica di alesslud il dom gen 27, 2008 1:02 pm, modificato 2 volte in totale.
alesslud
Site Admin
 
Messaggi: 779
Iscritto il: mer nov 08, 2006 8:09 am

faces-config.xml

Messaggioda alesslud » dom gen 27, 2008 12:53 pm

<?xml version="1.0"?>

<!DOCTYPE faces-config PUBLIC
"-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
"http://java.sun.com/dtd/web-facesconfig_1_0.dtd">

<faces-config>
<navigation-rule>
<navigation-case>
<from-outcome>success</from-outcome>
<to-view-id>/success.jsp</to-view-id>
<redirect/>
</navigation-case>
<navigation-case>
<from-outcome>again</from-outcome>
<to-view-id>/again.jsp</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>failure</from-outcome>
<to-view-id>/failure.jsp</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>done</from-outcome>
<to-view-id>/done.jsp</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>startOver</from-outcome>
<to-view-id>/index.jsp</to-view-id>
</navigation-case>
</navigation-rule>

<managed-bean>
<managed-bean-name>quiz</managed-bean-name>
<managed-bean-class>com.aquilasiti.MyQuizBean</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
</managed-bean>

</faces-config>
alesslud
Site Admin
 
Messaggi: 779
Iscritto il: mer nov 08, 2006 8:09 am

web.xml

Messaggioda alesslud » dom gen 27, 2008 12:53 pm

<?xml version="1.0"?>
<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">

<web-app>
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.faces</url-pattern>
</servlet-mapping>

<welcome-file-list>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
</web-app>
alesslud
Site Admin
 
Messaggi: 779
Iscritto il: mer nov 08, 2006 8:09 am

again.jsp

Messaggioda alesslud » dom gen 27, 2008 12:54 pm

<html>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
<f:view>
<head>
<f:loadBundle basename="com.aquilasiti.messages" var="msgs"/>
<title><h:outputText value="#{msgs.titolo}"/></title>
</head>
<body>
<p><h:outputText value="#{msgs.rispostaErrata}"/></p>
<h:form>
<p>
<h:outputText value="#{quiz.domanda}"/>
</p>
<p>
<h:inputText value="#{quiz.risposta}"/>
</p>
<p>
<h:commandButton value="#{msgs.rispondi}"
action="#{quiz.rispostaAction}"/>
</p>
</h:form>
</body>
</f:view>
</html>
alesslud
Site Admin
 
Messaggi: 779
Iscritto il: mer nov 08, 2006 8:09 am

done.jsp

Messaggioda alesslud » dom gen 27, 2008 12:54 pm

<html>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
<f:view>
<head>
<f:loadBundle basename="com.aquilasiti.messages" var="msgs"/>
<title><h:outputText value="#{msgs.title}"/></title>
</head>
<body>
<h:form>
<p>
<h:outputText value="#{msgs.grazie}"/>
<h:outputText value="#{msgs.punteggio}"/>
<h:outputText value="#{quiz.punteggio}"/>.
</p>
<p>
<h:commandButton value="#{msgs.start}"
action="#{quiz.startOverAction}"/>
</p>
</h:form>
</body>
</f:view>
</html>
alesslud
Site Admin
 
Messaggi: 779
Iscritto il: mer nov 08, 2006 8:09 am

failure.jsp

Messaggioda alesslud » dom gen 27, 2008 12:54 pm

<html>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
<f:view>
<head>
<f:loadBundle basename="com.aquilasiti.messages" var="msgs"/>
<title><h:outputText value="#{msgs.titolo}"/></title>
</head>
<body>
<h:form>
<p>
<h:outputText value="#{msgs.RispostaAncoraErrata}"/>
<h:outputText value="#{msgs.rispostaCorretta}"/>
<h:outputText value="#{quiz.domanda}"/>.
</p>
<p>Qui c'è il prossimo quitz.</p>
<p>
<h:outputText value="#{quiz.domanda}"/>
</p>
<p>
<h:inputText value="#{quiz.risposta}"/>
</p>
<p>
<h:commandButton value="#{msgs.rispondi}"
action="#{quiz.rispostaAction}"/>
</p>
</h:form>
</body>
</f:view>
</html>
Ultima modifica di alesslud il dom gen 27, 2008 1:02 pm, modificato 1 volta in totale.
alesslud
Site Admin
 
Messaggi: 779
Iscritto il: mer nov 08, 2006 8:09 am

index.jsp

Messaggioda alesslud » dom gen 27, 2008 12:55 pm

<html>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>

<f:view>
<head>
<f:loadBundle basename="com.aquilasiti.messages" var="msgs"/>
<title><h:outputText value="#{msgs.titolo}"/></title>
</head>
<body>
<h:form>
<p>
<h:outputText value="#{quiz.domanda}"/>
</p>
<p>
<h:inputText value="#{quiz.risposta}"/>
</p>
<p>
<h:commandButton value="#{msgs.rispondi}"
action="#{quiz.rispostaAction}"/>
</p>
</h:form>
</body>
</f:view>
</html>
alesslud
Site Admin
 
Messaggi: 779
Iscritto il: mer nov 08, 2006 8:09 am

success.jsp

Messaggioda alesslud » dom gen 27, 2008 12:55 pm

<html>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
<f:view>
<head>
<f:loadBundle basename="com.aquilasiti.messages" var="msgs"/>
<title><h:outputText value="#{msgs.titolo}"/></title>
</head>
<body>
<h:form>
<p>
<h:outputText value="#{msgs.rispostaCorretta}"/>
<h:outputText value="#{msgs.punteggio}"/>
<h:outputText value="#{quiz.punteggio}"/>.
</p>
<p>Prossimo test</p>
<p>
<h:outputText value="#{quiz.domanda}"/>
</p>
<p>
<h:inputText value="#{quiz.risposta}"/>
</p>
<p>
<h:commandButton value="#{msgs.rispondi}"
action="#{quiz.rispostaAction}"/>
</p>
</h:form>
</body>
</f:view>
</html>
alesslud
Site Admin
 
Messaggi: 779
Iscritto il: mer nov 08, 2006 8:09 am

Per richiamare l'applicazione

Messaggioda alesslud » mar gen 29, 2008 2:52 pm

alesslud
Site Admin
 
Messaggi: 779
Iscritto il: mer nov 08, 2006 8:09 am


Torna a JSF e Struts

Chi c’è in linea

Visitano il forum: Nessuno e 0 ospiti

cron