Nous avons besoin d'obtenir certaines informations de PortletRequest
dans notre application de portail. Nous faisons cela en utilisant une méthode utilitaire dans notre application de portlet. Dans cette méthode utilitaire, nous accédons au FacesContext.getCurrentInstance().getRequest()
pour obtenir PortletRequest. Nous accédons à cette méthode utilitaire dans notre couche DAO. Nous n'avons pas accès au paramètre de demande ici. Cela fonctionne parfois, mais parfois il me donne NullPointerException
. J'ai trouvé un thread similaire qui explique à ce sujet. Ils ont mentionné, si cela fait partie de la même demande, alors vous devriez obtenir le contexte. Pour moi, cela fait partie de la même demande, mais je ne comprends pas le contexte. Pouvez-vous m'aider s'il vous plaît.Accès à FacesContext dans l'application Portal
Répondre
Si vous obtenez un FaceContext nul à partir de FacesContext.getCurrentInstance(), aucun FacesContext n'a été créé pour ce Thread/Request.
Les demandes défaillantes passent-elles par un point d'entrée non-faces? Comme une demande de portlet d'événement ou de ressource? Si c'est le cas, aucun FacesContext ne sera créé. Plutôt que de vous fier aux méthodes statiques et au stockage local de threads pour accéder aux données de votre DAO, vous devez extraire ce dont vous avez besoin de PortletRequest et le transmettre dans votre pile. Il est déconseillé de mélanger des artefacts de couche de présentation tels que FaceContext ou PortletRequest avec votre couche DAO.
Si votre application est déployée dans des fichiers WAR/JAR distincts, il est probable que différents chargeurs de classe soient utilisés. J'ai eu un problème similaire, lorsque j'ai essayé d'accéder au FacesContext dans une archive HAR hibernate sur JBOSS5. Je suis arrivé avec une solution réussie en utilisant l'API de réflexion. Jetez un oeil à this.
Si vous regroupez l'ensemble de votre application dans un fichier EAR, vous pouvez forcer l'utilisation d'un classloader pour l'ensemble de l'oreille, mais AFAIK spécifique au serveur d'applications.
Cordialement
- 1. Accès à FacesContext à partir d'un thread
- 2. Accès à FacesContext à partir du service Web
- 3. Mocking FacesContext
- 4. Paquets Portal Portal pour C#
- 5. WebSphere Portal Spring Security
- 6. FacesContext pas trouvé
- 7. L'utilisation de '[' crochet comme une fonction pour lapplication dans R
- 8. Puis-je accéder à FacesContext dans l'écouteur d'événement Hibernate?
- 9. Obtenir FaceletContext à partir de FacesContext dans JSF 1.2
- 10. Comment injecter un bean géré dans FacesContext?
- 11. Comment supprimer FacesMessages du FacesContext?
- 12. Récupérer un validateur de FacesContext
- 13. Problèmes liés à WebSphere Portal 6.1 puma
- 14. ASP.NET VB.NET Configuration Portal Connexion à distance
- 15. Déploiement d'un portlet WebSphere Portal 6 sur WebSphere Portal 5
- 16. PHP Order Capture Portal
- 17. Wordpress Video Portal
- 18. Managed File Portal
- 19. iOS Provisioning Portal Link
- 20. JBoss Tutorials, Portal
- 21. Sauvegarde pour OracleAS Portal
- 22. FacesContext est-il limité à une application Web?
- 23. Appel Ajax à GenericPortlet.serveResource() dans WebSphere Portal 6.1
- 24. Aide à l'ajout d'un CSR dans iPhone Portal
- 25. problème dans la création - Provisioning Portal
- 26. Utilisation de lapplication avec des arguments de modification
- 27. JSF - Valeurs NULL à partir des paramètres - FacesContext
- 28. Comment générer un ELContext sans FacesContext actif?
- 29. récupérer FacesContext SessionMap d'un autre contexte
- 30. Spring MVC Portlet réutilisation dans Websphere Portal