Не уверен, правильно ли я вызываю метод в моем контроллере, и не уверен, могу ли я из абстрактного класса.
Это мой класс контроллера:
Part_abstract partSelected;
Product productSelected;
Inventory esisInv = new Inventory();
@FXML void deletePartMain(ActionEvent event) {
if (partSelected != null && partTable.isFocused()) {
Alert alert = new Alert(Alert.AlertType.CONFIRMATION);
alert.setTitle("Caution!");
alert.setHeaderText("Are you sure you want to delete Part ID # " + partSelected.getPartIDTable() + " ?");
alert.setContentText(null);
Optional<ButtonType> result = alert.showAndWait();
if (result.get() == ButtonType.OK) {
try {
for (Part_abstract pa : esisInv.parts) {
if (esisInv.deletePart(pa) == true) {
pa = partSelected;
partTable.getItems().remove(partSelected);
}
}
} catch (Exception e) {
System.out.println("This is wrong. HA!");
}
}
//else if
Метод вызова класса инвентаризациииз Part_abstract Класс:
Part_abstract pa;
Product prod;
public boolean deletePart(Part_abstract partDeleted) {
for (Part_abstract p : parts) {
if (pa.partIDTable != prod.productIDTable) {
return true;
}
}
return false;
}
Caused by: java.lang.NullPointerException
at Model.Inventory.deletePart(Inventory.java:101)
at View_Controller.MainESISController.deletePartMain
(MainESISController.java:319)
AND.. THIS IS WRONG?. HA!