Skip to content

Commit

Permalink
fix for loading schema after creating resource by wizard
Browse files Browse the repository at this point in the history
  • Loading branch information
skublik committed Apr 13, 2023
1 parent 8ec032e commit f898eac
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -372,7 +372,8 @@ public LoadableModel<GuiObjectDetailsPageType> getObjectDetailsPageConfiguration
}

public O getObjectType() {
return getPrismObject().asObjectable();
PrismObject<O> object = getPrismObject();
return object == null ? null : object.asObjectable();
}

protected boolean isReadonly() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@
import com.evolveum.midpoint.prism.Containerable;
import com.evolveum.midpoint.prism.PrismObject;
import com.evolveum.midpoint.prism.path.ItemPath;
import com.evolveum.midpoint.schema.GetOperationOptionsBuilder;
import com.evolveum.midpoint.security.api.AuthorizationConstants;
import com.evolveum.midpoint.authentication.api.authorization.AuthorizationAction;
import com.evolveum.midpoint.authentication.api.authorization.PageDescriptor;
Expand Down Expand Up @@ -130,16 +131,24 @@ protected ResourceDetailsModel createObjectDetailsModels(PrismObject<ResourceTyp

@Override
protected Collection<SelectorOptions<GetOperationOptions>> getOperationOptions() {
return getOperationOptionsBuilder()
.noFetch()
GetOperationOptionsBuilder builder = getOperationOptionsBuilder()
.item(ResourceType.F_CONNECTOR_REF).resolve()
.item(
ItemPath.create(
ResourceType.F_SCHEMA_HANDLING,
SchemaHandlingType.F_OBJECT_TYPE,
ResourceObjectTypeDefinitionType.F_FOCUS,
ResourceObjectFocusSpecificationType.F_ARCHETYPE_REF)).resolve()
.build();
ResourceObjectFocusSpecificationType.F_ARCHETYPE_REF)).resolve();

if (useNoFetchOption()) {
builder.noFetch();
}
return builder.build();
}

private boolean useNoFetchOption() {
ResourceType resource = getObjectDetailsModels().getObjectType();
return resource == null || StringUtils.isNotEmpty(resource.getOid());
}

public void showResourceObjectTypeBasicWizard(AjaxRequestTarget target, ItemPath pathToValue) {
Expand Down

0 comments on commit f898eac

Please sign in to comment.