diff --git a/gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/api/component/ResourceTypeAssignmentPopupTabPanel.java b/gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/api/component/ResourceTypeAssignmentPopupTabPanel.java index d7603cedf1f..27fee2f8aaf 100644 --- a/gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/api/component/ResourceTypeAssignmentPopupTabPanel.java +++ b/gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/api/component/ResourceTypeAssignmentPopupTabPanel.java @@ -57,7 +57,8 @@ public class ResourceTypeAssignmentPopupTabPanel extends AbstractAssignmentPopup private static final String ID_INTENT = "intent"; private LoadableModel> intentValues; - private String intentValue = ""; + private String intentValue; + private ShadowKindType kindValue; private static final String DOT_CLASS = ResourceTypeAssignmentPopupTabPanel.class.getName(); private static final Trace LOGGER = TraceManager.getTrace(ResourceTypeAssignmentPopupTabPanel.class); @@ -75,8 +76,8 @@ protected void initParametersPanel(){ add(kindContainer); DropDownChoicePanel kindSelector = WebComponentUtil.createEnumPanel(ShadowKindType.class, ID_KIND, - WebComponentUtil.createReadonlyModelFromEnum(ShadowKindType.class), Model.of(ShadowKindType.ACCOUNT), - ResourceTypeAssignmentPopupTabPanel.this, false); + WebComponentUtil.createReadonlyModelFromEnum(ShadowKindType.class), Model.of(), + ResourceTypeAssignmentPopupTabPanel.this, true); kindSelector.setOutputMarkupId(true); kindSelector.getBaseFormComponent().add(new AjaxFormComponentUpdatingBehavior("change") { private static final long serialVersionUID = 1L; @@ -103,24 +104,7 @@ public boolean isEnabled(){ add(intentContainer); DropDownChoicePanel intentSelector = new DropDownChoicePanel(ID_INTENT, - new IModel() { - private static final long serialVersionUID = 1L; - - @Override - public String getObject() { - return intentValue; - } - - @Override - public void setObject(String s) { - intentValue = s; - } - - @Override - public void detach() { - - } - }, intentValues); + Model.of(), intentValues, true); intentSelector.getBaseFormComponent().add(new VisibleEnableBehaviour(){ private static final long serialVersionUID = 1L; @@ -136,14 +120,6 @@ public boolean isEnabled(){ } - private DropDownChoicePanel getIntentDropDown(){ - return (DropDownChoicePanel)get(ID_INTENT_CONTAINER).get(ID_INTENT); - } - - private DropDownChoicePanel getKindDropDown(){ - return (DropDownChoicePanel)get(ID_KIND_CONTAINER).get(ID_KIND); - } - private void initModels(){ intentValues = new LoadableModel>(true) { private static final long serialVersionUID = 1L; @@ -180,14 +156,6 @@ protected List load() { }; } - public String getIntentValue(){ - return intentValue; - } - - public ShadowKindType getKindValue(){ - return getKindDropDown().getModel().getObject(); - } - @Override protected List getSelectedAssignmentsList(){ List assignmentList = new ArrayList<>(); @@ -201,6 +169,24 @@ protected List getSelectedAssignmentsList(){ return assignmentList; } + public ShadowKindType getKindValue(){ + DropDownChoicePanel kindDropDown = getKindDropDown(); + return kindDropDown.getModel() != null ? kindDropDown.getModel().getObject() : null; + } + + public String getIntentValue(){ + DropDownChoicePanel intentDropDown = getIntentDropDown(); + return intentDropDown.getModel() != null ? intentDropDown.getModel().getObject() : null; + } + + private DropDownChoicePanel getIntentDropDown(){ + return (DropDownChoicePanel)get(ID_INTENT_CONTAINER).get(ID_INTENT); + } + + private DropDownChoicePanel getKindDropDown(){ + return (DropDownChoicePanel)get(ID_KIND_CONTAINER).get(ID_KIND); + } + @Override protected void onSelectionPerformed(AjaxRequestTarget target){ target.add(getObjectListPanel());