Leszek Gawron wrote:
Andre Juffer wrote:

Dear List,

I am trying to insert a domain object into the pipiline with control flow following a suggestion given earlier on this list:

http://www.mail-archive.com/[email protected]/msg23293.html

Suppose, I return some object from a domain class instance, like

var domainObject = com.foo.myClass.doSomething();

The domainObject has all the getters available, e.g. getName(), etc, so it acts like a regular bean.

Now, I would like insert this object in the pipeline with

cocoon.sendPage ("page", domainObject);

try:
cocoon.sendPage( "page", { "domainObject" : domainObject } );
If you pass it as you previously did your domain object is the main context. flow-attr:domainObject looks for an object "domainObject" in main context so in fact in your case it queries for /domainObject/domainObject which is incorrect

I see. I tried and indeed this gives a different result. At least, I can now see some values. The error message is now


org.apache.cocoon.ProcessingException: Exception during source resolving.: org.apache.excalibur.source.SourceException: The object type: class com.foo.DomainObject could not be serialized as a InputStream DomainObject - name: jfifiikss, id: -1977936240, author: FOO

This is caused by the class com.foo.DomainObject itself.



In the sitemap, I have

<map:match pattern="page">
  <map:generate src="module:flow-attr:domainObject" />
  <map:serialize type="xml" />
</map:match>



(This is just to see how it looks like.)

The result of all this is an error of the form:

org.apache.cocoon.ProcessingException: Exception during source resolving.: org.apache.excalibur.source.SourceException: The attribute: domainObject is empty

This looks obvious to me, since it is probably not clear that the domainObject in facts represents some class, defined in com.foo.myClass. So, I tried to define the DomainObject class in JavaScripy, like

function DomainObject()
{
}
DomainObject.prototype.name;

and populate the object manually before calling cocoon.sendPage. The result is however the same.

I am using cocoon 2.1.7.

Could anyone point out in some detail how exactly I should do this.

Thanks,





--
Andre H. Juffer              | Phone: +358-8-553 1161
The Biocenter and            | Fax: +358-8-553-1141
    the Dep. of Biochemistry | Email: [EMAIL PROTECTED]
University of Oulu, Finland  | WWW: www.biochem.oulu.fi/Biocomputing/

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



Reply via email to