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 Java Discussion :

Tutoriel sur AngularJS et Spring 4


Sujet :

Spring Java

  1. #1
    Expert éminent
    Tutoriel sur AngularJS et Spring 4
    Ce message n'a pas pu être affiché car il comporte des erreurs.

  2. #2
    Membre expérimenté
    il y a petit pb:

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Not Found
     
    The requested URL /angularjs-spring4/] was not found on this server.

  3. #3
    Expert éminent
    vu et corrigé. Merci.

  4. #4
    Expert éminent
    [errata]
    Correction d'une coquille au paragraphe 4.4 qui décrit l'installation de l'application sur un mobile Android. J'avais écrit que côté serveur les entêtes CORS devaient être générés. C'est incorrect. Ils n'ont pas à être générés puisque l'application Android ne s'exécute pas dans un navigateur.

    st

  5. #5
    Expert éminent sénior
    Bonjour,

    j'ai parcouru rapidement.

    Je regrette l'absence de tests (unitaires, intégration, et fonctionnels) sur ce tutoriel. C'est une problématique à prendre en compte lors de la conception du code et AngularJS a été entre autres conçu pour répondre à un besoin croissant de rationalisation dans les méthodo de dev frontend (injection de dépendance native, Jasmine via Karma pour tests unitaires et e2e, archi orientée services, mock de $http natif, ...)

    Sinon super.
    Un problème avec Git ? Essayez la FAQ, sinon posez votre question sur le forum.



    "Toute personne croyant qu'une croissance exponentielle peut durer indéfiniment dans un monde fini est soit un fou, soit un économiste."
    Kenneth E. Boulding

    "Les richesses naturelles sont inépuisables, car, sans cela, nous ne les obtiendrions pas gratuitement. Ne pouvant être ni multipliées ni épuisées, elles ne sont pas l’objet des sciences économiques."
    Jean-Baptiste Say, Traité d'économie politique, 1803.

    "/home/earth is 102% full ... please delete anyone you can."
    Inconnu

  6. #6
    Membre actif
    gestion de ressources et fuites memoires
    Bonjour!

    Je souhaite connaitre votre avis sur ce genre d applications a savoir ce qui ce dit HTML5 souvent Angularjs , bootstrap.....! concerant l gestion des ressources sur un navigateur web ?
    Sur votre exemple d application pas de soucis ca passera puisqu il s agit d un petit exemple , avec 4 ou 5 controler et autant de directives et fichier JS ,
    Mais imaginons une tres grande application
    Ou l on se met a charger l ensemble de l application (JS) sur le navigateur heinnnn???
    J ai teste votre application et c est juste un exemple de quelques pages sur une machine (VM) a 256 Mo RAM !
    IE crache au bout de trois navigation !
    Chrome Bloque toute la machine
    FF Freez

  7. #7
    Expert éminent
    @Marco46
    Je regrette l'absence de tests (unitaires, intégration, et fonctionnels) sur ce tutoriel.
    Il ne faut pas. Dès l'introduction, il est indiqué clairement que le tutoriel n'est pas exhaustif et je donne des références pour "combler" les manques, notamment le livre d'Adam Freeman "Pro AngularJS", qui a un chapitre consacré aux tests. Dans ma conclusion, j'indique que je n'ai pas couvert les tests mais que ceux-ci sont très importants et qu'Angular est accompagné d'outils pour les faire de façon professionnelle et automatisée.

    Je n'avais pas pour objectif d'être exhaustif mais simplement de permettre au lecteur de démarrer une auto-formation avec AngularJS et Spring.

  8. #8
    Expert éminent
    @Lakhdr

    Je souhaite connaitre votre avis sur ce genre d applications a savoir ce qui ce dit HTML5 souvent Angularjs , bootstrap.....! concerant l gestion des ressources sur un navigateur web ?
    Je n'en ai pas. J'ai travaillé avec une machine avec 8 Go de Ram. Au cours des quelques mois où j'ai écrit ce tutoriel, ma machine a planté plusieurs fois sans raison apparente mais pas lors de tests de l'application. Néanmoins, j'ai effectivement suspecté des fuites mémoire causées par les différents tests que j'ai pu faire. Sans preuve. Mais je ne serais pas étonné que les problèmes que vous évoquez puissent se produire.

  9. #9
    Expert éminent sénior
    Citation Envoyé par Lakhdr Voir le message
    Bonjour!

    Je souhaite connaitre votre avis sur ce genre d applications a savoir ce qui ce dit HTML5 souvent Angularjs , bootstrap.....! concerant l gestion des ressources sur un navigateur web ?
    Sur votre exemple d application pas de soucis ca passera puisqu il s agit d un petit exemple , avec 4 ou 5 controler et autant de directives et fichier JS ,
    Mais imaginons une tres grande application
    Ou l on se met a charger l ensemble de l application (JS) sur le navigateur heinnnn???
    J ai teste votre application et c est juste un exemple de quelques pages sur une machine (VM) a 256 Mo RAM !
    IE crache au bout de trois navigation !
    Chrome Bloque toute la machine
    FF Freez
    IE quelle version ?

    256 mo de RAM c'est vraiment très peu. Trop peu pour les navigateurs modernes. Or il est très clairement indiqué par les concepteurs d'Angular que le framework ne s'adresse qu'aux navigateurs Evergreen.

    Pour ce qui est des performances, je développe actuellement une application web mobile dans un grand compte. On supporte toute une série de tablettes et mobiles et les performances sont au rendez-vous. Que ce soit en terme de temps d'exécution comme en terme de taille des flux.

    Après nous avons effectué pas mal d'optimisations, comme par exemple l'intégration de requireJS pour effectuer du lazy loading sur l'application. Cela règle l'essentiel du problème du bootstrap de l'application.

    Néanmoins il faut savoir que le lazy loading sera en natif dans Angular 2. Enfin c'est ce que les dev du framework veulent faire.

    Une dernière solution consiste à découper l'application en sous-applications.

    @Serge Tahé
    Ok bien reçu ^^
    Un problème avec Git ? Essayez la FAQ, sinon posez votre question sur le forum.



    "Toute personne croyant qu'une croissance exponentielle peut durer indéfiniment dans un monde fini est soit un fou, soit un économiste."
    Kenneth E. Boulding

    "Les richesses naturelles sont inépuisables, car, sans cela, nous ne les obtiendrions pas gratuitement. Ne pouvant être ni multipliées ni épuisées, elles ne sont pas l’objet des sciences économiques."
    Jean-Baptiste Say, Traité d'économie politique, 1803.

    "/home/earth is 102% full ... please delete anyone you can."
    Inconnu

  10. #10
    Candidat au Club
    Excellent
    Excellent tuto merci Monsieu Tahé

  11. #11
    Futur Membre du Club
    Bonjour,


    Je viens de découvrir ce tutoriel. Je trouve qu'il est bien structuré et très claire avec pas mal d'exemple à l'appui.


    Merci monsieur Tahé.

  12. ###raw>post.musername###
    Candidat au Club
    Probleme rencontré
    Bonjour,

    En essayant de déployer l'application téléchargé j'ai rencontré cette erreur.

    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
    SLF4J: Class path contains multiple SLF4J bindings.
    SLF4J: Found binding in [jar:file:/C:/Users/yves/.m2/repository/ch/qos/logback/logback-classic/1.1.1/logback-classic-1.1.1.jar!/org/slf4j/impl/StaticLoggerBinder.class]
    SLF4J: Found binding in [jar:file:/C:/Users/yves/.m2/repository/ch/qos/logback/logback-classic/1.1.2/logback-classic-1.1.2.jar!/org/slf4j/impl/StaticLoggerBinder.class]
    SLF4J: See <a href="http://www.slf4j.org/codes.html#multiple_bindings" target="_blank">http://www.slf4j.org/codes.html#multiple_bindings</a> for an explanation.
    SLF4J: Actual binding is of type [ch.qos.logback.classic.util.ContextSelectorStaticBinder]
     
      .   ____          _            __ _ _
     /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
    ( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
     \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
      '  |____| .__|_| |_|_| |_\__, | / / / /
     =========|_|==============|___/=/_/_/_/
     :: Spring Boot ::        (v1.0.0.RELEASE)
     
    2015-04-11 20:14:22.214  INFO 7328 --- [           main] rdvmedecins.web.boot.Boot                : Starting Boot on YvesJoseph with PID 7328 (C:\workspace\dvp\rdvmedecins-webapi-v4\target\classes started by yves)
    2015-04-11 20:14:22.691  INFO 7328 --- [           main] ationConfigEmbeddedWebApplicationContext : Refreshing org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@646153: startup date [Sat Apr 11 20:14:22 EDT 2015]; root of context hierarchy
    2015-04-11 20:14:32.979  INFO 7328 --- [           main] o.s.b.f.s.DefaultListableBeanFactory     : Overriding bean definition for bean 'org.springframework.boot.autoconfigure.AutoConfigurationPackages': replacing [Generic bean: class [org.springframework.boot.autoconfigure.AutoConfigurationPackages$BasePackages]; scope=; abstract=false; lazyInit=false; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=null; factoryMethodName=null; initMethodName=null; destroyMethodName=null] with [Generic bean: class [org.springframework.boot.autoconfigure.AutoConfigurationPackages$BasePackages]; scope=; abstract=false; lazyInit=false; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=null; factoryMethodName=null; initMethodName=null; destroyMethodName=null]
    2015-04-11 20:14:32.983  INFO 7328 --- [           main] o.s.b.f.s.DefaultListableBeanFactory     : Overriding bean definition for bean 'org.springframework.boot.autoconfigure.AutoConfigurationPackages': replacing [Generic bean: class [org.springframework.boot.autoconfigure.AutoConfigurationPackages$BasePackages]; scope=; abstract=false; lazyInit=false; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=null; factoryMethodName=null; initMethodName=null; destroyMethodName=null] with [Generic bean: class [org.springframework.boot.autoconfigure.AutoConfigurationPackages$BasePackages]; scope=; abstract=false; lazyInit=false; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=null; factoryMethodName=null; initMethodName=null; destroyMethodName=null]
    2015-04-11 20:14:33.835  INFO 7328 --- [           main] o.s.b.f.s.DefaultListableBeanFactory     : Overriding bean definition for bean 'beanNameViewResolver': replacing [Root bean: class [null]; scope=; abstract=false; lazyInit=false; autowireMode=3; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=org.springframework.boot.autoconfigure.web.ErrorMvcAutoConfiguration$WhitelabelErrorViewConfiguration; factoryMethodName=beanNameViewResolver; initMethodName=null; destroyMethodName=(inferred); defined in class path resource [org/springframework/boot/autoconfigure/web/ErrorMvcAutoConfiguration$WhitelabelErrorViewConfiguration.class]] with [Root bean: class [null]; scope=; abstract=false; lazyInit=false; autowireMode=3; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=org.springframework.boot.autoconfigure.web.WebMvcAutoConfiguration$WebMvcAutoConfigurationAdapter; factoryMethodName=beanNameViewResolver; initMethodName=null; destroyMethodName=(inferred); defined in class path resource [org/springframework/boot/autoconfigure/web/WebMvcAutoConfiguration$WebMvcAutoConfigurationAdapter.class]]
    2015-04-11 20:14:37.112  INFO 7328 --- [           main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration' of type [class org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration$$EnhancerBySpringCGLIB$$c56ef9d0] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
    2015-04-11 20:14:37.334  INFO 7328 --- [           main] trationDelegate$BeanPostProcessorChecker : Bean 'transactionAttributeSource' of type [class org.springframework.transaction.annotation.AnnotationTransactionAttributeSource] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
    2015-04-11 20:14:37.507  INFO 7328 --- [           main] trationDelegate$BeanPostProcessorChecker : Bean 'transactionInterceptor' of type [class org.springframework.transaction.interceptor.TransactionInterceptor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
    2015-04-11 20:14:37.586  INFO 7328 --- [           main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.transaction.config.internalTransactionAdvisor' of type [class org.springframework.transaction.interceptor.BeanFactoryTransactionAttributeSourceAdvisor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
    2015-04-11 20:14:38.682  INFO 7328 --- [           main] .b.l.ClasspathLoggingApplicationListener : Application failed to start with classpath: [file:/C:/workspace/dvp/rdvmedecins-webapi-v4/target/classes/, file:/C:/workspace/dvp/rdvmedecins-webapi-v4/target/test-classes/, file:/C:/Users/yves/.m2/repository/org/springframework/boot/spring-boot-starter-web/1.0.0.RELEASE/spring-boot-starter-web-1.0.0.RELEASE.jar, file:/C:/Users/yves/.m2/repository/org/springframework/boot/spring-boot-starter/1.0.0.RELEASE/spring-boot-starter-1.0.0.RELEASE.jar, file:/C:/Users/yves/.m2/repository/org/springframework/boot/spring-boot/1.0.0.RELEASE/spring-boot-1.0.0.RELEASE.jar, file:/C:/Users/yves/.m2/repository/org/springframework/boot/spring-boot-autoconfigure/1.0.0.RELEASE/spring-boot-autoconfigure-1.0.0.RELEASE.jar, file:/C:/Users/yves/.m2/repository/org/springframework/boot/spring-boot-starter-logging/1.0.0.RELEASE/spring-boot-starter-logging-1.0.0.RELEASE.jar, file:/C:/Users/yves/.m2/repository/org/slf4j/jcl-over-slf4j/1.7.6/jcl-over-slf4j-1.7.6.jar, file:/C:/Users/yves/.m2/repository/org/slf4j/jul-to-slf4j/1.7.6/jul-to-slf4j-1.7.6.jar, file:/C:/Users/yves/.m2/repository/org/slf4j/log4j-over-slf4j/1.7.6/log4j-over-slf4j-1.7.6.jar, file:/C:/Users/yves/.m2/repository/ch/qos/logback/logback-classic/1.1.1/logback-classic-1.1.1.jar, file:/C:/Users/yves/.m2/repository/ch/qos/logback/logback-core/1.1.1/logback-core-1.1.1.jar, file:/C:/Users/yves/.m2/repository/org/yaml/snakeyaml/1.13/snakeyaml-1.13.jar, file:/C:/Users/yves/.m2/repository/com/fasterxml/jackson/core/jackson-databind/2.3.2/jackson-databind-2.3.2.jar, file:/C:/Users/yves/.m2/repository/com/fasterxml/jackson/core/jackson-annotations/2.3.0/jackson-annotations-2.3.0.jar, file:/C:/Users/yves/.m2/repository/com/fasterxml/jackson/core/jackson-core/2.3.2/jackson-core-2.3.2.jar, file:/C:/Users/yves/.m2/repository/org/springframework/spring-web/4.0.3.RELEASE/spring-web-4.0.3.RELEASE.jar, file:/C:/Users/yves/.m2/repository/org/springframework/spring-webmvc/4.0.3.RELEASE/spring-webmvc-4.0.3.RELEASE.jar, file:/C:/Users/yves/.m2/repository/org/springframework/boot/spring-boot-starter-security/1.0.0.RELEASE/spring-boot-starter-security-1.0.0.RELEASE.jar, file:/C:/Users/yves/.m2/repository/org/springframework/security/spring-security-config/3.2.3.RELEASE/spring-security-config-3.2.3.RELEASE.jar, file:/C:/Users/yves/.m2/repository/aopalliance/aopalliance/1.0/aopalliance-1.0.jar, file:/C:/Users/yves/.m2/repository/org/springframework/security/spring-security-core/3.2.3.RELEASE/spring-security-core-3.2.3.RELEASE.jar, file:/C:/Users/yves/.m2/repository/org/springframework/security/spring-security-web/3.2.3.RELEASE/spring-security-web-3.2.3.RELEASE.jar, file:/C:/Users/yves/.m2/repository/org/springframework/spring-aop/4.0.3.RELEASE/spring-aop-4.0.3.RELEASE.jar, file:/C:/Users/yves/.m2/repository/org/springframework/spring-beans/4.0.3.RELEASE/spring-beans-4.0.3.RELEASE.jar, file:/C:/Users/yves/.m2/repository/org/springframework/spring-context/4.0.3.RELEASE/spring-context-4.0.3.RELEASE.jar, file:/C:/Users/yves/.m2/repository/org/springframework/spring-core/4.0.3.RELEASE/spring-core-4.0.3.RELEASE.jar, file:/C:/Users/yves/.m2/repository/org/springframework/spring-expression/4.0.3.RELEASE/spring-expression-4.0.3.RELEASE.jar, file:/C:/Users/yves/.m2/repository/org/springframework/boot/spring-boot-starter-tomcat/1.0.0.RELEASE/spring-boot-starter-tomcat-1.0.0.RELEASE.jar, file:/C:/Users/yves/.m2/repository/org/apache/tomcat/embed/tomcat-embed-core/7.0.52/tomcat-embed-core-7.0.52.jar, file:/C:/Users/yves/.m2/repository/org/apache/tomcat/embed/tomcat-embed-el/7.0.52/tomcat-embed-el-7.0.52.jar, file:/C:/Users/yves/.m2/repository/org/apache/tomcat/embed/tomcat-embed-logging-juli/7.0.52/tomcat-embed-logging-juli-7.0.52.jar, file:/C:/workspace/dvp/rdvmedecins-metier-dao-v2/target/classes/, file:/C:/workspace/dvp/rdvmedecins-metier-dao-v2/target/test-classes/, file:/C:/Users/yves/.m2/repository/org/springframework/boot/spring-boot-starter-data-jpa/1.1.0.RC1/spring-boot-starter-data-jpa-1.1.0.RC1.jar, file:/C:/Users/yves/.m2/repository/org/springframework/boot/spring-boot-starter/1.1.0.RC1/spring-boot-starter-1.1.0.RC1.jar, file:/C:/Users/yves/.m2/repository/org/springframework/boot/spring-boot/1.1.0.RC1/spring-boot-1.1.0.RC1.jar, file:/C:/Users/yves/.m2/repository/org/springframework/boot/spring-boot-autoconfigure/1.1.0.RC1/spring-boot-autoconfigure-1.1.0.RC1.jar, file:/C:/Users/yves/.m2/repository/org/springframework/boot/spring-boot-starter-logging/1.1.0.RC1/spring-boot-starter-logging-1.1.0.RC1.jar, file:/C:/Users/yves/.m2/repository/org/slf4j/jul-to-slf4j/1.7.7/jul-to-slf4j-1.7.7.jar, file:/C:/Users/yves/.m2/repository/org/slf4j/log4j-over-slf4j/1.7.7/log4j-over-slf4j-1.7.7.jar, file:/C:/Users/yves/.m2/repository/ch/qos/logback/logback-classic/1.1.2/logback-classic-1.1.2.jar, file:/C:/Users/yves/.m2/repository/ch/qos/logback/logback-core/1.1.2/logback-core-1.1.2.jar, file:/C:/Users/yves/.m2/repository/org/springframework/boot/spring-boot-starter-aop/1.1.0.RC1/spring-boot-starter-aop-1.1.0.RC1.jar, file:/C:/Users/yves/.m2/repository/org/aspectj/aspectjrt/1.8.0/aspectjrt-1.8.0.jar, file:/C:/Users/yves/.m2/repository/org/aspectj/aspectjweaver/1.8.0/aspectjweaver-1.8.0.jar, file:/C:/Users/yves/.m2/repository/org/springframework/boot/spring-boot-starter-jdbc/1.1.0.RC1/spring-boot-starter-jdbc-1.1.0.RC1.jar, file:/C:/Users/yves/.m2/repository/org/springframework/spring-jdbc/4.0.5.RELEASE/spring-jdbc-4.0.5.RELEASE.jar, file:/C:/Users/yves/.m2/repository/org/apache/tomcat/tomcat-jdbc/7.0.54/tomcat-jdbc-7.0.54.jar, file:/C:/Users/yves/.m2/repository/org/apache/tomcat/tomcat-juli/7.0.54/tomcat-juli-7.0.54.jar, file:/C:/Users/yves/.m2/repository/org/springframework/spring-tx/4.0.5.RELEASE/spring-tx-4.0.5.RELEASE.jar, file:/C:/Users/yves/.m2/repository/org/hibernate/hibernate-entitymanager/4.3.1.Final/hibernate-entitymanager-4.3.1.Final.jar, file:/C:/Users/yves/.m2/repository/org/jboss/logging/jboss-logging/3.1.3.GA/jboss-logging-3.1.3.GA.jar, file:/C:/Users/yves/.m2/repository/org/jboss/logging/jboss-logging-annotations/1.2.0.Beta1/jboss-logging-annotations-1.2.0.Beta1.jar, file:/C:/Users/yves/.m2/repository/org/hibernate/hibernate-core/4.3.1.Final/hibernate-core-4.3.1.Final.jar, file:/C:/Users/yves/.m2/repository/antlr/antlr/2.7.7/antlr-2.7.7.jar, file:/C:/Users/yves/.m2/repository/org/jboss/jandex/1.1.0.Final/jandex-1.1.0.Final.jar, file:/C:/Users/yves/.m2/repository/dom4j/dom4j/1.6.1/dom4j-1.6.1.jar, file:/C:/Users/yves/.m2/repository/xml-apis/xml-apis/1.0.b2/xml-apis-1.0.b2.jar, file:/C:/Users/yves/.m2/repository/org/hibernate/common/hibernate-commons-annotations/4.0.4.Final/hibernate-commons-annotations-4.0.4.Final.jar, file:/C:/Users/yves/.m2/repository/org/hibernate/javax/persistence/hibernate-jpa-2.1-api/1.0.0.Final/hibernate-jpa-2.1-api-1.0.0.Final.jar, file:/C:/Users/yves/.m2/repository/org/jboss/spec/javax/transaction/jboss-transaction-api_1.2_spec/1.0.0.Final/jboss-transaction-api_1.2_spec-1.0.0.Final.jar, file:/C:/Users/yves/.m2/repository/org/javassist/javassist/3.18.1-GA/javassist-3.18.1-GA.jar, file:/C:/Users/yves/.m2/repository/org/springframework/spring-core/4.0.5.RELEASE/spring-core-4.0.5.RELEASE.jar, file:/C:/Users/yves/.m2/repository/org/springframework/spring-orm/4.0.5.RELEASE/spring-orm-4.0.5.RELEASE.jar, file:/C:/Users/yves/.m2/repository/org/springframework/data/spring-data-jpa/1.6.0.RELEASE/spring-data-jpa-1.6.0.RELEASE.jar, file:/C:/Users/yves/.m2/repository/org/springframework/data/spring-data-commons/1.8.0.RELEASE/spring-data-commons-1.8.0.RELEASE.jar, file:/C:/Users/yves/.m2/repository/org/slf4j/slf4j-api/1.7.7/slf4j-api-1.7.7.jar, file:/C:/Users/yves/.m2/repository/org/slf4j/jcl-over-slf4j/1.7.7/jcl-over-slf4j-1.7.7.jar, file:/C:/Users/yves/.m2/repository/org/springframework/spring-aspects/4.0.5.RELEASE/spring-aspects-4.0.5.RELEASE.jar, file:/C:/Users/yves/.m2/repository/org/springframework/boot/spring-boot-starter-test/1.1.0.RC1/spring-boot-starter-test-1.1.0.RC1.jar, file:/C:/Users/yves/.m2/repository/junit/junit/4.11/junit-4.11.jar, file:/C:/Users/yves/.m2/repository/org/mockito/mockito-core/1.9.5/mockito-core-1.9.5.jar, file:/C:/Users/yves/.m2/repository/org/objenesis/objenesis/1.0/objenesis-1.0.jar, file:/C:/Users/yves/.m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar, file:/C:/Users/yves/.m2/repository/org/hamcrest/hamcrest-library/1.3/hamcrest-library-1.3.jar, file:/C:/Users/yves/.m2/repository/org/springframework/spring-test/4.0.5.RELEASE/spring-test-4.0.5.RELEASE.jar, file:/C:/Users/yves/.m2/repository/org/springframework/boot/spring-boot-starter-security/1.1.0.RC1/spring-boot-starter-security-1.1.0.RC1.jar, file:/C:/Users/yves/.m2/repository/org/springframework/spring-beans/4.0.5.RELEASE/spring-beans-4.0.5.RELEASE.jar, file:/C:/Users/yves/.m2/repository/org/springframework/spring-context/4.0.5.RELEASE/spring-context-4.0.5.RELEASE.jar, file:/C:/Users/yves/.m2/repository/org/springframework/spring-expression/4.0.5.RELEASE/spring-expression-4.0.5.RELEASE.jar, file:/C:/Users/yves/.m2/repository/org/springframework/spring-web/4.0.5.RELEASE/spring-web-4.0.5.RELEASE.jar, file:/C:/Users/yves/.m2/repository/org/springframework/security/spring-security-config/3.2.4.RELEASE/spring-security-config-3.2.4.RELEASE.jar, file:/C:/Users/yves/.m2/repository/org/springframework/security/spring-security-core/3.2.4.RELEASE/spring-security-core-3.2.4.RELEASE.jar, file:/C:/Users/yves/.m2/repository/org/springframework/security/spring-security-web/3.2.4.RELEASE/spring-security-web-3.2.4.RELEASE.jar, file:/C:/Users/yves/.m2/repository/org/springframework/spring-aop/4.0.5.RELEASE/spring-aop-4.0.5.RELEASE.jar, file:/C:/Users/yves/.m2/repository/mysql/mysql-connector-java/5.1.30/mysql-connector-java-5.1.30.jar, file:/C:/Users/yves/.m2/repository/commons-dbcp/commons-dbcp/1.4/commons-dbcp-1.4.jar, file:/C:/Users/yves/.m2/repository/commons-pool/commons-pool/1.6/commons-pool-1.6.jar, file:/C:/Users/yves/.m2/repository/com/fasterxml/jackson/core/jackson-databind/2.3.3/jackson-databind-2.3.3.jar, file:/C:/Users/yves/.m2/repository/com/fasterxml/jackson/core/jackson-annotations/2.3.3/jackson-annotations-2.3.3.jar, file:/C:/Users/yves/.m2/repository/com/fasterxml/jackson/core/jackson-core/2.3.3/jackson-core-2.3.3.jar, file:/C:/Users/yves/.m2/repository/com/google/guava/guava/16.0.1/guava-16.0.1.jar, file:/C:/Users/yves/.m2/repository/org/springframework/boot/spring-boot-starter-data-jpa/1.0.0.RELEASE/spring-boot-starter-data-jpa-1.0.0.RELEASE.jar, file:/C:/Users/yves/.m2/repository/org/springframework/boot/spring-boot-starter-aop/1.0.0.RELEASE/spring-boot-starter-aop-1.0.0.RELEASE.jar, file:/C:/Users/yves/.m2/repository/org/aspectj/aspectjrt/1.7.4/aspectjrt-1.7.4.jar, file:/C:/Users/yves/.m2/repository/org/aspectj/aspectjweaver/1.7.4/aspectjweaver-1.7.4.jar, file:/C:/Users/yves/.m2/repository/org/springframework/boot/spring-boot-starter-jdbc/1.0.0.RELEASE/spring-boot-starter-jdbc-1.0.0.RELEASE.jar, file:/C:/Users/yves/.m2/repository/org/springframework/spring-jdbc/4.0.3.RELEASE/spring-jdbc-4.0.3.RELEASE.jar, file:/C:/Users/yves/.m2/repository/org/apache/tomcat/tomcat-jdbc/7.0.52/tomcat-jdbc-7.0.52.jar, file:/C:/Users/yves/.m2/repository/org/apache/tomcat/tomcat-juli/7.0.52/tomcat-juli-7.0.52.jar, file:/C:/Users/yves/.m2/repository/org/springframework/spring-tx/4.0.3.RELEASE/spring-tx-4.0.3.RELEASE.jar, file:/C:/Users/yves/.m2/repository/org/springframework/spring-orm/4.0.3.RELEASE/spring-orm-4.0.3.RELEASE.jar, file:/C:/Users/yves/.m2/repository/org/springframework/data/spring-data-jpa/1.5.1.RELEASE/spring-data-jpa-1.5.1.RELEASE.jar, file:/C:/Users/yves/.m2/repository/org/springframework/data/spring-data-commons/1.7.1.RELEASE/spring-data-commons-1.7.1.RELEASE.jar, file:/C:/Users/yves/.m2/repository/org/slf4j/slf4j-api/1.7.6/slf4j-api-1.7.6.jar, file:/C:/Users/yves/.m2/repository/org/springframework/spring-aspects/4.0.3.RELEASE/spring-aspects-4.0.3.RELEASE.jar, file:/C:/Users/yves/.m2/repository/mysql/mysql-connector-java/5.1.29/mysql-connector-java-5.1.29.jar]
    Exception in thread "main" org.springframework.context.ApplicationContextException: Unable to start embedded container; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'tomcatEmbeddedServletContainerFactory' defined in class path resource [org/springframework/boot/autoconfigure/web/EmbeddedServletContainerAutoConfiguration$EmbeddedTomcat.class]: Initialization of bean failed; nested exception is java.lang.NoSuchMethodError: org.springframework.boot.autoconfigure.web.ServerProperties.getServletPrefix()Ljava/lang/String;
    	at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.onRefresh(EmbeddedWebApplicationContext.java:135)
    	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:476)
    	at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:120)
    	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:648)
    	at org.springframework.boot.SpringApplication.run(SpringApplication.java:311)
    	at org.springframework.boot.SpringApplication.run(SpringApplication.java:909)
    	at org.springframework.boot.SpringApplication.run(SpringApplication.java:898)
    	at rdvmedecins.web.boot.Boot.main(Boot.java:10)
    Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'tomcatEmbeddedServletContainerFactory' defined in class path resource [org/springframework/boot/autoconfigure/web/EmbeddedServletContainerAutoConfiguration$EmbeddedTomcat.class]: Initialization of bean failed; nested exception is java.lang.NoSuchMethodError: org.springframework.boot.autoconfigure.web.ServerProperties.getServletPrefix()Ljava/lang/String;
    	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:547)
    	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:475)
    	at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:304)
    	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:228)
    	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:300)
    	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:200)
    	at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.getEmbeddedServletContainerFactory(EmbeddedWebApplicationContext.java:195)
    	at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.createEmbeddedServletContainer(EmbeddedWebApplicationContext.java:158)
    	at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.onRefresh(EmbeddedWebApplicationContext.java:132)
    	... 7 more
    Caused by: java.lang.NoSuchMethodError: org.springframework.boot.autoconfigure.web.ServerProperties.getServletPrefix()Ljava/lang/String;
    	at org.springframework.boot.autoconfigure.web.ErrorMvcAutoConfiguration.customize(ErrorMvcAutoConfiguration.java:94)
    	at org.springframework.boot.context.embedded.EmbeddedServletContainerCustomizerBeanPostProcessor.postProcessBeforeInitialization(EmbeddedServletContainerCustomizerBeanPostProcessor.java:67)
    	at org.springframework.boot.context.embedded.EmbeddedServletContainerCustomizerBeanPostProcessor.postProcessBeforeInitialization(EmbeddedServletContainerCustomizerBeanPostProcessor.java:54)
    	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:407)
    	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1545)
    	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:539)
    	... 15 more
    Picked up _JAVA_OPTIONS: -Xmx512M



    J'utilise Spring Tools Suite (STS)
      0  0

  13. #13
    Membre du Club
    merci pour ce tutoriel, c'est exactement ce que j'utilise en ce moment. Seul bémol qui n'en est pas un: on peut pousser l'étude de chaque couche Data + MVC x 2 à l'extrême et detourner certaines fonctionnalités.
    Un exemple de cas assez courant: on envoie un model Spring dans les templates de directive. Cela devrait être interdit? Mais c'est pratique pour donner le même UX à des objets légèrement différents. Dans les tutos les templates sont généralement inline ou HTML statique. Rien n'interdit d'envoyer une Vue compilé pour un certain contexte.

  14. #14
    Candidat au Club
    Problème d'actualisation de la page
    Bonsoir notre chère professeur, il y'a un petit problème dans votre application. En fait quand j'actualise la page HOME ou la page RESA ou AGENDA, ça s'affiche rien et juste la barre de traitement en cours, merci bien si vous pouvez nous éclaircir plus le problème.

  15. #15
    Membre à l'essai
    les relation JPA utilisés
    Bonsoir,

    J'ai une question a propos des relations JPA utilisés. Je ne comprends pas pourquoi vous n'avez pas utilisé la relation OneToMany sur le médécin (un médecin a plusieurs créneaux) et que vous avez utilisez l'autre relation ManyToOne porté par la classe Creneau.

    il y aurait pas un problème de perfermances SQL car pour chaque creneau on ramene un medecin eventuellement, alors qu'avec l'autre relation, on peut ramener la liste des creaneaux directement pour un medecin donné?

    Merci de votre réponse.

  16. #16
    Membre habitué
    Un grand merci Monsieur Tahé pour votre travail. J'ai commencé à suivre ce tutoriel.
    J'ai rencontré une erreur au moment de tester l'application car en ouvrant le fichier : rdvmedecins-angular-v2/app.html j'obtiens une erreur dans la console :

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https.


    Il me semble qu'il s'agit d'une sécurité qui a été ajouté par Chrome récemment. J'ai pu m'en sortir en lançant la commande python suivante :

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    python -m http.server
    (en python 3)

    ou

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    python -m SimpleHTTPServer
    (en python 2)

    Qui permet de créer un serveur de fichier statique et j'ai pu accéder à l'application en me connectant à l'adresse http://localhost:8000/app.html (le port 8000 est utilisé par défaut par le module python http.server)

    En espérant que cela puisse aider d'autres lecteurs du forum.

    Axel

###raw>template_hook.ano_emploi###