Front end

En nuestro sts nos vamos a File->New->Maven Project
Login Test
Seleccionamos Create simple project (skip archetype selection) y presionamos next
Login Test
LLenamos los siguientes campos y presionamos Finish: Login Test
En el directoriosrc/main/resources/ creamos un folder META-INF
En el directorio src/main/resources/META-INF/ creamos el archivo beans.xml escribimos lo siguiente:
 
  
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="https://jakarta.ee/xml/ns/jakartaee"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/beans_4_0.xsd"
       version="4.0"
       bean-discovery-mode="annotated">
</beans> 
       
       
        
   

En micoven/src/main/webapp/WEB-INF el archivo web.xml y presionamos finish
En web.xml escribimos lo siguiente:
 
  
	<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         version="6.0"
         xmlns="https://jakarta.ee/xml/ns/jakartaee"
         xsi:schemaLocation="https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/web-app_6_0.xsd" >
    
   <display-name>micoven</display-name>
<absolute-ordering/> 
    
    
    
    <context-param>
<param-name>jakarta.faces.PROJECT_STAGE</param-name>
<param-value>Development</param-value>
</context-param>
    
    
    
    
         
   <context-param>
    <param-name>primefaces.THEME</param-name>
    <param-value>saga-blue</param-value>
</context-param>



         
 <servlet>
        <servlet-name>FacesServlet</servlet-name>
        <servlet-class>jakarta.faces.webapp.FacesServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>

 <servlet-mapping>
<servlet-name>FacesServlet</servlet-name>
<url-pattern>/faces/*</url-pattern>
</servlet-mapping>
  
         
     <session-config>
<session-timeout>30</session-timeout>
</session-config>
<welcome-file-list>
<welcome-file>faces/login.xhtml</welcome-file>
</welcome-file-list>    
                  
</web-app>
	  
	  
	     
   

Nos vamos al archivo pom.xml y escribimos lo siguiente:
 
         
       
  <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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.tutosoftware.micoven</groupId>
  <artifactId>micoven</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>war</packaging>
  <name>Micoven</name>
    <properties>
        <maven.compiler.source>11</maven.compiler.source>
        <maven.compiler.target>11</maven.compiler.target>
        <jakartaee.version>10.0.0</jakartaee.version> <!-- Or a later version -->
        <mojarra.version>4.0.0</mojarra.version>
    </properties>

    <dependencies>
        <!-- Jakarta EE Web API (includes Servlet, JSP, EL, JSF, etc.) -->
      
      
      <dependency>
        <groupId>jakarta.platform</groupId>
        <artifactId>jakarta.jakartaee-api</artifactId>
        <version>${jakartaee.version}</version>
        <scope>provided</scope>
    </dependency>
      
      
      

        <!-- Mojarra (JSF Implementation) -->
     <dependency>
        <groupId>jakarta.faces</groupId>
        <artifactId>jakarta.faces-api</artifactId>
        <version>4.0.0</version>
        <scope>provided</scope>
    </dependency>
    
   <dependency>             
   <groupId>jakarta.enterprise</groupId>             
   <artifactId>jakarta.enterprise.cdi-api</artifactId>             
   <version>4.1.0</version> 
   <scope>provided</scope>        
   </dependency>         
   <dependency>             
   <groupId>jakarta.xml.bind</groupId>             
   <artifactId>jakarta.xml.bind-api</artifactId>             
   <version>4.0.2</version>         
   </dependency> 
    
    
    
    
    
    <!-- Servlet API -->
   

    <!-- JSTL -->
   
        <!-- JSTL (if used) -->
       <dependency>
    <groupId>org.primefaces</groupId>
    <artifactId>primefaces</artifactId>
    <version>15.0.0</version>
    <classifier>jakarta</classifier>
</dependency>

<dependency>
    <groupId>org.primefaces</groupId>
    <artifactId>primefaces-themes</artifactId>
    <version>15.0.0</version>
</dependency>

 
	<dependency>
        <groupId>org.projectlombok</groupId>
        <artifactId>lombok</artifactId>
        <version>1.18.18</version>
        <scope>provided</scope>
    </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.8.1</version>
                <configuration>
                    <source>${maven.compiler.source}</source>
                    <target>${maven.compiler.target}</target>
                </configuration>
            </plugin>
           
            
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-war-plugin</artifactId>
                <version>3.3.2</version>
                <configuration>
                    <failOnMissingWebXml>false</failOnMissingWebXml>
                </configuration>
            </plugin>
        </plugins>
    </build>  
</project>