Hi Rajith, Jayanga,

Thanks for your suggestions.

I managed to get it done by implementing a custom Wsdl Processor which
intercepts and output from axis2 Wsdl Processor and update URLs
accordingly. It can be applied to ESB by updating the following config in
carbon.xml. Therefore no change required in ESB code.

 <HttpGetRequestProcessors>
        <Processor>
            <Item>wsdl</Item>

<Class>org.wso2.carbon.core.transports.util.Wsdl11Processor</Class>
        </Processor>
        ........
</HttpGetRequestProcessors>

Thanks.

On Tue, Sep 6, 2016 at 8:18 PM, Rajith Vitharana <[email protected]> wrote:

> Hi Jagath,
>
> Can't you do something like
>
> 1) deploy the service
> 2) get wsdl
> 3) modify wsdl to use your custom endpoints
> 4) use that modified wsdl as publish wsdl(inline or as file)
>
> drawback would be, you will need to do this process every time you do some
> changes to the proxy
>
> Thanks,
>
> On 6 September 2016 at 18:39, Jagath Sisirakumara Ariyarathne <
> [email protected]> wrote:
>
>> HI Jayanga,
>>
>> I think "publishWSDL" can be used to modify operations exposed to the
>> client from ESB based on back-end service. In our case, it is required to
>> change the service address returned from the wsdl, generated from ESB proxy
>> service.
>>
>> Thanks.
>>
>> On Tue, Sep 6, 2016 at 4:48 PM, Jayanga Dissanayake <[email protected]>
>> wrote:
>>
>>> Hi Maheeka/Jagath,
>>>
>>> Did you try using the "publishWSDL" option and publishing a custom WSDL
>>> with modified endpoints.
>>>
>>> Thanks,
>>> Jayanga.
>>>
>>> *Jayanga Dissanayake*
>>> Associate Technical Lead
>>> WSO2 Inc. - http://wso2.com/
>>> lean . enterprise . middleware
>>> email: [email protected]
>>> mobile: +94772207259
>>> <http://wso2.com/signature>
>>>
>>> On Sun, Sep 4, 2016 at 9:19 AM, Jagath Sisirakumara Ariyarathne <
>>> [email protected]> wrote:
>>>
>>>> HI Chanaka,
>>>>
>>>> Yes, we are looking for any configuration or extension we can implement
>>>> to achieve this which does not affect usual functionality of tenant mode.
>>>>
>>>> Thanks.
>>>>
>>>> On Sun, Sep 4, 2016 at 8:54 AM, Chanaka Fernando <[email protected]>
>>>> wrote:
>>>>
>>>>> If that is the case, then it makes sense to remove the "/t/abc.com"
>>>>> from the generated WSDL (as Jagath mentioned). Thanks everyone for the
>>>>> clarification. We should do this in a way that it does not affect the
>>>>> standalone mode tenant story.
>>>>>
>>>>>
>>>>>
>>>>> On Sun, Sep 4, 2016 at 8:26 AM, Maheeka Jayasuriya <[email protected]>
>>>>> wrote:
>>>>>
>>>>>> Hi Chanaka,
>>>>>>
>>>>>> The app hostname contains the tenant domain and thus it is possible
>>>>>> to identify the the app uniquely and rewriting the URL without tenant
>>>>>> domain works.
>>>>>>
>>>>>> For example, SampleApp I created in maheeka.com domain would resolve
>>>>>> to hostname : maheeka-com-sampleapp.apps.cloud.wso2.com or might
>>>>>> have a custom URL as Amalka mentions above. Apps can be differentiated
>>>>>> because hostname is composed with tenant domain, app name and version.
>>>>>>
>>>>>> Thanks,
>>>>>> Maheeka
>>>>>>
>>>>>>
>>>>>> Maheeka Jayasuriya
>>>>>> Senior Software Engineer
>>>>>> Mobile : +94777750661
>>>>>>
>>>>>> On Sun, Sep 4, 2016 at 8:09 AM, Amalka Subasinghe <[email protected]>
>>>>>> wrote:
>>>>>>
>>>>>>> It is through HAProxy URL rewriting.
>>>>>>>
>>>>>>> User can invoke same proxy as following ways.
>>>>>>> http://tenantDomain-appName-version-wso2apps.com/HellpProxy
>>>>>>> http://tenantDomain-appName-wso2apps.com/HellpProxy
>>>>>>> http://custom-url/HellpProxy
>>>>>>>
>>>>>>> Then at the HAProxy level we have added a logic to rewrite above
>>>>>>> urls to
>>>>>>> http://tenantDomain-appName-version-wso2apps.com/services/t/
>>>>>>> tenantDomain/HellpProxy
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On Sun, Sep 4, 2016 at 8:04 AM, Chanaka Fernando <[email protected]>
>>>>>>> wrote:
>>>>>>>
>>>>>>>> I'm bit confused about how we differentiate the endpoints for
>>>>>>>> different tenants. I thought it was through this "/t/aa.com"
>>>>>>>> section. If I have a proxy called "HelloProxy" and you have the same 
>>>>>>>> proxy
>>>>>>>> (in your tenant), how are we going to differentiate? Is it from "host 
>>>>>>>> name"
>>>>>>>> section?
>>>>>>>>
>>>>>>>> http://cloud.integration.wso2.com/services/*t/chanaka.com/HelloProxy
>>>>>>>> <http://chanaka.com/HelloProxy>*
>>>>>>>> http://cloud.integration.wso2.com/services/*t/maheeka.com/HelloProxy
>>>>>>>> <http://maheeka.com/HelloProxy>*
>>>>>>>>
>>>>>>>> or
>>>>>>>>
>>>>>>>> http://*xxx.cloud.integration.wso2.com
>>>>>>>> <http://xxx.cloud.integration.wso2.com>*/services/HelloProxy
>>>>>>>> http://*yyy.cloud.integration.wso2.com
>>>>>>>> <http://yyy.cloud.integration.wso2.com>*/services/HelloProxy
>>>>>>>>
>>>>>>>>
>>>>>>>> On Sun, Sep 4, 2016 at 7:28 AM, Maheeka Jayasuriya <
>>>>>>>> [email protected]> wrote:
>>>>>>>>
>>>>>>>>> Hi Chanaka,
>>>>>>>>>
>>>>>>>>> When we deploy a car file containing a proxy service, we need to
>>>>>>>>> show the WSDL for the proxy in integration cloud. The endpoints in 
>>>>>>>>> the WSDL
>>>>>>>>> are composed with the host name of the app and the tenant suffix -
>>>>>>>>> t/tenantDomain, since we are doing the deployment in the tenant space.
>>>>>>>>>
>>>>>>>>> When we get a request as http://esb.wso2.com:8280/servi
>>>>>>>>> ces/HelloProxy.HelloProxyHttpSoap11Endpoint
>>>>>>>>> <http://jagatha-ThinkPad-T530:8280/services/t/aa.com/HelloProxy.HelloProxyHttpSoap11Endpoint>,
>>>>>>>>> it is actually rewritten to http://esb.wso2.com:8280/servi
>>>>>>>>> ces/t/aa.com/HelloProxy.HelloProxyHttpSoap11Endpoint
>>>>>>>>> <http://jagatha-ThinkPad-T530:8280/services/t/aa.com/HelloProxy.HelloProxyHttpSoap11Endpoint>
>>>>>>>>> by the HAProxy. Hence, requests are redirected to real tenant 
>>>>>>>>> endpoint.
>>>>>>>>> However, this tenant information is not necessary to be known to the 
>>>>>>>>> users
>>>>>>>>> when they use the WSDL to send a request. Hence the question whether 
>>>>>>>>> it is
>>>>>>>>> possible to do $subject.
>>>>>>>>>
>>>>>>>>> Thanks,
>>>>>>>>> Maheeka
>>>>>>>>>
>>>>>>>>> Maheeka Jayasuriya
>>>>>>>>> Senior Software Engineer
>>>>>>>>> Mobile : +94777750661
>>>>>>>>>
>>>>>>>>> On Sun, Sep 4, 2016 at 7:18 AM, Chanaka Fernando <
>>>>>>>>> [email protected]> wrote:
>>>>>>>>>
>>>>>>>>>> Hi Jagath,
>>>>>>>>>>
>>>>>>>>>> What is the requirement here?
>>>>>>>>>>
>>>>>>>>>> On Sat, Sep 3, 2016 at 11:57 PM, Jagath Sisirakumara Ariyarathne
>>>>>>>>>> <[email protected]> wrote:
>>>>>>>>>>
>>>>>>>>>>> Hi All,
>>>>>>>>>>>
>>>>>>>>>>> When a Proxy (e.g. HelloProxy) is deployed in a tenant space
>>>>>>>>>>> (e.g abc.com) in ESB, related wsdl will contain service
>>>>>>>>>>> definition as follows;
>>>>>>>>>>>
>>>>>>>>>>> <wsdl:port name="HelloProxyHttpSoap11Endpoint" binding="tns:
>>>>>>>>>>> HelloProxySoap11Binding">
>>>>>>>>>>> <soap:address location="http://esb.wso2.com:8280/services/t/
>>>>>>>>>>> aa.com/HelloProxy.HelloProxyHttpSoap11Endpoint
>>>>>>>>>>> <http://jagatha-ThinkPad-T530:8280/services/t/aa.com/HelloProxy.HelloProxyHttpSoap11Endpoint>
>>>>>>>>>>> "/>
>>>>>>>>>>> </wsdl:port>
>>>>>>>>>>>
>>>>>>>>>>> Is there a way to change the address in this definition, to make
>>>>>>>>>>> it without the tenant ID like below, even though it is deployed in 
>>>>>>>>>>> tenant
>>>>>>>>>>> space.
>>>>>>>>>>>
>>>>>>>>>>> <wsdl:port name="HelloProxyHttpSoap11Endpoint" binding="tns:
>>>>>>>>>>> HelloProxySoap11Binding">
>>>>>>>>>>> <soap:address location="http://esb.wso2.com:8280/services/He
>>>>>>>>>>> lloProxy.HelloProxyHttpSoap11Endpoint
>>>>>>>>>>> <http://jagatha-ThinkPad-T530:8280/services/t/aa.com/HelloProxy.HelloProxyHttpSoap11Endpoint>
>>>>>>>>>>> "/>
>>>>>>>>>>> </wsdl:port>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Thanks.
>>>>>>>>>>> --
>>>>>>>>>>> Jagath Ariyarathne
>>>>>>>>>>> Technical Lead
>>>>>>>>>>> WSO2 Inc.  http://wso2.com/
>>>>>>>>>>> Email: [email protected]
>>>>>>>>>>> Mob  : +94 77 386 7048
>>>>>>>>>>> <http://wso2.com/signature>
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> --
>>>>>>>>>> Thank you and Best Regards,
>>>>>>>>>> Chanaka Fernando
>>>>>>>>>> Senior Technical Lead
>>>>>>>>>> m: +94 773337238
>>>>>>>>>> https://wso2.com <https://wso2.com/signature>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> Thank you and Best Regards,
>>>>>>>> Chanaka Fernando
>>>>>>>> Senior Technical Lead
>>>>>>>> m: +94 773337238
>>>>>>>> https://wso2.com <https://wso2.com/signature>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Amalka Subasinghe
>>>>>>>
>>>>>>> WSO2 Inc.
>>>>>>> Mobile: +94 77 9401267
>>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Thank you and Best Regards,
>>>>> Chanaka Fernando
>>>>> Senior Technical Lead
>>>>> m: +94 773337238
>>>>> https://wso2.com <https://wso2.com/signature>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>> Jagath Ariyarathne
>>>> Technical Lead
>>>> WSO2 Inc.  http://wso2.com/
>>>> Email: [email protected]
>>>> Mob  : +94 77 386 7048
>>>> <http://wso2.com/signature>
>>>>
>>>
>>>
>>
>>
>> --
>> Jagath Ariyarathne
>> Technical Lead
>> WSO2 Inc.  http://wso2.com/
>> Email: [email protected]
>> Mob  : +94 77 386 7048
>> <http://wso2.com/signature>
>>
>> _______________________________________________
>> Dev mailing list
>> [email protected]
>> http://wso2.org/cgi-bin/mailman/listinfo/dev
>>
>>
>
>
> --
> Rajith Vitharana
>
> Senior Software Engineer,
> WSO2 Inc. : wso2.com
> Mobile : +94715883223
> Blog : http://lankavitharana.blogspot.com/
> <http://wso2.com/signature>
>



-- 
Jagath Ariyarathne
Technical Lead
WSO2 Inc.  http://wso2.com/
Email: [email protected]
Mob  : +94 77 386 7048
<http://wso2.com/signature>
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to