eclipse-ee4j / mojarra

Mojarra, a Jakarta Faces implementation
Other
160 stars 109 forks source link

Do not set the inbound parameter, if the start node is the method call, etc... #3480

Closed ren-zhijun-oracle closed 9 years ago

ren-zhijun-oracle commented 9 years ago

Do not set the inbound parameter, if the start node is the . This works only for .

edit-state id # {admin_organization.id} edit-state # {admin_organization.load} /pages/admin/organizations/OrganizationEdit.xhtml /pages/common/ShowErrorPanel.xhtml

Affected Versions

[2.2.8]

ren-zhijun-oracle commented 6 years ago
ren-zhijun-oracle commented 9 years ago

@javaserverfaces Commented Reported by wklaczynski

ren-zhijun-oracle commented 9 years ago

@javaserverfaces Commented @manfredriem said: Can you send a reproducer (with sources) to issues@javaserverfaces.java.net ? Thanks!

ren-zhijun-oracle commented 9 years ago

@javaserverfaces Commented martin_svihlik said: I run into this issue too. If you define start node other than view node, the inbound parameter is not set.

I tried to debug what happens inside FacesFlows:

In com.sun.faces.application.NavigationHandlerImpl - method findFacesFlowCallMatch. When synthesizeCaseStruct is called and the target node is not ViewNode or ReturnNode, null is returned. And when null is returned, the transition is made immedeately:

try

{ setDidTransition(context, true); flowHandler.transition(context, currentFlow, newFlow, null, startNodeId); result = getViewId(context, fromAction, startNodeId, toFlowDocumentId); }

unfortunatelly outboundCallNode is set to null in transition method call.

That is the reason why outbound parameter is not created in the first place.

ren-zhijun-oracle commented 9 years ago

@javaserverfaces Commented ren.zhijun.oracle said: Please help to do the code review.

ren-zhijun-oracle commented 9 years ago

@javaserverfaces Commented martin_svihlik said: HI, it looks like it could do tohe job. Martin

ren-zhijun-oracle commented 9 years ago

@javaserverfaces Commented ren.zhijun.oracle said: Hi Martin,

The added test can reproduce the issue and the code can fix the issue, thanks. Please also help to check the code for #3475.

Thanks, Zhijun

ren-zhijun-oracle commented 9 years ago

@javaserverfaces Commented martin_svihlik said: Hi Zhijun, I noticed that Fix version in FacesFlows related issues we talked about recently is 2.3.0_m02. These issues combined disallows proper usage of FacesFlow feature in 2.2 version. Is there any chance that the fixes would arrive earlier than middle 2016 with final version of 2.3? Thanks, Martin

ren-zhijun-oracle commented 9 years ago

@javaserverfaces Commented ren.zhijun.oracle said: ZR> Hi Ed and Manfred, ZR> Please help to review the code that I have attached to the bug. ZR> (attached here for your convenience)

r=edburns for going through the process to commit only to trunk for now.

Ed

ren-zhijun-oracle commented 9 years ago

@javaserverfaces Commented ren.zhijun.oracle said: rzhijun-mac:trunk zhijun$ svn commit -m "https://java.net/jira/browse/JAVASERVERFACES-3476:Do not set the inbound parameter, if the start node is the method call, etc..." --username ren.zhijun.oracle Sending jsf-ri/src/main/java/com/sun/faces/application/NavigationHandlerImpl.java Sending test/javaee6web/flowTraversalCombinations/src/main/java/com/sun/faces/test/javaee6web/flowtraversalcombinations/FlowCallNaviToOthersBean.java Sending test/javaee6web/flowTraversalCombinations/src/main/webapp/child-flow-start-from-method-call-node/DestinationView.xhtml Sending test/javaee6web/flowTraversalCombinations/src/main/webapp/child-flow-start-from-method-call-node/child-flow-start-from-method-call-node-flow.xml Sending test/javaee6web/flowTraversalCombinations/src/main/webapp/start-from-flow-call-node/start-from-flow-call-node-flow.xml Adding test/javaee6web/flowTraversalCombinations/src/test/java/com/sun/faces/test/javaee6web/flowtraversalcombinations/Issue3476IT.java Sending test/javaee7 Transmitting file data ...... Committed revision 14329.

ren-zhijun-oracle commented 9 years ago

@javaserverfaces Commented File: changebundle_zhijun_3476_on150204.txt Attached By: ren.zhijun.oracle

ren-zhijun-oracle commented 9 years ago

@javaserverfaces Commented Issue-Links: is cloned by JAVASERVERFACES-3805 JAVASERVERFACES-3814 is related to JAVASERVERFACES-3593

ren-zhijun-oracle commented 9 years ago

@javaserverfaces Commented Was assigned to ren.zhijun.oracle

ren-zhijun-oracle commented 7 years ago

@javaserverfaces Commented This issue was imported from java.net JIRA JAVASERVERFACES-3476

ren-zhijun-oracle commented 9 years ago

@javaserverfaces Commented Marked as fixed on Wednesday, February 4th 2015, 6:49:18 pm