You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@lenya.apache.org by Emyr Tomos <em...@gmail.com> on 2012/10/10 12:42:16 UTC

Get error "Streaming of an internal pipeline is not possible with a reader". - only occurs at second level of the publication content tree

I have created a pipeline like so:

    <map:match pattern="fetchPortfolioList-*">
     <map:select type="parameter">
        <map:parameter name="parameter-selector-test" value="{1}"/>
        <map:when test="portfolio">
            <map:generate src="test.xml"/>
      <map:transform type="xslt" src="test2html.xsl"/>
        </map:when>
        <map:otherwise>
            <map:generate src="emptytest.xml"/>
        </map:otherwise>
      </map:select>
     <map:serialize type="xml"/>
</map:match>

and am calling it within the aggregator which creates the cmsbody
element like so:

       <map:match pattern="lenyabody-raw-*/*/*/*/*/*/**">
        <map:aggregate element="cmsbody">
          <map:part
src="cocoon://modules/sitetree/menu/{2}/{3}/{5}/{6}/{7}.xml"/>
          <map:part
src="cocoon://modules/sitetree/search/{2}/{3}/{5}/{6}/{7}.xml"/>
          <map:part
src="cocoon://modules/languageselector/text-none/flagsize-13"/>
          <map:part src="cocoon:/document-content/{1}/{2}/{3}/{7}"/>

      <map:part src="cocoon:/fetchPortfolioList-{7}"/>

        </map:aggregate>
       <map:serialize type="xml"/>
      </map:match>
(7 will be the path from the lenyabody-raw-*/*/*/*/*/*/** pattern).

I am looking to generate something different for the "portfolio"
section, specifically get a dynamic collection and put it through a
different transform though here I'm just loading test files.
This works fine when I am at the top level of the publication tree,
i.e /[publication]/[area]/[whatever].html
However when I go deeper down the tree e.g
/[publication]/[area]/[[section]/whatever].html I get:

Streaming of an internal pipeline is not possible with a reader.

and the line identified is where I call the serializer directly after
the aggregator.
I'm using a generator and serializer in my new pipeline, so I'm kinda
guessing there's something in the path processing that hands back a
reader, but I don't know what. Any ideas?

Regards,
Emyr

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@lenya.apache.org
For additional commands, e-mail: user-help@lenya.apache.org


Re: Get error "Streaming of an internal pipeline is not possible with a reader". - only occurs at second level of the publication content tree

Posted by Emyr Tomos <em...@gmail.com>.
It's my pattern. Very simple really - I'm going to have to look for
one that can generalise on depth. Sorry to generate noise.

On Wed, Oct 10, 2012 at 11:42 AM, Emyr Tomos
<em...@gmail.com> wrote:
> I have created a pipeline like so:
>
>     <map:match pattern="fetchPortfolioList-*">
>      <map:select type="parameter">
>         <map:parameter name="parameter-selector-test" value="{1}"/>
>         <map:when test="portfolio">
>             <map:generate src="test.xml"/>
>       <map:transform type="xslt" src="test2html.xsl"/>
>         </map:when>
>         <map:otherwise>
>             <map:generate src="emptytest.xml"/>
>         </map:otherwise>
>       </map:select>
>      <map:serialize type="xml"/>
> </map:match>
>
> and am calling it within the aggregator which creates the cmsbody
> element like so:
>
>        <map:match pattern="lenyabody-raw-*/*/*/*/*/*/**">
>         <map:aggregate element="cmsbody">
>           <map:part
> src="cocoon://modules/sitetree/menu/{2}/{3}/{5}/{6}/{7}.xml"/>
>           <map:part
> src="cocoon://modules/sitetree/search/{2}/{3}/{5}/{6}/{7}.xml"/>
>           <map:part
> src="cocoon://modules/languageselector/text-none/flagsize-13"/>
>           <map:part src="cocoon:/document-content/{1}/{2}/{3}/{7}"/>
>
>       <map:part src="cocoon:/fetchPortfolioList-{7}"/>
>
>         </map:aggregate>
>        <map:serialize type="xml"/>
>       </map:match>
> (7 will be the path from the lenyabody-raw-*/*/*/*/*/*/** pattern).
>
> I am looking to generate something different for the "portfolio"
> section, specifically get a dynamic collection and put it through a
> different transform though here I'm just loading test files.
> This works fine when I am at the top level of the publication tree,
> i.e /[publication]/[area]/[whatever].html
> However when I go deeper down the tree e.g
> /[publication]/[area]/[[section]/whatever].html I get:
>
> Streaming of an internal pipeline is not possible with a reader.
>
> and the line identified is where I call the serializer directly after
> the aggregator.
> I'm using a generator and serializer in my new pipeline, so I'm kinda
> guessing there's something in the path processing that hands back a
> reader, but I don't know what. Any ideas?
>
> Regards,
> Emyr

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lenya.apache.org
For additional commands, e-mail: dev-help@lenya.apache.org


Re: Get error "Streaming of an internal pipeline is not possible with a reader". - only occurs at second level of the publication content tree

Posted by Emyr Tomos <em...@gmail.com>.
It's my pattern. Very simple really - I'm going to have to look for
one that can generalise on depth. Sorry to generate noise.

On Wed, Oct 10, 2012 at 11:42 AM, Emyr Tomos
<em...@gmail.com> wrote:
> I have created a pipeline like so:
>
>     <map:match pattern="fetchPortfolioList-*">
>      <map:select type="parameter">
>         <map:parameter name="parameter-selector-test" value="{1}"/>
>         <map:when test="portfolio">
>             <map:generate src="test.xml"/>
>       <map:transform type="xslt" src="test2html.xsl"/>
>         </map:when>
>         <map:otherwise>
>             <map:generate src="emptytest.xml"/>
>         </map:otherwise>
>       </map:select>
>      <map:serialize type="xml"/>
> </map:match>
>
> and am calling it within the aggregator which creates the cmsbody
> element like so:
>
>        <map:match pattern="lenyabody-raw-*/*/*/*/*/*/**">
>         <map:aggregate element="cmsbody">
>           <map:part
> src="cocoon://modules/sitetree/menu/{2}/{3}/{5}/{6}/{7}.xml"/>
>           <map:part
> src="cocoon://modules/sitetree/search/{2}/{3}/{5}/{6}/{7}.xml"/>
>           <map:part
> src="cocoon://modules/languageselector/text-none/flagsize-13"/>
>           <map:part src="cocoon:/document-content/{1}/{2}/{3}/{7}"/>
>
>       <map:part src="cocoon:/fetchPortfolioList-{7}"/>
>
>         </map:aggregate>
>        <map:serialize type="xml"/>
>       </map:match>
> (7 will be the path from the lenyabody-raw-*/*/*/*/*/*/** pattern).
>
> I am looking to generate something different for the "portfolio"
> section, specifically get a dynamic collection and put it through a
> different transform though here I'm just loading test files.
> This works fine when I am at the top level of the publication tree,
> i.e /[publication]/[area]/[whatever].html
> However when I go deeper down the tree e.g
> /[publication]/[area]/[[section]/whatever].html I get:
>
> Streaming of an internal pipeline is not possible with a reader.
>
> and the line identified is where I call the serializer directly after
> the aggregator.
> I'm using a generator and serializer in my new pipeline, so I'm kinda
> guessing there's something in the path processing that hands back a
> reader, but I don't know what. Any ideas?
>
> Regards,
> Emyr

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@lenya.apache.org
For additional commands, e-mail: user-help@lenya.apache.org