AW: [Tobago] Problem while determining the view id
Hello Udo, Actually, some users of our application use these urls instead of the home page to call the application and this ends with exception or redirction to unavailable resource. I would like to know, if this is a problem of tobago or myfaces by determining the view id from the URL. To prevent this behavior in our application i've used a servlet filter to redirect automatically to the home page of the application by using these urls. Many thanks, Hani -Ursprüngliche Nachricht- Von: Udo Schnurpfeil [mailto:udoeil.de] Gesendet: Montag, 27. Februar 2012 21:25 An: MyFaces Discussion Betreff: Re: [Tobago] Problem while determining the view id Hallo Hani, sorry, but I'm not sure what your scenario is. Where do you use '../faces' and why? In the link attribute of a tc:link or tc:button or in navigation rules? Or in links from outside of JSF? There is a part in JSF that guesses the view id from the URL and it might be a problem when using ../faces. What is the application case? Regards, Udo Am 15.02.12 14:59, schrieb Abushammala, Hani (EXTERN: conceptQ): Hello, I've a problem by determining the view id when using the url '../faces' and '../faces/' to call the web application. Is it a normal behavior of Tobago or jsf that the determined view id null or '/' in this case? I got this error log Assumed extension mapping, but there is no extension in '/faces' or '/faces/'. In this case the RestoreViewExecutor of Tobago tries to create the view from ExternalContext.getRequestServletPath(). With '/faces' as ExternalContext.getRequestServletPath() the redirection doesn't works correctly, the redirection ignores the context path of the application. With '/faces/' as ExternalContext.getRequestServletPath() the restoring or creating the view doesn't works with null as view id. By calling the application with '../faces/' i've also noticed that the determining of ExternalContext.getRequestPathInfo() and ExternalContext.getRequestServletPath() returns different values on different servers (e.g tomcat and Websphere). The application details: Servlet mapping: servlet-mapping servlet-nameFacesServlet/servlet-name url-pattern/faces/*/url-pattern /servlet-mapping Libs: tobago-core-1.0.38.jar myfaces-impl-1.1.9.jar myfaces-api-1.1.9.jar Server: Tomcat 6.0.18 Websphere 6.1 Regards, Hani
Re: [Tobago] Problem while determining the view id
Hallo Hani, sorry, but I'm not sure what your scenario is. Where do you use '../faces' and why? In the link attribute of a tc:link or tc:button or in navigation rules? Or in links from outside of JSF? There is a part in JSF that guesses the view id from the URL and it might be a problem when using ../faces. What is the application case? Regards, Udo Am 15.02.12 14:59, schrieb Abushammala, Hani (EXTERN: conceptQ): Hello, I've a problem by determining the view id when using the url '../faces' and '../faces/' to call the web application. Is it a normal behavior of Tobago or jsf that the determined view id null or '/' in this case? I got this error log Assumed extension mapping, but there is no extension in '/faces' or '/faces/'. In this case the RestoreViewExecutor of Tobago tries to create the view from ExternalContext.getRequestServletPath(). With '/faces' as ExternalContext.getRequestServletPath() the redirection doesn't works correctly, the redirection ignores the context path of the application. With '/faces/' as ExternalContext.getRequestServletPath() the restoring or creating the view doesn't works with null as view id. By calling the application with '../faces/' i've also noticed that the determining of ExternalContext.getRequestPathInfo() and ExternalContext.getRequestServletPath() returns different values on different servers (e.g tomcat and Websphere). The application details: Servlet mapping: servlet-mapping servlet-nameFacesServlet/servlet-name url-pattern/faces/*/url-pattern /servlet-mapping Libs: tobago-core-1.0.38.jar myfaces-impl-1.1.9.jar myfaces-api-1.1.9.jar Server: Tomcat 6.0.18 Websphere 6.1 Regards, Hani
[Tobago] Problem while determining the view id
Hello, I've a problem by determining the view id when using the url '../faces' and '../faces/' to call the web application. Is it a normal behavior of Tobago or jsf that the determined view id null or '/' in this case? I got this error log Assumed extension mapping, but there is no extension in '/faces' or '/faces/'. In this case the RestoreViewExecutor of Tobago tries to create the view from ExternalContext.getRequestServletPath(). With '/faces' as ExternalContext.getRequestServletPath() the redirection doesn't works correctly, the redirection ignores the context path of the application. With '/faces/' as ExternalContext.getRequestServletPath() the restoring or creating the view doesn't works with null as view id. By calling the application with '../faces/' i've also noticed that the determining of ExternalContext.getRequestPathInfo() and ExternalContext.getRequestServletPath() returns different values on different servers (e.g tomcat and Websphere). The application details: Servlet mapping: servlet-mapping servlet-nameFacesServlet/servlet-name url-pattern/faces/*/url-pattern /servlet-mapping Libs: tobago-core-1.0.38.jar myfaces-impl-1.1.9.jar myfaces-api-1.1.9.jar Server: Tomcat 6.0.18 Websphere 6.1 Regards, Hani