Magento Ajax - comment afficher par programme personnalisé bloc de Contrôleur (mon contenu HTML est toujours vide)

J'essaie d'afficher un bloc dans le cadre d'une réponse à un appel ajax.
Tout fonctionne sauf que je ne peut pas obtenir le contrôleur pour faire écho au modèle de code HTML.

Mon module de classe:

class MyModule_Ajax_ProductController extends Mage_Catalog_ProductController {

    public function indexAction() {

        if ($product = $this->_initProduct()) {

            echo '<div>hello</div>'; //this works

            echo $this->getLayout()->createBlock('ajax/product')->setTemplate('mymodule_ajax/product.phtml')->toHtml();

            //I also tried:
            //$layout = $this->getLayout();
            //$update = $layout->getUpdate();
            //$update->load('ajax_product_index'); 
            //$layout->generateXml();
            //$layout->generateBlocks();
            //$output = $layout->getOutput();
            //echo $output;

        }
    }
}

À l'intérieur de mon fichier de modèle du produit.phtml - ce le HTML n'est jamais montré.
(enregistré dans app/design/frontend/default/default/template/mymodule_ajax/produit.phtml)

<div>HERE!</div>

Mon bloc de classe:

class MyModule_Ajax_Block_Product extends Mage_Catalog_Block_Product
{
    private $product;

    protected function _construct()
    {
        parent::_construct();
        $this->setTemplate('mymodule_ajax/product.phtml');
    }

    protected function _toHtml() {
        return parent::_toHtml();
    }

    public function setProduct($product) {
        $this->product = $product;
        return $this;
    }

    public function getProduct() {
        return $this->product;
    }

}

Mon layout/mymodule_ajax.xml

<?xml version="1.0"?>
<layout>

    <ajax_product_index>
        <reference name="root">
            <block type="ajax/project" name="root" output="toHtml" template="mymodule_ajax/product.phtml"/>
        </reference>
    </ajax_product_index>

</layout>

Je suis en supposant que parce que je suis en train d'ouvrir le modèle par programmation dans mon bloc de la classe, je ne devrais pas besoin de la référence de module?
Suppression de la référence ne fait aucune différence.

Je n'obtiens pas d'erreurs PHP, le HTML affiché rend

<html>
<head></head>
<body></body>
</html>

Je ne peux tout simplement pas comprendre ce que je fais de mal?
Je suis en utilisant Magento CE 1.8.1

OriginalL'auteur Natacha Beaugeais | 2014-04-27