Controller で context get!

以前、Catalyst::Component::ACCEPT_CONTEXT をコントローラで継承すれば $c が取れるといったんだけど、
複数のコントローラを継承すると取れなくなるな。orz...

試したスクリプト。 :-)

package Nyan::BaseController::A;

use base qw(Catalyst::Controller Catalyst::Component::ACCEPT_CONTEXT);

sub a {
    my $s = shift;
    my $c = $s->context();
    use Data::Dumper;
    warn Dumper $c;

}

1;
package Nyan::BaseController::B;

use base qw(Catalyst::Controller Catalyst::Component::ACCEPT_CONTEXT);

sub b {
    my $s = shift;
    my $c = $s->context();
    use Data::Dumper;
    warn Dumper $c;
    
}

1;
package Nyan::Controller::Root;

use strict;
use warnings;
use base qw/Nyan::BaseController::A Nyan::BaseController::B/;
    
__PACKAGE__->config->{namespace} = '';
    
sub default : Private {
    my ( $self, $c ) = @_;
    $self->a();
    $self->b();
    # Hello World
    $c->response->body( $c->welcome_message );
}


sub end : ActionClass('RenderView') {}

1;
$VAR1 = undef;
$VAR1 = undef;
[info] *** Request 1 (0.077/s) [254] [Thu Apr 12 00:38:42 2007] ***
[debug] "GET" request for "/" from "192.168.24.52"
[info] Request took 0.011428s (87.504/s)
.----------------------------------------------------------------+-----------.
| Action                                                         | Time      |
+----------------------------------------------------------------+-----------+
| /default                                                       | 0.001309s |
| /end                                                           | 0.000158s |
'----------------------------------------------------------------+-----------'