eclipse-basyx / basyx-java-server-sdk

MIT License
60 stars 47 forks source link

[BUG] Shell Descriptor Not Updated When PUT /shells/{aasIdentifier} is Used to Change AAS’s id_short #489

Closed JS-Aibel closed 1 month ago

JS-Aibel commented 1 month ago

Describe the bug

Shell Descriptor is not updated when PUT /shells/{aasIdentifier} is used to change AAS’s id_short. This issue also occurs with submodels.

To Reproduce Steps to reproduce the behavior:

  1. Upload an Asset Administration Shell (AAS).
  2. Modify the AAS by changing the id_short using the endpoint PUT /shells/{aasIdentifier}.
  3. Navigate to the AAS Repository at /shells and observe the modified id_short.
  4. Navigate to the AAS Registry at /shell-descriptors and observe that the id_short remains unchanged.

Expected behavior Could the AAS Registry be synchronized with the AAS Repository to ensure consistent information?

BaSyx:

BaSyx configuration Default from the Quick Start Guide.

aaronzi commented 1 month ago

Hello @JS-Aibel,

thank you for reporting this. This behavior is not implemented in the registry integration feature.

We are currently rethinking how we want to handle the registry integration and are working on a dedicated gateway component that would address features like this and many more. The current implementation of the registry integration as part of the AAS Environment is limited and prevents the use of distributed components because it only allows for one AAS/Submodel Registry to be used. This limits the capabilities of the AAS API components.

For now, changing the idShort of an AAS/Submodel after it was uploaded wasn't a use case but I can see that this would potentially be necessary. Unfortunately the best way to address this right now is to delete that AAS (including Submodels) and reupload it.

I will close this issue for now. We will inform you once the gateway component is implemented and addresses the described problem. If you have questions regarding the proposed solution, feel free to reopen this issue :)