Skip to content
This repository has been archived by the owner on Sep 5, 2023. It is now read-only.

UIRepeat and UIData supports Map #1364

Closed
glassfishrobot opened this issue Feb 19, 2015 · 9 comments
Closed

UIRepeat and UIData supports Map #1364

glassfishrobot opened this issue Feb 19, 2015 · 9 comments

Comments

@glassfishrobot
Copy link

In reference to #1103 Bauke Scholtz commented the following:

Would be even more cool if it transparently recognizes Map like c:forEach so we don't need value="#{bean.map.entrySet()}" everytime.

Splitting this off from 1103; it's strongly related but a different (additional) type.

Affected Versions

[2.2]

@glassfishrobot
Copy link
Author

Reported by @arjantijms

@glassfishrobot
Copy link
Author

Issue-Links:
is cloned by
JAVASERVERFACES-3836
is related to
JAVASERVERFACES_SPEC_PUBLIC-1103

@glassfishrobot
Copy link
Author

@arjantijms said:
When discussing support for Iterable, the wish for Map also came up.

@glassfishrobot
Copy link
Author

File: changebundle.txt
Attached By: @arjantijms

@glassfishrobot
Copy link
Author

File: newfiles.zip
Attached By: @arjantijms

@glassfishrobot
Copy link
Author

@arjantijms said:
For this change the spec document needs to be updated, specifically section 4.1.3.2.

This section currently (in the 2.3 branch) contains the following text:

The current value identified by the value property is normally of type DataModel. [P1-start-uidataModel]However, a DataModel wrapper instance must automatically be provided by the JSF implementation if the current value is of one of the following types:
java.util.List
Array of java.util.Object
java.sql.ResultSet (which therefore also supports javax.sql.RowSet) 
javax.servlet.jsp.jstl.sql.Result
java.util.Collection
java.lang.Iterable
Any other Java object is wrapped by a DataModel instance with a single row.[P1-end]

The updated text in section 4.1.3.2 after this update would be the following:

The current value identified by the value property is normally of type DataModel. [P1-start-uidataModel]However, a DataModel wrapper instance must automatically be provided by the JSF implementation if the current value is of one of the following types:
java.util.List
Array of java.util.Object
java.sql.ResultSet (which therefore also supports javax.sql.RowSet) 
javax.servlet.jsp.jstl.sql.Result
java.util.Collection
java.lang.Iterable
java.util.Map (uses the wrapper for java.lang.Iterable by providing access to java.util.Map#entrySet())
Any other Java object is wrapped by a DataModel instance with a single row.[P1-end]

@glassfishrobot
Copy link
Author

@manfredriem said:
Applied to 2.3 trunk,

svn commit -m "Fixes https://java.net/jira/browse/JAVASERVERFACES_SPEC_PUBLIC-1364, UIRepeat and UIData supports Map"
Sending spec/frame/standardUserInterfaceComponents.fm
Transmitting file data .
Committed revision 1166.

@glassfishrobot
Copy link
Author

Marked as fixed on Tuesday, March 24th 2015, 8:17:54 am

@glassfishrobot
Copy link
Author

This issue was imported from java.net JIRA JAVASERVERFACES_SPEC_PUBLIC-1364

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

2 participants