You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@servicemix.apache.org by "Charles Souillard (JIRA)" <ji...@apache.org> on 2006/11/09 01:00:05 UTC

[jira] Commented: (SM-583) Jetty context Path verification

    [ https://issues.apache.org/activemq/browse/SM-583?page=comments#action_37384 ] 
            
Charles Souillard commented on SM-583:
--------------------------------------


   [[ Old comment, sent by email on Thu, 21 Sep 2006 08:51:24 +0200 ]]

Guillaume,
I think you are right.

Your fix seems to respect your examples.
I didn't know that the following

/path1
/path1/path2
 were forbidden


Charles



> Jetty context Path verification
> -------------------------------
>
>                 Key: SM-583
>                 URL: https://issues.apache.org/activemq/browse/SM-583
>             Project: ServiceMix
>          Issue Type: Bug
>          Components: servicemix-http
>    Affects Versions: incubation
>         Environment: Linux, jdk 1.5 sun
>            Reporter: Charles Souillard
>         Assigned To: Guillaume Nodet
>             Fix For: 3.0.1, 3.1
>
>   Original Estimate: 5 minutes
>  Remaining Estimate: 5 minutes
>
> i am using sm build from 2006/09/12.
> I am trying to deploy 2 SUs in sm-http.
> the first one has the following path :
> locationURI="http://localhost:8192/junit_HttpEndpoint_invokeUtilTester"
> the second :
> locationURI="http://localhost:8192/junit_HttpEndpoint_invoke"
> I get the following exception :
> The requested context for path '/junit_HttpEndpoint_invoke' overlaps
> with an existing context for path: '/junit_HttpEndpoint_invokeUtilTester'
> I had a look at the code in
> org.apache.servicemix.http.jetty.JettyContextManager at line 138 (the
> method where is thrown the exception) and I found very strange the
> following test :
> if (h.getContextPath().startsWith(path) ||
> path.startsWith(h.getContextPath())) {
>   throw new Exception("The requested context for path '" + path + "'
> overlaps with an existing context for path: '" + h.getContextPath() + "'");
> }
> h is a handler which represents an already deployed path
> (/junit_HttpEndpoint_invokeUtilTester).
> path is the current path (being deployed = /junit_HttpEndpoint_invoke)
> The exception is thrown as  the following is true I think   :
> h.getContextPath().startsWith(path)
> I can deploy another su having the following path without any error:
> /junit_HttpEndpoint_incrementService
> This let me thinking that there could have a matching region but one
> could not be completely included in another...
> PATCH : 
> replace 
> if (h.getContextPath().startsWith(path) ||
> path.startsWith(h.getContextPath())) {
> by 
> if (h.getContextPath().equals(path)) {

-- 
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