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