Description
When you use admin:create to create a child container, then the AdminService is used to create the JVM process. This code does not read the KARAF_OPTS environment variable which means the child container does not use that when started.
But if you use the bin/start script to start the child container, then the setenv script will read the KARAF_OPTS.
So that means there is a difference between using the admin commands to crate|start child containers, vs using the bin scripts.
This is a serious problem for Windows users on IP6 network that hits a well known issue, where they have to set a JVM system property to work around this.
If they do not you get network issues such as
java.net.SocketException: Permission denied: no further information
To fix this with Karaf you set this option
KARAF_OPTS '-Djava.net.preferIPv4Stack=true'
Maybe either globally in the Windows box, or in the bin/setenv.bat file.
But the child containers do not pickup that env option when created by admin server.
This patch fixes that.
To see if the env option was picked up by Karaf, you can connect to the child container, and run
dev:system-property | grep java.net