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

Web service avec Spring et Angular


Sujet :

Spring Boot Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2013
    Messages
    1 116
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2013
    Messages : 1 116
    Par défaut Web service avec Spring et Angular
    Bonjour,

    Je débute en Angular mais pas en Spring.

    Je tente d'appeler mon web service Spring depuis un front Angular.

    Le service ne semble pas réponde depuis l'application Angular, mais il répond depuis un navigateur.

    C'est peut être un problème de configuration, mais je pense avoir fait le nécessaire.
    J'ai bien ajouté l'annotation avec @Crossorigine avec l'url du front.
    J'ai tenté de retourné un entity manager avec un code de succès et directement la collection

    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
     
    @RestController
    @RequestMapping("/journal")
    @CrossOrigin(origins = "http://localhost:4200")
    public class JournalWS { // implements XWebServiceInterface<Journal, String> {
    	private static final org.apache.logging.log4j.Logger LOGGER = LogManager.getLogger();
     
    	@Autowired
    	private JournalService journalService;
     
    	// @Override
    	@GetMapping(value = "/getAll")
    	// public ResponseEntity<List<Journal>> getAll() {
    	public List<Journal> getAll() {
     
    		System.out.println("****");
     
    		return journalService.getAll();
     
    //		return new ResponseEntity<List<Journal>>(
    		// journalService.getAll();
    //				HttpStatus.FOUND);
    	}
     
    ...
    Si vous avez une idée merci par avance

    Cordialement
    Consultez mes articles sur l'accessibilité numérique :

    Comment rendre son application SWING accessible aux non voyants
    Créer des applications web accessibles à tous

    YES WE CAN BLANCHE !!!

    Rappelez-vous que Google est le plus grand aveugle d'Internet...
    Plus c'est accessible pour nous, plus c'est accessible pour lui,
    et meilleur sera votre score de référencement !

  2. #2
    Membre très actif

    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    486
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 486
    Billets dans le blog
    5
    Par défaut
    J'ai l'exemple d'un projet avec de l'angular et Spring/Spring Boot:
    https://bitbucket.org/philippegibaul...r40k/src/main/

    Tu as peut-être un problème avec ce que l'on appelle le CORS (ça m'est arrivé).

    Ce truc (chiant) doit être configuré dans Spring Security.

    En l’occurrence, dans mon projet ici:
    https://bitbucket.org/philippegibaul...iguration.java

    On définit la configuration du COR par:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    @Bean("corsConfigurationSource")
    	public CorsConfigurationSource getCorsConfigurationSource() {
    		CorsConfiguration configuration = new CorsConfiguration();
    		configuration.setAllowedMethods(Arrays.asList("GET","POST"));
    		configuration.applyPermitDefaultValues();
    		configuration.addAllowedOrigin(clientWeb);
    		UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
    		source.registerCorsConfiguration("/**", configuration);
    		return source;
    	}
    Et on injecte par:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    .cors(cors -> getCorsConfigurationSource())
    Si tu ne veux pas t'emmerder et prendre toutes destination, pour le client web, on met:"*"

  3. #3
    Membre éprouvé

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2013
    Messages
    1 116
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2013
    Messages : 1 116
    Par défaut
    Ok, mais j'injecte où le
    Consultez mes articles sur l'accessibilité numérique :

    Comment rendre son application SWING accessible aux non voyants
    Créer des applications web accessibles à tous

    YES WE CAN BLANCHE !!!

    Rappelez-vous que Google est le plus grand aveugle d'Internet...
    Plus c'est accessible pour nous, plus c'est accessible pour lui,
    et meilleur sera votre score de référencement !

  4. #4
    Membre très actif

    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    486
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 486
    Billets dans le blog
    5
    Par défaut
    Une fois que Spring sécurity est dans les dépendance, il faut une classe de configuration qui implémente WebMvcConfigure. C'est là que l'on configure Spring Security (dont le CORS).

  5. #5
    Membre éprouvé

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2013
    Messages
    1 116
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2013
    Messages : 1 116
    Par défaut
    D'accord merci.

    C'est juste que je n'avais pas mis de Spring Sécurity dans ce projet, je voulais juste tester , c'est juste pour apprendre Angular.

    Si je me contente de mettre "*" dans "Crossorigine" j'espère que ça va passer.
    Par contre je dois revoir le JS car je trouve que les erreurs remontent pas beaucoup d'information
    Consultez mes articles sur l'accessibilité numérique :

    Comment rendre son application SWING accessible aux non voyants
    Créer des applications web accessibles à tous

    YES WE CAN BLANCHE !!!

    Rappelez-vous que Google est le plus grand aveugle d'Internet...
    Plus c'est accessible pour nous, plus c'est accessible pour lui,
    et meilleur sera votre score de référencement !

  6. #6
    Membre éprouvé

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2013
    Messages
    1 116
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2013
    Messages : 1 116
    Par défaut
    Bonjour,

    J'ai tenté de passer directement dans "application", mais ça ne marche pas mieux.
    Ca me semblait être la même approche.
    Alors je vais devoir passer par spring security, et ça ne m'arrange pas.

    Y a-t-il des post sur ce problème ailleurs ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    public WebMvcConfigurer corsConfigurer() {
    		return new WebMvcConfigurer() {
    			@Override
    			public void addCorsMappings(CorsRegistry registry) {
    				registry.addMapping("/journal/getAll").allowedOrigins("http://localhost:4200");
     
    			}
    		};
    	}
    Consultez mes articles sur l'accessibilité numérique :

    Comment rendre son application SWING accessible aux non voyants
    Créer des applications web accessibles à tous

    YES WE CAN BLANCHE !!!

    Rappelez-vous que Google est le plus grand aveugle d'Internet...
    Plus c'est accessible pour nous, plus c'est accessible pour lui,
    et meilleur sera votre score de référencement !

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

Discussions similaires

  1. Probleme de deploiement de web service avec cxf spring et JXWS
    Par skander222 dans le forum Services Web
    Réponses: 0
    Dernier message: 12/08/2015, 16h10
  2. Réponses: 1
    Dernier message: 03/03/2015, 15h47
  3. Sécuriser un web service avec JAAS ou Spring-Security
    Par Le Marlou dans le forum Services Web
    Réponses: 1
    Dernier message: 26/07/2011, 18h37
  4. Réponses: 0
    Dernier message: 01/02/2011, 11h24
  5. Web Service avec Spring WS
    Par mnoussa dans le forum Services Web
    Réponses: 0
    Dernier message: 11/02/2009, 09h48

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