Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.

Bug 902905

Summary: Seam2.3 @DataModel & @DataModelSelection doesn't work with richfaces4 dataTable
Product: [Retired] JBoss Enterprise WFK Platform 2 Reporter: Marek Schmidt <maschmid>
Component: Seam, RichFacesAssignee: Marek Novotny <mnovotny>
Status: CLOSED INSUFFICIENT_DATA QA Contact:
Severity: medium Docs Contact:
Priority: unspecified    
Version: 2.1.0, 2.2.0CC: ppenicka, snagarwa
Target Milestone: ---   
Target Release: 2.4.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Known Issue
Doc Text:
The UIDataTable component (the <rich:dataTable> element) shipped with RichFaces 4 does not extend the JSF UIData class. As a consequence, rendering of Seam components annotated with @DataModel and @DataModelSelection inside a UIDataTable does not work as expected. To work around the issue, use the JSF DataTable (the <h:dataTable> element) instead of the Richfaces UIDataTable.
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-07-22 13:22:29 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Marek Schmidt 2013-01-22 17:19:06 UTC
Description of problem:

RichFaces 4 UIDataTable doesn't extend the JSF UIData class and so it won't get noticed by Seam components (org.jboss.seam.ui.component.UISeamCommandBase ) to be able to render the required data for the @DataModel & @DataModelSelection functionality.

This is a regression from RichFaces 3.x + Seam 2.2, as rf3 dataTable worked with Seam @DataModel & @DataModelSelection annotations. 

Version-Release number of selected component (if applicable):
jboss-seam-2.3.0.Final-redhat-1

How reproducible:
always

Steps to Reproduce:
1. Create a seam-gen war project
2. use "seam add-identity-management" to add identity management
3. deploy the app and add users in the identity management user manager
4. Notice attempting to edit a user always selects the last user, instead of the selected user, as the view/useradmin/usermanager.xhtml uses richfaces4 dataTable and the userSearch.selectedUser uses @DataModelSelection
  
Actual results:
@DataModelSelection doesn't work with RichFaces4 datatable

Expected results:
@DataModelSelection should work with RichFaces4 datatable

Additional info:

There are two possible fixes: 
1. change richfaces4 UIDataTable to extend the JSF2 UIData class
2. change org.jboss.seam.ui.component.UISeamCommandBase to also look for richfaces UIDataAdaptor classes, which would require a dependency on richfaces4 apis in the seam ui module.