Spring/JSP auf Spring/JSF umstellen

T

TomTank

Mitglied
Ich bin noch relativ neu in der Materie. Ich habe mir eine kleine CRUD-Anwendung mit Spring 5 und JSP geschrieben. Diese funktioniert soweit auch super.

Ich möchte diese jetzt auf JSF für die Components umstellen. Wohl gemerkt JSF Components und nicht JSF MVC. Das Spring MVC soll weiter verwendet werden.

Hierzu habe ich mir die Spring Dokumentation bzgl. JSF integration durchgelesen.
https://docs.spring.io/autorepo/docs/webflow/2.4.2.RELEASE/reference/html/spring-faces.html
Aber irgendwie fehlt mir immer noch das Verständnis wie es sauber implementiert wird.

Bis jetzt habe ich die javax-faces-2.2.8.jar eingebunden.
Meine spring context xml datei sieht wie folgt aus


jap-spring-servlet.xml
Code:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:context="http://www.springframework.org/schema/context"
    xmlns:tx="http://www.springframework.org/schema/tx"
    xmlns:mvc="http://www.springframework.org/schema/mvc"
    xsi:schemaLocation="
        http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/context
        http://www.springframework.org/schema/context/spring-context.xsd
        http://www.springframework.org/schema/mvc
        http://www.springframework.org/schema/mvc/spring-mvc.xsd
        http://www.springframework.org/schema/tx
        http://www.springframework.org/schema/tx/spring-tx.xsd">

    <!-- Add support for component scanning -->
    <context:component-scan base-package="com.abado.jap" />

    <!-- Add support for conversion, formatting and validation support -->
    <mvc:annotation-driven/>

    <!-- Define Spring MVC view resolver -->
    <bean
        class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="prefix" value="/WEB-INF/views/" />
        <property name="suffix" value=".jsp" />
    </bean>

    <!-- Step 1: Define Database DataSource / connection pool -->
    <bean id="japDataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"
          destroy-method="close">
        <property name="driverClass" value="com.mysql.jdbc.Driver" />
        <property name="jdbcUrl" value="jdbc:mysql://localhost:3306/jap?useSSL=false" />
        <property name="user" value="root" />
        <property name="password" value="" />

        <!-- these are connection pool properties for C3P0 -->
        <property name="initialPoolSize" value="5"/>
        <property name="minPoolSize" value="5" />
        <property name="maxPoolSize" value="20" />
        <property name="maxIdleTime" value="30000" />
    </bean>
  
    <!-- Step 2: Setup Hibernate session factory -->
    <bean id="sessionFactory"
        class="org.springframework.orm.hibernate5.LocalSessionFactoryBean">
        <property name="dataSource" ref="japDataSource" />
        <property name="packagesToScan" value="com.abado.jap.entities" />
        <property name="hibernateProperties">
           <props>
              <prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
              <prop key="hibernate.show_sql">true</prop>
           </props>
        </property>
        </bean>    

    <!-- Step 3: Setup Hibernate transaction manager -->
    <bean id="myTransactionManager"
            class="org.springframework.orm.hibernate5.HibernateTransactionManager">
        <property name="sessionFactory" ref="sessionFactory"/>
    </bean>
  
    <!-- Step 4: Enable configuration of transactional behavior based on annotations -->
    <tx:annotation-driven transaction-manager="myTransactionManager" />

    <!-- Add support for reading web resources: css, images, js, etc ... -->
    <mvc:resources location="/resources/" mapping="/resources/**"></mvc:resources>
    <mvc:resources location="/css/" mapping="/css/**"></mvc:resources>  
    <mvc:resources location="/images/" mapping="/images/**"></mvc:resources>
    <mvc:resources location="/js/" mapping="/js/**"></mvc:resources>  
  
</beans>



faces-config.xml
Code:
<?xml version="1.0" encoding="UTF-8"?>
<faces-config
    xmlns="http://xmlns.jcp.org/xml/ns/javaee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-facesconfig_2_2.xsd"
    version="2.2">

</faces-config>



web.xml
Code:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">
  <display-name>JSFExample</display-name>
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
  </welcome-file-list>
  <servlet>
    <servlet-name>Faces Servlet</servlet-name>
    <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
  </servlet>
  <servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
    <url-pattern>/*</url-pattern>
  </servlet-mapping>
</web-app>

Der URL-Pattern wurde so denke ich korrekt eingestellt. So denke ich.
Die Spring MVC soll auf alle urls ausgehend von meiner Domain "localhost:8080"
entsprechend aufgerufen werden ("<url-pattern>/*</url-pattern>")

Ab 13.5. Configuring WebFlow for use with JSF
wirds für mich leicht unverständlich.

Code:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xmlns:webflow="http://www.springframework.org/schema/webflow-config"
   xmlns:faces="http://www.springframework.org/schema/faces"
   si:schemaLocation="
       http://www.springframework.org/schema/beans
       http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
       http://www.springframework.org/schema/webflow-config
       http://www.springframework.org/schema/webflow-config/spring-webflow-config-2.4.xsd
       http://www.springframework.org/schema/faces
       http://www.springframework.org/schema/faces/spring-faces-2.4.xsd">

   <!-- Executes flows: the central entry point into the Spring Web Flow system -->
   <webflow:flow-executor id="flowExecutor">
       <webflow:flow-execution-listeners>
           <webflow:listener ref="facesContextListener"/>
       </webflow:flow-execution-listeners>
   </webflow:flow-executor>

   <!-- The registry of executable flow definitions -->
   <webflow:flow-registry id="flowRegistry" flow-builder-services="flowBuilderServices" base-path="/WEB-INF">
       <webflow:flow-location-pattern value="**/*-flow.xml" />
   </webflow:flow-registry>

   <!-- Configures the Spring Web Flow JSF integration -->
   <faces:flow-builder-services id="flowBuilderServices" />

   <!-- A listener maintain one FacesContext instance per Web Flow request. -->
   <bean id="facesContextListener"
       class="org.springframework.faces.webflow.FlowFacesContextLifecycleListener" />

</beans>

Wo muss sich diese Datei befinden? Wie muss ich die Datei benennen für das obige Zitat?
Soweit ich es bis jetzt Verstanden habe würde dieses ausreichen um einfache JSF Components mit Spring MVC zu verwenden?

Danke für eure Hilfe
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
F Logging und Builderpattern auf Spring umstellen Frameworks - Spring, Play, Blade, Vaadin & Co 0
H java web anwendung auf spring 2.0 umstellen Frameworks - Spring, Play, Blade, Vaadin & Co 3
Dimax Spring Security CSRF-Token Frameworks - Spring, Play, Blade, Vaadin & Co 5
NicoDeluxe Spring Boot WebClient ErrorHandling Frameworks - Spring, Play, Blade, Vaadin & Co 5
H Hibernate Sql Abfrage loggen Spring mit log4j.properties Frameworks - Spring, Play, Blade, Vaadin & Co 2
Dimax Spring Query +Thymeleaf Frameworks - Spring, Play, Blade, Vaadin & Co 5
Dimax Spring ,DB Querry Frameworks - Spring, Play, Blade, Vaadin & Co 4
bueges Spring JPA Test in Gradle Sub Module Frameworks - Spring, Play, Blade, Vaadin & Co 1
bueges Spring boot : Unique Constraint mit Many to Many Frameworks - Spring, Play, Blade, Vaadin & Co 2
Dimax Spring Security Probleme Frameworks - Spring, Play, Blade, Vaadin & Co 2
NicoDeluxe Spring Testcontainers Mysql + Docker Verbindungsproblem Frameworks - Spring, Play, Blade, Vaadin & Co 3
NicoDeluxe Spring Boot Repository null Frameworks - Spring, Play, Blade, Vaadin & Co 1
S Spring - Zugriff auf Modellattribute in JPA funktioniert nicht Frameworks - Spring, Play, Blade, Vaadin & Co 1
Dimax Spring vor Beginners troubles with native SQL querys Frameworks - Spring, Play, Blade, Vaadin & Co 11
Dimax Spring Whitelabel Error Page warum? Frameworks - Spring, Play, Blade, Vaadin & Co 5
NicoDeluxe Spring Boot Limits API calls Frameworks - Spring, Play, Blade, Vaadin & Co 20
Dimax Spring for Beginners, troubles. Frameworks - Spring, Play, Blade, Vaadin & Co 10
J Spring boot mit Keyclaok rollen basiert Frameworks - Spring, Play, Blade, Vaadin & Co 2
NicoDeluxe Spring Boot Scheduler flexibel machen Frameworks - Spring, Play, Blade, Vaadin & Co 4
NicoDeluxe Spring Boot + Vaadin API Security Frameworks - Spring, Play, Blade, Vaadin & Co 1
S Spring Boot und seine Module verstehen Frameworks - Spring, Play, Blade, Vaadin & Co 3
R Architektur für Spring Boot Projekt Frameworks - Spring, Play, Blade, Vaadin & Co 5
M Spring Boot, Versionskontrolle und Entwicklungsumgebung und Deployment Frameworks - Spring, Play, Blade, Vaadin & Co 2
Avalon Image aus JSON Objekt im Browser anzeigen (BLOB, extrahieren, konvertieren) Spring Boot Frameworks - Spring, Play, Blade, Vaadin & Co 4
Avalon CSS Datei wird in Spring Boot mit Thymeleaf im Standardordner nicht gefunden Frameworks - Spring, Play, Blade, Vaadin & Co 1
bueges Spring Test findet Component nicht Frameworks - Spring, Play, Blade, Vaadin & Co 4
NicoDeluxe Spring Boot Mapping null bei GET Aufruf Frameworks - Spring, Play, Blade, Vaadin & Co 8
NicoDeluxe Buchempfehlung Spring Security Frameworks - Spring, Play, Blade, Vaadin & Co 17
LesterBurnham Spring, Config Server, mehrere Gitlab Repos für Konfiguration - best practices Frameworks - Spring, Play, Blade, Vaadin & Co 1
NicoDeluxe Spring Boot Test mit Junit Frameworks - Spring, Play, Blade, Vaadin & Co 8
L Spring Thymeleaf Datatables Daten editieren? Frameworks - Spring, Play, Blade, Vaadin & Co 0
J Spring Boot - Reactor Frameworks - Spring, Play, Blade, Vaadin & Co 1
L Spring Boot, H2 und Restschnittstelle synchonisation mit Client Frameworks - Spring, Play, Blade, Vaadin & Co 10
TonioTec Spring Boot Datenbankabfrage Frameworks - Spring, Play, Blade, Vaadin & Co 7
L Spring Data: Wie kann ich das Datenmodell richtig definieren? Frameworks - Spring, Play, Blade, Vaadin & Co 6
NicoDeluxe Spring Boot encoding Slash in URL Parameter Frameworks - Spring, Play, Blade, Vaadin & Co 7
S Spring Boot startet nicht Frameworks - Spring, Play, Blade, Vaadin & Co 3
S Spring: Testen von unterschiedlichen application.properties Werten Frameworks - Spring, Play, Blade, Vaadin & Co 6
S Spring Boot -> War File | 404 in Tomcat Frameworks - Spring, Play, Blade, Vaadin & Co 20
Avalon Eventhandling mit Spring REST API Frameworks - Spring, Play, Blade, Vaadin & Co 13
L Spring Boot Anwendung "automatisch" neustarten Frameworks - Spring, Play, Blade, Vaadin & Co 3
A Spring boot Frameworks - Spring, Play, Blade, Vaadin & Co 18
bueseb84 Unit Test mit Spring Boot - Service Autowired Frameworks - Spring, Play, Blade, Vaadin & Co 4
iman Spring Security Frameworks - Spring, Play, Blade, Vaadin & Co 13
S Spring Security deaktivieren Frameworks - Spring, Play, Blade, Vaadin & Co 10
NicoDeluxe DTO <> Entity Hibernate Spring Boot Frameworks - Spring, Play, Blade, Vaadin & Co 28
W Projekt Bootstrap/Kotlin/Spring Framework Frameworks - Spring, Play, Blade, Vaadin & Co 0
W Kotlin / Spring Framework Frameworks - Spring, Play, Blade, Vaadin & Co 3
S Spring MongoDB: Attribut in der Superklasse und @Indexed erst in der Subklasse Frameworks - Spring, Play, Blade, Vaadin & Co 5
NicoDeluxe Verständnisfrage DTO Spring Boot Frameworks - Spring, Play, Blade, Vaadin & Co 19
NicoDeluxe Spring Boot Load Balancing Frameworks - Spring, Play, Blade, Vaadin & Co 5
S Spring: MongoDB Assoziation Frameworks - Spring, Play, Blade, Vaadin & Co 1
S Spring Boot Frameworks - Spring, Play, Blade, Vaadin & Co 1
NicoDeluxe Spring Boot Threads Frameworks - Spring, Play, Blade, Vaadin & Co 6
F Server-Java-Spring Websockets Frameworks - Spring, Play, Blade, Vaadin & Co 6
S Spring Boot: Wert aus Config Datei ermitteln Frameworks - Spring, Play, Blade, Vaadin & Co 3
S Spring Boot: Ein geschütztes Verzeichnis Frameworks - Spring, Play, Blade, Vaadin & Co 1
bueseb84 Probleme mit Spring Boot Docker und Bootstrap Frameworks - Spring, Play, Blade, Vaadin & Co 9
NicoDeluxe Spring Boot Eureka/Zuul Frameworks - Spring, Play, Blade, Vaadin & Co 0
F Redirect in einer Spring Boot WebApplication Frameworks - Spring, Play, Blade, Vaadin & Co 7
F spring apllication startet nicht, ports werden verwednet Frameworks - Spring, Play, Blade, Vaadin & Co 12
B Erstes Spring Boot Projekt: Gameserver-Manager Frameworks - Spring, Play, Blade, Vaadin & Co 5
B Spring Kurse von Baeldung Frameworks - Spring, Play, Blade, Vaadin & Co 6
Thallius Gibt es einen "Standard" Folder für Spring deployment auf Linux Servern? Frameworks - Spring, Play, Blade, Vaadin & Co 13
L Spring Data Einträge von User zahlen und auflisten Frameworks - Spring, Play, Blade, Vaadin & Co 7
V Spring Boot, thymeleaf, Eingaben cashen oder per session speichern? Frameworks - Spring, Play, Blade, Vaadin & Co 2
S Spring Boot Security Frameworks - Spring, Play, Blade, Vaadin & Co 3
S Spring Boot i18n Frameworks - Spring, Play, Blade, Vaadin & Co 28
bueseb84 Spring Boot : Update H2 Repository Frameworks - Spring, Play, Blade, Vaadin & Co 14
A Spring Boot/ OneToMany Relation Frameworks - Spring, Play, Blade, Vaadin & Co 29
S Spring: Eine Klasse am Anfang instanzieren Frameworks - Spring, Play, Blade, Vaadin & Co 5
S Spring Boot testen mit Service Klassen Frameworks - Spring, Play, Blade, Vaadin & Co 4
iman Controller in Spring 4,0 Frameworks - Spring, Play, Blade, Vaadin & Co 2
S Spring JPA / Hibernate: save Methode arbeitet nicht Frameworks - Spring, Play, Blade, Vaadin & Co 2
Thallius Spring Backend Funktion mit Langzeit Requester Frameworks - Spring, Play, Blade, Vaadin & Co 2
F spring post null werte Frameworks - Spring, Play, Blade, Vaadin & Co 1
F Spring Webanwendung Datenbank Frameworks - Spring, Play, Blade, Vaadin & Co 47
L Controller Spring Boot mit Java Frameworks - Spring, Play, Blade, Vaadin & Co 20
J Spring Boot H2 Datbase Frameworks - Spring, Play, Blade, Vaadin & Co 2
A Spring Namenconvention Frameworks - Spring, Play, Blade, Vaadin & Co 4
J Spring Boot Thymleaf mit Java.Optional Frameworks - Spring, Play, Blade, Vaadin & Co 0
L JavaFX Anwendung mit Spring Boot und mehrere FXML Forms Frameworks - Spring, Play, Blade, Vaadin & Co 5
P Mit Maven (und Spring-boot) ein FatJAR und ein EAR bauen Frameworks - Spring, Play, Blade, Vaadin & Co 3
NicoDeluxe Spring Boot Basic Authentication langsam Frameworks - Spring, Play, Blade, Vaadin & Co 2
NicoDeluxe Start Stop Spring Boot Frameworks - Spring, Play, Blade, Vaadin & Co 4
H spring web Frameworks - Spring, Play, Blade, Vaadin & Co 26
H Spring Boot - Dependency Injection Frameworks - Spring, Play, Blade, Vaadin & Co 26
B Java Spring Boot - POM-Problem Frameworks - Spring, Play, Blade, Vaadin & Co 8
S Spring: Werte speichern über Requests hinwege ohne DB Frameworks - Spring, Play, Blade, Vaadin & Co 24
NicoDeluxe Spring Boot parallele Requests Frameworks - Spring, Play, Blade, Vaadin & Co 1
NicoDeluxe Spring Boot Resttemplate exchange XML Frameworks - Spring, Play, Blade, Vaadin & Co 6
S Spring Data Repository delete bulk Frameworks - Spring, Play, Blade, Vaadin & Co 3
S Root-Pfad zu meiner Spring Boot Application Frameworks - Spring, Play, Blade, Vaadin & Co 3
N MongoDB-Spring "Cannot use a complex object as a key value" Frameworks - Spring, Play, Blade, Vaadin & Co 0
NicoDeluxe Spring Boot Error Logging Frameworks - Spring, Play, Blade, Vaadin & Co 5
NicoDeluxe Spring Boot Transactions Frameworks - Spring, Play, Blade, Vaadin & Co 10
R Spring Data: Hibernate liest nicht alle Ebenen Frameworks - Spring, Play, Blade, Vaadin & Co 5
D Spring Boot auf virtuellen Server oder Cloud? Frameworks - Spring, Play, Blade, Vaadin & Co 4
L Spring Data: Detached Entity passed to persist Fehler Frameworks - Spring, Play, Blade, Vaadin & Co 6
R Nebenjob im Bereich JEE, Spring, Servlets, REST Frameworks - Spring, Play, Blade, Vaadin & Co 3

Ähnliche Java Themen


Oben