The problem encountered was that my detail band is not shown even when the dataset is not empty.
I have a table inside the detail band, and my jrxml worked initially, but when I switched to another datasource, the detail band is not displayed. My understanding is that the report somehow thinks my datasource is empty, so it is not showing the detail band since I set "When No Data Type" to "All Sections No Detail."
However, I'm pretty sure that the datasource is not empty and contains some data. The reason is that when I move the table from the detail band to the summary band, the table is shown and populated with correct data.
I'm wondering if anyone has encountered the same problem before or know how to solve this type of issue.
You have selected All section No Detail. It will skip detail band if your main dataset is empty but prints all the other section.
If your table component is not depend on main dataset then use in summary band.