On Tue, Jul 22, 2014 at 4:30 PM, Dilini Muthumala <[email protected]> wrote:
> Hi Sagara, > > Thanks a lot for the informative reply. > > On Tue, Jul 22, 2014 at 8:22 PM, Sagara Gunathunga <[email protected]> > wrote: > >> As we discussed offline you need to modify onOpen() method to receive >> tenant id from an initial handshake request, then within the onOpen method >> you have to write logic similar to >> CarbonContextCreatorValve#initCarbonContext() >> method. >> > > Alternatively, how about reading the tenant domain from the path parameter > (i.e. without using PrivilegedCarbonContext), as shown below? > > @OnOpen > public void onOpen (Session session, @PathParam("topic") String topic, > @PathParam("tdomain") String tdomain) { > } > > @OnMessage > public void onMessage (Session session, String message, > @PathParam("topic") String topic, @PathParam("tdomain") String tdomain) { > websocketInputService.invokeListener(tdomain, topic, message); > } > > -1. This would create a security loop hole. If your webapp needs to work across all the tenants, then you might need to make it a SaaS app. This would be pretty much similar to API publisher. > Thanks, > Dilini > >> >> >> Thanks ! >> >> On Tue, Jul 22, 2014 at 7:18 PM, Dilini Muthumala <[email protected]> >> wrote: >> >>> FYI, this is the end point trying to get the tenant id: >>> >>> import javax.websocket.*; >>> import org.wso2.carbon.context.PrivilegedCarbonContext; >>> import >>> org.wso2.carbon.event.input.adaptor.websocket.WebsocketInputService; >>> >>> @ServerEndpoint(value = "/{topic}") >>> public class DataReceivingEndpoint { >>> >>> private static WebsocketInputService websocketInputService; >>> private static int tenantId; >>> >>> public DataReceivingEndpoint() { >>> websocketInputService = (WebsocketInputService) >>> PrivilegedCarbonContext.getThreadLocalCarbonContext() >>> .getOSGiService(WebsocketInputService.class); >>> } >>> >>> @OnOpen >>> public void onOpen (Session session, @PathParam("topic") String >>> topic) { >>> } >>> >>> @OnMessage >>> public void onMessage (Session session, String message, >>> @PathParam("topic") String topic) { >>> tenantId = >>> PrivilegedCarbonContext.getThreadLocalCarbonContext().getTenantId(); // >>> returned -1 >>> websocketInputService.invokeListener(tenantId, topic, message); >>> } >>> >>> @OnClose >>> public void onClose (Session session, CloseReason reason) { >>> } >>> >>> @OnError >>> public void onError (Session session) { >>> } >>> } >>> >>> >>> On Tue, Jul 22, 2014 at 5:58 PM, Dilini Muthumala <[email protected]> >>> wrote: >>> >>>> Hi all, >>>> >>>> Had an offline discussion with Sameera, Sagara and Chamil regarding >>>> this. >>>> >>>> The most important piece of info is missing in my initial mail, which >>>> is, this web app contains a web-socket end point. >>>> >>>> That must be the reason why all these usual methods are not working. >>>> >>>> Thanks, >>>> Dilini >>>> >>>> >>>> On Tue, Jul 22, 2014 at 5:45 PM, Kasun Gajasinghe <[email protected]> >>>> wrote: >>>> >>>>> Hi Dilini, >>>>> >>>>> What's the product you are trying this in? Can you open up >>>>> CARBON_HOME/repository/conf/tomcat/catalina-server.xml, and make sure that >>>>> it has the following valve defined? >>>>> >>>>> <Valve >>>>> className="org.wso2.carbon.tomcat.ext.valves.CarbonContextCreatorValve"/> >>>>> >>>>> The reported jira that is mentioned above is an issue with logging. >>>>> >>>>> >>>>> >>>>> On Tue, Jul 22, 2014 at 4:58 AM, Asanka Dissanayake <[email protected]> >>>>> wrote: >>>>> >>>>>> >>>>>> >>>>>> >>>>>> On Tue, Jul 22, 2014 at 5:23 PM, Asanka Dissanayake <[email protected] >>>>>> > wrote: >>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> On Tue, Jul 22, 2014 at 5:03 PM, Gayashan Amarasinghe < >>>>>>> [email protected]> wrote: >>>>>>> >>>>>>>> Hi Dilini, >>>>>>>> >>>>>>>> Did you deploy the web app as super tenant or a tenant? What are >>>>>>>> the server versions you used? >>>>>>>> >>>>>>>> Method you have used is the proper way to access the tenant Id. >>>>>>>> >>>>>>> AFAIK you shouldn't use PrivilegedCarbonContext to read information. >>>>>>> It is used to write stuffs to the carbon context. >>>>>>> >>>>>> For more information: >>>>>> >>>>>> PrivilegedCarbonContext >>>>>> >>>>>> PrivilegedCarbonContext is a special subclass of CarbonContext, >>>>>> which allows you to perform privileged operations such as, setting the >>>>>> tenant ID and domain, starting or ending tenant flows and more. This >>>>>> class >>>>>> can only be used by Carbon components that have the permission to get >>>>>> hold >>>>>> of an instance of the PrivilegedCarbonContext. >>>>>> >>>>>> >>>>>> CarbonContext >>>>>> The CarbonContext is designed for normal tenants to retrieve >>>>>> information from the Carbon runtime. In the super tenant mode, for this >>>>>> to >>>>>> work the relevant data has to be set so that tenants can retrieve >>>>>> information using the CarbonContext. >>>>>> >>>>>>> However as Malintha has mentioned, there are some bugs when >>>>>>>> certain super-tenant related tasks are logged, which has not been >>>>>>>> observed >>>>>>>> for tenant-wise tasks. This bug will be fixed with 4.3 release. >>>>>>>> >>>>>>>> Thanks. >>>>>>>> >>>>>>>> /Gayashan >>>>>>>> >>>>>>>> >>>>>>>> On Tue, Jul 22, 2014 at 3:29 PM, Dilini Muthumala <[email protected]> >>>>>>>> wrote: >>>>>>>> >>>>>>>>> Hi, >>>>>>>>> >>>>>>>>> Would like to know, how to $subject. >>>>>>>>> >>>>>>>>> I tired with, >>>>>>>>> >>>>>>>>> PrivilegedCarbonContext.getThreadLocalCarbonContext().getTenantId(); >>>>>>>>> >>>>>>>>> which returned -1, as the tenant id. >>>>>>>>> >>>>>>>>> Thanks, >>>>>>>>> Dilini >>>>>>>>> >>>>>>>>> -- >>>>>>>>> *Dilini Muthumala* >>>>>>>>> Software Engineer, >>>>>>>>> WSO2 Inc. >>>>>>>>> >>>>>>>>> *E-mail :* [email protected] >>>>>>>>> *Mobile: *+94713 400 029 >>>>>>>>> >>>>>>>>> _______________________________________________ >>>>>>>>> Dev mailing list >>>>>>>>> [email protected] >>>>>>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev >>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> *Gayashan Amarasinghe* >>>>>>>> Software Engineer | Platform TG >>>>>>>> WSO2, Inc. | http://wso2.com >>>>>>>> lean. enterprise. middleware >>>>>>>> >>>>>>>> Mobile : +94718314517 >>>>>>>> Blog : gayashan-a.blogspot.com >>>>>>>> >>>>>>>> _______________________________________________ >>>>>>>> Dev mailing list >>>>>>>> [email protected] >>>>>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev >>>>>>>> >>>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> >>>>>>> >>>>>>> *Asanka DissanayakeSoftware Engineer* >>>>>>> *WSO2 Inc. - lean . enterprise . middleware | wso2.com >>>>>>> <http://wso2.com/>* >>>>>>> >>>>>>> *email: [email protected] <[email protected]>, blog: >>>>>>> cyberwaadiya.blogspot.com >>>>>>> <http://cyberwaadiya.blogspot.com>, asankastechtalks.wordpress.com >>>>>>> <http://asankastechtalks.wordpress.com> mobile: +94 71 8373821* >>>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> >>>>>> >>>>>> *Asanka DissanayakeSoftware Engineer* >>>>>> *WSO2 Inc. - lean . enterprise . middleware | wso2.com >>>>>> <http://wso2.com/>* >>>>>> >>>>>> *email: [email protected] <[email protected]>, blog: >>>>>> cyberwaadiya.blogspot.com >>>>>> <http://cyberwaadiya.blogspot.com>, asankastechtalks.wordpress.com >>>>>> <http://asankastechtalks.wordpress.com> mobile: +94 71 8373821* >>>>>> >>>>>> _______________________________________________ >>>>>> Dev mailing list >>>>>> [email protected] >>>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev >>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> >>>>> *Kasun Gajasinghe*Senior Software Engineer, WSO2 Inc. >>>>> email: kasung AT spamfree wso2.com >>>>> linked-in: http://lk.linkedin.com/in/gajasinghe >>>>> blog: http://kasunbg.org >>>>> >>>>> >>>>> >>>>> _______________________________________________ >>>>> Dev mailing list >>>>> [email protected] >>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev >>>>> >>>>> >>>> >>>> >>>> -- >>>> *Dilini Muthumala* >>>> Software Engineer, >>>> WSO2 Inc. >>>> >>>> *E-mail :* [email protected] >>>> *Mobile: *+94713 400 029 >>>> >>> >>> >>> >>> -- >>> *Dilini Muthumala* >>> Software Engineer, >>> WSO2 Inc. >>> >>> *E-mail :* [email protected] >>> *Mobile: *+94713 400 029 >>> >>> _______________________________________________ >>> Dev mailing list >>> [email protected] >>> http://wso2.org/cgi-bin/mailman/listinfo/dev >>> >>> >> >> >> -- >> Sagara Gunathunga >> >> Senior Technical Lead; WSO2, Inc.; http://wso2.com >> V.P Apache Web Services; http://ws.apache.org/ >> Linkedin; http://www.linkedin.com/in/ssagara >> Blog ; http://ssagara.blogspot.com >> >> > > > -- > *Dilini Muthumala* > Software Engineer, > WSO2 Inc. > > *E-mail :* [email protected] > *Mobile: *+94713 400 029 > > _______________________________________________ > Dev mailing list > [email protected] > http://wso2.org/cgi-bin/mailman/listinfo/dev > > -- *Kasun Gajasinghe*Senior Software Engineer, WSO2 Inc. email: kasung AT spamfree wso2.com linked-in: http://lk.linkedin.com/in/gajasinghe blog: http://kasunbg.org
_______________________________________________ Dev mailing list [email protected] http://wso2.org/cgi-bin/mailman/listinfo/dev
