MP hell MP hell MP hell MP hell
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
package com.corejsf;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/*
|
||||
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
|
||||
* Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
|
||||
*/
|
||||
|
||||
/**
|
||||
*
|
||||
* @author caleb
|
||||
*/
|
||||
public class Data implements DataInterface {
|
||||
private ArrayList<ProblemInterface> problems = new ArrayList<ProblemInterface>();
|
||||
public Data() {
|
||||
problems.add(
|
||||
new Problem(new int[] { 3, 1, 4, 1, 5 }, 9)); // pi
|
||||
problems.add(
|
||||
new Problem(new int[] { 1, 1, 2, 3, 5 }, 8)); // fibonacci
|
||||
problems.add(
|
||||
new Problem(new int[] { 1, 4, 9, 16, 25 }, 36)); // squares
|
||||
problems.add(
|
||||
new Problem(new int[] { 2, 3, 5, 7, 11 }, 13)); // primes
|
||||
problems.add(
|
||||
new Problem(new int[] { 1, 2, 4, 8, 16 }, 32)); // powers of 2
|
||||
}
|
||||
public List<ProblemInterface> getData() {
|
||||
return problems;
|
||||
}
|
||||
}
|
@@ -0,0 +1,17 @@
|
||||
/*
|
||||
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
|
||||
* Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Interface.java to edit this template
|
||||
*/
|
||||
package com.corejsf;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author caleb
|
||||
*/
|
||||
public interface DataInterface {
|
||||
|
||||
public List<ProblemInterface> getData();
|
||||
|
||||
}
|
@@ -0,0 +1,24 @@
|
||||
package com.corejsf;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.ArrayList;
|
||||
|
||||
public class Problem implements Serializable, ProblemInterface {
|
||||
private ArrayList<Integer> sequence;
|
||||
private int solution;
|
||||
|
||||
public Problem() {}
|
||||
|
||||
public Problem(int[] values, int solution) {
|
||||
sequence = new ArrayList<Integer>();
|
||||
for (int i = 0; i < values.length; i++)
|
||||
sequence.add(values[i]);
|
||||
this.solution = solution;
|
||||
}
|
||||
|
||||
public ArrayList<Integer> getSequence() { return sequence; }
|
||||
public void setSequence(ArrayList<Integer> newValue) { sequence = newValue; }
|
||||
|
||||
public int getSolution() { return solution; }
|
||||
public void setSolution(int newValue) { solution = newValue; }
|
||||
}
|
@@ -0,0 +1,19 @@
|
||||
/*
|
||||
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
|
||||
* Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Interface.java to edit this template
|
||||
*/
|
||||
package com.corejsf;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author caleb
|
||||
*/
|
||||
public interface ProblemInterface {
|
||||
public ArrayList<Integer> getSequence();
|
||||
public void setSequence(ArrayList<Integer> newValue);
|
||||
|
||||
public int getSolution();
|
||||
public void setSolution(int newValue);
|
||||
}
|
@@ -0,0 +1,62 @@
|
||||
package com.corejsf;
|
||||
|
||||
import ejb.TestEJBLocal;
|
||||
import jakarta.enterprise.context.SessionScoped;
|
||||
import jakarta.faces.component.UIViewRoot;
|
||||
import jakarta.faces.context.FacesContext;
|
||||
import jakarta.inject.Inject;
|
||||
import jakarta.inject.Named;
|
||||
import java.io.Serializable;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Locale;
|
||||
|
||||
@Named // or @Named
|
||||
@SessionScoped
|
||||
public class QuizBean implements Serializable {
|
||||
|
||||
@Inject
|
||||
TestEJBLocal ejb;
|
||||
|
||||
public String getDataFromDatabase() {
|
||||
return ejb.getDataFromDatabase().toString();
|
||||
}
|
||||
|
||||
private int currentLocale = 0;
|
||||
private DataInterface theProblems = new Data();
|
||||
private int currentIndex;
|
||||
private int score;
|
||||
|
||||
public int getScore() { return score; }
|
||||
|
||||
public ProblemInterface getCurrent() { return theProblems.getData().get(currentIndex); }
|
||||
|
||||
public String getAnswer() { return ""; }
|
||||
public void setAnswer(String newValue) {
|
||||
try {
|
||||
int answer = Integer.parseInt(newValue.trim());
|
||||
if (getCurrent().getSolution() == answer) score++;
|
||||
currentIndex = (currentIndex + 1) % theProblems.getData().size();
|
||||
}
|
||||
catch (NumberFormatException ex) {
|
||||
}
|
||||
}
|
||||
public void setLanguage() {
|
||||
UIViewRoot viewRoot = FacesContext.getCurrentInstance().getViewRoot();
|
||||
switch (currentLocale) {
|
||||
default:
|
||||
case 0:
|
||||
viewRoot.setLocale(new Locale("es"));
|
||||
break;
|
||||
case 1:
|
||||
viewRoot.setLocale(new Locale("en"));
|
||||
break;
|
||||
case 2:
|
||||
viewRoot.setLocale(new Locale("de"));
|
||||
break;
|
||||
}
|
||||
currentLocale++;
|
||||
if (currentLocale >= 3) {
|
||||
currentLocale = 0;
|
||||
}
|
||||
}
|
||||
}
|
@@ -0,0 +1,13 @@
|
||||
package edu.slcc.asdv.caleb.quizbuslogic;
|
||||
|
||||
import jakarta.ws.rs.ApplicationPath;
|
||||
import jakarta.ws.rs.core.Application;
|
||||
|
||||
/**
|
||||
* Configures Jakarta RESTful Web Services for the application.
|
||||
* @author Juneau
|
||||
*/
|
||||
@ApplicationPath("resources")
|
||||
public class JakartaRestConfiguration extends Application {
|
||||
|
||||
}
|
@@ -0,0 +1,20 @@
|
||||
package edu.slcc.asdv.caleb.quizbuslogic.resources;
|
||||
|
||||
import jakarta.ws.rs.GET;
|
||||
import jakarta.ws.rs.Path;
|
||||
import jakarta.ws.rs.core.Response;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author
|
||||
*/
|
||||
@Path("jakartaee10")
|
||||
public class JakartaEE10Resource {
|
||||
|
||||
@GET
|
||||
public Response ping(){
|
||||
return Response
|
||||
.ok("ping Jakarta EE")
|
||||
.build();
|
||||
}
|
||||
}
|
@@ -0,0 +1,29 @@
|
||||
/*
|
||||
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
|
||||
* Click nbfs://nbhost/SystemFileSystem/Templates/J2EE/EJB30/StatefulEjbClass.java to edit this template
|
||||
*/
|
||||
package ejb;
|
||||
|
||||
import jakarta.ejb.Stateful;
|
||||
import java.util.ArrayList;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author caleb
|
||||
*/
|
||||
@Stateful
|
||||
public class TestEJB implements TestEJBLocal {
|
||||
|
||||
// Add business logic below. (Right-click in editor and choose
|
||||
// "Insert Code > Add Business Method")
|
||||
|
||||
@Override
|
||||
public ArrayList<String> getDataFromDatabase()
|
||||
{
|
||||
ArrayList<String> l = new ArrayList<String>();
|
||||
l.add("data from the database");
|
||||
l.add("suppliers table");
|
||||
return l;
|
||||
}
|
||||
|
||||
}
|
@@ -0,0 +1,19 @@
|
||||
/*
|
||||
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
|
||||
* Click nbfs://nbhost/SystemFileSystem/Templates/J2EE/EJB30/SessionLocal.java to edit this template
|
||||
*/
|
||||
package ejb;
|
||||
|
||||
import jakarta.ejb.Local;
|
||||
import java.util.ArrayList;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author caleb
|
||||
*/
|
||||
@Local
|
||||
public interface TestEJBLocal {
|
||||
|
||||
public ArrayList<String> getDataFromDatabase();
|
||||
|
||||
}
|
@@ -0,0 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<persistence version="3.0" xmlns="https://jakarta.ee/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="https://jakarta.ee/xml/ns/persistence https://jakarta.ee/xml/ns/persistence/persistence_3_0.xsd">
|
||||
<!-- Define Persistence Unit -->
|
||||
<persistence-unit name="my_persistence_unit">
|
||||
|
||||
</persistence-unit>
|
||||
</persistence>
|
@@ -0,0 +1,11 @@
|
||||
|
||||
# Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
|
||||
# Click nbfs://nbhost/SystemFileSystem/Templates/Other/properties.properties to edit this template
|
||||
currentLocale=Current Locale: English
|
||||
title=NumberQuiz
|
||||
heading=Have fun with NumberQuiz!
|
||||
currentScore=Your current score is {0}.
|
||||
guessNext=Guess the next number in the sequence!
|
||||
answer=Your answer:
|
||||
next=Next
|
||||
changeLocale=Change Locale
|
@@ -0,0 +1,8 @@
|
||||
currentLocale=Aktuelles Gebietsschema: Deutsch
|
||||
title=Zahlenquiz
|
||||
heading=Viel Spa\u00df mit dem Zahlenquiz!
|
||||
currentScore=Sie haben {0,choice,0#0 Punkte|1#einen Punkt|2#{0} Punkte}.
|
||||
guessNext=Raten Sie die n\u00e4chste Zahl in der Folge!
|
||||
answer=Ihre Antwort:
|
||||
next=Weiter
|
||||
changeLocale=Gebietsschema \u00e4ndern
|
@@ -0,0 +1,11 @@
|
||||
|
||||
# Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
|
||||
# Click nbfs://nbhost/SystemFileSystem/Templates/Other/properties.properties to edit this template
|
||||
currentLocale=Ubicaci\u00f3n actual: espa\u00f1ol
|
||||
title=Cuestionario de n\u00fameros
|
||||
heading=\u00a1Divi\u00e9rtete con NumberQuiz!
|
||||
currentScore=Su puntuaci\u00f3n actual es {0}.
|
||||
guessNext=\u00a1Adivina el siguiente n\u00famero en la secuencia!
|
||||
answer=Tu respuesta:
|
||||
next=Siguiente
|
||||
changeLocale=Cambiar localidad
|
@@ -0,0 +1,11 @@
|
||||
<?xml version='1.0' encoding='UTF-8' ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml"
|
||||
xmlns:h="http://xmlns.jcp.org/jsf/html">
|
||||
<h:head>
|
||||
<title>Facelet Title</title>
|
||||
</h:head>
|
||||
<h:body>
|
||||
<h3>Testing Locale Changed<h3>
|
||||
</h:body>
|
||||
</html>
|
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<beans xmlns="https://jakarta.ee/xml/ns/jakartaee"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/beans_4_0.xsd"
|
||||
bean-discovery-mode="all">
|
||||
</beans>
|
@@ -0,0 +1,18 @@
|
||||
<?xml version="1.0"?>
|
||||
<faces-config xmlns="http://java.sun.com/xml/ns/javaee"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
|
||||
http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd"
|
||||
version="2.0">
|
||||
<application>
|
||||
<locale-config>
|
||||
<default-locale>en</default-locale>
|
||||
<supported-locale>de</supported-locale>
|
||||
<supported-locale>es</supported-locale>
|
||||
</locale-config>
|
||||
<resource-bundle>
|
||||
<base-name>messages.messages</base-name>
|
||||
<var>msgs</var>
|
||||
</resource-bundle>
|
||||
</application>
|
||||
</faces-config>
|
@@ -0,0 +1,25 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
Copyright (c) 1997, 2018 Oracle and/or its affiliates. All rights reserved.
|
||||
|
||||
This program and the accompanying materials are made available under the
|
||||
terms of the Eclipse Public License v. 2.0, which is available at
|
||||
http://www.eclipse.org/legal/epl-2.0.
|
||||
|
||||
This Source Code may also be made available under the following Secondary
|
||||
Licenses when the conditions for such availability set forth in the
|
||||
Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
|
||||
version 2 with the GNU Classpath Exception, which is available at
|
||||
https://www.gnu.org/software/classpath/license.html.
|
||||
|
||||
SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
||||
-->
|
||||
<!DOCTYPE glassfish-web-app PUBLIC "-//GlassFish.org//DTD GlassFish Application Server 3.1 Servlet 3.0//EN" "http://glassfish.org/dtds/glassfish-web-app_3_0-1.dtd">
|
||||
<glassfish-web-app error-url="">
|
||||
<class-loader delegate="true"/>
|
||||
<jsp-config>
|
||||
<property name="keepgenerated" value="true">
|
||||
<description>Keep a copy of the generated servlet class' java code.</description>
|
||||
</property>
|
||||
</jsp-config>
|
||||
</glassfish-web-app>
|
@@ -0,0 +1,23 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns="http://java.sun.com/xml/ns/javaee"
|
||||
xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
|
||||
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
|
||||
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
|
||||
version="2.5">
|
||||
<servlet>
|
||||
<servlet-name>Faces Servlet</servlet-name>
|
||||
<servlet-class>jakarta.faces.webapp.FacesServlet</servlet-class>
|
||||
</servlet>
|
||||
<servlet-mapping>
|
||||
<servlet-name>Faces Servlet</servlet-name>
|
||||
<url-pattern>/faces/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
<welcome-file-list>
|
||||
<welcome-file>faces/index.xhtml</welcome-file>
|
||||
</welcome-file-list>
|
||||
<context-param>
|
||||
<param-name>jakarta.faces.PROJECT_STAGE</param-name>
|
||||
<param-value>Development</param-value>
|
||||
</context-param>
|
||||
</web-app>
|
@@ -0,0 +1,10 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>Start Page</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
</head>
|
||||
<body>
|
||||
<h1>Hello World!</h1>
|
||||
</body>
|
||||
</html>
|
@@ -0,0 +1,30 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml"
|
||||
xmlns:f="http://java.sun.com/jsf/core"
|
||||
xmlns:h="http://java.sun.com/jsf/html">
|
||||
<h:head>
|
||||
<title>#{msgs.title}</title>
|
||||
</h:head>
|
||||
<h:body>
|
||||
<h:form>
|
||||
<h3>#{msgs.heading}</h3>
|
||||
<p>
|
||||
<h:outputFormat value="#{msgs.currentScore}">
|
||||
<f:param value="#{quizBean.score}"/>
|
||||
</h:outputFormat>
|
||||
</p>
|
||||
<p>#{msgs.guessNext}</p>
|
||||
<p>#{quizBean.current.sequence}</p>
|
||||
<p>
|
||||
#{msgs.answer}
|
||||
<h:inputText value="#{quizBean.answer}"/>
|
||||
</p>
|
||||
<p><h:commandButton value="#{msgs.next}"/></p>
|
||||
</h:form>
|
||||
<h:form>
|
||||
<label>#{msgs.currentLocale} </label> <h:commandButton value="#{msgs.changeLocale}" action="#{quizBean.setLanguage}"/>
|
||||
</h:form>
|
||||
</h:body>
|
||||
</html>
|
Reference in New Issue
Block a user