You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by jl...@apache.org on 2022/04/25 15:06:44 UTC
[tomee] branch master updated: TOMEE-3923 Remove CODI arquillian tests and examples as it's not been maintained for almost 10 years
This is an automated email from the ASF dual-hosted git repository.
jlmonteiro pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/tomee.git
The following commit(s) were added to refs/heads/master by this push:
new 7840cd78fa TOMEE-3923 Remove CODI arquillian tests and examples as it's not been maintained for almost 10 years
7840cd78fa is described below
commit 7840cd78fa51372baae7eec52919f3a6d5dbc38f
Author: Jean-Louis Monteiro <jl...@tomitribe.com>
AuthorDate: Mon Apr 25 17:06:36 2022 +0200
TOMEE-3923 Remove CODI arquillian tests and examples as it's not been maintained for almost 10 years
---
.../arquillian-tomee-codi-tests/pom.xml | 37 --
.../extcdi/start/MyFacesExtCdiDeploymentTest.java | 65 ---
.../src/test/resources/arquillian.xml | 80 ----
arquillian/arquillian-tomee-tests/pom.xml | 1 -
examples/myfaces-codi-demo/README.adoc | 77 ----
examples/myfaces-codi-demo/README_es.adoc | 79 ----
examples/myfaces-codi-demo/README_pt.adoc | 77 ----
examples/myfaces-codi-demo/pom.xml | 133 ------
.../superbiz/myfaces/CustomJsfModuleConfig.java | 34 --
.../org/superbiz/myfaces/CustomProjectStage.java | 32 --
.../org/superbiz/myfaces/DebugPhaseListener.java | 54 ---
.../myfaces/domain/AbstractDomainObject.java | 44 --
.../java/org/superbiz/myfaces/domain/Comment.java | 54 ---
.../java/org/superbiz/myfaces/domain/Feedback.java | 70 ---
.../java/org/superbiz/myfaces/domain/User.java | 104 -----
.../myfaces/domain/validation/DifferentName.java | 39 --
.../domain/validation/DifferentNameValidator.java | 34 --
.../superbiz/myfaces/domain/validation/Full.java | 27 --
.../superbiz/myfaces/domain/validation/Name.java | 49 ---
.../myfaces/domain/validation/Partial.java | 23 -
.../myfaces/domain/validation/UniqueUserName.java | 23 -
.../domain/validation/UniqueUserNameValidator.java | 42 --
.../myfaces/domain/validation/UserName.java | 45 --
.../myfaces/repository/FeedbackRepository.java | 25 --
.../myfaces/repository/GenericRepository.java | 37 --
.../superbiz/myfaces/repository/Repository.java | 42 --
.../myfaces/repository/UserRepository.java | 26 --
.../jpa/AbstractGenericJpaRepository.java | 97 -----
.../repository/jpa/EntityManagerProducer.java | 48 ---
.../repository/jpa/JpaFeedbackRepository.java | 29 --
.../myfaces/repository/jpa/JpaUserRepository.java | 44 --
.../myfaces/startup/ExtValLifecycleFactory.java | 121 ------
.../myfaces/startup/ModuleStartupObserver.java | 39 --
.../myfaces/startup/SampleDataStartupObserver.java | 60 ---
.../org/superbiz/myfaces/view/FeedbackPage.java | 77 ----
.../java/org/superbiz/myfaces/view/InfoPage.java | 37 --
.../java/org/superbiz/myfaces/view/MenuBean.java | 59 ---
.../superbiz/myfaces/view/RegistrationPage.java | 101 -----
.../java/org/superbiz/myfaces/view/UserHolder.java | 55 ---
.../org/superbiz/myfaces/view/config/Pages.java | 66 ---
.../view/security/LoginAccessDecisionVoter.java | 50 ---
.../org/superbiz/myfaces/view/util/InfoBean.java | 128 ------
.../src/main/resources/META-INF/persistence.xml | 46 --
...ns.cdi.core.api.projectstage.ProjectStageHolder | 18 -
.../org/superbiz/myfaces/i18n/messages.properties | 60 ---
.../src/main/webapp/WEB-INF/beans.xml | 24 --
.../src/main/webapp/WEB-INF/faces-config.xml | 41 --
.../src/main/webapp/WEB-INF/web.xml | 40 --
.../src/main/webapp/layout/main-template.xhtml | 143 ------
.../src/main/webapp/layout/menu.xhtml | 32 --
.../src/main/webapp/pages/about.xhtml | 56 ---
.../src/main/webapp/pages/index.xhtml | 68 ---
.../src/main/webapp/pages/login.xhtml | 48 ---
.../src/main/webapp/pages/registration.xhtml | 57 ---
.../main/webapp/pages/secure/feedbackList.xhtml | 65 ---
.../src/main/webapp/resources/images/codi_logo.png | Bin 23571 -> 0 bytes
.../main/webapp/resources/images/myfaces_logo.jpg | Bin 11720 -> 0 bytes
.../resources/images/slices/code_section.png | Bin 1390 -> 0 bytes
.../main/webapp/resources/images/slices/footer.png | Bin 387 -> 0 bytes
.../src/main/webapp/resources/images/slices/h2.png | Bin 1515 -> 0 bytes
.../resources/images/slices/left_menu_bottom.png | Bin 1475 -> 0 bytes
.../resources/images/slices/left_menu_expand.gif | Bin 163 -> 0 bytes
.../images/slices/left_menu_expand_hover.gif | Bin 169 -> 0 bytes
.../images/slices/left_menu_expand_selected.gif | Bin 170 -> 0 bytes
.../resources/images/slices/left_menu_option.gif | Bin 85 -> 0 bytes
.../images/slices/left_menu_option_hover.gif | Bin 104 -> 0 bytes
.../resources/images/slices/left_menu_top.png | Bin 17394 -> 0 bytes
.../images/slices/logo_banner_container.png | Bin 1346 -> 0 bytes
.../resources/images/slices/main_space_list.gif | Bin 84 -> 0 bytes
.../webapp/resources/images/slices/table_head.png | Bin 1393 -> 0 bytes
.../resources/images/slices/table_head_dark.png | Bin 1401 -> 0 bytes
.../webapp/resources/images/slices/top_menu.png | Bin 1426 -> 0 bytes
.../resources/images/slices/top_menu_hover.png | Bin 284 -> 0 bytes
.../webapp/resources/images/slices/transparent.gif | Bin 53 -> 0 bytes
.../src/main/webapp/resources/styles/base.css | 192 ---------
.../src/main/webapp/resources/styles/theme.css | 480 ---------------------
examples/pom.xml | 1 -
77 files changed, 3735 deletions(-)
diff --git a/arquillian/arquillian-tomee-tests/arquillian-tomee-codi-tests/pom.xml b/arquillian/arquillian-tomee-tests/arquillian-tomee-codi-tests/pom.xml
deleted file mode 100644
index 71760876de..0000000000
--- a/arquillian/arquillian-tomee-tests/arquillian-tomee-codi-tests/pom.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?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.
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- <modelVersion>4.0.0</modelVersion>
-
- <parent>
- <artifactId>arquillian-tomee-tests</artifactId>
- <groupId>org.apache.tomee</groupId>
- <version>9.0.0-M8-SNAPSHOT</version>
- </parent>
-
- <artifactId>arquillian-tomee-codi-tests</artifactId>
- <name>TomEE :: Arquillian Adaptors Parent :: Tests :: CODI</name>
-
- <dependencies>
- <dependency>
- <groupId>org.apache.myfaces.extensions.cdi.bundles</groupId>
- <artifactId>myfaces-extcdi-bundle-jsf20</artifactId>
- <version>1.0.6</version>
- </dependency>
- </dependencies>
-</project>
diff --git a/arquillian/arquillian-tomee-tests/arquillian-tomee-codi-tests/src/test/java/org/apache/openejb/arquillian/tests/myfaces/extcdi/start/MyFacesExtCdiDeploymentTest.java b/arquillian/arquillian-tomee-tests/arquillian-tomee-codi-tests/src/test/java/org/apache/openejb/arquillian/tests/myfaces/extcdi/start/MyFacesExtCdiDeploymentTest.java
deleted file mode 100644
index 225c81f745..0000000000
--- a/arquillian/arquillian-tomee-tests/arquillian-tomee-codi-tests/src/test/java/org/apache/openejb/arquillian/tests/myfaces/extcdi/start/MyFacesExtCdiDeploymentTest.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/**
- * 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 org.apache.openejb.arquillian.tests.myfaces.extcdi.start;
-
-import org.apache.myfaces.extensions.cdi.core.api.projectstage.ProjectStage;
-import org.apache.myfaces.extensions.cdi.jsf.impl.projectstage.JsfProjectStageProducer;
-import org.apache.ziplock.JarLocation;
-import org.jboss.arquillian.container.test.api.Deployment;
-import org.jboss.arquillian.junit.Arquillian;
-import org.jboss.shrinkwrap.api.ArchivePaths;
-import org.jboss.shrinkwrap.api.ShrinkWrap;
-import org.jboss.shrinkwrap.api.asset.EmptyAsset;
-import org.jboss.shrinkwrap.api.asset.StringAsset;
-import org.jboss.shrinkwrap.api.spec.WebArchive;
-import org.jboss.shrinkwrap.descriptor.api.Descriptors;
-import org.jboss.shrinkwrap.descriptor.api.webapp30.WebAppDescriptor;
-import org.jboss.shrinkwrap.descriptor.api.webcommon30.WebAppVersionType;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-
-import jakarta.enterprise.event.Observes;
-import jakarta.enterprise.inject.spi.Extension;
-import jakarta.enterprise.inject.spi.ProcessAnnotatedType;
-import jakarta.inject.Inject;
-
-import static org.junit.Assert.assertEquals;
-
-@RunWith(Arquillian.class)
-public class MyFacesExtCdiDeploymentTest {
-
- @Inject
- private ProjectStage projectStage;
-
- @Deployment
- public static WebArchive getArchive() {
- final WebAppDescriptor descriptor = Descriptors.create(WebAppDescriptor.class).version(WebAppVersionType._3_0);
- // web.xml params is not supported by default
- // descriptor.contextParam(ProjectStage.PROJECT_STAGE_PARAM_NAME, ProjectStage.SystemTest.name());
-
- return ShrinkWrap.create(WebArchive.class, "MyFacesExtCdiDeploymentTest.war")
- .addAsLibraries(JarLocation.jarLocation(JsfProjectStageProducer.class)) // codi
- .setWebXML(new StringAsset(descriptor.exportAsString()))
- .addAsWebInfResource(EmptyAsset.INSTANCE, ArchivePaths.create("beans.xml"));
- }
-
- @Test
- public void testProjectStage() throws Exception {
- assertEquals(ProjectStage.Production, projectStage);
- }
-}
-
diff --git a/arquillian/arquillian-tomee-tests/arquillian-tomee-codi-tests/src/test/resources/arquillian.xml b/arquillian/arquillian-tomee-tests/arquillian-tomee-codi-tests/src/test/resources/arquillian.xml
deleted file mode 100644
index 2515be522a..0000000000
--- a/arquillian/arquillian-tomee-tests/arquillian-tomee-codi-tests/src/test/resources/arquillian.xml
+++ /dev/null
@@ -1,80 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
-<!--
-
- 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.
--->
-<arquillian xmlns="http://jboss.org/schema/arquillian"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://jboss.org/schema/arquillian http://jboss.org/schema/arquillian/arquillian_1_0.xsd">
- <container qualifier="tomee-embedded" default="true">
- <configuration>
- <property name="httpPort">-1</property>
- <property name="stopPort">-1</property>
- <property name="dir">target/apache-tomee-remote</property>
- <property name="appWorkingDir">target/arquillian-test-working-dir</property>
- <property name="properties">
- My\ DataSource.JdbcUrl = jdbc:hsqldb:mem:hsqldb
- My\ Unmanaged\ DataSource.JdbcUrl = jdbc:hsqldb:mem:hsqldb
- openejb.classloader.forced-load=org.apache.openejb.arquillian.tests
- </property>
- </configuration>
- </container>
- <container qualifier="tomee-remote">
- <configuration>
- <property name="httpPort">-1</property>
- <property name="ajpPort">-1</property>
- <property name="stopPort">-1</property>
- <property name="dir">target/apache-tomee-remote</property>
- <property name="appWorkingDir">target/arquillian-test-working-dir</property>
- <property name="simpleLog">true</property>
- <property name="properties">
- My\ DataSource.JdbcUrl = jdbc:hsqldb:mem:hsqldb
- My\ Unmanaged\ DataSource.JdbcUrl = jdbc:hsqldb:mem:hsqldb
- openejb.classloader.forced-load=org.apache.openejb.arquillian.tests.
- </property>
- </configuration>
- </container>
- <container qualifier="tomee-remote-secpol">
- <configuration>
- <property name="httpPort">-1</property>
- <property name="ajpPort">-1</property>
- <property name="stopPort">-1</property>
- <property name="dir">target/apache-tomee-remote</property>
- <property name="appWorkingDir">target/arquillian-test-working-dir</property>
- <property name="simpleLog">true</property>
- <property name="properties">
- My\ DataSource.JdbcUrl = jdbc:hsqldb:mem:hsqldb
- My\ Unmanaged\ DataSource.JdbcUrl = jdbc:hsqldb:mem:hsqldb
- openejb.classloader.forced-load=org.apache.openejb.arquillian.tests.
- jakarta.security.jacc.policy.provider=sun.security.provider.PolicyFile
- </property>
- </configuration>
- </container>
- <container qualifier="tomee-webapp">
- <configuration>
- <property name="httpPort">-1</property>
- <property name="ajpPort">-1</property>
- <property name="stopPort">-1</property>
- <property name="dir">target/apache-tomee-remote</property>
- <property name="appWorkingDir">target/arquillian-test-working-dir</property>
- <property name="properties">
- My\ DataSource.JdbcUrl = jdbc:hsqldb:mem:hsqldb
- My\ Unmanaged\ DataSource.JdbcUrl = jdbc:hsqldb:mem:hsqldb
- openejb.classloader.forced-load=org.apache.openejb.arquillian.tests.
- </property>
- </configuration>
- </container>
-</arquillian>
\ No newline at end of file
diff --git a/arquillian/arquillian-tomee-tests/pom.xml b/arquillian/arquillian-tomee-tests/pom.xml
index 1f79ebd1d3..dfe05bc6a5 100644
--- a/arquillian/arquillian-tomee-tests/pom.xml
+++ b/arquillian/arquillian-tomee-tests/pom.xml
@@ -29,7 +29,6 @@
<module>arquillian-tomee-jaxrs-tests</module>
<module>arquillian-tomee-jaxws-tests</module>
<module>arquillian-tomee-jms-tests</module>
- <module>arquillian-tomee-codi-tests</module>
<module>arquillian-tomee-config-tests</module>
</modules>
diff --git a/examples/myfaces-codi-demo/README.adoc b/examples/myfaces-codi-demo/README.adoc
deleted file mode 100644
index 4cfe596371..0000000000
--- a/examples/myfaces-codi-demo/README.adoc
+++ /dev/null
@@ -1,77 +0,0 @@
-:index-group: Unrevised
-:jbake-type: page
-:jbake-status: status=published
-= MyFaces CODI Demo
-
-=== Steps to run the example
-
-[discrete]
-==== Build and start the demo:
-
-[source,bash]
-----
-mvn clean package tomee:run
-----
-
-
-==== Open:
-[source,java]
-----
-http://localhost:8080/myfaces-codi-demo-8.0.1-SNAPSHOT/
-----
-
-This example shows how to improve JSF2/CDI/BV/JPA applications with
-features provided by Apache MyFaces CODI and ExtVal.
-
-[discrete]
-==== Intro of MyFaces CODI and ExtVal
-
-The Apache MyFaces Extensions CDI project (aka CODI) hosts portable
-extensions for Contexts and Dependency Injection (CDI - JSR 299). CODI
-is a toolbox for your CDI application. Like CDI itself CODI is focused
-on type-safety. It is a modularized and extensible framework. So it’s
-easy to choose the needed parts to facilitate the daily work in your
-project.
-
-MyFaces Extensions Validator (aka ExtVal) is a JSF centric validation
-framework which is compatible with JSF 1.x and JSF 2.x. This example
-shows how it improves the default integration of Bean-Validation
-(JSR-303) with JSF2 as well as meta-data based cross-field validation.
-
-Illustrated Features
-
-* Apache MyFaces CODI
-
-* Type-safe view-config
-
-* Type-safe (custom) view-meta-data
-
-* Type-safe navigation
-
-* Type-safe (specialized) config
-
-* Type-safe custom project-stage
-
-* @WindowScoped
-
-* Controlling CODI scopes with WindowContext
-
-* @ViewAccessScoped
-
-* Manual conversation handling
-
-* Secured pages (AccessDecisionVoter)
-
-* @Transactional
-
-* I18n (fluent API)
-
-* Dependency-Injection for JSR303 (BV) constraint-validators
-
-* Dependency-Injection for JSF phase-listeners
-
-* Apache MyFaces ExtVal
-
-* Cross-Field validation (@Equals)
-
-* Type-safe group-validation (@BeanValidation) for JSF action-methods
diff --git a/examples/myfaces-codi-demo/README_es.adoc b/examples/myfaces-codi-demo/README_es.adoc
deleted file mode 100644
index 291fe875be..0000000000
--- a/examples/myfaces-codi-demo/README_es.adoc
+++ /dev/null
@@ -1,79 +0,0 @@
-:index-group: Unrevised
-:jbake-type: page
-:jbake-status: status=published
-= MyFaces CODI Demo
-
-
-=== Pasos para ejecutar el ejemplo
-
-[discrete]
-==== Construir y arrancar la demo:
-
-[source,bash]
-----
-mvn clean package tomee:run
-----
-
-
-==== Abrir:
-[source,java]
-----
-http://localhost:8080/myfaces-codi-demo-8.0.1-SNAPSHOT/
-----
-
-
-Este ejemplo muestra como mejorar aplicaciones JSF2/CDI/BV/JPA usando
-la funcionalidad proporcionada por Apache MyFaces CODI y ExtVal.
-
-[discrete]
-==== Introducción a MyFaces CODI y ExtVal
-
-El proyecto CDI de Extensiones de Apache MyFaces (también conocido como CODI)
-aloja extensiones portábles para Contextos e Inyección de Dependencias (CDI - JSR 299). CODI
-es una caja de herramientas para su aplicación CDI. Al igual que CDI, CODI está enfocado
-en seguridad de tipo (type-safety). Es un marco modularizado y extensible. Entonces es
-Fácil elegir las piezas necesarias para facilitar el trabajo diario en su proyecto.
-
-MyFaces Extensions Validator (también conocido como ExtVal) es un framework centrado
-en validación JSF que es compatible con JSF 1.xy JSF 2.x. Este ejemplo
-muestra cómo mejorar la integración predeterminada de Bean-Validation
-(JSR-303) con JSF2 y validación de campo cruzado (cross-field) basada en metadatos.
-
-
-Illustrated Features
-
-* Apache MyFaces CODI
-
-* Type-safe view-config
-
-* Type-safe (custom) view-meta-data
-
-* Type-safe navigation
-
-* Type-safe (specialized) config
-
-* Type-safe custom project-stage
-
-* @WindowScoped
-
-* Controlling CODI scopes with WindowContext
-
-* @ViewAccessScoped
-
-* Manual conversation handling
-
-* Secured pages (AccessDecisionVoter)
-
-* @Transactional
-
-* I18n (fluent API)
-
-* Dependency-Injection for JSR303 (BV) constraint-validators
-
-* Dependency-Injection for JSF phase-listeners
-
-* Apache MyFaces ExtVal
-
-* Cross-Field validation (@Equals)
-
-* Type-safe group-validation (@BeanValidation) for JSF action-methods
diff --git a/examples/myfaces-codi-demo/README_pt.adoc b/examples/myfaces-codi-demo/README_pt.adoc
deleted file mode 100644
index 288927252c..0000000000
--- a/examples/myfaces-codi-demo/README_pt.adoc
+++ /dev/null
@@ -1,77 +0,0 @@
-:index-group: Unrevised
-:jbake-type: page
-:jbake-status: status=published
-= MyFaces CODI Demo
-
-
-== Passos para executar o exemplo
-
-[discrete]
-== Crie e inicie a demonstração:
-
-[source,bash]
-----
-mvn clean package tomee:run
-----
-
-==== Abrir:
-[source,java]
-----
-http://localhost:8080/myfaces-codi-demo-8.0.5-SNAPSHOT/
-----
-
-Este exemplo mostra como melhorar aplicativos JSF2/CDI/BV/JPA usando
-a funcionalidade fornecida pelo Apache MyFaces CODI e ExtVal.
-
-[discrete]
-=== Introdução ao MyFaces CODI e ExtVal
-
-O projeto CDI do Apache MyFaces Extensions (também conhecido como CODI)
-abriga extensões portáteis para contextos e injeção de dependência (CDI - JSR 299). CODI
-É uma caixa de ferramentas para o seu aplicativo CDI. Como o CDI, o CODI está focado
-em segurança de tipo. É uma estrutura modularizada e extensível. Então é
-fácil de escolher as peças necessárias para facilitar o trabalho diário em seu projeto.
-
-O MyFaces Extensions Validator (também conhecido como ExtVal) é uma estrutura focada
-na validação JSF compatível com JSF 1.xe JSF 2.x. Este exemplo
-mostra como melhorar a integração padrão do Bean-Validation
-(JSR-303) com JSF2 e validação de campos cruzados com base em metadados.
-
-
-Recursos ilustrados
-
-* Apache MyFaces CODI
-
-* Type-safe view-config
-
-* Type-safe (custom) view-meta-data
-
-* Type-safe navigation
-
-* Type-safe (specialized) config
-
-* Type-safe custom project-stage
-
-* @WindowScoped
-
-* Controlling CODI scopes with WindowContext
-
-* @ViewAccessScoped
-
-* Manual conversation handling
-
-* Secured pages (AccessDecisionVoter)
-
-* @Transactional
-
-* I18n (fluent API)
-
-* Dependency-Injection for JSR303 (BV) constraint-validators
-
-* Dependency-Injection for JSF phase-listeners
-
-* Apache MyFaces ExtVal
-
-* Cross-Field validation (@Equals)
-
-* Type-safe group-validation (@BeanValidation) for JSF action-methods
\ No newline at end of file
diff --git a/examples/myfaces-codi-demo/pom.xml b/examples/myfaces-codi-demo/pom.xml
deleted file mode 100644
index 4d7551a164..0000000000
--- a/examples/myfaces-codi-demo/pom.xml
+++ /dev/null
@@ -1,133 +0,0 @@
-<?xml version="1.0"?>
-<!-- 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. -->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.superbiz</groupId>
- <artifactId>myfaces-codi-demo</artifactId>
- <name>TomEE :: Examples :: JSF2/CDI/BV/JPA/CODI</name>
- <version>9.0.0-M8-SNAPSHOT</version>
- <packaging>war</packaging>
- <properties>
- <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
- <myfaces2.version>2.2.4</myfaces2.version>
- <myfaces.codi.version>1.0.5</myfaces.codi.version>
- <extval.version>2.0.8</extval.version>
- </properties>
- <build>
- <defaultGoal>install</defaultGoal>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-compiler-plugin</artifactId>
- <version>3.5.1</version>
- <configuration>
- <source>1.8</source>
- <target>1.8</target>
- </configuration>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-war-plugin</artifactId>
- <version>3.1.0</version>
- <configuration>
- <failOnMissingWebXml>false</failOnMissingWebXml>
- </configuration>
- </plugin>
- <plugin>
- <groupId>org.apache.tomee.maven</groupId>
- <artifactId>tomee-maven-plugin</artifactId>
- <version>9.0.0-M8-SNAPSHOT</version>
- </plugin>
-
- </plugins>
- </build>
- <repositories>
- <repository>
- <id>prime-repo</id>
- <name>Prime Technology Maven Repository</name>
- <url>https://repository.primefaces.org/</url>
- <layout>default</layout>
- </repository>
- <repository>
- <id>apache-m2-snapshot</id>
- <name>Apache Snapshot Repository</name>
- <url>https://repository.apache.org/content/groups/snapshots</url>
- </repository>
- </repositories>
- <dependencies>
- <dependency>
- <groupId>org.apache.tomee</groupId>
- <artifactId>jakartaee-api</artifactId>
- <version>9.1-M2-SNAPSHOT</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.myfaces.extensions.cdi.bundles</groupId>
- <artifactId>myfaces-extcdi-bundle-jsf20</artifactId>
- <version>${myfaces.codi.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.myfaces.extensions.validator</groupId>
- <artifactId>myfaces-extval-core</artifactId>
- <version>${extval.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.myfaces.extensions.validator.validation-modules</groupId>
- <artifactId>myfaces-extval-property-validation</artifactId>
- <version>${extval.version}</version>
- <exclusions>
- <exclusion>
- <groupId>jakarta.persistence</groupId>
- <artifactId>persistence-api</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
- <dependency>
- <groupId>org.apache.myfaces.extensions.validator.validation-modules</groupId>
- <artifactId>myfaces-extval-bean-validation</artifactId>
- <version>${extval.version}</version>
- <exclusions>
- <exclusion>
- <groupId>jakarta.validation</groupId>
- <artifactId>validation-api</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
- <dependency>
- <groupId>org.apache.myfaces.core</groupId>
- <artifactId>myfaces-api</artifactId>
- <version>${myfaces2.version}</version>
- <scope>provided</scope>
- </dependency>
- <!-- 3rd party libs -->
- <dependency>
- <groupId>org.primefaces</groupId>
- <artifactId>primefaces</artifactId>
- <version>2.2</version>
- </dependency>
- </dependencies>
- <!--
- This section allows you to configure where to publish libraries for sharing.
- It is not required and may be deleted. For more information see:
- http://maven.apache.org/plugins/maven-deploy-plugin/
- -->
- <distributionManagement>
- <repository>
- <id>localhost</id>
- <url>file://${basedir}/target/repo/</url>
- </repository>
- <snapshotRepository>
- <id>localhost</id>
- <url>file://${basedir}/target/snapshot-repo/</url>
- </snapshotRepository>
- </distributionManagement>
-</project>
diff --git a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/CustomJsfModuleConfig.java b/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/CustomJsfModuleConfig.java
deleted file mode 100644
index 5f3d310207..0000000000
--- a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/CustomJsfModuleConfig.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * 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 org.superbiz.myfaces;
-
-import org.apache.myfaces.extensions.cdi.jsf.api.config.JsfModuleConfig;
-
-import jakarta.enterprise.inject.Specializes;
-
-@Specializes
-public class CustomJsfModuleConfig extends JsfModuleConfig {
-
- private static final long serialVersionUID = 1682809983274206270L;
-
- @Override
- public boolean isInvalidValueAwareMessageInterpolatorEnabled() {
- return false;
- }
-}
diff --git a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/CustomProjectStage.java b/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/CustomProjectStage.java
deleted file mode 100644
index 485f79392a..0000000000
--- a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/CustomProjectStage.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * 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 org.superbiz.myfaces;
-
-import org.apache.myfaces.extensions.cdi.core.api.projectstage.ProjectStage;
-import org.apache.myfaces.extensions.cdi.core.api.projectstage.ProjectStageHolder;
-
-public class CustomProjectStage implements ProjectStageHolder {
-
- public static final class Debugging extends ProjectStage {
-
- private static final long serialVersionUID = -8626602281649294170L;
- }
-
- public static final Debugging Debugging = new Debugging();
-}
diff --git a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/DebugPhaseListener.java b/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/DebugPhaseListener.java
deleted file mode 100644
index cdf22a9fa2..0000000000
--- a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/DebugPhaseListener.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * 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 org.superbiz.myfaces;
-
-import org.apache.myfaces.extensions.cdi.core.api.Advanced;
-import org.apache.myfaces.extensions.cdi.core.api.activation.ProjectStageActivated;
-import org.apache.myfaces.extensions.cdi.core.api.logging.Logger;
-import org.apache.myfaces.extensions.cdi.core.api.projectstage.ProjectStage;
-import org.apache.myfaces.extensions.cdi.jsf.api.listener.phase.JsfPhaseListener;
-
-import jakarta.faces.event.PhaseEvent;
-import jakarta.faces.event.PhaseId;
-import jakarta.faces.event.PhaseListener;
-import jakarta.inject.Inject;
-
-@ProjectStageActivated({ProjectStage.Development.class, CustomProjectStage.Debugging.class})
-
-@Advanced
-@JsfPhaseListener
-public class DebugPhaseListener implements PhaseListener {
-
- private static final long serialVersionUID = 5899542118538949019L;
-
- @Inject
- private Logger logger;
-
- public void beforePhase(PhaseEvent phaseEvent) {
- this.logger.info("before " + phaseEvent.getPhaseId());
- }
-
- public void afterPhase(PhaseEvent phaseEvent) {
- this.logger.info("after " + phaseEvent.getPhaseId());
- }
-
- public PhaseId getPhaseId() {
- return PhaseId.ANY_PHASE;
- }
-}
diff --git a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/domain/AbstractDomainObject.java b/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/domain/AbstractDomainObject.java
deleted file mode 100644
index ae87f35f2b..0000000000
--- a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/domain/AbstractDomainObject.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * 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 org.superbiz.myfaces.domain;
-
-import jakarta.persistence.GeneratedValue;
-import jakarta.persistence.Id;
-import jakarta.persistence.MappedSuperclass;
-import jakarta.persistence.Version;
-import java.io.Serializable;
-
-@MappedSuperclass
-public abstract class AbstractDomainObject implements Serializable {
-
- @Id
- @GeneratedValue
- private Long id;
-
- @Version
- private Long version;
-
- public boolean isTransient() {
- return this.version == null;
- }
-
- public Long getId() {
- return id;
- }
-}
diff --git a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/domain/Comment.java b/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/domain/Comment.java
deleted file mode 100644
index 5c5f2e5875..0000000000
--- a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/domain/Comment.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * 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 org.superbiz.myfaces.domain;
-
-import jakarta.persistence.Column;
-import jakarta.persistence.Entity;
-import jakarta.persistence.ManyToOne;
-
-@Entity
-public class Comment extends AbstractDomainObject {
-
- private static final long serialVersionUID = -5718296682587279635L;
-
- @Column(length = 2048)
- private String description;
-
- @ManyToOne(optional = false)
- private Feedback feedback;
-
- void setFeedback(Feedback feedback) {
- this.feedback = feedback;
- }
-
- /*
- * generated
- */
-
- public Comment() {
- }
-
- public String getDescription() {
- return description;
- }
-
- public void setDescription(String description) {
- this.description = description;
- }
-}
diff --git a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/domain/Feedback.java b/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/domain/Feedback.java
deleted file mode 100644
index 79d163caf6..0000000000
--- a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/domain/Feedback.java
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
- * 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 org.superbiz.myfaces.domain;
-
-import jakarta.persistence.CascadeType;
-import jakarta.persistence.Column;
-import jakarta.persistence.Entity;
-import jakarta.persistence.OneToMany;
-import java.util.ArrayList;
-import java.util.List;
-
-@Entity
-public class Feedback extends AbstractDomainObject {
-
- private static final long serialVersionUID = -431924785266663236L;
-
- @Column(nullable = false, length = 32)
- private String topic;
-
- @Column(length = 128)
- private String description;
-
- @OneToMany(mappedBy = "feedback", cascade = CascadeType.ALL)
- private List<Comment> comments = new ArrayList<Comment>();
-
- public void addComment(Comment comment) {
- comment.setFeedback(this);
- this.comments.add(comment);
- }
-
- /*
- * generated
- */
-
- public List<Comment> getComments() {
- return comments;
- }
-
- public String getTopic() {
- return topic;
- }
-
- public String getDescription() {
- return description;
- }
-
- public void setTopic(String topic) {
- this.topic = topic;
- }
-
- public void setDescription(String description) {
- this.description = description;
- }
-}
diff --git a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/domain/User.java b/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/domain/User.java
deleted file mode 100644
index 9f6787ee10..0000000000
--- a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/domain/User.java
+++ /dev/null
@@ -1,104 +0,0 @@
-/*
- * 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 org.superbiz.myfaces.domain;
-
-import org.superbiz.myfaces.domain.validation.DifferentName;
-import org.superbiz.myfaces.domain.validation.Name;
-import org.superbiz.myfaces.domain.validation.Partial;
-import org.superbiz.myfaces.domain.validation.UniqueUserName;
-import org.superbiz.myfaces.domain.validation.UserName;
-
-import jakarta.enterprise.inject.Typed;
-import jakarta.persistence.Column;
-import jakarta.persistence.Entity;
-import jakarta.persistence.NamedQuery;
-import jakarta.persistence.Table;
-import jakarta.validation.constraints.NotNull;
-import jakarta.validation.constraints.Size;
-
-@Table(name = "T_User")
-@Entity
-@NamedQuery(name = "findUserByName", query = "select u from User u where u.userName = :currentUser")
-@DifferentName(groups = Partial.class)
-@Typed()
-public class User extends AbstractDomainObject {
-
- private static final long serialVersionUID = 3810638653455000233L;
-
- @UserName(groups = UniqueUserName.class)
- @Column(nullable = false, length = 9, unique = true)
- private String userName;
-
- @Size(min = 2, max = 20, message = "invalid first name")
- @NotNull
- @Column
- private String firstName;
-
- @Column
- @Name(message = "invalid last name")
- private String lastName;
-
- @Column
- private String password;
-
- /*
- * generated
- */
-
- public User() {
- }
-
- public User(String userName, String firstName, String lastName) {
- this.userName = userName;
- this.firstName = firstName;
- this.lastName = lastName;
- }
-
- public String getUserName() {
- return userName;
- }
-
- public void setUserName(String userName) {
- this.userName = userName;
- }
-
- public String getFirstName() {
- return firstName;
- }
-
- public void setFirstName(String firstName) {
- this.firstName = firstName;
- }
-
- public String getLastName() {
- return lastName;
- }
-
- public void setLastName(String lastName) {
- this.lastName = lastName;
- }
-
- public String getPassword() {
- return password;
- }
-
- public void setPassword(String password) {
- this.password = password;
- }
-}
diff --git a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/domain/validation/DifferentName.java b/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/domain/validation/DifferentName.java
deleted file mode 100644
index bda8113f10..0000000000
--- a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/domain/validation/DifferentName.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * 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 org.superbiz.myfaces.domain.validation;
-
-import jakarta.validation.Constraint;
-import jakarta.validation.Payload;
-import java.lang.annotation.Retention;
-import java.lang.annotation.Target;
-
-import static java.lang.annotation.ElementType.TYPE;
-import static java.lang.annotation.RetentionPolicy.RUNTIME;
-
-@Constraint(validatedBy = DifferentNameValidator.class)
-@Target(TYPE)
-@Retention(RUNTIME)
-public @interface DifferentName {
-
- String message() default "invalid name";
-
- Class<?>[] groups() default {};
-
- Class<? extends Payload>[] payload() default {};
-}
diff --git a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/domain/validation/DifferentNameValidator.java b/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/domain/validation/DifferentNameValidator.java
deleted file mode 100644
index 9bfb40bdee..0000000000
--- a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/domain/validation/DifferentNameValidator.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * 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 org.superbiz.myfaces.domain.validation;
-
-import org.superbiz.myfaces.domain.User;
-
-import jakarta.validation.ConstraintValidator;
-import jakarta.validation.ConstraintValidatorContext;
-
-public class DifferentNameValidator implements ConstraintValidator<DifferentName, User> {
-
- public void initialize(final DifferentName differentName) {
- }
-
- public boolean isValid(final User person, final ConstraintValidatorContext constraintValidatorContext) {
- return person == null || !(person.getFirstName() != null && person.getFirstName().equals(person.getLastName()));
- }
-}
diff --git a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/domain/validation/Full.java b/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/domain/validation/Full.java
deleted file mode 100644
index f8eb8a17d8..0000000000
--- a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/domain/validation/Full.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- * 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 org.superbiz.myfaces.domain.validation;
-
-import jakarta.validation.GroupSequence;
-import jakarta.validation.groups.Default;
-
-@GroupSequence({Default.class, UniqueUserName.class})
-public interface Full {
-
-}
diff --git a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/domain/validation/Name.java b/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/domain/validation/Name.java
deleted file mode 100644
index 8c70158957..0000000000
--- a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/domain/validation/Name.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * 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 org.superbiz.myfaces.domain.validation;
-
-import jakarta.validation.Constraint;
-import jakarta.validation.Payload;
-import jakarta.validation.ReportAsSingleViolation;
-import jakarta.validation.constraints.NotNull;
-import jakarta.validation.constraints.Size;
-import java.lang.annotation.Retention;
-import java.lang.annotation.Target;
-
-import static java.lang.annotation.ElementType.ANNOTATION_TYPE;
-import static java.lang.annotation.ElementType.FIELD;
-import static java.lang.annotation.ElementType.METHOD;
-import static java.lang.annotation.RetentionPolicy.RUNTIME;
-
-@Size(min = 2, max = 20)
-@NotNull
-
-@Constraint(validatedBy = {})
-@ReportAsSingleViolation
-
-@Target({METHOD, FIELD, ANNOTATION_TYPE})
-@Retention(RUNTIME)
-public @interface Name {
-
- public abstract String message() default "invalid name";
-
- public abstract Class<?>[] groups() default {};
-
- public abstract Class<? extends Payload>[] payload() default {};
-}
\ No newline at end of file
diff --git a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/domain/validation/Partial.java b/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/domain/validation/Partial.java
deleted file mode 100644
index d2f54278b5..0000000000
--- a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/domain/validation/Partial.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- * 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 org.superbiz.myfaces.domain.validation;
-
-public interface Partial {
-
-}
\ No newline at end of file
diff --git a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/domain/validation/UniqueUserName.java b/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/domain/validation/UniqueUserName.java
deleted file mode 100644
index 955c58814d..0000000000
--- a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/domain/validation/UniqueUserName.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- * 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 org.superbiz.myfaces.domain.validation;
-
-public interface UniqueUserName {
-
-}
\ No newline at end of file
diff --git a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/domain/validation/UniqueUserNameValidator.java b/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/domain/validation/UniqueUserNameValidator.java
deleted file mode 100644
index bb1a8d74f9..0000000000
--- a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/domain/validation/UniqueUserNameValidator.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- * 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 org.superbiz.myfaces.domain.validation;
-
-import org.apache.myfaces.extensions.cdi.core.api.Advanced;
-import org.superbiz.myfaces.repository.UserRepository;
-
-import jakarta.enterprise.context.ApplicationScoped;
-import jakarta.inject.Inject;
-import jakarta.validation.ConstraintValidator;
-import jakarta.validation.ConstraintValidatorContext;
-
-@Advanced
-@ApplicationScoped
-public class UniqueUserNameValidator implements ConstraintValidator<UserName, String> {
-
- @Inject
- private UserRepository userRepository;
-
- public void initialize(UserName differentName) {
- }
-
- public boolean isValid(String userName, ConstraintValidatorContext constraintValidatorContext) {
- return this.userRepository.loadUser(userName) == null;
- }
-}
diff --git a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/domain/validation/UserName.java b/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/domain/validation/UserName.java
deleted file mode 100644
index 30e83e9c7f..0000000000
--- a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/domain/validation/UserName.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * 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 org.superbiz.myfaces.domain.validation;
-
-import jakarta.validation.Constraint;
-import jakarta.validation.Payload;
-import jakarta.validation.constraints.NotNull;
-import jakarta.validation.constraints.Size;
-import jakarta.validation.groups.Default;
-import java.lang.annotation.Retention;
-import java.lang.annotation.Target;
-
-import static java.lang.annotation.ElementType.FIELD;
-import static java.lang.annotation.RetentionPolicy.RUNTIME;
-
-@NotNull(groups = Default.class)
-@Size(min = 2, max = 9, message = "invalid name", groups = Default.class)
-
-@Constraint(validatedBy = UniqueUserNameValidator.class)
-@Target(FIELD)
-@Retention(RUNTIME)
-public @interface UserName {
-
- String message() default "user-name exists already";
-
- Class<?>[] groups() default {};
-
- Class<? extends Payload>[] payload() default {};
-}
diff --git a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/repository/FeedbackRepository.java b/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/repository/FeedbackRepository.java
deleted file mode 100644
index 6359bf5f59..0000000000
--- a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/repository/FeedbackRepository.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*
- * 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 org.superbiz.myfaces.repository;
-
-import org.superbiz.myfaces.domain.Feedback;
-
-public interface FeedbackRepository extends GenericRepository<Feedback> {
-
-}
diff --git a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/repository/GenericRepository.java b/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/repository/GenericRepository.java
deleted file mode 100644
index 230e74c2bb..0000000000
--- a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/repository/GenericRepository.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- * 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 org.superbiz.myfaces.repository;
-
-import org.superbiz.myfaces.domain.AbstractDomainObject;
-
-import java.io.Serializable;
-import java.util.List;
-
-public interface GenericRepository<T extends AbstractDomainObject> extends Serializable {
-
- void save(T entity);
-
- void remove(T entity);
-
- List<T> loadAll();
-
- T loadById(Long id);
-
- T createNewEntity();
-}
\ No newline at end of file
diff --git a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/repository/Repository.java b/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/repository/Repository.java
deleted file mode 100644
index 177da344c8..0000000000
--- a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/repository/Repository.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- * 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 org.superbiz.myfaces.repository;
-
-import org.apache.myfaces.extensions.cdi.jpa.api.Transactional;
-
-import jakarta.enterprise.context.RequestScoped;
-import jakarta.enterprise.inject.Stereotype;
-import java.lang.annotation.Documented;
-import java.lang.annotation.Retention;
-import java.lang.annotation.Target;
-
-import static java.lang.annotation.ElementType.TYPE;
-import static java.lang.annotation.RetentionPolicy.RUNTIME;
-
-@Stereotype
-
-@Target({TYPE})
-@Retention(RUNTIME)
-@Documented
-
-@RequestScoped
-@Transactional
-public @interface Repository {
-
-}
diff --git a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/repository/UserRepository.java b/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/repository/UserRepository.java
deleted file mode 100644
index 6489e7666f..0000000000
--- a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/repository/UserRepository.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- * 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 org.superbiz.myfaces.repository;
-
-import org.superbiz.myfaces.domain.User;
-
-public interface UserRepository extends GenericRepository<User> {
-
- User loadUser(String userName);
-}
diff --git a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/repository/jpa/AbstractGenericJpaRepository.java b/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/repository/jpa/AbstractGenericJpaRepository.java
deleted file mode 100644
index a6a2cde50b..0000000000
--- a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/repository/jpa/AbstractGenericJpaRepository.java
+++ /dev/null
@@ -1,97 +0,0 @@
-/*
- * 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 org.superbiz.myfaces.repository.jpa;
-
-import org.superbiz.myfaces.domain.AbstractDomainObject;
-import org.superbiz.myfaces.repository.GenericRepository;
-
-import jakarta.inject.Inject;
-import jakarta.persistence.EntityManager;
-import java.lang.reflect.ParameterizedType;
-import java.lang.reflect.Type;
-import java.util.List;
-
-/**
- * Abstract repository class which provides default implementations for common repository methods.
- */
-public abstract class AbstractGenericJpaRepository<T extends AbstractDomainObject> implements GenericRepository<T> {
-
- protected final Class<? extends AbstractDomainObject> entityClass;
-
- @Inject
- protected EntityManager entityManager;
-
- public AbstractGenericJpaRepository() {
- Class currentClass = getClass();
-
- if (currentClass.getName().contains("$$")) { //we are in a proxy
- currentClass = currentClass.getSuperclass();
- }
-
- for (Type interfaceClass : currentClass.getGenericInterfaces()) {
- for (Type genericInterfaceClass : ((Class) interfaceClass).getGenericInterfaces()) {
- if (genericInterfaceClass instanceof ParameterizedType &&
- GenericRepository.class.isAssignableFrom((Class) ((ParameterizedType) genericInterfaceClass).getRawType())) {
- for (Type parameterizedType : ((ParameterizedType) genericInterfaceClass).getActualTypeArguments()) {
- if (AbstractDomainObject.class.isAssignableFrom((Class) parameterizedType)) {
- this.entityClass = (Class<? extends AbstractDomainObject>) parameterizedType;
- return;
- }
- }
- }
- }
- }
-
- throw new IllegalStateException("Entity type of " + currentClass.getName() + " not detected!");
- }
-
- @Override
- public T createNewEntity() {
- try {
- return (T) this.entityClass.newInstance();
- } catch (Exception e) {
- throw new RuntimeException(e);
- }
- }
-
- public void save(T entity) {
- if (entity.isTransient()) {
- this.entityManager.persist(entity);
- } else {
- this.entityManager.merge(entity);
- }
- }
-
- public void remove(T entity) {
- if (entity.isTransient()) {
- throw new IllegalStateException("entity is not persistent");
- }
-
- this.entityManager.remove(loadById(entity.getId()));
- }
-
- public List<T> loadAll() {
- return (List<T>) this.entityManager.createQuery("select entity from " + this.entityClass.getSimpleName() + " entity")
- .getResultList();
- }
-
- public T loadById(Long id) {
- return (T) this.entityManager.find(this.entityClass, id);
- }
-}
\ No newline at end of file
diff --git a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/repository/jpa/EntityManagerProducer.java b/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/repository/jpa/EntityManagerProducer.java
deleted file mode 100644
index 8038359198..0000000000
--- a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/repository/jpa/EntityManagerProducer.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * 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 org.superbiz.myfaces.repository.jpa;
-
-import jakarta.enterprise.context.ApplicationScoped;
-import jakarta.enterprise.context.RequestScoped;
-import jakarta.enterprise.inject.Default;
-import jakarta.enterprise.inject.Disposes;
-import jakarta.enterprise.inject.Produces;
-import jakarta.persistence.EntityManager;
-import jakarta.persistence.EntityManagerFactory;
-import jakarta.persistence.PersistenceUnit;
-
-@ApplicationScoped
-public class EntityManagerProducer {
-
- @PersistenceUnit(unitName = "demoApplicationPU")
- private EntityManagerFactory entityManagerFactory;
-
- @Produces
- @Default
- @RequestScoped
- public EntityManager create() {
- return this.entityManagerFactory.createEntityManager();
- }
-
- public void dispose(@Disposes @Default EntityManager entityManager) {
- if (entityManager.isOpen()) {
- entityManager.close();
- }
- }
-}
diff --git a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/repository/jpa/JpaFeedbackRepository.java b/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/repository/jpa/JpaFeedbackRepository.java
deleted file mode 100644
index 673e4cefe1..0000000000
--- a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/repository/jpa/JpaFeedbackRepository.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * 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 org.superbiz.myfaces.repository.jpa;
-
-import org.superbiz.myfaces.domain.Feedback;
-import org.superbiz.myfaces.repository.FeedbackRepository;
-import org.superbiz.myfaces.repository.Repository;
-
-@Repository
-public class JpaFeedbackRepository extends AbstractGenericJpaRepository<Feedback> implements FeedbackRepository {
-
- private static final long serialVersionUID = -4140472572607337575L;
-}
\ No newline at end of file
diff --git a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/repository/jpa/JpaUserRepository.java b/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/repository/jpa/JpaUserRepository.java
deleted file mode 100644
index fa08163d19..0000000000
--- a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/repository/jpa/JpaUserRepository.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * 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 org.superbiz.myfaces.repository.jpa;
-
-import org.superbiz.myfaces.domain.User;
-import org.superbiz.myfaces.repository.Repository;
-import org.superbiz.myfaces.repository.UserRepository;
-
-import jakarta.persistence.Query;
-import java.util.List;
-
-@Repository
-public class JpaUserRepository extends AbstractGenericJpaRepository<User> implements UserRepository {
-
- private static final long serialVersionUID = 672568789774892077L;
-
- public User loadUser(String userName) {
- Query query = this.entityManager.createNamedQuery("findUserByName");
- query.setParameter("currentUser", userName);
-
- //just for the demo:
- List result = query.getResultList();
- if (result != null && result.size() == 1) {
- return (User) result.iterator().next();
- }
- return null;
- }
-}
\ No newline at end of file
diff --git a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/startup/ExtValLifecycleFactory.java b/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/startup/ExtValLifecycleFactory.java
deleted file mode 100644
index 4dbf4196b6..0000000000
--- a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/startup/ExtValLifecycleFactory.java
+++ /dev/null
@@ -1,121 +0,0 @@
-/*
- * 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 org.superbiz.myfaces.startup;
-
-import org.apache.myfaces.extensions.validator.core.DefaultExtValCoreConfiguration;
-import org.apache.myfaces.extensions.validator.core.ExtValCoreConfiguration;
-import org.apache.myfaces.extensions.validator.core.proxy.DefaultProxyHelper;
-import org.apache.myfaces.extensions.validator.core.proxy.ProxyHelper;
-import org.apache.myfaces.extensions.validator.core.startup.AbstractStartupListener;
-
-import jakarta.faces.FacesException;
-import jakarta.faces.context.FacesContext;
-import jakarta.faces.event.PhaseListener;
-import jakarta.faces.lifecycle.Lifecycle;
-import jakarta.faces.lifecycle.LifecycleFactory;
-import java.util.Iterator;
-
-//TODO remove it after upgrading to ExtVal r8+
-public class ExtValLifecycleFactory extends LifecycleFactory {
- private final LifecycleFactory wrapped;
-
- public ExtValLifecycleFactory(LifecycleFactory wrapped) {
- this.wrapped = wrapped;
- }
-
- @Override
- public void addLifecycle(String lifecycleId, Lifecycle lifecycle) {
- wrapped.addLifecycle(lifecycleId, lifecycle);
- }
-
- @Override
- public Lifecycle getLifecycle(String lifecycleId) {
- return new LifecycleWrapper(wrapped.getLifecycle(lifecycleId));
- }
-
- @Override
- public Iterator<String> getLifecycleIds() {
- return wrapped.getLifecycleIds();
- }
-
- @Override
- public LifecycleFactory getWrapped() {
- return wrapped;
- }
-
- private static class LifecycleWrapper extends Lifecycle {
- private final Lifecycle wrapped;
- private static boolean firstPhaseListener = true;
-
- private LifecycleWrapper(Lifecycle wrapped) {
- this.wrapped = wrapped;
- }
-
- @Override
- public void addPhaseListener(PhaseListener listener) {
- if (firstPhaseListener) {
- //forced order independent of any other config
- firstPhaseListener = false;
- wrapped.addPhaseListener(new ExtValStartupListener());
- }
- wrapped.addPhaseListener(listener);
- }
-
- @Override
- public void execute(FacesContext context) throws FacesException {
- wrapped.execute(context);
- }
-
- @Override
- public PhaseListener[] getPhaseListeners() {
- return wrapped.getPhaseListeners();
- }
-
- @Override
- public void removePhaseListener(PhaseListener listener) {
- wrapped.removePhaseListener(listener);
- }
-
- @Override
- public void render(FacesContext context) throws FacesException {
- wrapped.render(context);
- }
- }
-
- public static class ExtValStartupListener extends AbstractStartupListener {
- @Override
- protected void init() {
- ExtValCoreConfiguration.use(new DefaultExtValCoreConfiguration() {
- @Override
- public ProxyHelper proxyHelper() {
- return new DefaultProxyHelper() {
- @Override
- public boolean isProxiedClass(Class currentClass) {
- if (currentClass == null || currentClass.getSuperclass() == null) {
- return false;
- }
- return currentClass.getName().startsWith(currentClass.getSuperclass().getName()) &&
- currentClass.getName().contains("$$");
- }
- };
- }
- }, true);
- }
- }
-}
diff --git a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/startup/ModuleStartupObserver.java b/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/startup/ModuleStartupObserver.java
deleted file mode 100644
index e2cef4ef91..0000000000
--- a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/startup/ModuleStartupObserver.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * 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 org.superbiz.myfaces.startup;
-
-import jakarta.annotation.PostConstruct;
-import jakarta.ejb.Singleton;
-import jakarta.ejb.Startup;
-import java.util.logging.Level;
-import java.util.logging.Logger;
-
-@Singleton
-@Startup
-public class ModuleStartupObserver {
-
- private Logger logger = Logger.getLogger(ModuleStartupObserver.class.getName());
-
- @PostConstruct
- public void logStartup() {
- if (logger.isLoggable(Level.INFO)) {
- logger.info("starting application module");
- }
- }
-}
diff --git a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/startup/SampleDataStartupObserver.java b/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/startup/SampleDataStartupObserver.java
deleted file mode 100644
index 0415e8a2eb..0000000000
--- a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/startup/SampleDataStartupObserver.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * 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 org.superbiz.myfaces.startup;
-
-import org.apache.myfaces.extensions.cdi.core.api.activation.ProjectStageActivated;
-import org.apache.myfaces.extensions.cdi.core.api.startup.event.StartupEvent;
-import org.superbiz.myfaces.domain.User;
-import org.superbiz.myfaces.repository.UserRepository;
-
-import jakarta.enterprise.context.ApplicationScoped;
-import jakarta.enterprise.event.Observes;
-import jakarta.inject.Inject;
-import jakarta.persistence.EntityManager;
-import jakarta.persistence.Query;
-
-import static org.apache.myfaces.extensions.cdi.core.api.projectstage.ProjectStage.Development;
-import static org.apache.myfaces.extensions.cdi.core.api.projectstage.ProjectStage.IntegrationTest;
-
-//e.g. via the std. JSF project-stage or CODI project-stage org.apache.myfaces.extensions.cdi.ProjectStage=Development
-@ProjectStageActivated({Development.class, IntegrationTest.class})
-@ApplicationScoped
-public class SampleDataStartupObserver {
-
- @Inject
- private EntityManager entityManager;
-
- protected void createSampleData(@Observes StartupEvent startupEvent, UserRepository userRepository) {
- initDB(); //ok since we are in project-stage dev. or integration-test
-
- User user = userRepository.createNewEntity();
- user.setUserName("demo");
- user.setFirstName("Demo");
- user.setLastName("User");
- user.setPassword("demo");
- userRepository.save(user);
- }
-
- private void initDB() {
- entityManager.getTransaction().begin();
- Query query = entityManager.createNativeQuery("TRUNCATE SCHEMA public AND COMMIT");
- query.executeUpdate();
- entityManager.getTransaction().commit();
- }
-}
diff --git a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/view/FeedbackPage.java b/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/view/FeedbackPage.java
deleted file mode 100644
index 2c116a4a1f..0000000000
--- a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/view/FeedbackPage.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * 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 org.superbiz.myfaces.view;
-
-import org.apache.myfaces.extensions.cdi.core.api.scope.conversation.Conversation;
-import org.apache.myfaces.extensions.cdi.core.api.scope.conversation.ViewAccessScoped;
-import org.apache.myfaces.extensions.cdi.jsf.api.config.view.PreRenderView;
-import org.superbiz.myfaces.domain.Feedback;
-import org.superbiz.myfaces.repository.FeedbackRepository;
-
-import jakarta.annotation.PostConstruct;
-import jakarta.inject.Inject;
-import jakarta.inject.Named;
-import java.io.Serializable;
-import java.util.List;
-
-@Named
-@ViewAccessScoped
-//alternative to @PageBean in the view-config:
-//@View(Pages.Secure.FeedbackList.class)
-public class FeedbackPage implements Serializable {
-
- private static final long serialVersionUID = 744025508253889974L;
-
- private List<Feedback> feedbackList;
-
- @Inject
- private Conversation conversation;
-
- @Inject
- private FeedbackRepository feedbackRepository;
-
- private Feedback feedback;
-
- @PostConstruct
- protected void init() {
- this.feedback = this.feedbackRepository.createNewEntity();
- }
-
- @PreRenderView
- public void reloadFeedbackList() {
- this.feedbackList = this.feedbackRepository.loadAll();
- }
-
- public void save() {
- this.feedbackRepository.save(this.feedback);
- this.conversation.close();
- }
-
- /*
- * generated
- */
-
- public List<Feedback> getFeedbackList() {
- return feedbackList;
- }
-
- public Feedback getFeedback() {
- return feedback;
- }
-}
diff --git a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/view/InfoPage.java b/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/view/InfoPage.java
deleted file mode 100644
index 6ff3d469aa..0000000000
--- a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/view/InfoPage.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- * 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 org.superbiz.myfaces.view;
-
-import org.apache.myfaces.extensions.cdi.core.api.config.view.ViewMetaData;
-
-import java.lang.annotation.Documented;
-import java.lang.annotation.Retention;
-import java.lang.annotation.Target;
-
-import static java.lang.annotation.ElementType.TYPE;
-import static java.lang.annotation.RetentionPolicy.RUNTIME;
-
-@Target({TYPE})
-@Retention(RUNTIME)
-@Documented
-
-@ViewMetaData
-public @interface InfoPage {
-
-}
diff --git a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/view/MenuBean.java b/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/view/MenuBean.java
deleted file mode 100644
index fd14ce3b3e..0000000000
--- a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/view/MenuBean.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- * 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 org.superbiz.myfaces.view;
-
-import org.apache.myfaces.extensions.cdi.core.api.scope.conversation.WindowContext;
-import org.superbiz.myfaces.view.config.Pages;
-
-import jakarta.enterprise.inject.Model;
-import jakarta.inject.Inject;
-
-@Model
-public class MenuBean {
-
- @Inject
- private WindowContext windowContext;
-
- public Class<? extends Pages> home() {
- //close all conversations of the current window
- this.windowContext.closeConversations();
- return Pages.Index.class;
- }
-
- public Class<? extends Pages.Secure> feedback() {
- //close all conversations of the current window
- this.windowContext.closeConversations();
- return Pages.Secure.FeedbackList.class;
- }
-
- public Class<? extends Pages> about() {
- this.windowContext.closeConversations();
- return Pages.About.class;
- }
-
- public Class<? extends Pages> login() {
- this.windowContext.closeConversations();
- return Pages.Login.class;
- }
-
- public Class<? extends Pages> register() {
- this.windowContext.closeConversations();
- return Pages.Registration.class;
- }
-}
diff --git a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/view/RegistrationPage.java b/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/view/RegistrationPage.java
deleted file mode 100644
index 7c2ebbfede..0000000000
--- a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/view/RegistrationPage.java
+++ /dev/null
@@ -1,101 +0,0 @@
-/*
- * 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 org.superbiz.myfaces.view;
-
-import org.apache.myfaces.extensions.cdi.core.api.scope.conversation.Conversation;
-import org.apache.myfaces.extensions.cdi.core.api.scope.conversation.ViewAccessScoped;
-import org.apache.myfaces.extensions.cdi.jsf.api.Jsf;
-import org.apache.myfaces.extensions.cdi.message.api.MessageContext;
-import org.apache.myfaces.extensions.validator.beanval.annotation.BeanValidation;
-import org.apache.myfaces.extensions.validator.crossval.annotation.Equals;
-import org.superbiz.myfaces.domain.User;
-import org.superbiz.myfaces.domain.validation.Full;
-import org.superbiz.myfaces.repository.UserRepository;
-import org.superbiz.myfaces.view.config.Pages;
-
-import jakarta.inject.Inject;
-import jakarta.inject.Named;
-import java.io.Serializable;
-
-import static org.apache.myfaces.extensions.cdi.message.api.payload.MessageSeverity.ERROR;
-
-@Named
-@ViewAccessScoped
-public class RegistrationPage implements Serializable {
-
- private static final long serialVersionUID = 3844502441069448490L;
-
- @Inject
- private UserRepository userRepository;
-
- @Inject
- private Conversation conversation;
-
- @Inject
- private
- @Jsf
- MessageContext messageContext;
-
- private User user = new User();
-
- @Inject
- private UserHolder userHolder;
-
- @Equals("user.password")
- private String repeatedPassword;
-
- @BeanValidation(useGroups = Full.class) //triggers UniqueUserNameValidator
- public Class<? extends Pages> register() {
- this.userRepository.save(this.user);
- this.messageContext.message()
- .text("{msgUserRegistered}")
- .namedArgument("userName", this.user.getUserName())
- .add();
-
- //in order to re-use the page-bean for the login-page
- this.conversation.close();
-
- return Pages.Login.class;
- }
-
- public Class<? extends Pages> login() {
- User user = this.userRepository.loadUser(this.user.getUserName());
- if (user != null && user.getPassword().equals(this.user.getPassword())) {
- this.messageContext.message().text("{msgLoginSuccessful}").add();
- this.userHolder.setCurrentUser(user);
- return Pages.About.class;
- }
-
- this.messageContext.message().text("{msgLoginFailed}").payload(ERROR).add();
-
- return null;
- }
-
- public User getUser() {
- return user;
- }
-
- public String getRepeatedPassword() {
- return repeatedPassword;
- }
-
- public void setRepeatedPassword(String repeatedPassword) {
- this.repeatedPassword = repeatedPassword;
- }
-}
\ No newline at end of file
diff --git a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/view/UserHolder.java b/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/view/UserHolder.java
deleted file mode 100644
index de57b72ecd..0000000000
--- a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/view/UserHolder.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*
- * 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 org.superbiz.myfaces.view;
-
-import org.apache.myfaces.extensions.cdi.core.api.scope.conversation.WindowScoped;
-import org.superbiz.myfaces.domain.User;
-
-import jakarta.enterprise.context.Dependent;
-import jakarta.enterprise.inject.New;
-import jakarta.enterprise.inject.Produces;
-import jakarta.inject.Inject;
-import jakarta.inject.Named;
-import java.io.Serializable;
-
-//due to the enhanced entities it isn't possible to use them directly (due to final methods)
-@WindowScoped
-public class UserHolder implements Serializable {
-
- private static final long serialVersionUID = -7687528373042288584L;
-
- @Inject
- @New
- private User user;
-
- @Produces
- @Dependent
- @Named("currentUser")
- protected User createCurrentUser() {
- return this.user;
- }
-
- public void setCurrentUser(User user) {
- this.user = user;
- }
-
- public boolean isLoggedIn() {
- return this.user.getId() != null;
- }
-}
diff --git a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/view/config/Pages.java b/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/view/config/Pages.java
deleted file mode 100644
index 76645c63aa..0000000000
--- a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/view/config/Pages.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*
- * 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 org.superbiz.myfaces.view.config;
-
-import org.apache.myfaces.extensions.cdi.core.api.config.view.DefaultErrorView;
-import org.apache.myfaces.extensions.cdi.core.api.config.view.ViewConfig;
-import org.apache.myfaces.extensions.cdi.core.api.security.Secured;
-import org.apache.myfaces.extensions.cdi.jsf.api.config.view.Page;
-import org.apache.myfaces.extensions.cdi.jsf.api.config.view.PageBean;
-import org.superbiz.myfaces.view.FeedbackPage;
-import org.superbiz.myfaces.view.InfoPage;
-import org.superbiz.myfaces.view.security.LoginAccessDecisionVoter;
-
-import static org.apache.myfaces.extensions.cdi.jsf.api.config.view.Page.NavigationMode.REDIRECT;
-
-@Page(navigation = REDIRECT)
-public interface Pages extends ViewConfig {
-
- @Page
- class Index implements Pages {
-
- }
-
- @InfoPage
- @Page
- class About implements Pages {
-
- }
-
- @Page
- class Registration implements Pages {
-
- }
-
- @Page
- class Login extends DefaultErrorView implements Pages /*just to benefit from the config*/ {
-
- }
-
- @Secured(LoginAccessDecisionVoter.class)
- //@Secured(value = LoginAccessDecisionVoter.class, errorView = Login.class)
- interface Secure extends Pages {
-
- @PageBean(FeedbackPage.class)
- @Page
- class FeedbackList implements Secure {
-
- }
- }
-}
diff --git a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/view/security/LoginAccessDecisionVoter.java b/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/view/security/LoginAccessDecisionVoter.java
deleted file mode 100644
index 9f583dfe5e..0000000000
--- a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/view/security/LoginAccessDecisionVoter.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * 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 org.superbiz.myfaces.view.security;
-
-import org.apache.myfaces.extensions.cdi.core.api.security.AbstractAccessDecisionVoter;
-import org.apache.myfaces.extensions.cdi.core.api.security.SecurityViolation;
-import org.apache.myfaces.extensions.cdi.jsf.api.Jsf;
-import org.apache.myfaces.extensions.cdi.message.api.MessageContext;
-import org.superbiz.myfaces.view.UserHolder;
-
-import jakarta.enterprise.context.ApplicationScoped;
-import jakarta.inject.Inject;
-import jakarta.interceptor.InvocationContext;
-import java.util.Set;
-
-@ApplicationScoped
-public class LoginAccessDecisionVoter extends AbstractAccessDecisionVoter {
-
- private static final long serialVersionUID = -6332617547592896599L;
-
- @Inject
- private UserHolder userHolder;
-
- @Inject
- @Jsf
- private MessageContext messageContext;
-
- @Override
- protected void checkPermission(InvocationContext invocationContext, Set<SecurityViolation> violations) {
- if (!this.userHolder.isLoggedIn()) {
- violations.add(newSecurityViolation(this.messageContext.message().text("{msgAccessDenied}").toText()));
- }
- }
-}
diff --git a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/view/util/InfoBean.java b/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/view/util/InfoBean.java
deleted file mode 100644
index 04cde77ab9..0000000000
--- a/examples/myfaces-codi-demo/src/main/java/org/superbiz/myfaces/view/util/InfoBean.java
+++ /dev/null
@@ -1,128 +0,0 @@
-/*
- * 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 org.superbiz.myfaces.view.util;
-
-import org.apache.myfaces.extensions.cdi.core.api.CodiInformation;
-import org.apache.myfaces.extensions.cdi.core.api.projectstage.ProjectStage;
-import org.apache.myfaces.extensions.cdi.core.api.provider.BeanManagerProvider;
-import org.apache.myfaces.extensions.cdi.core.api.util.ClassUtils;
-import org.apache.myfaces.extensions.cdi.jsf.api.Jsf;
-import org.apache.myfaces.extensions.cdi.jsf.api.config.view.ViewConfigDescriptor;
-import org.apache.myfaces.extensions.cdi.jsf.api.config.view.ViewConfigResolver;
-import org.apache.myfaces.extensions.cdi.message.api.MessageContext;
-import org.apache.myfaces.extensions.validator.ExtValInformation;
-import org.superbiz.myfaces.view.InfoPage;
-
-import jakarta.annotation.PostConstruct;
-import jakarta.enterprise.context.SessionScoped;
-import jakarta.faces.context.FacesContext;
-import jakarta.inject.Inject;
-import jakarta.inject.Named;
-import jakarta.persistence.Persistence;
-import jakarta.validation.Validation;
-import java.io.Serializable;
-
-@Named
-@SessionScoped
-public class InfoBean implements Serializable {
-
- private static final long serialVersionUID = -1748909261695527800L;
-
- @Inject
- private
- @Jsf
- MessageContext messageContext;
-
- @Inject
- private ProjectStage projectStage;
-
- @Inject
- private ViewConfigResolver viewConfigResolver;
-
- @Inject
- private FacesContext facesContext;
-
- private String applicationMessageVersionInfo;
-
- private String beanValidationVersion;
-
- private String jpaVersion;
-
- @PostConstruct
- protected void showWelcomeMessage() {
- String versionString = ClassUtils.getJarVersion(InfoBean.class);
-
- if (versionString != null) {
- this.applicationMessageVersionInfo = " (v" + versionString + ")";
- }
-
- this.beanValidationVersion =
- ClassUtils.getJarVersion(Validation.buildDefaultValidatorFactory().getValidator().getClass());
-
- this.jpaVersion =
- ClassUtils.getJarVersion(Persistence.createEntityManagerFactory("demoApplicationPU").getClass());
-
- if (!ProjectStage.IntegrationTest.equals(this.projectStage)) {
- this.messageContext.message().text("{msgWelcome}").add();
- }
- }
-
- public boolean isInfoPage() {
- ViewConfigDescriptor viewConfigDescriptor =
- this.viewConfigResolver.getViewConfigDescriptor(this.facesContext.getViewRoot().getViewId());
-
- if (viewConfigDescriptor == null) {
- return false;
- }
-
- return !viewConfigDescriptor.getMetaData(InfoPage.class).isEmpty();
- }
-
- public String getProjectStage() {
- return this.projectStage.toString();
- }
-
- public String getApplicationVersion() {
- return this.applicationMessageVersionInfo;
- }
-
- public String getCodiVersion() {
- return CodiInformation.VERSION;
- }
-
- public String getCdiVersion() {
- return ClassUtils.getJarVersion(BeanManagerProvider.getInstance().getBeanManager().getClass());
- }
-
- public String getExtValVersion() {
- return ExtValInformation.VERSION;
- }
-
- public String getJsfVersion() {
- return ClassUtils.getJarVersion(FacesContext.class);
- }
-
- public String getBeanValidationVersion() {
- return this.beanValidationVersion;
- }
-
- public String getJpaVersion() {
- return this.jpaVersion;
- }
-}
diff --git a/examples/myfaces-codi-demo/src/main/resources/META-INF/persistence.xml b/examples/myfaces-codi-demo/src/main/resources/META-INF/persistence.xml
deleted file mode 100644
index 0e56230165..0000000000
--- a/examples/myfaces-codi-demo/src/main/resources/META-INF/persistence.xml
+++ /dev/null
@@ -1,46 +0,0 @@
-<?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.
--->
-<persistence xmlns="http://java.sun.com/xml/ns/persistence"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://java.sun.com/xml/ns/persistence
-http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd"
- version="2.0">
-
- <persistence-unit name="demoApplicationPU" transaction-type="RESOURCE_LOCAL">
- <!-- needed by tomee 1.6.0+-->
- <non-jta-data-source>demoDS</non-jta-data-source>
-
- <!-- config of (non-)jta-data-source isn't needed if there is just one -->
- <!-- @MappedSuperclass classes - see OPENJPA-1926 -->
- <class>org.superbiz.myfaces.domain.AbstractDomainObject</class>
-
- <!-- entities -->
- <class>org.superbiz.myfaces.domain.User</class>
- <class>org.superbiz.myfaces.domain.Feedback</class>
- <class>org.superbiz.myfaces.domain.Comment</class>
-
- <properties>
- <property name="openjpa.DataCache" value="true"/>
- <property name="openjpa.DynamicEnhancementAgent" value="true"/>
- <property name="openjpa.jdbc.SynchronizeMappings" value="buildSchema(ForeignKeys=true)"/>
- <property name="openjpa.jdbc.QuerySQLCache" value="true(EnableStatistics=true)"/>
- </properties>
- </persistence-unit>
-</persistence>
\ No newline at end of file
diff --git a/examples/myfaces-codi-demo/src/main/resources/META-INF/services/org.apache.myfaces.extensions.cdi.core.api.projectstage.ProjectStageHolder b/examples/myfaces-codi-demo/src/main/resources/META-INF/services/org.apache.myfaces.extensions.cdi.core.api.projectstage.ProjectStageHolder
deleted file mode 100644
index 9bcaeebbee..0000000000
--- a/examples/myfaces-codi-demo/src/main/resources/META-INF/services/org.apache.myfaces.extensions.cdi.core.api.projectstage.ProjectStageHolder
+++ /dev/null
@@ -1,18 +0,0 @@
-# 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.
-
-org.superbiz.myfaces.CustomProjectStage
\ No newline at end of file
diff --git a/examples/myfaces-codi-demo/src/main/resources/org/superbiz/myfaces/i18n/messages.properties b/examples/myfaces-codi-demo/src/main/resources/org/superbiz/myfaces/i18n/messages.properties
deleted file mode 100644
index ba81b1d1db..0000000000
--- a/examples/myfaces-codi-demo/src/main/resources/org/superbiz/myfaces/i18n/messages.properties
+++ /dev/null
@@ -1,60 +0,0 @@
-#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.
-
-
-
-#overrule the default format {1}: {0} to ignore the labels
-#jakarta.faces.validator.BeanValidator.MESSAGE={0}
-#jakarta.faces.validator.BeanValidator.MESSAGE_detail={0}
-
-btnRegisterAndRestart=save and restart
-btnLogin=login
-lnkLogin=Login
-btnRegister=register
-
-lblLoginName=Login-name
-lblFirstName=First-name
-lblLastName=Last-name
-lblPassword=Password
-lblRepeatedPassword=Repeated password
-lblFinish=finish
-
-lblLeftMenuTitle=Menu
-lblHome=Home
-lblFeedback=Feedback
-
-lblWiki=Wiki
-lblExternalExamples=External examples
-
-menuDocumentation=Documentation
-menuMisc=Misc
-menuAbout=About
-
-welcome=Welcome
-msgWelcome=Welcome to the Apache TomEE/MyFaces-Stack Demo
-
-msgUserRegistered=User {userName} registered successfully!
-msgUserNotRegistered=Failed to register user {userName}!
-
-msgLoginSuccessful=Login successful!
-msgLoginFailed=Login failed!
-msgAccessDenied=Access denied!
-tblFeedbackTopic=Topic
-tblFeedbackDescription=Description
-lblTopic=Topic
-lblDescription=Feedback Text
-btnSave=save
\ No newline at end of file
diff --git a/examples/myfaces-codi-demo/src/main/webapp/WEB-INF/beans.xml b/examples/myfaces-codi-demo/src/main/webapp/WEB-INF/beans.xml
deleted file mode 100644
index 6a4e0bd035..0000000000
--- a/examples/myfaces-codi-demo/src/main/webapp/WEB-INF/beans.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?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.
--->
-
-<beans 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/beans_1_0.xsd">
-</beans>
\ No newline at end of file
diff --git a/examples/myfaces-codi-demo/src/main/webapp/WEB-INF/faces-config.xml b/examples/myfaces-codi-demo/src/main/webapp/WEB-INF/faces-config.xml
deleted file mode 100644
index 20feafbd1a..0000000000
--- a/examples/myfaces-codi-demo/src/main/webapp/WEB-INF/faces-config.xml
+++ /dev/null
@@ -1,41 +0,0 @@
-<?xml version="1.0"?>
-<!--
- * 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.
--->
-<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">
-
- <factory>
- <lifecycle-factory>org.superbiz.myfaces.startup.ExtValLifecycleFactory</lifecycle-factory>
- </factory>
-
- <application>
- <locale-config>
- <default-locale>en</default-locale>
- <supported-locale>en</supported-locale>
- </locale-config>
- <message-bundle>org.superbiz.myfaces.i18n.messages</message-bundle>
- <resource-bundle>
- <base-name>org.superbiz.myfaces.i18n.messages</base-name>
- <var>i18n</var>
- </resource-bundle>
- </application>
-
-</faces-config>
diff --git a/examples/myfaces-codi-demo/src/main/webapp/WEB-INF/web.xml b/examples/myfaces-codi-demo/src/main/webapp/WEB-INF/web.xml
deleted file mode 100644
index de2143d1e6..0000000000
--- a/examples/myfaces-codi-demo/src/main/webapp/WEB-INF/web.xml
+++ /dev/null
@@ -1,40 +0,0 @@
-<?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.
--->
-
-<web-app 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-app_3_0.xsd"
- version="3.0">
-
- <servlet>
- <servlet-name>Faces Servlet</servlet-name>
- <servlet-class>jakarta.faces.webapp.FacesServlet</servlet-class>
- <load-on-startup>1</load-on-startup>
- </servlet>
-
- <servlet-mapping>
- <servlet-name>Faces Servlet</servlet-name>
- <url-pattern>*.xhtml</url-pattern>
- </servlet-mapping>
-
- <welcome-file-list>
- <welcome-file>pages/index.xhtml</welcome-file>
- </welcome-file-list>
-</web-app>
\ No newline at end of file
diff --git a/examples/myfaces-codi-demo/src/main/webapp/layout/main-template.xhtml b/examples/myfaces-codi-demo/src/main/webapp/layout/main-template.xhtml
deleted file mode 100644
index 1cb8079180..0000000000
--- a/examples/myfaces-codi-demo/src/main/webapp/layout/main-template.xhtml
+++ /dev/null
@@ -1,143 +0,0 @@
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<!--
- * 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.
--->
-
-<html xmlns="http://www.w3.org/1999/xhtml"
- xmlns:f="http://java.sun.com/jsf/core"
- xmlns:h="http://java.sun.com/jsf/html"
- xmlns:ui="http://java.sun.com/jsf/facelets"
- xmlns:p="http://primefaces.prime.com.tr/ui"
- >
-
-<f:view contentType="text/html">
-
- <h:head>
- <title>Apache TomEE/MyFaces-Stack Demo</title>
- <h:outputStylesheet library="styles" name="base.css"/>
- <h:outputStylesheet library="styles" name="theme.css"/>
-
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
- </h:head>
- <h:body>
- <div id="header">
- <h:form id="topMenuForm" prependId="false">
- <div id="top_menu">
- <div id="top_menu_container">
- <h:panelGroup rendered="#{infoBean.infoPage}">
- <div class="date">Apache TomEE/MyFaces-Stack <b>Demo-App</b> #{infoBean.applicationVersion}</div>
- </h:panelGroup>
- <div id="projectStage" class="date">[#{infoBean.projectStage}]</div>
- <ul>
- <li>
- <h:commandLink id="lnkLogin" value="#{i18n.lnkLogin}" action="#{menuBean.login}"/>
- </li>
- <li>
- <a href="http://www.apache.org" target="_blank">Apache</a>
- </li>
- <li>
- <a href="http://myfaces.apache.org" target="_blank">MyFaces</a>
- </li>
- </ul>
- <div class="clear"></div>
- </div>
- </div>
- </h:form>
- <div id="header_bottom">
- <div id="logo_banner_container">
- <div id="logo">
- <a href="http://myfaces.apache.org/">
- <h:graphicImage library="images" name="myfaces_logo.jpg" alt="MyFaces logo"/>
- </a>
- </div>
- <div id="banner">
- <a href="http://myfaces.apache.org/extensions/cdi/index.html">
- <h:graphicImage library="images" name="codi_logo.png" alt="CODI logo"/>
- </a>
- </div>
- <div class="clear"></div>
- </div>
- </div>
- </div>
-
- <div id="main_container">
- <div id="left_column">
- <h:form id="menuForm" prependId="false">
- <div class="left_menu_top">
- <div class="left_menu_bottom">
- <h5>#{i18n.lblLeftMenuTitle}</h5>
-
- <div class="content">
- <ul class="left_menu">
- <ui:include src="menu.xhtml"/>
- </ul>
- </div>
- </div>
- </div>
- </h:form>
-
- <div class="clear"></div>
-
- <h:form id="leftMenuForm" prependId="false">
-
- <div class="left_menu_top">
- <div class="left_menu_bottom">
- <h5>#{i18n.menuMisc}</h5>
-
- <div class="content">
- <ul class="left_menu">
- <li class="none">
- <h:commandLink id="menuAbout" value="#{i18n.menuAbout}" action="#{menuBean.about}"/>
- </li>
- </ul>
- </div>
- </div>
- </div>
- </h:form>
- <div class="clear"></div>
- </div>
- <div id="body_column">
- <div>
- <div class="section">
-
- <ui:insert name="header"><h2>Apache TomEE/MyFaces-Stack Demo-App</h2></ui:insert>
-
- <div class="main_content">
- <h:form id="mainForm" prependId="false">
- <ui:insert name="content"><p>No content available.</p></ui:insert>
- </h:form>
- </div>
-
- </div>
- </div>
- </div>
- <div class="clear"></div>
- </div>
- <p:growl sticky="false"/>
- <div id="footer">
- <div class="copyright">
- <p>© The Apache Software Foundation
- </p>
- </div>
- </div>
- </h:body>
-</f:view>
-</html>
diff --git a/examples/myfaces-codi-demo/src/main/webapp/layout/menu.xhtml b/examples/myfaces-codi-demo/src/main/webapp/layout/menu.xhtml
deleted file mode 100644
index cc2a35bc71..0000000000
--- a/examples/myfaces-codi-demo/src/main/webapp/layout/menu.xhtml
+++ /dev/null
@@ -1,32 +0,0 @@
-<!--
- * 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.
--->
-<div id="menu"
- xmlns="http://www.w3.org/1999/xhtml"
- xmlns:h="http://java.sun.com/jsf/html"
- >
-
- <li class="none">
- <h:commandLink id="menuHome" value="#{i18n.lblHome}" action="#{menuBean.home}"/>
- </li>
-
- <li class="none">
- <h:commandLink id="menuFeedback" value="#{i18n.lblFeedback}" action="#{menuBean.feedback}"/>
- </li>
-
-</div>
\ No newline at end of file
diff --git a/examples/myfaces-codi-demo/src/main/webapp/pages/about.xhtml b/examples/myfaces-codi-demo/src/main/webapp/pages/about.xhtml
deleted file mode 100644
index 32e4f5dbd6..0000000000
--- a/examples/myfaces-codi-demo/src/main/webapp/pages/about.xhtml
+++ /dev/null
@@ -1,56 +0,0 @@
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<!--
- * 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.
--->
-
-<html>
-<ui:composition xmlns="http://www.w3.org/1999/xhtml"
- xmlns:ui="http://java.sun.com/jsf/facelets"
- xmlns:h="http://java.sun.com/jsf/html"
- template="/layout/main-template.xhtml">
-
- <ui:define name="content">
- <h:panelGrid columns="2">
- <h:outputLabel value="Current Window-ID:" for="wid"/>
- <h:outputText id="wid" value="#{currentWindowContext.id}"/>
-
- <h:outputLabel value="Apache MyFaces-Core:" for="jsfVersion"/>
- <h:outputText id="jsfVersion" value="#{infoBean.jsfVersion}"/>
-
- <h:outputLabel value="Apache OpenWebBeans:" for="cdiVersion"/>
- <h:outputText id="cdiVersion" value="#{infoBean.cdiVersion}"/>
-
- <h:outputLabel value="Apache MyFaces CODI:" for="codiVersion"/>
- <h:outputText id="codiVersion" value="#{infoBean.codiVersion}"/>
-
- <h:outputLabel value="Apache MyFaces ExtVal:" for="extValVersion"/>
- <h:outputText id="extValVersion" value="#{infoBean.extValVersion}"/>
-
- <h:outputLabel value="Apache BVal:" for="bValVersion"/>
- <h:outputText id="bValVersion" value="#{infoBean.beanValidationVersion}"/>
-
- <h:outputLabel value="Apache OpenJPA:" for="jpaVersion"/>
- <h:outputText id="jpaVersion" value="#{infoBean.jpaVersion}"/>
- </h:panelGrid>
- </ui:define>
-
-</ui:composition>
-</html>
diff --git a/examples/myfaces-codi-demo/src/main/webapp/pages/index.xhtml b/examples/myfaces-codi-demo/src/main/webapp/pages/index.xhtml
deleted file mode 100644
index ced13a9331..0000000000
--- a/examples/myfaces-codi-demo/src/main/webapp/pages/index.xhtml
+++ /dev/null
@@ -1,68 +0,0 @@
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<!--
- * 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.
--->
-
-<html>
-<ui:composition xmlns="http://www.w3.org/1999/xhtml"
- xmlns:ui="http://java.sun.com/jsf/facelets"
- template="/layout/main-template.xhtml">
-
- <ui:define name="content">
- <h2>Illustrated Features</h2>
-
- <h3>Apache MyFaces CODI</h3>
- <ul>
- <li>Type-safe view-config</li>
- <li>Type-safe (custom) view-meta-data</li>
- <li>Type-safe navigation</li>
- <li>Type-safe (specialized) config</li>
- <li>Type-safe custom project-stage</li>
- <li>@WindowScoped</li>
- <li>Controlling CODI scopes with WindowContext</li>
- <li>@ViewAccessScoped</li>
- <li>Manual conversation handling</li>
- <li>Secured pages (AccessDecisionVoter)</li>
- <li>@Transactional</li>
- <li>I18n (fluent API)</li>
- <li>Dependency-Injection for JSR303 (BV) constraint-validators</li>
- <li>Dependency-Injection for JSF phase-listeners</li>
- </ul>
-
- <h3>Apache MyFaces ExtVal</h3>
- <ul>
- <li>Cross-Field validation (@Equals)</li>
- <li>Type-safe group-validation (@BeanValidation) for JSF action-methods</li>
- </ul>
-
- <h2>Hints</h2>
- <ul>
- <li>
- This application doesn't show the/a best practise. It's only a small application which shows a bunch of features.
- </li>
- <li>
- To sync the project-stage of MyFaces CODI and JSF use e.g. faces.PROJECT_STAGE=Development in [tomee dir]/conf/system.properties
- </li>
- </ul>
- </ui:define>
-
-</ui:composition>
-</html>
diff --git a/examples/myfaces-codi-demo/src/main/webapp/pages/login.xhtml b/examples/myfaces-codi-demo/src/main/webapp/pages/login.xhtml
deleted file mode 100644
index 7587d017cd..0000000000
--- a/examples/myfaces-codi-demo/src/main/webapp/pages/login.xhtml
+++ /dev/null
@@ -1,48 +0,0 @@
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<!--
- * 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.
--->
-
-<html>
-<ui:composition xmlns="http://www.w3.org/1999/xhtml"
- xmlns:ui="http://java.sun.com/jsf/facelets"
- xmlns:h="http://java.sun.com/jsf/html"
- template="/layout/main-template.xhtml">
-
- <ui:define name="content">
- <h:panelGrid columns="3">
- <h:outputLabel for="loginName" value="#{i18n.lblLoginName}: "/>
- <h:inputText id="loginName" label="#{i18n.lblLoginName}" value="#{registrationPage.user.userName}" required="true"/>
- <h:message for="loginName" showSummary="true" showDetail="false"/>
-
- <h:outputLabel for="password" value="#{i18n.lblPassword}: "/>
- <h:inputSecret id="password" label="#{i18n.lblPassword}" value="#{registrationPage.user.password}"/>
- <h:message for="password" showSummary="true" showDetail="false"/>
- </h:panelGrid>
- <p/>
- <h:panelGrid columns="2">
- <h:commandButton id="login" value="#{i18n.btnLogin}" action="#{registrationPage.login}"/>
- <h:commandLink id="register" value="#{i18n.btnRegister}" action="#{menuBean.register}" immediate="true"/>
- </h:panelGrid>
- </ui:define>
-
-</ui:composition>
-</html>
diff --git a/examples/myfaces-codi-demo/src/main/webapp/pages/registration.xhtml b/examples/myfaces-codi-demo/src/main/webapp/pages/registration.xhtml
deleted file mode 100644
index ab7c0ecc51..0000000000
--- a/examples/myfaces-codi-demo/src/main/webapp/pages/registration.xhtml
+++ /dev/null
@@ -1,57 +0,0 @@
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<!--
- * 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.
--->
-
-<html>
-<ui:composition xmlns="http://www.w3.org/1999/xhtml"
- xmlns:ui="http://java.sun.com/jsf/facelets"
- xmlns:h="http://java.sun.com/jsf/html"
- template="/layout/main-template.xhtml">
-
- <ui:define name="content">
- <h:panelGrid columns="3">
- <h:outputLabel for="firstName" value="#{i18n.lblFirstName}: "/>
- <h:inputText id="firstName" label="#{i18n.lblFirstName}" value="#{registrationPage.user.firstName}"/>
- <h:message for="firstName" showSummary="true" showDetail="false"/>
-
- <h:outputLabel for="lastName" value="#{i18n.lblLastName}: "/>
- <h:inputText id="lastName" label="#{i18n.lblLastName}" value="#{registrationPage.user.lastName}"/>
- <h:message for="lastName" showSummary="true" showDetail="false"/>
-
- <h:outputLabel for="loginName" value="#{i18n.lblLoginName}: "/>
- <h:inputText id="loginName" label="#{i18n.lblLoginName}" value="#{registrationPage.user.userName}" required="true"/>
- <h:message for="loginName" showSummary="true" showDetail="false"/>
-
- <h:outputLabel for="password" value="#{i18n.lblPassword}: "/>
- <h:inputSecret id="password" label="#{i18n.lblPassword}" value="#{registrationPage.user.password}"/>
- <h:message for="password" showSummary="true" showDetail="false"/>
-
- <h:outputLabel for="repeatedPassword" value="#{i18n.lblRepeatedPassword}: "/>
- <h:inputSecret id="repeatedPassword" label="#{i18n.lblRepeatedPassword}" value="#{registrationPage.repeatedPassword}"/>
- <h:message for="repeatedPassword" showSummary="true" showDetail="false"/>
- </h:panelGrid>
- <p/>
- <h:commandButton id="register" value="#{i18n.btnRegister}" action="#{registrationPage.register}"/>
- </ui:define>
-
-</ui:composition>
-</html>
diff --git a/examples/myfaces-codi-demo/src/main/webapp/pages/secure/feedbackList.xhtml b/examples/myfaces-codi-demo/src/main/webapp/pages/secure/feedbackList.xhtml
deleted file mode 100644
index 731b55ab21..0000000000
--- a/examples/myfaces-codi-demo/src/main/webapp/pages/secure/feedbackList.xhtml
+++ /dev/null
@@ -1,65 +0,0 @@
-<!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<!--
- * 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.
--->
-
-<html>
-<ui:composition xmlns="http://www.w3.org/1999/xhtml"
- xmlns:ui="http://java.sun.com/jsf/facelets"
- xmlns:h="http://java.sun.com/jsf/html"
- xmlns:f="http://java.sun.com/jsf/core"
- xmlns:p="http://primefaces.prime.com.tr/ui"
- template="/layout/main-template.xhtml">
-
- <ui:define name="content">
- <h:panelGrid columns="3">
- <h:outputLabel for="topic" value="#{i18n.lblTopic}: "/>
- <h:inputText id="topic" label="#{i18n.lblTopic}" value="#{feedbackPage.feedback.topic}" required="true"/>
- <h:message for="topic" showSummary="true" showDetail="false"/>
-
- <h:outputLabel for="description" value="#{i18n.lblDescription}: "/>
- <h:inputTextarea id="description" cols="80" rows="10" label="#{i18n.lblDescription}" value="#{feedbackPage.feedback.description}"/>
- <h:message for="description" showSummary="true" showDetail="false"/>
- </h:panelGrid>
-
- <h:commandButton id="save" value="#{i18n.btnSave}" action="#{feedbackPage.save}"/>
-
- <p/>
-
- <p:dataTable var="entry" value="#{feedbackPage.feedbackList}" paginator="true" paginatorPosition="bottom"
- rows="10">
- <p:column>
- <f:facet name="header">
- <h:outputText value="#{i18n.tblFeedbackTopic}"/>
- </f:facet>
- #{entry.topic}
- </p:column>
- <p:column>
- <f:facet name="header">
- <h:outputText value="#{i18n.tblFeedbackDescription}"/>
- </f:facet>
- #{entry.description}
- </p:column>
- </p:dataTable>
- </ui:define>
-
-</ui:composition>
-</html>
diff --git a/examples/myfaces-codi-demo/src/main/webapp/resources/images/codi_logo.png b/examples/myfaces-codi-demo/src/main/webapp/resources/images/codi_logo.png
deleted file mode 100644
index ee5d5873ba..0000000000
Binary files a/examples/myfaces-codi-demo/src/main/webapp/resources/images/codi_logo.png and /dev/null differ
diff --git a/examples/myfaces-codi-demo/src/main/webapp/resources/images/myfaces_logo.jpg b/examples/myfaces-codi-demo/src/main/webapp/resources/images/myfaces_logo.jpg
deleted file mode 100644
index fb886b1a24..0000000000
Binary files a/examples/myfaces-codi-demo/src/main/webapp/resources/images/myfaces_logo.jpg and /dev/null differ
diff --git a/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/code_section.png b/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/code_section.png
deleted file mode 100644
index 9a43d15c6a..0000000000
Binary files a/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/code_section.png and /dev/null differ
diff --git a/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/footer.png b/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/footer.png
deleted file mode 100644
index dc2fb91cb6..0000000000
Binary files a/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/footer.png and /dev/null differ
diff --git a/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/h2.png b/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/h2.png
deleted file mode 100644
index 853adc22c7..0000000000
Binary files a/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/h2.png and /dev/null differ
diff --git a/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/left_menu_bottom.png b/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/left_menu_bottom.png
deleted file mode 100644
index 78d682972e..0000000000
Binary files a/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/left_menu_bottom.png and /dev/null differ
diff --git a/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/left_menu_expand.gif b/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/left_menu_expand.gif
deleted file mode 100644
index b317bdbcc3..0000000000
Binary files a/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/left_menu_expand.gif and /dev/null differ
diff --git a/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/left_menu_expand_hover.gif b/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/left_menu_expand_hover.gif
deleted file mode 100644
index c30ab723df..0000000000
Binary files a/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/left_menu_expand_hover.gif and /dev/null differ
diff --git a/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/left_menu_expand_selected.gif b/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/left_menu_expand_selected.gif
deleted file mode 100644
index 06c039750d..0000000000
Binary files a/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/left_menu_expand_selected.gif and /dev/null differ
diff --git a/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/left_menu_option.gif b/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/left_menu_option.gif
deleted file mode 100644
index 43b01603ea..0000000000
Binary files a/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/left_menu_option.gif and /dev/null differ
diff --git a/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/left_menu_option_hover.gif b/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/left_menu_option_hover.gif
deleted file mode 100644
index 67aad11f10..0000000000
Binary files a/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/left_menu_option_hover.gif and /dev/null differ
diff --git a/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/left_menu_top.png b/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/left_menu_top.png
deleted file mode 100644
index e85f4f143a..0000000000
Binary files a/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/left_menu_top.png and /dev/null differ
diff --git a/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/logo_banner_container.png b/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/logo_banner_container.png
deleted file mode 100644
index 430245a63c..0000000000
Binary files a/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/logo_banner_container.png and /dev/null differ
diff --git a/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/main_space_list.gif b/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/main_space_list.gif
deleted file mode 100644
index 210f664881..0000000000
Binary files a/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/main_space_list.gif and /dev/null differ
diff --git a/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/table_head.png b/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/table_head.png
deleted file mode 100644
index 65667a6927..0000000000
Binary files a/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/table_head.png and /dev/null differ
diff --git a/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/table_head_dark.png b/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/table_head_dark.png
deleted file mode 100644
index c726ed457a..0000000000
Binary files a/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/table_head_dark.png and /dev/null differ
diff --git a/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/top_menu.png b/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/top_menu.png
deleted file mode 100644
index 3c3c7db93d..0000000000
Binary files a/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/top_menu.png and /dev/null differ
diff --git a/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/top_menu_hover.png b/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/top_menu_hover.png
deleted file mode 100644
index f883f4dc7a..0000000000
Binary files a/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/top_menu_hover.png and /dev/null differ
diff --git a/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/transparent.gif b/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/transparent.gif
deleted file mode 100644
index 980c789021..0000000000
Binary files a/examples/myfaces-codi-demo/src/main/webapp/resources/images/slices/transparent.gif and /dev/null differ
diff --git a/examples/myfaces-codi-demo/src/main/webapp/resources/styles/base.css b/examples/myfaces-codi-demo/src/main/webapp/resources/styles/base.css
deleted file mode 100644
index 20ec821a63..0000000000
--- a/examples/myfaces-codi-demo/src/main/webapp/resources/styles/base.css
+++ /dev/null
@@ -1,192 +0,0 @@
-/*
- * 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.
- */
-
-body {
- margin: 0;
- padding: 0;
-}
-
-img {
- border: none;
-}
-
-table {
- padding: 0;
- width: 50%;
- margin-left: -2px;
- margin-right: -2px;
-}
-
-acronym {
- cursor: help;
- border-bottom: 1px dotted #feb;
-}
-
-table.bodyTable th, table.bodyTable td {
- padding: 2px 4px 2px 4px;
- vertical-align: top;
-}
-
-div.clear {
- clear: both;
- visibility: hidden;
-}
-
-div.clear hr {
- display: none;
-}
-
-#bannerLeft, #bannerRight {
- font-size: xx-large;
- font-weight: bold;
-}
-
-#bannerLeft img, #bannerRight img {
- margin: 0;
-}
-
-.xleft, #bannerLeft img {
- float: left;
- text-shadow: #7CFC00 1px 1px 1px;
-}
-
-.xright, #bannerRight {
- float: right;
- text-shadow: #7CFC00 1px 1px 1px;
-}
-
-#banner {
- padding: 0;
-}
-
-#banner img {
- border: none;
-}
-
-#breadcrumbs {
- padding: 3px 10px 3px 10px;
-}
-
-#leftColumn {
- width: 170px;
- float: left;
- overflow: auto;
-}
-
-#bodyColumn {
- margin-right: 1.5em;
- margin-left: 197px;
-}
-
-#legend {
- padding: 8px 0 8px 0;
-}
-
-#navcolumn {
- padding: 8px 4px 0 8px;
-}
-
-#navcolumn h5 {
- margin: 0;
- padding: 0;
- font-size: small;
-}
-
-#navcolumn ul {
- margin: 0;
- padding: 0;
- font-size: small;
-}
-
-#navcolumn li {
- list-style-type: none;
- background-image: none;
- background-repeat: no-repeat;
- background-position: 0 0.4em;
- padding-left: 16px;
- list-style-position: outside;
- line-height: 1.2em;
- font-size: smaller;
-}
-
-#poweredBy {
- text-align: center;
-}
-
-#navcolumn img {
- margin-top: 10px;
- margin-bottom: 3px;
-}
-
-#poweredBy img {
- display: block;
- margin: 20px 0 20px 17px;
-}
-
-#search img {
- margin: 0;
- display: block;
-}
-
-#search #q, #search #btnG {
- border: 1px solid #999;
- margin-bottom: 10px;
-}
-
-#search form {
- margin: 0;
-}
-
-#lastPublished {
- font-size: x-small;
-}
-
-.navSection {
- margin-bottom: 2px;
- padding: 8px;
-}
-
-.navSectionHead {
- font-weight: bold;
- font-size: x-small;
-}
-
-.section {
- padding: 4px;
-}
-
-#footer {
- padding: 3px 10px 3px 10px;
- font-size: x-small;
-}
-
-#breadcrumbs {
- font-size: x-small;
- margin: 0;
-}
-
-.source {
- padding: 12px;
- margin: 1em 7px 1em 7px;
-}
-
-.source pre {
- margin: 0;
- padding: 0;
-}
\ No newline at end of file
diff --git a/examples/myfaces-codi-demo/src/main/webapp/resources/styles/theme.css b/examples/myfaces-codi-demo/src/main/webapp/resources/styles/theme.css
deleted file mode 100644
index 73e716152b..0000000000
--- a/examples/myfaces-codi-demo/src/main/webapp/resources/styles/theme.css
+++ /dev/null
@@ -1,480 +0,0 @@
-/*
- * 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.
- */
-
-/* Init --------------------------------------------------------------------- */
-* {
- margin: 0px;
- padding: 0px;
-}
-
-body {
- text-align: center; /*font-size: 75%;*/
- /*=12pixels*/
- font-size: 12px;
- font-family: verdana, tahoma, sans-serif;
- font-weight: normal;
- line-height: 1.4em;
- color: #666666;
- background-color: white;
-}
-
-div {
- text-align: left;
-}
-
-span {
- display: inline;
-}
-
-img {
- display: block;
-}
-
-h1, h2, h3 {
- font-family: arial, geneva, helvetica, sans-serif;
- font-weight: bold;
- margin-top: 10px;
- color: #669900;
-}
-
-h1 {
- font-size: 1.6em;
-}
-
-h2 {
- font-size: 1.2em;
-}
-
-h3 {
- font-size: 1.1em;
-}
-
-ul {
- list-style-type: none;
-}
-
-a {
- text-decoration: none;
- color: #669900;
-}
-
-a:hover {
- color: #FF9900;
-}
-
-/*
- * Clear float positions.
- */
-.clear {
- clear: both;
-}
-
-/* IE fixes ------------------------------------------------ */
-/* Solve the IE 3px gap bug */
-/* Hides from IE5-mac \*/
-* html .section, p {
- height: 1%;
-}
-
-/* End hide from IE5-mac */
-/* Add the min and max width in IE */
-* #main_container, * #top_menu_container, * #logo_banner_container, * .copyright {
- width: expression(document . body . clientWidth > 1210 ? "1200px" : (
- document . body . clientWidth < 960 ? "950px" : "auto") );
-}
-
-/* PNG transparency fix */
-img {
- behavior: url(css/png-fix.htc);
-}
-
-/* IE fixes ----------------------------------------------------------------- */
-/* Fluid layout constraints ----------------------------------------- */
-#main_container, #top_menu_container, #logo_banner_container, .copyright {
- max-width: 1200px;
- min-width: 950px;
-}
-
-#footer, #top_menu, #header_bottom {
- width: 100%;
- min-width: 950px;
-}
-
-/* Main layout -------------------------------------------------------------- */
-#main_container {
- margin: 0px auto 0px auto;
-}
-
-#footer {
- margin: 0px;
- border: 0px;
- padding: 0px;
- height: 90px;
- margin-top: 50px;
- text-align: center;
- color: white;
- background: #52842D url("#{resource['images:slices/footer.png']}") repeat-x;
-}
-
-/* Header layout ------------------------------------------------------------ */
-#top_menu {
- width: auto;
- height: 45px;
- text-align: center;
- background: #52842D url("#{resource['images:slices/top_menu.png']}") repeat-x;
-}
-
-#top_menu_container {
- margin: 0px auto 0px auto;
- padding-top: 4px;
-}
-
-#header_bottom {
- height: auto;
- text-align: center;
- background: url("#{resource['images:slices/logo_banner_container.png']}") repeat-x;
-}
-
-#logo_banner_container {
- margin: 0px auto 0px auto;
-}
-
-/* body layout -------------------------------------------------------------- */
-#left_column {
- float: left;
- width: 210px;
- height: auto;
-}
-
-#body_column {
- padding: 1px 0px 0px 230px;
- width: auto;
-}
-
-/* footer layout ------------------------------------------------------------ */
-.copyright {
- margin: 0px auto 0px auto;
- padding-top: 15px;
-}
-
-/* logo_banner_container layout --------------------------------------------- */
-#logo {
- float: left;
- width: 210px;
- height: 100px;
- margin-top: 10px;
-}
-
-#banner {
- float: right;
- width: 210px;
- height: 85px;
- margin-top: 10px;
-}
-
-/* leftColumn layout ------------------------------------------------------ */
-.left_menu_container {
- width: 210px;
-}
-
-#powered_by {
- /*float: right;*/
- text-align: center;
-}
-
-#powered_by img {
- margin: 10px auto 10px auto;
-}
-
-/* left_menu layout --------------------------------------------------------- */
-.left_menu_top {
- width: 210px;
- background: url("#{resource['images:slices/left_menu_top.png']}") no-repeat top;
-}
-
-.left_menu_bottom {
- width: 210px;
- background: url("#{resource['images:slices/left_menu_bottom.png']}") no-repeat bottom;
-}
-
-/* top menu ----------------------------------------------------------------- */
-#top_menu div.date, #top_menu div.version {
- margin: 9px 0px 0px 10px;
- float: left;
- color: white;
-}
-
-#top_menu ul {
- float: right;
- height: 37px;
- border-right: 1px solid #80AA66;
-}
-
-#top_menu li {
- display: inline;
- height: 37px;
- margin-left: -4px;
-}
-
-#top_menu a {
- position: relative;
- top: 9px;
- border-left: 1px solid #80AA66;
- padding: 10px 10px 13px 10px;
- font-size: 12px;
- color: white;
-}
-
-#top_menu a:hover {
- text-decoration: underline;
- background: url("#{resource['images:slices/top_menu_hover.png']}") repeat-x top;
-}
-
-/* left menu - first level menu --------------------------------------------- */
-.left_menu_top h5 {
- padding: 26px 20px 0px 25px;
- font-size: 1em;
- color: #84683E;
-}
-
-ul.left_menu {
- padding: 22px 20px 22px 25px;
-}
-
-ul.left_menu a {
- font-size: 0.9em;
- color: #705F38;
- margin-left: 2px;
- padding-left: 15px;
-}
-
-ul.left_menu a:hover {
- color: #FF9900;
-}
-
-ul.left_menu li.none a {
- background: url("#{resource['images:slices/left_menu_option.gif']}") no-repeat left;
-}
-
-ul.left_menu li.none a:hover {
- background: url("#{resource['images:slices/left_menu_option_hover.gif']}") no-repeat left;
-}
-
-ul.left_menu li.none a.selected {
- font-weight: bold;
- background: none;
-}
-
-ul.left_menu li.expanded a {
- font-weight: bold;
- margin-left: 0px;
- background: url("#{resource['images:slices/left_menu_expand_selected.gif']}") no-repeat left;
-}
-
-ul.left_menu li.expanded a:hover {
- background: url("#{resource['images:slices/left_menu_expand_hover.gif']}") no-repeat left;
-}
-
-ul.left_menu li.collapsed a {
- margin-left: 0px;
- background: url("#{resource['images:slices/left_menu_expand.gif']}") no-repeat left;
-}
-
-ul.left_menu li.collapsed a:hover {
- background: url("#{resource['images:slices/left_menu_expand_hover.gif']}") no-repeat left;
-}
-
-/* left menu - second level menu ------------------------------------------- */
-ul.left_menu ul {
- list-style-type: none;
- padding: 0px 0px 10px 10px;
-}
-
-ul.left_menu li.expanded ul {
- display: block;
-}
-
-ul.left_menu li.expanded ul a {
- font-weight: normal;
- background: none;
-}
-
-ul.left_menu li.expanded ul li.expanded a {
- font-weight: bold;
- background: url("#{resource['images:slices/left_menu_expand_selected.gif']}") no-repeat left;
-}
-
-ul.left_menu li.expanded ul li.expanded a:hover {
- background: url("#{resource['images:slices/left_menu_expand_hover.gif']}") no-repeat left;
-}
-
-ul.left_menu li.expanded ul li.collapsed a {
- font-weight: normal;
- background: url("#{resource['images:slices/left_menu_expand.gif']}") no-repeat left;
-}
-
-ul.left_menu li.expanded ul li.collapsed a:hover {
- background: url("#{resource['images:slices/left_menu_expand_hover.gif']}") no-repeat left;
-}
-
-ul.left_menu li.expanded ul a.selected {
- font-weight: bold;
-}
-
-ul.left_menu li.collapsed ul {
- display: none;
-}
-
-ul.left_menu ul li.none a,
-ul.left_menu ul li.none a:hover,
-ul.left_menu ul li.none a.selected {
- background: none;
-}
-
-/* left menu - third level menu --------------------------------------------- */
-ul.left_menu ul ul {
- padding: 0px 0px 10px 10px;
-}
-
-ul.left_menu ul li.expanded ul {
- display: block;
-}
-
-ul.left_menu ul li.expanded ul li.none a {
- font-weight: normal;
-}
-
-ul.left_menu ul li.expanded ul li.none a.selected {
- font-weight: bold;
-}
-
-ul.left_menu ul li.expanded ul li.none a,
-ul.left_menu ul li.expanded ul li.none a:hover,
-ul.left_menu ul li.expanded ul li.none a.selected {
- background: none;
-}
-
-/* body_column -------------------------------------------------------------- */
-#body_column p {
- margin: 15px 15px 0px 0px;
-}
-
-#body_column .section, #body_column dl {
- margin: 25px 0px 0px 0px;
- padding: 0px 10px;
-}
-
-#body_column .section {
-}
-
-#body_column .section .section {
- margin: 0px;
- border: 0px;
- padding: 0px;
- overflow: auto;
-}
-
-/* Overflow fix for IE */
-* #body_column .section .section {
- position: relative;
- width: 100%;
- overflow: hidden;
- overflow-x: auto;
-}
-
-#body_column ul {
- margin: 0px 15px 10px 15px;
-}
-
-#body_column ul li {
- padding: 0px 0px 0px 15px;
- background: url("#{resource['images:slices/main_space_list.gif']}") no-repeat left 5px;
-}
-
-#body_column ol {
- padding: 15px 0px 15px 20px;
-}
-
-#body_column ol ol {
- padding: 0px 0px 0px 15px;
-}
-
-/* tables ------------------------------------------------------------------- */
-#body_column table.bodyTable {
- margin: 0px 0px 10px 0px;
- border-collapse: collapse;
- padding: 2px;
- font-family: Tahoma, Arial, sans-serif;
- font-size: 0.9em;
- color: #333333;
- background: white;
-}
-
-#body_column table.bodyTable th, table.bodyTable tr, table.bodyTable td {
- margin: 0px;
- border: 1px solid white;
- padding: 0px 7px 0px 7px;
-}
-
-#body_column table.bodyTable tr.a {
- background: #F7F9F4;
-}
-
-#body_column table.bodyTable tr.b {
- background: #F2F5ED;
-}
-
-#body_column table a.externalLink {
- background: none;
- padding-right: 0px;
-}
-
-#body_column table.bodyTable th {
- padding: 7px 7px 5px 7px;
- background: #CDDCB8 url("#{resource['images:slices/table_head_dark.png']}") repeat-x;
-}
-
-/* source sections ---------------------------------------------------------- */
-#body_column .source, code {
- margin: 14px 0px 14px 0px;
- border: 1px solid #E6E9DA;
- font-size: 1.1em;
- font-family: "Courier new", Courier, monospace;
- color: #333333;
- background: #F9FAF5 url("#{resource['images:slices/code_section.png']}") repeat-x top;
-}
-
-#body_column b {
- padding-top: 10px;
-}
-
-#body_column h2 {
- padding: 5px 10px 5px 10px;
- border: 1px solid #D8E4C7;
- background: white url("#{resource['images:slices/h2.png']}") repeat-x top;
-}
-
-.main_content {
- padding: 30px;
-}
-
-/* copyright ---------------------------------------------------------------- */
-.copyright p {
- font-size: 0.9em;
-}
\ No newline at end of file
diff --git a/examples/pom.xml b/examples/pom.xml
index 7fc636f7d4..f0e8e0d428 100644
--- a/examples/pom.xml
+++ b/examples/pom.xml
@@ -128,7 +128,6 @@
<module>multi-jpa-provider-testing</module>
<module>multiple-arquillian-adapters</module>
<module>multiple-tomee-arquillian</module>
-<!-- <module>myfaces-codi-demo</module>-->
<module>persistence-fragment</module>
<module>pojo-webservice</module>
<!-- <module>polling-parent</module>-->