This table displays perfectly on the screen that it is being sent from, but I’m not getting any data to display when I send the table as a parameter to another window.
like this
Map<String, Object> params = new HashMap();
params.put("equipmentAddonsTable", equipmentAddonsTable);
Window window = openWindow("edge$EquipmentAddons.browse", WindowManager.OpenType.DIALOG, params);
Here’s the code for the browse screen
package com.tab.edge.web.collateral.equipmentaddons;
import com.haulmont.cuba.core.global.Metadata;
import com.haulmont.cuba.gui.components.AbstractLookup;
import com.haulmont.cuba.gui.components.Table;
import com.haulmont.cuba.gui.data.CollectionDatasource;
import com.haulmont.cuba.web.gui.components.WebTable;
import com.tab.edge.entity.collateral.EquipmentAddons;
import javax.inject.Inject;
import javax.inject.Named;
import java.util.List;
import java.util.Map;
/**
* @author narmstrong
*/
public class EquipmentAddonsBrowse extends AbstractLookup {
@Inject
private CollectionDatasource equipmentAddonsDs;
@Named("equipmentAddonsTable")
private Table equipmentAddonsTable;
@Inject
private Metadata metadata;
@Override
public void init(Map<String, Object> params) {
super.init(params);
equipmentAddonsTable = (Table<EquipmentAddons>) params.get("equipmentAddonsTable");
equipmentAddonsDs = equipmentAddonsTable.getDatasource();
equipmentAddonsTable = new WebTable<>();
equipmentAddonsTable.setDatasource(equipmentAddonsDs);
equipmentAddonsDs.refresh();
}
public void saveEquipmentAddon() {
if (validateAll()) {
getDsContext().commit();
showNotification(getMessage("changesSaved"), NotificationType.HUMANIZED);
equipmentAddonsDs.refresh();
}
}
@Override
public boolean validateAll() {
return super.validateAll();
}
}
and
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<window xmlns="http://schemas.haulmont.com/cuba/window.xsd"
caption="msg://browseCaption"
class="com.tab.edge.web.collateral.equipmentaddons.EquipmentAddonsBrowse"
focusComponent="equipmentAddonsTable"
lookupComponent="equipmentAddonsTable"
messagesPack="com.tab.edge.web.collateral.equipmentaddons">
<dsContext>
<datasource id="equipmentDs"
class="com.tab.edge.entity.collateral.Equipment"
view="equipment-view">
<collectionDatasource id="equipmentAddonsDs"
property="equipmentAddons"/>
</datasource>
</dsContext>
<dialogMode height="605"
width="800"/>
<layout spacing="true">
<table id="equipmentAddonsTable"
editable="true"
height="504px"
width="100%">
<actions>
<action id="save"
caption="mainMsg://actions.Save"
invoke="saveEquipmentAddon"/>
</actions>
<columns>
<column id="active"
align="CENTER"
editable="true"
width="70px"/>
<column id="retailAmount"
width="80px"/>
<column id="name"/>
</columns>
<rows datasource="equipmentAddonsDs"/>
</table>
<buttonsPanel id="buttonsPanel"
align="BOTTOM_LEFT"
alwaysVisible="true">
<button id="saveBtn"
action="equipmentAddonsTable.save"/>
</buttonsPanel>
</layout>
</window>
What am I missing?