My apology... I accidentally hit send. Here is my full message.
I have been tasked with upgrading our Mason install from 1.02 to the latest
version (1.4.2) and all went smoothly until I tried to access certain
components that appear to be missing their inheritance chain. Keep in mind
this all worked in the old 1.02 version.
I have a component (/_styles/_top_level) that contains...
<% $m->call_next() %>
<& /_methods/_submit_notice &>
<%attr>
submit_notice_message => "Your request is being processed..."
</%attr>
In the child component (/_method/_submit_notice) I have...
<div id="submit_notice">
<% $m->base_comp->attr('submit_notice_message') %>
</div>
The child component simply accesses the attribute defined in the calling
component however when I run this I get this Mason error:
"no attribute 'submit_notice_message' for component /_methods/_submit_notice
[html]"
If I Dumper the $m->base_comp component I can see that the
/_method/_submit_notice component is the object that is having ->attr()
called on it and I can additionally see that in the code_cache the
/top_level component is referenced and it contains an attr hash with the
correct string in it.
The really strange part however if that if I loop through the $m->callers()
array and print out the component stack and their attr hashes I get:
PATH: /_methods/_submit_notice
ATTRS: $VAR1 = {};
PATH: /_styles/_top_level:top_matter
ATTRS: $VAR1 = {};
PATH: /autohandler
ATTRS: $VAR1 = {
'hide_environment_bar' => '0',
'escape_from_iframe' => 1
};
The attr hash is empty for /_styles/_top_level this case. I am not sure this
is relevant but I am mentioning it in case someone else has also encountered
this issue.
Thanks for any help!
------------------------------------------------------------------------------
_______________________________________________
Mason-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mason-users