Discussions
Categories
- 196.7K All Categories
- 2.2K Data
- 235 Big Data Appliance
- 1.9K Data Science
- 449.8K Databases
- 221.6K General Database Discussions
- 3.8K Java and JavaScript in the Database
- 31 Multilingual Engine
- 549 MySQL Community Space
- 477 NoSQL Database
- 7.9K Oracle Database Express Edition (XE)
- 3K ORDS, SODA & JSON in the Database
- 532 SQLcl
- 4K SQL Developer Data Modeler
- 186.9K SQL & PL/SQL
- 21.3K SQL Developer
- 295.4K Development
- 17 Developer Projects
- 138 Programming Languages
- 292.1K Development Tools
- 104 DevOps
- 3.1K QA/Testing
- 645.9K Java
- 28 Java Learning Subscription
- 37K Database Connectivity
- 153 Java Community Process
- 105 Java 25
- 22.1K Java APIs
- 138.1K Java Development Tools
- 165.3K Java EE (Java Enterprise Edition)
- 17 Java Essentials
- 158 Java 8 Questions
- 85.9K Java Programming
- 79 Java Puzzle Ball
- 65.1K New To Java
- 1.7K Training / Learning / Certification
- 13.8K Java HotSpot Virtual Machine
- 94.2K Java SE
- 13.8K Java Security
- 203 Java User Groups
- 24 JavaScript - Nashorn
- Programs
- 396 LiveLabs
- 37 Workshops
- 10.2K Software
- 6.7K Berkeley DB Family
- 3.5K JHeadstart
- 5.6K Other Languages
- 2.3K Chinese
- 170 Deutsche Oracle Community
- 1.1K Español
- 1.9K Japanese
- 230 Portuguese
How to combine Collections/Models with RowExpander in a table

The Table component and Table with RowExpander are rather picky about data sources compatible with the components. Current examples in the JET 2.0 cookbook use JsonTreeDataSource, but I'm looking for the CollectionTreeDataSource (I think) to work with Collections/Models. Any hint how to properly assemble these parts?
To add some context - I'm trying to display some messages (loaded via Collections) in a table, where expanded row would show message content. Currently I manually create JsonTreeDataSource in Collection callbacks, but that defeats the purpose of using Collections.
Thanks.
Answers
-
Have you looked at the Cookbook demo for RowExpander with Collection?
Row Expander - Row Expander with Collections
If you have looked at this, what part isn't working for your scenario?
-
It seems it's my bad - I missed that example somehow. I'm going to look at it now.
Thank you.
-
Looking closer though, it's not straightforward at all to use that example. The things to resolve:
- DataGrid is not the same as DataTable. DataTable requires something like: new oj.FlattenedTreeTableDataSource( new oj.FlattenedTreeDataSource ...
- Collections are not used in the example in a CRUD sense, instead of fetch/add etc it's just direct JSON fetch
- Options literal used by oj.CollectionTreeDataSource with all its root/parseMetadata/childCollectionCallback is undocumented
- The example demonstrates the flexibility of DataGrid and as such much move involved than some basic example could be for DataTable.
So, I guess, I'm still stuck with Collections/Table/CRUD/RowExpander.
-
Yes, the demo is definitely using code to manipulate the data into something the DataGrid can use, but I assumed you would be massaging your own code anyway, not using that demos code.
I had not paid attention to the fact that it was using DataGrid, sorry about that.
There is a FlattenedTreeTableDataSource as well: JSDoc: Class: FlattenedTreeTableDataSource
The CRUD side of this wouldn't be any different than the normal Collection CRUD example for getting the data. I definitely agree that the docs are not sufficient in one place for doing this. It's going to take some piecing together between the Table example and this one.
The JSON fetch is being done instead of the Collection fetch because there isn't a live REST service for the demo's to hit against in the Cookbook. Some of the demo's use a MockREST library, but that confuses people as well. We also tried a live REST service at one point and that was a disaster with everyone hitting and randomly adding and deleting data. No perfect answer for that one unfortunately.