Here is my flowscript. In this form it fails on dao.retrieve(linksBean,
factory); because dao is undefined.

cocoon.load("resource://org/apache/cocoon/woody/flow/javascript/woody2.js");
function linksForm_JDO(form) {
    // Get OJB factory
    var factory =
cocoon.getComponent(Packages.org.apache.cocoon.ojb.jdo.components.JdoPMF.ROL
E);
    // Create a empty Bean
    var linksBean = new Packages.be.bvar.admin.links.LinksBean();
    var dao = new Packages.be.bvar.admin.links.LinksDAO();
    cocoon.log.error("dao =" + dao);
    dao.retrieve(linksBean, factory);
    // Load the Bean to the form
    form.load(linksBean);
    // Let woody handle the form
    form.showForm("links-form-display");
    // Update the Bean based on user input
    form.save(linksBean);
    // Update Bean in Database
    //dao.update(linksBean, factory);
    // Clean up the operation
    cocoon.releaseComponent(factory);
    // Send response to the user
    cocoon.request.setAttribute("linksForm", form.getWidget());
    cocoon.sendPage("links-success-pipeline");
}


And here is the DAO class (I took the update method out to minimise teh
possible problems) :

package be.bvar.admin.links;
import java.util.Collection;
import javax.jdo.PersistenceManager;
import javax.jdo.Query;
import org.apache.cocoon.ojb.jdo.components.JdoPMF;
/**
* @author BeKe
*
*/
public class linksDAO {
    public void retrieve(LinksBean bean, JdoPMF pmf) {
        /* 1. Get the PersistenceManager */
        PersistenceManager persistenceManager = pmf.getPersistenceManager();
        // 2. start transaction
        persistenceManager.currentTransaction().begin();
        Query query =
persistenceManager.newQuery(be.bvar.admin.links.Link.class);
        Collection thisCollection = (Collection) query.execute();
        bean.setLinks(thisCollection);
        // 3. End transaction
        persistenceManager.currentTransaction().commit();
    }
}

And here is the class descriptor from the repository.xml file :
<class-descriptor class="be.bvar.admin.links.Links" table="links">
    <field-descriptor name="ID" column="ID" jdbc-type="INTEGER"
primarykey="true"/>
    <field-descriptor name="url" column="url" jdbc-type="VARCHAR"/>
    <field-descriptor name="titel" column="title" jdbc-type="VARCHAR"/>
    <field-descriptor name="description" column="description"
jdbc-type="VARCHAR"/>
 </class-descriptor>

Thansk again for your help!!

Bert



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to