You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@axis.apache.org by "Chris Darroch (JIRA)" <ji...@apache.org> on 2006/11/18 07:03:37 UTC
[jira] Updated: (AXIS2C-410) custom URL prefixes not allowed
[ http://issues.apache.org/jira/browse/AXIS2C-410?page=all ]
Chris Darroch updated AXIS2C-410:
---------------------------------
Attachment: axis2c-410.patch
> custom URL prefixes not allowed
> -------------------------------
>
> Key: AXIS2C-410
> URL: http://issues.apache.org/jira/browse/AXIS2C-410
> Project: Axis2-C
> Issue Type: Bug
> Components: core/context, core/engine, util
> Affects Versions: 0.95
> Reporter: Chris Darroch
> Attachments: axis2c-410.patch
>
>
> In AXIS2C-380 I mentioned that although Apache httpd and mod_axis2 allow you to
> customize the URL location where Web Services will be provided, in Axis2/C itself
> this URL prefix is hard-coded. For example, with mod_axis2 you might do, in httpd.conf:
> <Location /my/services/here>
> SetHandler axis2_module
> </Location>
> There are several problems here. The main one is that several files in modules/core/engine
> call the single function in util/src/utils.c and to "parse" the request's URL. However, this
> function just scans for the hard-coded string "/services" -- so it's going to fail in this case
> because the "/services" in httpd's <Location> will match "too early". If the <Location> is
> something like /foo, it won't match at all.
> Also, even if the <Location> is for /axis2/services, if the incoming request is for the URL
> /axis2//services//foo//bar, the extra slashes mean it won't match.
> The attached patch attempts to take care of all these issues by centralizing a lot of the
> parse code into modules/core/context/msg_ctx.c and by rewriting util/src/utils.c to use
> the axis2_uri_t functions. A new parameter in axis2.xml is introduced, "requestURLPrefix",
> which the administrator should set to whatever matches their httpd <Location>.
> This still isn't ideal because really we should match against only what is in the
> <Location> directive, and if multiple <Location>s were defined with the axis2_module
> handler, they should all work. Having just a single matching parameter in axis2.xml
> won't fix this. But, it's a start, I think, and if someone can improve it, go for it! Thanks!
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-c-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-c-dev-help@ws.apache.org