Error processor inside p:choose

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

Error processor inside p:choose

fl.schmitt(ops-users)
Hi,

how do i implement the oxf:error processor inside a p:choose together
with another processors that has an output?

Background: I want to call an error processor in certain cases that i
test in the first three branches. Only if all three tests fail, i want
to proceed to call a xslt processor to continue the work of the XPL.

Now if i put some error processors and a xslt processor inside a
p:choose, i get an error because the processors don't declare a
consistent output: the xslt has a data output, the error processor no
output at all. According to the documentation at
http://www.orbeon.com/ops/doc/reference-xpl-pipelines#choose
"the set of output ids not connected inside the branch must be
consistent among all branches". I suppose that can't be achieved with
the described combination of processors?

Is there another way to implement error processors conditionally and
continue with the XPL if the conditions aren't fulfilled?


florian




--
You receive this message as a subscriber of the [hidden email] mailing list.
To unsubscribe: mailto:[hidden email]
For general help: mailto:[hidden email]?subject=help
ObjectWeb mailing lists service home page: http://www.objectweb.org/wws
Reply | Threaded
Open this post in threaded view
|

Re: Error processor inside p:choose

Daniel E. Renfer
Florian,

Could you use an identity processor to create the appropriately named
output? Have your XSLT processor output a different name, and connect
that to both the error processor and the identity one.

or am I mis-understanding your situation?

--
Daniel E. Renfer
http://kronkltd.net/

On 6/21/07, Florian Schmitt <[hidden email]> wrote:

> Hi,
>
> how do i implement the oxf:error processor inside a p:choose together
> with another processors that has an output?
>
> Background: I want to call an error processor in certain cases that i
> test in the first three branches. Only if all three tests fail, i want
> to proceed to call a xslt processor to continue the work of the XPL.
>
> Now if i put some error processors and a xslt processor inside a
> p:choose, i get an error because the processors don't declare a
> consistent output: the xslt has a data output, the error processor no
> output at all. According to the documentation at
> http://www.orbeon.com/ops/doc/reference-xpl-pipelines#choose
> "the set of output ids not connected inside the branch must be
> consistent among all branches". I suppose that can't be achieved with
> the described combination of processors?
>
> Is there another way to implement error processors conditionally and
> continue with the XPL if the conditions aren't fulfilled?
>
>
> florian


--
You receive this message as a subscriber of the [hidden email] mailing list.
To unsubscribe: mailto:[hidden email]
For general help: mailto:[hidden email]?subject=help
ObjectWeb mailing lists service home page: http://www.objectweb.org/wws
Reply | Threaded
Open this post in threaded view
|

Re: Error processor inside p:choose

fl.schmitt(ops-users)
Hi Daniel,

> Could you use an identity processor to create the appropriately named
> output?

Great idea, that works! I put an oxf:identity processor after the
oxf:error processor in each p:when branch with an empty input and a data
output with the same id as my xslt processor. This seems to be
sufficient to have a suitable output id even there's no connection
between the error and the identity processor. Thanks a lot!

florian





--
You receive this message as a subscriber of the [hidden email] mailing list.
To unsubscribe: mailto:[hidden email]
For general help: mailto:[hidden email]?subject=help
ObjectWeb mailing lists service home page: http://www.objectweb.org/wws