You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tapestry.apache.org by Moritz Gmelin <mo...@gmx.de> on 2009/06/25 08:41:55 UTC

Access Control for events

Hi,

I'm on T5.1.0.5.
I have installed 2 AccessControlDispatchers in my application. One for  
PageRendering and one for event handling. Both Dispatchers just  
redirect to the start page with an error message in the case that e.g.  
no user was logged in.
This works nicely with all pages and event links.
The problem is that AJAX calls also get intercepted and the response  
is obviousely the rendered StartPage. So for a click on an inPlace  
Table when the user was not logged in anymore, he gets a Blackbird- 
Console Popup with a not-so-user-friendly error message.

Does anyone have an idea about possible solutions to this?

Thanks

Moritz

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org


Re: Access Control for events

Posted by Moritz Gmelin <mo...@gmx.de>.
Hi,

I'm sorry but I don't understand the idea of your proposal.

This Reporter component should it be placed on every page? How will it  
intercept the AJAX communication between the inPlace Grid (or any  
other AJAX-using-component) and the server and therefore handle the  
response and finally forward the response to the inPlace Grid that is  
waiting for it?

Thanks for more insight.

Moritz

Am 25.06.2009 um 09:09 schrieb donf yang:

> You  can have a component named Reporter with some javascript code,  
> in your
> ajax case, handle the event and record any helpful Block, return
> MultiZoneUpdate(reporter.getZone(), reporter). So, you can control any
> responses in this component, redirect to login page, display a error  
> message
> or pop a login panel by javascript
>
> Reporter.java
>
> public interface Reporter {
>
> public static final String PARAM_NAME = "Reporter";
>
> public static final byte SUCCESS = 0x04;
> public static final byte INFO = 0x08;
> public static final byte WARN = 0x16;
> public static final byte ERROR = 0x32;
>
> public Collection<Record> getRecords();
> public void error(Object message);
> public void warn(Object message);
> public void info(Object message);
>
> public void success(Object message);
> public boolean hasRecord();
> public String getZone();
> }
>
>
> tml:
>
> <t:If test="block">
>    <div class="record-block"><t:Delegate to="message" /></div>
>    <t:parameter name="else">
>     <div class="record-message"><t:RenderObject object="${message}"
> /></div>
>    </t:parameter>
>   </t:If>
>
>
> On Thu, Jun 25, 2009 at 2:41 PM, Moritz Gmelin  
> <mo...@gmx.de> wrote:
>
>> Hi,
>>
>> I'm on T5.1.0.5.
>> I have installed 2 AccessControlDispatchers in my application. One  
>> for
>> PageRendering and one for event handling. Both Dispatchers just  
>> redirect to
>> the start page with an error message in the case that e.g. no user  
>> was
>> logged in.
>> This works nicely with all pages and event links.
>> The problem is that AJAX calls also get intercepted and the  
>> response is
>> obviousely the rendered StartPage. So for a click on an inPlace  
>> Table when
>> the user was not logged in anymore, he gets a Blackbird-Console  
>> Popup with a
>> not-so-user-friendly error message.
>>
>> Does anyone have an idea about possible solutions to this?
>>
>> Thanks
>>
>> Moritz
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
>> For additional commands, e-mail: users-help@tapestry.apache.org
>>
>>
>
>
> -- 
>
> Regards,
>
> Donf Yang
> ------------------------------------------------------------------------------
> To be surprised,to wonder,is to begin to understand.


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org


Re: Access Control for events

Posted by donf yang <do...@gmail.com>.
You  can have a component named Reporter with some javascript code, in your
ajax case, handle the event and record any helpful Block, return
MultiZoneUpdate(reporter.getZone(), reporter). So, you can control any
responses in this component, redirect to login page, display a error message
or pop a login panel by javascript

Reporter.java

public interface Reporter {

 public static final String PARAM_NAME = "Reporter";

 public static final byte SUCCESS = 0x04;
 public static final byte INFO = 0x08;
 public static final byte WARN = 0x16;
 public static final byte ERROR = 0x32;

 public Collection<Record> getRecords();
 public void error(Object message);
 public void warn(Object message);
 public void info(Object message);

 public void success(Object message);
 public boolean hasRecord();
 public String getZone();
}


tml:

<t:If test="block">
    <div class="record-block"><t:Delegate to="message" /></div>
    <t:parameter name="else">
     <div class="record-message"><t:RenderObject object="${message}"
/></div>
    </t:parameter>
   </t:If>


On Thu, Jun 25, 2009 at 2:41 PM, Moritz Gmelin <mo...@gmx.de> wrote:

> Hi,
>
> I'm on T5.1.0.5.
> I have installed 2 AccessControlDispatchers in my application. One for
> PageRendering and one for event handling. Both Dispatchers just redirect to
> the start page with an error message in the case that e.g. no user was
> logged in.
> This works nicely with all pages and event links.
> The problem is that AJAX calls also get intercepted and the response is
> obviousely the rendered StartPage. So for a click on an inPlace Table when
> the user was not logged in anymore, he gets a Blackbird-Console Popup with a
> not-so-user-friendly error message.
>
> Does anyone have an idea about possible solutions to this?
>
> Thanks
>
> Moritz
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
> For additional commands, e-mail: users-help@tapestry.apache.org
>
>


-- 

Regards,

Donf Yang
------------------------------------------------------------------------------
To be surprised,to wonder,is to begin to understand.