Thanks Athiththan. I'll try that!

BR,
Damith

On Mon, 8 Jul 2019, 21:04 Athiththan Kathirgamasegaran, <athitht...@wso2.com>
wrote:

> Hi Damith,
>
> The ESB cannot dispatch the request to a matching resource if you have any
> special characters (in your case "@") in the URL path (URI parameter). So,
> if the URL path contains any special characters and if you try to invoke a
> particular resource, the response will be a "404" not found.
>
> To overcome this problem, you can follow either one ...
>
> *URL-encode the email address and send it*
>
> For example:
>
> d...@demo.com will become as demo%40demo.com
>
> So your URL will be as
>
> http://localhost:8290/root/getUserEmail/demo%40demo.com
> <http://localhost:8290/root/getUserEmail/damithsj%40gmail.com>
>
>
> OR
>
>
> *Allow ESB [EI] to accept special characters in URL path*
>
> By changing your current uri-template as follow
> <resource methods="GET" uri-template="/getUserEmail/{+email}">
>
> {+email} annotation will enable the ESB [EI] to accept special characters
> in the URL path.
>
> Hope this solves your query.
>
> You can find more information about special characters here[1].
> You can find more information on handling special characters in URL with
> WSO2 ESB here[2].
>
> [1]:
> https://secure.n-able.com/webhelp/NC_9-1-0_SO_en/Content/SA_docs/API_Level_Integration/API_Integration_URLEncoding.html
> [2]:
> https://dzone.com/articles/handling-special-characters-in-urls-with-wso2-esb
>
> Thanks & Regards,
> *Kathirgamasegaran Athiththan *| Software Engineer | WSO2 Inc.
> (m) +94774922931 | (e) athitht...@wso2.com
>
> <http://wso2.com/signature>
>
>
> On Mon, Jul 8, 2019 at 9:26 PM Damith Jinasena <damit...@gmail.com> wrote:
>
>> Hi All,
>>
>> I'm trying to create a simple REST api to get user details providing the
>> email.
>> But once I add an email (with @ sign), REST API returns with 404 error.
>>
>> Eg:
>> http://localhost:8290/root/getUserEmail/damithsj works fine
>> http://localhost:8290/root/getUserEmail/damit...@gmail.com   404 error :|
>>
>> I'm playing with   Integration Studio 6.5.0
>>
>> Can you point me in the right direction?
>>
>> My sample API is given as below.
>>
>> <?xml version="1.0" encoding="UTF-8"?>
>> <api context="/root" name="testemail" xmlns="
>> http://ws.apache.org/ns/synapse";>
>>     <resource methods="GET" uri-template="/getUserEmail/{email}">
>>         <inSequence>
>>             <property description="reademail"
>> expression="get-property('uri.var.email')" name="email" scope="default"
>> type="STRING"/>
>>             <log description="log" level="custom">
>>                 <property expression="$ctx:email" name="email"/>
>>             </log>
>>             <respond description="respond"/>
>>         </inSequence>
>>         <outSequence/>
>>         <faultSequence/>
>>     </resource>
>> </api>
>> _______________________________________________
>> Dev mailing list
>> Dev@wso2.org
>> http://wso2.org/cgi-bin/mailman/listinfo/dev
>>
>
_______________________________________________
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to