The problem: @@mypage/macros does not work as legacy portal_skins page templates used to.
Solution: define a simple class like this:
from Products.Five import BrowserViewThe ZCML for "mypage":
<browser:pageThere could be a better, less verbose solution (like providing a meta definition for zcml, in order to avoid declaring "class" and "allowed_attributes"). We could also patch Five BrowserView.
In my case I have been able to use mypage as a template for my archetypes widget:
MyWidget(macro="@@mypage",)Compared to legacy PT you will loose some builtins (like python: test()), but that kind of logic should be (easily) moved into a dedicated view class. This is noticeable in the case you are customizing an old template (like archetypes/widgets/file.pt ;-))
Dunno if it is the "right way of doing things", at least it worked-for-me(tm).