I found this issue when trying to look at another issue where using REST to modify system property of a config failed.
When a user calls create-system-properties, but a property with that name already exists, it reports successful. Not sure if thats by design. However, any user application deployed to the server referencing that config will see that the property is gone, ie calling System.getProperties() will not return that property at all.
Here is the steps to reproduce. I am using DAS, but the same behavior is observed for any instance.
The war file EnumProperties is attached.
%asadmin deploy EnumProperties
%asadmin create-system-properties --target server-config AAA=aaa:BBB=bbb
launch the app by going to http://localhost:8080/EnumProperties, you can see the 2 properties.
%asadmin create-system-properties --target server-config AAA=new-value
The command returns saying executed successfully.
domain.xml is updated with the new value, but run EnumProperties again, and you can see that only BBB is showing up.
If create-system-properties is working as expected, ie, it means modifying a property value if the property already exists, then System.getProperties() should return this property.
If create-system-properties is only for creating new property, then it should return error and not update domain.xml with this new value.