You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@servicemix.apache.org by "Chad Sturtz (JIRA)" <ji...@apache.org> on 2006/11/01 21:15:02 UTC
[jira] Commented: (SM-733) 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
[ 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