[jira] [Commented] (MYFACES-4183) Behavior difference between JSF 2.2 and JSF 2.3 when using facelet prefixes

2018-01-05 Thread Paul Nicolucci (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-4183?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16313133#comment-16313133
 ] 

Paul Nicolucci commented on MYFACES-4183:
-

I tested this application provided with the fix in MYFACEs-4180 and it still 
fails, we need this fix AFAIK.

> Behavior difference between JSF 2.2 and JSF 2.3 when using facelet prefixes
> ---
>
> Key: MYFACES-4183
> URL: https://issues.apache.org/jira/browse/MYFACES-4183
> Project: MyFaces Core
>  Issue Type: Bug
>  Components: JSR-372
>Affects Versions: 2.3.0-beta
>Reporter: Eduardo Breijo
>Assignee: Eduardo Breijo
>Priority: Minor
> Fix For: 2.3.0
>
> Attachments: JSF20FacesConfigAnotherServlet.war, MYFACES-4183.patch
>
>
> There is a difference in behavior between JSF 2.2 and JSF 2.3 when using 
> facelet prefixes.
> I have a sample app that demonstrate this behavior difference. In the app we 
> just define a random servlet and map it to the same prefixes we would 
> normally map to the FacesServlet. We don't map /faces/* to the testServlet 
> but it is automatically added to the FacesServlet, so if you drove a request 
> to something other than .jsf (testServlet) or *.faces (testServlet) the 
> FacesServlet would be invoked for all of the prefix mappings of /faces/*. So 
> that would mean you should see TEST SERVLET printed for the suffix mapping 
> (.jsf and .faces) and then the page1 should be rendered for /faces/*. 
> When you drive a request to: 
> http://localhost:8080/JSF20FacesConfigAnotherServlet/faces/page1.jsf
> On JSF 2.2: You should see an output of "TEST SERVLET". So it ensures that 
> .jsf mapping is invoking the testServlet.
> On JSF 2.3: You get a 404, page1.jsf not found. I think that in the case of 
> JSF 2.3, it is invoking the FacesServlet but can't find the .jsf file because 
> it doesn't actually exist.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (MYFACES-4183) Behavior difference between JSF 2.2 and JSF 2.3 when using facelet prefixes

2018-01-05 Thread Thomas Andraschko (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-4183?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16312701#comment-16312701
 ] 

Thomas Andraschko commented on MYFACES-4183:


It seems that https://issues.apache.org/jira/browse/MYFACES-4180 is related to 
https://issues.apache.org/jira/browse/MYFACES-4103. So i think we should try to 
check ViewHandler#getViews again first as we now fixed 
ResourceHandler#getViewResources. After that we can still check if the patch 
here is required.

> Behavior difference between JSF 2.2 and JSF 2.3 when using facelet prefixes
> ---
>
> Key: MYFACES-4183
> URL: https://issues.apache.org/jira/browse/MYFACES-4183
> Project: MyFaces Core
>  Issue Type: Bug
>  Components: JSR-372
>Affects Versions: 2.3.0-beta
>Reporter: Eduardo Breijo
>Assignee: Eduardo Breijo
>Priority: Minor
> Attachments: JSF20FacesConfigAnotherServlet.war, MYFACES-4183.patch
>
>
> There is a difference in behavior between JSF 2.2 and JSF 2.3 when using 
> facelet prefixes.
> I have a sample app that demonstrate this behavior difference. In the app we 
> just define a random servlet and map it to the same prefixes we would 
> normally map to the FacesServlet. We don't map /faces/* to the testServlet 
> but it is automatically added to the FacesServlet, so if you drove a request 
> to something other than .jsf (testServlet) or *.faces (testServlet) the 
> FacesServlet would be invoked for all of the prefix mappings of /faces/*. So 
> that would mean you should see TEST SERVLET printed for the suffix mapping 
> (.jsf and .faces) and then the page1 should be rendered for /faces/*. 
> When you drive a request to: 
> http://localhost:8080/JSF20FacesConfigAnotherServlet/faces/page1.jsf
> On JSF 2.2: You should see an output of "TEST SERVLET". So it ensures that 
> .jsf mapping is invoking the testServlet.
> On JSF 2.3: You get a 404, page1.jsf not found. I think that in the case of 
> JSF 2.3, it is invoking the FacesServlet but can't find the .jsf file because 
> it doesn't actually exist.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (MYFACES-4183) Behavior difference between JSF 2.2 and JSF 2.3 when using facelet prefixes

2018-01-04 Thread Paul Nicolucci (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-4183?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16311948#comment-16311948
 ] 

Paul Nicolucci commented on MYFACES-4183:
-

+1 here, without it I think we'll have issues with the TCK tests as well as 
noted in MyFaces-4103.

> Behavior difference between JSF 2.2 and JSF 2.3 when using facelet prefixes
> ---
>
> Key: MYFACES-4183
> URL: https://issues.apache.org/jira/browse/MYFACES-4183
> Project: MyFaces Core
>  Issue Type: Bug
>  Components: JSR-372
>Affects Versions: 2.3.0-beta
>Reporter: Eduardo Breijo
>Assignee: Eduardo Breijo
>Priority: Minor
> Attachments: JSF20FacesConfigAnotherServlet.war, MYFACES-4183.patch
>
>
> There is a difference in behavior between JSF 2.2 and JSF 2.3 when using 
> facelet prefixes.
> I have a sample app that demonstrate this behavior difference. In the app we 
> just define a random servlet and map it to the same prefixes we would 
> normally map to the FacesServlet. We don't map /faces/* to the testServlet 
> but it is automatically added to the FacesServlet, so if you drove a request 
> to something other than .jsf (testServlet) or *.faces (testServlet) the 
> FacesServlet would be invoked for all of the prefix mappings of /faces/*. So 
> that would mean you should see TEST SERVLET printed for the suffix mapping 
> (.jsf and .faces) and then the page1 should be rendered for /faces/*. 
> When you drive a request to: 
> http://localhost:8080/JSF20FacesConfigAnotherServlet/faces/page1.jsf
> On JSF 2.2: You should see an output of "TEST SERVLET". So it ensures that 
> .jsf mapping is invoking the testServlet.
> On JSF 2.3: You get a 404, page1.jsf not found. I think that in the case of 
> JSF 2.3, it is invoking the FacesServlet but can't find the .jsf file because 
> it doesn't actually exist.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (MYFACES-4183) Behavior difference between JSF 2.2 and JSF 2.3 when using facelet prefixes

2018-01-04 Thread Eduardo Breijo (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-4183?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16311943#comment-16311943
 ] 

Eduardo Breijo commented on MYFACES-4183:
-

I found that this doesn't have to do with extensionless mapping views. After 
debugging, I found that on MyFaces 2.3, VDL is returning null in 
ViewHandlerImpl.createView resulting in a 404 error. This is because 
JspViewDeclarationLanguageStrategy.handles changed from MyFaces 2.2 to MyFaces 
2.3. 

Previously we were always returning true, as a result VDL was set to 
JspViewDeclarationLanguage, and when 
JspViewDeclarationLanguageBase.renderView() calls buildView method from 
JSPViewDeclarationLanguage, a dispatch with "/page1.jsf" is made, then we go 
through the servlet container and we end up at the TestServlet since that 
matches the "*.jsf" mapping.

I have tested this same scenario using Mojarra 2.3 and it works fine, the 
behavior is the same as MyFaces 2.0 and MyFaces 2.2.

With the change made in MyFaces 2.3 under 
https://issues.apache.org/jira/browse/MYFACES-4103, the 
JspViewDeclarationLanguageStrategy.handles changed, leading to the regression 
described in this issue.

I have provided a patch, changing JspViewDeclarationLanguageStrategy.handles to 
what we have in JSF 2.0 and JSF 2.2.

> Behavior difference between JSF 2.2 and JSF 2.3 when using facelet prefixes
> ---
>
> Key: MYFACES-4183
> URL: https://issues.apache.org/jira/browse/MYFACES-4183
> Project: MyFaces Core
>  Issue Type: Bug
>  Components: JSR-372
>Affects Versions: 2.3.0-beta
>Reporter: Eduardo Breijo
>Assignee: Eduardo Breijo
>Priority: Minor
> Attachments: JSF20FacesConfigAnotherServlet.war, MYFACES-4183.patch
>
>
> There is a difference in behavior between JSF 2.2 and JSF 2.3 when using 
> facelet prefixes.
> I have a sample app that demonstrate this behavior difference. In the app we 
> just define a random servlet and map it to the same prefixes we would 
> normally map to the FacesServlet. We don't map /faces/* to the testServlet 
> but it is automatically added to the FacesServlet, so if you drove a request 
> to something other than .jsf (testServlet) or *.faces (testServlet) the 
> FacesServlet would be invoked for all of the prefix mappings of /faces/*. So 
> that would mean you should see TEST SERVLET printed for the suffix mapping 
> (.jsf and .faces) and then the page1 should be rendered for /faces/*. 
> When you drive a request to: 
> http://localhost:8080/JSF20FacesConfigAnotherServlet/faces/page1.jsf
> On JSF 2.2: You should see an output of "TEST SERVLET". So it ensures that 
> .jsf mapping is invoking the testServlet.
> On JSF 2.3: You get a 404, page1.jsf not found. I think that in the case of 
> JSF 2.3, it is invoking the FacesServlet but can't find the .jsf file because 
> it doesn't actually exist.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (MYFACES-4183) Behavior difference between JSF 2.2 and JSF 2.3 when using facelet prefixes

2017-12-19 Thread Thomas Andraschko (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-4183?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16297176#comment-16297176
 ] 

Thomas Andraschko commented on MYFACES-4183:


Probably all of them are related:

this

+

https://issues.apache.org/jira/browse/MYFACES-4175
https://issues.apache.org/jira/browse/MYFACES-4180
https://issues.apache.org/jira/browse/MYFACES-4105

> Behavior difference between JSF 2.2 and JSF 2.3 when using facelet prefixes
> ---
>
> Key: MYFACES-4183
> URL: https://issues.apache.org/jira/browse/MYFACES-4183
> Project: MyFaces Core
>  Issue Type: Bug
>  Components: JSR-372
>Affects Versions: 2.3.0-beta
>Reporter: Eduardo Breijo
>Priority: Minor
> Attachments: JSF20FacesConfigAnotherServlet.war
>
>
> There is a difference in behavior between JSF 2.2 and JSF 2.3 when using 
> facelet prefixes.
> I have a sample app that demonstrate this behavior difference. In the app we 
> just define a random servlet and map it to the same prefixes we would 
> normally map to the FacesServlet. We don't map /faces/* to the testServlet 
> but it is automatically added to the FacesServlet, so if you drove a request 
> to something other than .jsf (testServlet) or *.faces (testServlet) the 
> FacesServlet would be invoked for all of the prefix mappings of /faces/*. So 
> that would mean you should see TEST SERVLET printed for the suffix mapping 
> (.jsf and .faces) and then the page1 should be rendered for /faces/*. 
> When you drive a request to: 
> http://localhost:8080/JSF20FacesConfigAnotherServlet/faces/page1.jsf
> On JSF 2.2: You should see an output of "TEST SERVLET". So it ensures that 
> .jsf mapping is invoking the testServlet.
> On JSF 2.3: You get a 404, page1.jsf not found. I think that in the case of 
> JSF 2.3, it is invoking the FacesServlet but can't find the .jsf file because 
> it doesn't actually exist.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (MYFACES-4183) Behavior difference between JSF 2.2 and JSF 2.3 when using facelet prefixes

2017-12-19 Thread Eduardo Breijo (JIRA)

[ 
https://issues.apache.org/jira/browse/MYFACES-4183?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16297170#comment-16297170
 ] 

Eduardo Breijo commented on MYFACES-4183:
-

I think changes in MYFACES-4105 could be related to this difference in behavior.

> Behavior difference between JSF 2.2 and JSF 2.3 when using facelet prefixes
> ---
>
> Key: MYFACES-4183
> URL: https://issues.apache.org/jira/browse/MYFACES-4183
> Project: MyFaces Core
>  Issue Type: Bug
>  Components: JSR-372
>Affects Versions: 2.3.0-beta
>Reporter: Eduardo Breijo
>Priority: Minor
> Attachments: JSF20FacesConfigAnotherServlet.war
>
>
> There is a difference in behavior between JSF 2.2 and JSF 2.3 when using 
> facelet prefixes.
> I have a sample app that demonstrate this behavior difference. In the app we 
> just define a random servlet and map it to the same prefixes we would 
> normally map to the FacesServlet. We don't map /faces/* to the testServlet 
> but it is automatically added to the FacesServlet, so if you drove a request 
> to something other than .jsf (testServlet) or *.faces (testServlet) the 
> FacesServlet would be invoked for all of the prefix mappings of /faces/*. So 
> that would mean you should see TEST SERVLET printed for the suffix mapping 
> (.jsf and .faces) and then the page1 should be rendered for /faces/*. 
> When you drive a request to: 
> http://localhost:8080/JSF20FacesConfigAnotherServlet/faces/page1.jsf
> On JSF 2.2: You should see an output of "TEST SERVLET". So it ensures that 
> .jsf mapping is invoking the testServlet.
> On JSF 2.3: You get a 404, page1.jsf not found. I think that in the case of 
> JSF 2.3, it is invoking the FacesServlet but can't find the .jsf file because 
> it doesn't actually exist.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)