IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Spring Web Java Discussion :

Rechargement continu du contexte d'application Spring et closing persistence


Sujet :

Spring Web Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Développeur informatique
    Inscrit en
    Mai 2009
    Messages
    33
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2009
    Messages : 33
    Par défaut Rechargement continu du contexte d'application Spring et closing persistence
    Bonjour,

    Je rencontre un fonctionnement dans lequel le contexte d'application est tout le temps en train de se recharger, la persistance se ferme etc.
    N'ayant pas de grande expérience dans le domaine je suis assez surpris...

    Mon test consiste en un tableau qui affiche des personnes, je peux modifier des infos et les clients connectés au système sont rafraichis. Pour permettre d'avoir le même fonctionnement si la base est modifiée par un programme externe j'utilise un servlet qui vérifie la base et déclenche les rafraichissement chez les clients. La vérification en base consiste, pour le moment, à regarder une table. Si des lignes existent alors elles sont traitées et devraient ensuite être détruites ..... mais seul le refresh se fait correctement, pas la destruction. La persistence n'est plus accessible, l'entitymanagerfactory est détruit ....

    Les logs montre des messages d'erreurs qui indiquent que l'instance d'application a été fermée etc ... je comprends pas trop

    Voici une partie du Log
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
     
    18 mai 2009 15:57:26 org.springframework.web.context.ContextLoader initWebApplicationContext
    INFO: Root WebApplicationContext: initialization completed in 1531 ms
    18 mai 2009 15:57:26 com.icesoft.faces.webapp.http.servlet.EnvironmentAdaptingServlet <init>
    INFO: GlassFish ARP available: false
    18 mai 2009 15:57:26 com.icesoft.faces.webapp.http.servlet.EnvironmentAdaptingServlet <init>
    INFO: Jetty ARP available: false
    18 mai 2009 15:57:26 com.icesoft.faces.webapp.http.servlet.EnvironmentAdaptingServlet <init>
    INFO: Adapting to Thread Blocking environment
    18 mai 2009 15:57:27 org.apache.coyote.http11.Http11Protocol start
    INFO: D�marrage de Coyote HTTP/1.1 sur http-8080
    18 mai 2009 15:57:27 org.apache.jk.common.ChannelSocket init
    INFO: JK: ajp13 listening on /0.0.0.0:8009
    18 mai 2009 15:57:27 org.apache.jk.server.JkMain start
    INFO: Jk running ID=0 time=0/16  config=null
    18 mai 2009 15:57:27 org.apache.catalina.startup.Catalina start
    INFO: Server startup in 3838 ms
    18 mai 2009 15:57:30 org.apache.catalina.core.StandardContext reload
    INFO: Le rechargement de ce contexte a d�marr�
    18 mai 2009 15:57:30 org.springframework.context.support.AbstractApplicationContext doClose
    INFO: Closing org.springframework.web.context.support.XmlWebApplicationContext@1a73d30: display name [Root WebApplicationContext]; startup date [Mon May 18 15:57:25 CEST 2009]; root of context hierarchy
    18 mai 2009 15:57:30 org.springframework.beans.factory.support.DefaultSingletonBeanRegistry destroySingletons
    INFO: Destroying singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@3acc67: defining beans [applicationContextHolder,renderManager,ApplicationBean1,SessionBean,PersonneBean,dataSource,dao,service,entityManagerFactory,org.springframework.aop.config.internalAutoProxyCreator,org.springframework.transaction.config.internalTransactionAdvisor,txManager,org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor#0,org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor#0]; root of factory hierarchy
    18 mai 2009 15:57:30 org.springframework.orm.jpa.AbstractEntityManagerFactoryBean destroy
    INFO: Closing JPA EntityManagerFactory for persistence unit 'jpa'
    18 mai 2009 15:57:30 org.hibernate.impl.SessionFactoryImpl close
    INFO: closing
    Voici le code du timer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
     
    /*
     * To change this template, choose Tools | Templates
     * and open the template in the editor.
     */
     
    package maj;
     
     
    import aa.ApplicationContextHolder;
    import com.icesoft.faces.async.render.RenderManager;
    import java.util.Timer;
    import java.util.TimerTask;
    import org.springframework.context.ApplicationContext;
    import service.IService;
    import entites.LigneSuiviModifBDD;
    import java.util.List;
     
    public class synchro2 extends javax.servlet.http.HttpServlet implements javax.servlet.Servlet {
        private static Timer timer;
        private TimerTaskTest task;
        private int period=1000;
        private ApplicationContext context;
        private RenderManager renderManager;
        private IService service;
     
        static {
            timer = new Timer("Test Timer");
        }
     
        public synchro2() {
            super();
            context = ApplicationContextHolder.getContext();
            renderManager = (RenderManager) context.getBean("renderManager");
            service= (IService) context.getBean("service");
            task=new TimerTaskTest();
            timer.schedule(task, 1000, period);
        }
     
        public void commit(){
     
            /*Extraction des objets LigneSuiviModifBDD*/
            List<LigneSuiviModifBDD> Resultat = service.extractionModifsBase();
     
            for(LigneSuiviModifBDD uneLigneSuiviModifBDD : Resultat){
                /*Generation des mises à jour via API Render pour chaque objet Ligne extait*/
                String IDaRafraichir = uneLigneSuiviModifBDD.getnumeroId().toString();
                renderManager.getOnDemandRenderer(IDaRafraichir).requestRender();
            }
     
        /*Destruction des lignes contenues dans Resultat*/
        service.destructionModifsBase(Resultat);
     
        }
     
        class TimerTaskTest extends TimerTask{
               public void run (  ){
                 try
                  {
                   commit();
                  }
                 catch  ( Exception ee )
                  {
                  }
                }
        }
     
    }
    Toute l'appli est configurée via le contexte Spring
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
     
    <?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:p="http://www.springframework.org/schema/p"
           xmlns:aop="http://www.springframework.org/schema/aop"
           xmlns:tx="http://www.springframework.org/schema/tx"
           xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
           http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd
           http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd">
     
        <!-- Bean d'acces au Contexte -->
        <!-- Utilisé pour le sevlet synchro1 -->
        <!-- voir : http://java.developpez.com/faq/spring/?page=bases#accesscontextfromnonspringbean -->
        <bean id="applicationContextHolder"    class="aa.ApplicationContextHolder" />
     
        <bean id="renderManager" class="com.icesoft.faces.async.render.RenderManager" />
        <bean id="ApplicationBean1" class="aa.ApplicationBean1" />
        <bean id="SessionBean" class="aa.SessionBean" scope="session">
            <property name="service" ref="service" />
            <property name="renderManager" ref="renderManager" />
        </bean>
        <bean id="PersonneBean" class="aa.PersonneBean" scope="session">
            <property name="service" ref="service" />
            <property name="sessionEnCours" ref="SessionBean"/>
        </bean>
     
        <bean id="dataSource"
              class="org.springframework.jdbc.datasource.DriverManagerDataSource"
              p:driverClassName="com.mysql.jdbc.Driver"
              p:url="jdbc:mysql://localhost:3306/gipsi"
              p:username="root"
              p:password=""/>
     
        <!-- couches applicatives -->
        <bean id="dao" class="dao.Dao" />
     
        <bean id="service" class="service.Service">
            <property name="dao" ref="dao" />
        </bean>
     
        <bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
            <property name="dataSource" ref="dataSource" />
            <property name="jpaVendorAdapter">
                <bean class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter">
                    <property name="databasePlatform" value="org.hibernate.dialect.MySQL5InnoDBDialect" />
                    <property name="generateDdl" value="true" />
                </bean>
            </property>
            <property name="loadTimeWeaver">
                <bean class="org.springframework.instrument.classloading.InstrumentationLoadTimeWeaver" />
            </property>
        </bean>
     
        <!-- le gestionnaire de transactions -->
     
     
        <tx:annotation-driven transaction-manager="txManager" />
        <bean id="txManager" class="org.springframework.orm.jpa.JpaTransactionManager">
            <property name="entityManagerFactory" ref="entityManagerFactory" />
        </bean>
     
        <!-- traduction des exceptions -->
     
        <bean class="org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor" />
     
        <!-- persistence -->
     
        <bean class="org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor" />
     
    </beans>
    et enfin le Web.xml
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
     
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app version="2.5" 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_2_5.xsd">
        <context-param>
            <param-name>com.icesoft.faces.concurrentDOMViews</param-name>
            <param-value>true</param-value>
        </context-param>
        <context-param>
            <param-name>com.icesoft.faces.debugDOMUpdate</param-name>
            <param-value>false</param-value>
        </context-param>
        <context-param>
            <param-name>com.sun.faces.validateXml</param-name>
            <param-value>true</param-value>
        </context-param>
        <context-param>
            <param-name>com.sun.faces.verifyObjects</param-name>
            <param-value>false</param-value>
        </context-param>
        <context-param>
            <param-name>com.icesoft.faces.uploadMaxFileSize</param-name>
            <param-value>4048576</param-value>
        </context-param>
        <context-param>
            <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
            <param-value>server</param-value>
        </context-param>
        <context-param>
            <param-name>com.sun.faces.enableRestoreView11Compatibility</param-name>
            <param-value>true</param-value>
        </context-param>
        <context-param>
            <param-name>com.icesoft.faces.standardRequestScope</param-name>
            <param-value>false</param-value>
        </context-param>
        <context-param>
            <param-name>com.icesoft.faces.synchronousUpdate</param-name>
            <param-value>false</param-value>
        </context-param>
     
     
     
         <context-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>/WEB-INF/applicationContext.xml</param-value>
        </context-param>
        <listener>
            <listener-class>
                org.springframework.web.context.ContextLoaderListener
            </listener-class>
        </listener>
        <listener>
            <listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>
        </listener>
     
     
     
     
        <servlet>
            <servlet-name>Persistent Faces Servlet</servlet-name>
            <servlet-class>com.icesoft.faces.webapp.xmlhttp.PersistentFacesServlet</servlet-class>
            <load-on-startup>1</load-on-startup>
        </servlet>
        <servlet>
            <servlet-name>Blocking Servlet</servlet-name>
            <servlet-class>com.icesoft.faces.webapp.xmlhttp.BlockingServlet</servlet-class>
            <load-on-startup>1</load-on-startup>
        </servlet>
        <servlet>
            <servlet-name>uploadServlet</servlet-name>
            <servlet-class>com.icesoft.faces.component.inputfile.FileUploadServlet</servlet-class>
            <load-on-startup>1</load-on-startup>
        </servlet>
        <servlet>
            <servlet-name>Faces Servlet</servlet-name>
            <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
            <load-on-startup>1</load-on-startup>
        </servlet>
        <servlet>
            <servlet-name>synchro1</servlet-name>
            <servlet-class>maj.synchro1</servlet-class>
            <load-on-startup>1</load-on-startup>
        </servlet>
        <servlet>
            <servlet-name>synchro2</servlet-name>
            <servlet-class>maj.synchro2</servlet-class>
            <load-on-startup>1</load-on-startup>
        </servlet>
        <servlet-mapping>
            <servlet-name>Persistent Faces Servlet</servlet-name>
            <url-pattern>/xmlhttp/*</url-pattern>
        </servlet-mapping>
        <servlet-mapping>
            <servlet-name>Persistent Faces Servlet</servlet-name>
            <url-pattern>*.iface</url-pattern>
        </servlet-mapping>
        <servlet-mapping>
            <servlet-name>Persistent Faces Servlet</servlet-name>
            <url-pattern>*.jspx</url-pattern>
        </servlet-mapping>
        <servlet-mapping>
            <servlet-name>Blocking Servlet</servlet-name>
            <url-pattern>/block/*</url-pattern>
        </servlet-mapping>
        <servlet-mapping>
            <servlet-name>uploadServlet</servlet-name>
            <url-pattern>/uploadHtml</url-pattern>
        </servlet-mapping>
        <servlet-mapping>
            <servlet-name>Faces Servlet</servlet-name>
            <url-pattern>/faces/*</url-pattern>
        </servlet-mapping>
        <servlet-mapping>
            <servlet-name>Persistent Faces Servlet</servlet-name>
            <url-pattern>*.jsp</url-pattern>
        </servlet-mapping>
     
     
        <servlet-mapping>
            <servlet-name>synchro1</servlet-name>
            <url-pattern>/MAJ/synchro1</url-pattern>
        </servlet-mapping>
        <session-config>
            <session-timeout>
                30
            </session-timeout>
        </session-config>
        
        <welcome-file-list>
            <welcome-file>index.jsp</welcome-file>
        </welcome-file-list>
    </web-app>
    Quelqu'un saurait-il m'expliquer d'où vient le problème ?

    Merci d'avance pour votre aide.

  2. #2
    Membre averti
    Profil pro
    Développeur informatique
    Inscrit en
    Mai 2009
    Messages
    33
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2009
    Messages : 33
    Par défaut le log de localhost de Tomcat
    Un complément dans lequel on voit bien que l'application ferme...

    Log de tomcat ( localhost)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    18 mai 2009 17:03:42 org.apache.catalina.core.ApplicationContext log
    INFO: Initializing Spring root WebApplicationContext
    18 mai 2009 17:03:44 org.apache.catalina.core.ApplicationContext log
    INFO: ContextListener: contextInitialized()
    18 mai 2009 17:03:44 org.apache.catalina.core.ApplicationContext log
    INFO: SessionListener: contextInitialized()
    18 mai 2009 17:03:48 org.apache.catalina.core.ApplicationContext log
    INFO: Closing Spring root WebApplicationContext
    18 mai 2009 17:03:53 org.apache.catalina.core.ApplicationContext log
    INFO: Initializing Spring root WebApplicationContext

  3. #3
    Membre averti
    Profil pro
    Développeur informatique
    Inscrit en
    Mai 2009
    Messages
    33
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2009
    Messages : 33
    Par défaut une info en plus ...
    extrait du Log
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
     
    GRAVE: Communications link failure
     
    Last packet sent to the server was 0 ms ago.
    18 mai 2009 17:57:09 com.icesoft.faces.async.render.RenderHub createCoreService
    INFO: core render service created:
      core pool size : 10
      max pool size  : 15
      keep alive time: 300000
    18 mai 2009 17:57:10 org.apache.catalina.loader.WebappClassLoader loadClass
    INFO: Illegal access: this web application instance has been stopped already.  Could not load sun.reflect.MethodAccessorImpl.  The eventual following stack trace is caused by an error thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access, and has no functional impact.
    java.lang.IllegalStateException
    	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1273)
    	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1233)
    	at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
    	at sun.misc.Unsafe.defineClass(Native Method)
    	at sun.reflect.ClassDefiner.defineClass(ClassDefiner.java:45)
    	at sun.reflect.MethodAccessorGenerator$1.run(MethodAccessorGenerator.java:381)
    	at java.security.AccessController.doPrivileged(Native Method)
    	at sun.reflect.MethodAccessorGenerator.generate(MethodAccessorGenerator.java:377)
    	at sun.reflect.MethodAccessorGenerator.generateMethod(MethodAccessorGenerator.java:59)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:28)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    	at java.lang.reflect.Method.invoke(Method.java:597)
    	at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean$ManagedEntityManagerFactoryInvocationHandler.invoke(AbstractEntityManagerFactoryBean.java:374)
    	at $Proxy10.getNativeEntityManagerFactory(Unknown Source)
    	at org.springframework.orm.jpa.JpaTransactionManager.createEntityManagerForTransaction(JpaTransactionManager.java:393)
    	at org.springframework.orm.jpa.JpaTransactionManager.doBegin(JpaTransactionManager.java:320)
    	at org.springframework.transaction.support.AbstractPlatformTransactionManager.getTransaction(AbstractPlatformTransactionManager.java:350)
    	at org.springframework.transaction.interceptor.TransactionAspectSupport.createTransactionIfNecessary(TransactionAspectSupport.java:261)
    	at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:101)
    	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
    	at $Proxy15.extractionModifsBase(Unknown Source)
    	at maj.synchro2.commit(synchro2.java:39)
    	at maj.synchro2$TimerTaskTest.run(synchro2.java:56)
    	at java.util.TimerThread.mainLoop(Timer.java:512)
    	at java.util.TimerThread.run(Timer.java:462)
    18 mai 2009 17:57:10 org.hibernate.util.JDBCExceptionReporter logExceptions
    ATTENTION: SQL Error: 0, SQLState: 08S01
    Mais pkoi cette appli fait un close ?!?!

  4. #4
    Membre averti
    Profil pro
    Développeur informatique
    Inscrit en
    Mai 2009
    Messages
    33
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2009
    Messages : 33
    Par défaut Suite ...
    Bon, à priori, ce que je pensais être un problème de prog semble devenir un problème lié au mode déploiement des applications par Tomcat. J'ai vu pas mal de sujets sur ce point et, tous, parlent de la propriété du serveur 'Reloadable' qui, lorsqu'à vrai, peut provoquer un double chargement de l'application. Les objets chargés au premier chargement sont déchargés mais pas entièrement ce qui provoque des problèmes par la suite. Je creuse tout pour l'appliquer à mon propre cas et si je trouve je remplis ce topic. Pour info, et si qqn a rencontré ce problème dans le même environnement que moi :

    développement avec NetBeans 6.5 / Tomcat 6 ( que je démarre via le tableau des services sur un système WinXP ) , Spring, JPA/Hibernate, IceFaces - JSF1.2

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Août 2007
    Messages
    59
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 59
    Par défaut Une piste ?
    Bonjour,

    Pour la fermeture de la couche de persistence, je pense que c'est lié au fait que je n'ai pas vu le filtre OpenSessionInView offert par Spring pour l'intégration d'Hibernate.

    Si tu n'utilises pas ce filtre, la session hibernate se charge, puis se ferme toute seule. C'est le fonctionnement normal, car aucune (hard/soft) référence vers ta sessionFactory n'est maintenue par ton application.

    Je ne sais pas dans quelle mesure JPA intervient, ni si ce filtre est nécessaire dans ta configuration, ni même s'il est déjà présent dans ta config car je ne connais pas encore JPA.
    Je n'ai utilisé que JDBC (sans et avec Spring) et Hibernate pour l'instant, sur mes développements.

    Pour le double chargement de l'application, je l'ai expérimenté également avec Tomcat v5.5.26, jusqu'au moment où j'en ai eu marre et je suis passé sous JBoss 4.2.2. Problème dissous, mais d'autres sont survenus, car le deploiement des wars ne se fait pas tout à fait de la même manière dans ces 2 serveurs d'application, et évidemment j'avais besoin de stocker des informations dans le répertoire de déploiement de mon war. Le premier développeur s'étend permis des choses non portables, il a fallu rendre portable le produit.


    Bon courage.

  6. #6
    Membre averti
    Profil pro
    Développeur informatique
    Inscrit en
    Mai 2009
    Messages
    33
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2009
    Messages : 33
    Par défaut checking ...
    Merci pour ta réponse thithi83, je ne connaissais pas le filtre dont tu parles, je vais donc regarder.
    Je poste quelque chose dès que j'ai plus d'infos

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. jsf et context d'application
    Par pbdlpc dans le forum JSF
    Réponses: 2
    Dernier message: 17/03/2007, 13h02
  2. [Framework] Conception d'une couche applicative Spring
    Par joseph_p dans le forum Spring
    Réponses: 10
    Dernier message: 17/03/2007, 10h43
  3. Charger le contexte d'application dans une appli WEB
    Par nanou2002 dans le forum Spring Web
    Réponses: 3
    Dernier message: 13/10/2006, 10h44
  4. retrouver le contexte d'application
    Par david06600 dans le forum Websphere
    Réponses: 2
    Dernier message: 10/08/2006, 13h35
  5. Réponses: 1
    Dernier message: 11/07/2006, 12h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo