[ https://issues.apache.org/activemq/browse/SM-733?page=comments#action_37337 ] Chad Sturtz commented on SM-733: --------------------------------
I dug a little deeper and came up with more information. In addition to the scenarios stated above, i've tested the following: 4) SA1 deployed with http endpoint using "10.9.5.29:8192", SA2 deployed using http endpoint with "B-1234:8192" where B-1234 and 10.9.5.29 are the same machine -- deploy failed 5) SA1 deployed with http endpoint using "0.0.0.0:8192", SA2 deployed using http endpoint with "B-1234:8192" --- deploy success I've looked at the code (JettyContextManager.java). What's happening is the created Servers are stored in a Map. Upon looking at a new endpoint, it creates a key based on the location URL. If there's no Server in the Map with that key, it creates a new one. If you look at the method that creates the key based on the location URL (method is: getKey(URL url)), it either uses the host as is from the URL, or it uses the hostname if a wild-card host was used in the URL (0.0.0.0). I would say that the same key should be created for any host resolving to the local machine. However, I don't know how that would affect scenarios where one machine has multiple ip addresses. I've not worked in such an environment and don't know if that's an acceptable solution. > Using "0.0.0.0" in http endpoint clashes with other http endpoints using the > hostname or ip address of the machine, unless port is different > -------------------------------------------------------------------------------------------------------------------------------------------- > > Key: SM-733 > URL: https://issues.apache.org/activemq/browse/SM-733 > Project: ServiceMix > Issue Type: Bug > Components: servicemix-http > Affects Versions: 3.0, 3.1 > Reporter: Chad Sturtz > Priority: Minor > > Three tested scenarios: > 1) SA1 deployed with http endpoint using "0.0.0.0:8192", SA2 deployed using > http endpoint with "10.9.5.29:8192" -- deploy fails (address already in use) > 2) SA1 deployed with http endpoint using "0.0.0.0:8192", SA2 deployed using > http endpoint with "0.0.0.0:8192" --- deploy success > 3) SA1 deployed with http endpoint using "0.0.0.0:8192", SA2 deployed using > http endpoint with "10.9.5.29:8193" --- deploy success > Basically, ALL SUs must use 0.0.0.0 in their SUs or make sure they're using > different ports. > For someone developing SUs/SAs that will be deployed in an environment with > SUs/SAs developed by others, this creates an item that must be coordinated > between everyone creating SUs/SAs to be deployed in the common environment. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: https://issues.apache.org/activemq/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira