Bonjour
J'ai une application développée en utilisant le framework Felix de la fondation Apache.
J'ai déclaré un service qui sert de web service sous forme d'API REST
Ce web service fonctionne bien sauf que les ressources sont accessibles via le context path par défaut de Félix c'est à dire services
Donc pour accéder aux ressources les URLS sont du type:
Je voudrais changer le context path et accéder à mes ressources sans le path par défaut de Felix (services)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2http://IP:PORT/services/path/to/ressource
Pour cela j'ai suivi la doc de Félix et j'ai modifié la méthode start de la classe implémentant l'interface BundleActivator
J'ai mis dans le constructeur de la classe MyWebService des logs et je vois bien au démarrage du bundle ces traces
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 ... Dictionary<String, Object> properties = new Hashtable<String, Object>(); properties.put("alias", "/myAlias"); bundleContext.registerService(MyWebService.class, new MyWebService(), properties);
Lorsque j’exécute une requête HTTP via curl j'obtiens une erreur HTTP 404
Voici la requête
J'ai pris des traces réseaux via tcpdump et je ne vois pas la requête arrivée dans la méthode GET de mon web service
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2curl -v -X GET http://IP:PORT/myAlias/path/to/resource
et je ne vois même pas la requête arrivée
Est-ce que quelqu'un à déjà rencontré ce problème et comment le résoudre svp?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 tcpdump -w capture_alias.pcap -vvv host myP -i eth0 and tcp port http
Comment est-ce que je peux avoir plus de logs de la part de felix ?
Merci et bonne journée
Partager