summaryrefslogtreecommitdiffstats
path: root/sandbox/lresende/sca/samples/store-jsf/src
diff options
context:
space:
mode:
Diffstat (limited to 'sandbox/lresende/sca/samples/store-jsf/src')
-rw-r--r--sandbox/lresende/sca/samples/store-jsf/src/main/java/beans/Catalog.java56
-rw-r--r--sandbox/lresende/sca/samples/store-jsf/src/main/java/beans/Product.java56
-rw-r--r--sandbox/lresende/sca/samples/store-jsf/src/main/webapp/WEB-INF/faces-config.xml31
-rw-r--r--sandbox/lresende/sca/samples/store-jsf/src/main/webapp/WEB-INF/lib/ajax4jsf-1.1.1.jarbin0 -> 1262524 bytes
-rw-r--r--sandbox/lresende/sca/samples/store-jsf/src/main/webapp/WEB-INF/web.xml31
-rw-r--r--sandbox/lresende/sca/samples/store-jsf/src/main/webapp/catalog.jsp82
6 files changed, 256 insertions, 0 deletions
diff --git a/sandbox/lresende/sca/samples/store-jsf/src/main/java/beans/Catalog.java b/sandbox/lresende/sca/samples/store-jsf/src/main/java/beans/Catalog.java
new file mode 100644
index 0000000000..01e4a0d481
--- /dev/null
+++ b/sandbox/lresende/sca/samples/store-jsf/src/main/java/beans/Catalog.java
@@ -0,0 +1,56 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package beans;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class Catalog {
+ Product[] products;
+
+ public Catalog() {
+ products = new Product[3];
+ products[0] = new Product("Apple", 2.99);
+ products[1] = new Product("Orange", 3.55);
+ products[2] = new Product("Pear", 1.55);
+ }
+
+ public Product[] getProducts() {
+ return products;
+ }
+
+ public void setProducts(Product[] products) {
+ this.products = products;
+ }
+
+ public List getProductsInCart() {
+ List productsInCart = new ArrayList();
+ double total = 0.0;
+ for (int i = 0; i < products.length; i++) {
+ Product product = products[i];
+ if (product.isInCart()) {
+ productsInCart.add(product);
+ total += product.getPrice();
+ }
+ }
+ productsInCart.add(new Product("Total", total));
+ return productsInCart;
+ }
+
+}
diff --git a/sandbox/lresende/sca/samples/store-jsf/src/main/java/beans/Product.java b/sandbox/lresende/sca/samples/store-jsf/src/main/java/beans/Product.java
new file mode 100644
index 0000000000..9f3df2f95c
--- /dev/null
+++ b/sandbox/lresende/sca/samples/store-jsf/src/main/java/beans/Product.java
@@ -0,0 +1,56 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package beans;
+
+public class Product {
+ String name;
+ double price;
+ boolean inCart;
+
+ public Product(String name, double price) {
+ this.name = name;
+ this.price = price;
+ this.inCart = false;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public double getPrice() {
+ return price;
+ }
+
+ public void setPrice(double price) {
+ this.price = price;
+ }
+
+ public boolean isInCart() {
+ return inCart;
+ }
+
+ public void setInCart(boolean inCart) {
+ this.inCart = inCart;
+ }
+
+}
diff --git a/sandbox/lresende/sca/samples/store-jsf/src/main/webapp/WEB-INF/faces-config.xml b/sandbox/lresende/sca/samples/store-jsf/src/main/webapp/WEB-INF/faces-config.xml
new file mode 100644
index 0000000000..1dd376a58f
--- /dev/null
+++ b/sandbox/lresende/sca/samples/store-jsf/src/main/webapp/WEB-INF/faces-config.xml
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+-->
+<!DOCTYPE faces-config PUBLIC
+ "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.1//EN"
+ "http://java.sun.com/dtd/web-facesconfig_1_1.dtd">
+
+<faces-config>
+ <managed-bean>
+ <managed-bean-name>catalog</managed-bean-name>
+ <managed-bean-class>beans.Catalog</managed-bean-class>
+ <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+
+</faces-config>
diff --git a/sandbox/lresende/sca/samples/store-jsf/src/main/webapp/WEB-INF/lib/ajax4jsf-1.1.1.jar b/sandbox/lresende/sca/samples/store-jsf/src/main/webapp/WEB-INF/lib/ajax4jsf-1.1.1.jar
new file mode 100644
index 0000000000..347b0d2066
--- /dev/null
+++ b/sandbox/lresende/sca/samples/store-jsf/src/main/webapp/WEB-INF/lib/ajax4jsf-1.1.1.jar
Binary files differ
diff --git a/sandbox/lresende/sca/samples/store-jsf/src/main/webapp/WEB-INF/web.xml b/sandbox/lresende/sca/samples/store-jsf/src/main/webapp/WEB-INF/web.xml
new file mode 100644
index 0000000000..a39a51eefc
--- /dev/null
+++ b/sandbox/lresende/sca/samples/store-jsf/src/main/webapp/WEB-INF/web.xml
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!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 id="WebApp_ID">
+ <display-name>SkeletonProject</display-name>
+ <filter>
+ <filter-name>ajax4jsf</filter-name>
+ <display-name>Ajax4jsf Filter</display-name>
+ <filter-class>org.ajax4jsf.Filter</filter-class>
+ </filter>
+ <filter-mapping>
+ <filter-name>ajax4jsf</filter-name>
+ <servlet-name>Faces Servlet</servlet-name>
+ </filter-mapping>
+ <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>
+ <servlet-mapping>
+ <servlet-name>Faces Servlet</servlet-name>
+ <url-pattern>*.faces</url-pattern>
+ </servlet-mapping>
+
+ <welcome-file-list>
+ <welcome-file>catalog.jsp</welcome-file>
+ </welcome-file-list>
+</web-app>
diff --git a/sandbox/lresende/sca/samples/store-jsf/src/main/webapp/catalog.jsp b/sandbox/lresende/sca/samples/store-jsf/src/main/webapp/catalog.jsp
new file mode 100644
index 0000000000..d456bedcc0
--- /dev/null
+++ b/sandbox/lresende/sca/samples/store-jsf/src/main/webapp/catalog.jsp
@@ -0,0 +1,82 @@
+<%--
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+--%>
+<%@taglib uri="http://java.sun.com/jsf/html" prefix="h"%><%@taglib
+ uri="http://java.sun.com/jsf/core" prefix="f"%><%@taglib
+ uri="https://ajax4jsf.dev.java.net/ajax" prefix="a4j"%><%@ 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>Basic JSF/Ajax sample</title>
+</head>
+<body>
+
+<f:view>
+ <h:form>
+ <h:outputText value="Store" style="font-size: 28px"/>
+ <h:outputText value="Catalog" style="font-size: 24px"/>
+ <h:dataTable border="0" value="#{catalog.products}" var="item">
+ <h:column id="column1">
+ <h:outputText value="#{item.name}"></h:outputText>
+ <f:facet name="header">
+ <h:outputText value="Product"></h:outputText>
+ </f:facet>
+ </h:column>
+ <h:column id="column2">
+ <h:outputText value="#{item.price}">
+ <f:convertNumber type="currency" currencySymbol="$" />
+ </h:outputText>
+ <f:facet name="header">
+ <h:outputText value="Price"></h:outputText>
+ </f:facet>
+ </h:column>
+ <h:column id="column3">
+ <f:facet name="header">
+ <h:outputText value=""></h:outputText>
+ </f:facet>
+ <h:selectBooleanCheckbox value="#{item.inCart}"></h:selectBooleanCheckbox>
+ </h:column>
+ </h:dataTable>
+ <a4j:commandButton value="Add to Cart" reRender="cart"></a4j:commandButton>
+ </h:form>
+
+ <br>
+
+ <h:outputText value="Your Cart" style="font-size: 24px"/>
+ <h:dataTable border="1" value="#{catalog.productsInCart}" var="item" id="cart">
+ <h:column id="column1">
+ <h:outputText value="#{item.name}"></h:outputText>
+ <f:facet name="header">
+ <h:outputText value=""></h:outputText>
+ </f:facet>
+ </h:column>
+ <h:column id="column2">
+ <h:outputText value="#{item.price}">
+ <f:convertNumber type="currency" currencySymbol="$" />
+ </h:outputText>
+ <f:facet name="header">
+ <h:outputText value=""></h:outputText>
+ </f:facet>
+ </h:column>
+ </h:dataTable>
+
+</f:view>
+</body>
+</html> \ No newline at end of file