I'm trying to add functionality to the bizdoc example to clone a copy
of a document in the document list (summary view), but I'm getting hung up on some basic XPL issues. In particular, the error I get is the following: org.orbeon.oxf.common.ValidationException: oxf:/examples/mods-doc/ summary/clone-documents-action.xpl, line 47, column 53: Reference to undeclared output id "doc-info" oxf:/examples/mods-doc/summary/clone-documents-action.xpl, line 47, column 53: Reference to undeclared output id "doc-info" Below is my source for clone-documents-action.xpl (with asterixes on line 47 for emphasis): <p:config xmlns:p="http://www.orbeon.com/oxf/pipeline" xmlns:oxf="http://www.orbeon.com/oxf/processors" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <p:param name="instance" type="input"/> <!-- Create list of document ids --> <p:processor name="oxf:xslt"> <p:input name="data" href="#instance"/> <p:input name="config"> <document-ids xsl:version="2.0"> <xsl:for-each select="tokenize(/form/document-id, '\s+')"> <document-id> <xsl:value-of select="."/> </document-id> </xsl:for-each> </document-ids> </p:input> <p:output name="data" id="document-ids"/> </p:processor> <!-- call read-document to pull back the data from exist for each document id --> <p:for-each href="#document-ids" select="/*/document-id"> <!-- read document from data store based on id --> <p:processor name="oxf:pipeline"> <p:input name="config" href="../data-access/delegate/read- document.xpl"/> <p:input name="document-id" href="current()"/> <p:output name="data" id="doc-info"/> </p:processor> </p:for-each> <!-- create a clone of the document in the database --> <p:processor name="oxf:pipeline"> <p:input name="config" href="../data-access/delegate/create- document.xpl"/> ***** <p:input name="document-info" href="#doc-info"/> ****** </p:processor> </p:config> Below is how it is called from page-flow.xml: <page path-info="/mods-doc/clone" view="summary/list-documents- response.xpl"> <action action="summary/clone-documents-action.xpl"/> </page> It is a modification of the delete action, where the submission should replace the instance and use AJAX for the update, but I believe I'm getting hung up on something very basic here. From what I can see, I've declared the "doc-info" output in the second pipeline, but the third can't see it. Can someone familiar with the bizdoc example point out my error to me? Thank you. Duane -- 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 |
Hi Duane
Looks like your p:for-each is the problem. In your p:for-each you need to add (1) declaration of what the output id is for the for-each and (2) what the root node of this output will be. Then your processors within the for-each will reference the same output id (ie doc-info), and your output will consist of a root node, and under this will be nodes produced by each execution of the for-each. Check out http://www.orbeon.com/ops/doc/reference-xpl-pipelines#for-each for more info. I don't fully understand the logic of what you are trying to do, but from skimming through it, it looks like your section beginning <!-- create a clone of the document in the database --> Should be within the p:for-each? Don't you want to do this for each document in turn? Steve -----Original Message----- From: Duane Gran [mailto:[hidden email]] Sent: 30 January 2006 02:13 To: [hidden email] Subject: [ops-users] referring to pipeline outputs I'm trying to add functionality to the bizdoc example to clone a copy of a document in the document list (summary view), but I'm getting hung up on some basic XPL issues. In particular, the error I get is the following: org.orbeon.oxf.common.ValidationException: oxf:/examples/mods-doc/ summary/clone-documents-action.xpl, line 47, column 53: Reference to undeclared output id "doc-info" oxf:/examples/mods-doc/summary/clone-documents-action.xpl, line 47, column 53: Reference to undeclared output id "doc-info" Below is my source for clone-documents-action.xpl (with asterixes on line 47 for emphasis): <p:config xmlns:p="http://www.orbeon.com/oxf/pipeline" xmlns:oxf="http://www.orbeon.com/oxf/processors" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <p:param name="instance" type="input"/> <!-- Create list of document ids --> <p:processor name="oxf:xslt"> <p:input name="data" href="#instance"/> <p:input name="config"> <document-ids xsl:version="2.0"> <xsl:for-each select="tokenize(/form/document-id, '\s+')"> <document-id> <xsl:value-of select="."/> </document-id> </xsl:for-each> </document-ids> </p:input> <p:output name="data" id="document-ids"/> </p:processor> <!-- call read-document to pull back the data from exist for each document id --> <p:for-each href="#document-ids" select="/*/document-id"> <!-- read document from data store based on id --> <p:processor name="oxf:pipeline"> <p:input name="config" href="../data-access/delegate/read- document.xpl"/> <p:input name="document-id" href="current()"/> <p:output name="data" id="doc-info"/> </p:processor> </p:for-each> <!-- create a clone of the document in the database --> <p:processor name="oxf:pipeline"> <p:input name="config" href="../data-access/delegate/create- document.xpl"/> ***** <p:input name="document-info" href="#doc-info"/> ****** </p:processor> </p:config> Below is how it is called from page-flow.xml: <page path-info="/mods-doc/clone" view="summary/list-documents- response.xpl"> <action action="summary/clone-documents-action.xpl"/> </page> It is a modification of the delete action, where the submission should replace the instance and use AJAX for the update, but I believe I'm getting hung up on something very basic here. From what I can see, I've declared the "doc-info" output in the second pipeline, but the third can't see it. Can someone familiar with the bizdoc example point out my error to me? Thank you. Duane -- 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 |
Steve,
Thanks for the pointer. I looked over the documentation and modified the p:for-each loop with the root and output id, but I still get the same message. You are right about the desired functionality to clone each document, so I added the other pipeline within the p:for-each statement. Unfortunately, I still get the same error message. Below is what I have right now: <!-- call read-document to pull back the data from exist for each document id --> <p:for-each href="#document-ids" select="/*/document-id" root="newdoc" id="doc-info"> <!-- read document from data store based on id --> <p:processor name="oxf:pipeline"> <p:input name="config" href="../data-access/delegate/read- document.xpl"/> <p:input name="document-id" href="current()"/> <p:output name="data" ref="doc-info"/> </p:processor> <!-- create a clone of the document in the database --> <p:processor name="oxf:pipeline"> <p:input name="config" href="../data-access/delegate/create- document.xpl"/> <p:input name="document-info" href="#doc-info"/> </p:processor> </p:for-each> To clarify, the error message at this time is: org.orbeon.oxf.common.ValidationException: oxf:/examples/mods-doc/ summary/clone-documents-action.xpl, line 36, column 88: Reference to undeclared output id "doc-info" oxf:/examples/mods-doc/summary/clone-documents-action.xpl, line 36, column 88: Reference to undeclared output id "doc-info" Can you see the nature of the problem? The desired effect is the following: 1) loop over all the document ids in the input (instance doc) 2) for each id, call read-document.xpl, which returns a document from the data store (exist, in my case) 3) pass this document to the next pipeline, which in turn passes the document to create-document.xpl to store it into exist Duane On Jan 30, 2006, at 3:40 AM, Stephen Bayliss wrote: > Hi Duane > > Looks like your p:for-each is the problem. > > In your p:for-each you need to add (1) declaration of what the > output id > is for the for-each and (2) what the root node of this output will be. > > Then your processors within the for-each will reference the same > output > id (ie doc-info), and your output will consist of a root node, and > under > this will be nodes produced by each execution of the for-each. > > Check out http://www.orbeon.com/ops/doc/reference-xpl-pipelines#for- > each > for more info. > > I don't fully understand the logic of what you are trying to do, but > from skimming through it, it looks like your section beginning > <!-- create a clone of the document in the database --> > Should be within the p:for-each? Don't you want to do this for each > document in turn? > > Steve > > > -----Original Message----- > From: Duane Gran [mailto:[hidden email]] > Sent: 30 January 2006 02:13 > To: [hidden email] > Subject: [ops-users] referring to pipeline outputs > > I'm trying to add functionality to the bizdoc example to clone a copy > of a document in the document list (summary view), but I'm getting > hung up on some basic XPL issues. In particular, the error I get is > the following: > > org.orbeon.oxf.common.ValidationException: oxf:/examples/mods-doc/ > summary/clone-documents-action.xpl, line 47, column 53: Reference to > undeclared output id "doc-info" > oxf:/examples/mods-doc/summary/clone-documents-action.xpl, line 47, > column 53: Reference to undeclared output id "doc-info" > > Below is my source for clone-documents-action.xpl (with asterixes on > line 47 for emphasis): > > <p:config xmlns:p="http://www.orbeon.com/oxf/pipeline" > xmlns:oxf="http://www.orbeon.com/oxf/processors" > xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> > <p:param name="instance" type="input"/> > > <!-- Create list of document ids --> > <p:processor name="oxf:xslt"> > <p:input name="data" href="#instance"/> > <p:input name="config"> > <document-ids xsl:version="2.0"> > <xsl:for-each select="tokenize(/form/document-id, '\s+')"> > <document-id> > <xsl:value-of select="."/> > </document-id> > </xsl:for-each> > </document-ids> > </p:input> > <p:output name="data" id="document-ids"/> > </p:processor> > > <!-- call read-document to pull back the data from exist for each > document id --> > <p:for-each href="#document-ids" select="/*/document-id"> > <!-- read document from data store based on id --> > <p:processor name="oxf:pipeline"> > <p:input name="config" href="../data-access/delegate/read- > document.xpl"/> > <p:input name="document-id" href="current()"/> > <p:output name="data" id="doc-info"/> > </p:processor> > </p:for-each> > > <!-- create a clone of the document in the database --> > <p:processor name="oxf:pipeline"> > <p:input name="config" href="../data-access/delegate/create- > document.xpl"/> > ***** <p:input name="document-info" href="#doc-info"/> ****** > </p:processor> > </p:config> > > Below is how it is called from page-flow.xml: > > <page path-info="/mods-doc/clone" view="summary/list-documents- > response.xpl"> > <action action="summary/clone-documents-action.xpl"/> > </page> > > It is a modification of the delete action, where the submission > should replace the instance and use AJAX for the update, but I > believe I'm getting hung up on something very basic here. From what > I can see, I've declared the "doc-info" output in the second > pipeline, but the third can't see it. Can someone familiar with the > bizdoc example point out my error to me? Thank you. > > Duane > > > > > -- > You receive this message as a subscriber of the ops- > [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 -- 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 |
In reply to this post by Duane Gran-2
Hi Duane
The <p:for-each > constructs now declares id="doc-info", which is good. Your first processor, oxf:pipeline calling read-document.xpl is declaring a ref output, not an id output, which means that your second processor, oxf:pipeline calling create-document cannot use this as an input through href. Change it to id="doc-info" for the output of the first one, then the second one will see it. However, this still means that you will have nothing connecting to the output of the <p:for-each> (ie the id="doc-info"). You *could* try just removing the id="doc-info" on the <p:for-each > as you don't seem to want any output, not sure without trying it if this is valid though. Better would be a) change <p:for=each ... id="doc-info" > to <p:for-each ... id="doc-info-all" > (ie this is the aggregated output from all docs processed by the for-each) b) include the following in your call, this is to take the doc-info output from the first processor and send it to the "doc-info-all" output of the for-each <p:processor name="oxf:identity"> <p:input name="data" href="#doc-info"/> <p:output name="data" ref="doc-info-all"/> </p:processor> If you want you could do something intelligent here, ie run some xslt to just output the IDs or something like that of the docs you process, so that doc-info-all becomes a summary report of all that you processed. And of course you will have to consume the output of the main pipeline itself. You can get around that by null-serializing the doc-info-all output, or you can declare an output param and connect it to that. I see that you are currently calling it as a "view" from page-flow.xml, so the best bet would be to (a) declare the output parameter named "data" type "output" at the start of your document (b) include the following right at the end, to pipe doc-info-all to the data output <p:processor name="oxf:identity"> <p:input name="data" href="#doc-info-all"/> <p:output name="data" ref="data"/> </p:processor> Then your output xml document will be shown in the browser. Regards Steve -----Original Message----- From: Duane Gran [mailto:[hidden email]] Sent: 30 January 2006 14:50 To: [hidden email] Subject: Re: [ops-users] referring to pipeline outputs Steve, Thanks for the pointer. I looked over the documentation and modified the p:for-each loop with the root and output id, but I still get the same message. You are right about the desired functionality to clone each document, so I added the other pipeline within the p:for-each statement. Unfortunately, I still get the same error message. Below is what I have right now: <!-- call read-document to pull back the data from exist for each document id --> <p:for-each href="#document-ids" select="/*/document-id" root="newdoc" id="doc-info"> <!-- read document from data store based on id --> <p:processor name="oxf:pipeline"> <p:input name="config" href="../data-access/delegate/read- document.xpl"/> <p:input name="document-id" href="current()"/> <p:output name="data" ref="doc-info"/> </p:processor> <!-- create a clone of the document in the database --> <p:processor name="oxf:pipeline"> <p:input name="config" href="../data-access/delegate/create- document.xpl"/> <p:input name="document-info" href="#doc-info"/> </p:processor> </p:for-each> To clarify, the error message at this time is: org.orbeon.oxf.common.ValidationException: oxf:/examples/mods-doc/ summary/clone-documents-action.xpl, line 36, column 88: Reference to undeclared output id "doc-info" oxf:/examples/mods-doc/summary/clone-documents-action.xpl, line 36, column 88: Reference to undeclared output id "doc-info" Can you see the nature of the problem? The desired effect is the following: 1) loop over all the document ids in the input (instance doc) 2) for each id, call read-document.xpl, which returns a document from the data store (exist, in my case) 3) pass this document to the next pipeline, which in turn passes the document to create-document.xpl to store it into exist Duane On Jan 30, 2006, at 3:40 AM, Stephen Bayliss wrote: > Hi Duane > > Looks like your p:for-each is the problem. > > In your p:for-each you need to add (1) declaration of what the > output id > is for the for-each and (2) what the root node of this output will be. > > Then your processors within the for-each will reference the same > output > id (ie doc-info), and your output will consist of a root node, and > under > this will be nodes produced by each execution of the for-each. > > Check out http://www.orbeon.com/ops/doc/reference-xpl-pipelines#for- > each > for more info. > > I don't fully understand the logic of what you are trying to do, but > from skimming through it, it looks like your section beginning > <!-- create a clone of the document in the database --> > Should be within the p:for-each? Don't you want to do this for each > document in turn? > > Steve > > > -----Original Message----- > From: Duane Gran [mailto:[hidden email]] > Sent: 30 January 2006 02:13 > To: [hidden email] > Subject: [ops-users] referring to pipeline outputs > > I'm trying to add functionality to the bizdoc example to clone a copy > of a document in the document list (summary view), but I'm getting > hung up on some basic XPL issues. In particular, the error I get is > the following: > > org.orbeon.oxf.common.ValidationException: oxf:/examples/mods-doc/ > summary/clone-documents-action.xpl, line 47, column 53: Reference to > undeclared output id "doc-info" > oxf:/examples/mods-doc/summary/clone-documents-action.xpl, line 47, > column 53: Reference to undeclared output id "doc-info" > > Below is my source for clone-documents-action.xpl (with asterixes on > line 47 for emphasis): > > <p:config xmlns:p="http://www.orbeon.com/oxf/pipeline" > xmlns:oxf="http://www.orbeon.com/oxf/processors" > xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> > <p:param name="instance" type="input"/> > > <!-- Create list of document ids --> > <p:processor name="oxf:xslt"> > <p:input name="data" href="#instance"/> > <p:input name="config"> > <document-ids xsl:version="2.0"> > <xsl:for-each select="tokenize(/form/document-id, '\s+')"> > <document-id> > <xsl:value-of select="."/> > </document-id> > </xsl:for-each> > </document-ids> > </p:input> > <p:output name="data" id="document-ids"/> > </p:processor> > > <!-- call read-document to pull back the data from exist for each > document id --> > <p:for-each href="#document-ids" select="/*/document-id"> > <!-- read document from data store based on id --> > <p:processor name="oxf:pipeline"> > <p:input name="config" href="../data-access/delegate/read- > document.xpl"/> > <p:input name="document-id" href="current()"/> > <p:output name="data" id="doc-info"/> > </p:processor> > </p:for-each> > > <!-- create a clone of the document in the database --> > <p:processor name="oxf:pipeline"> > <p:input name="config" href="../data-access/delegate/create- > document.xpl"/> > ***** <p:input name="document-info" href="#doc-info"/> ****** > </p:processor> > </p:config> > > Below is how it is called from page-flow.xml: > > <page path-info="/mods-doc/clone" view="summary/list-documents- > response.xpl"> > <action action="summary/clone-documents-action.xpl"/> > </page> > > It is a modification of the delete action, where the submission > should replace the instance and use AJAX for the update, but I > believe I'm getting hung up on something very basic here. From what > I can see, I've declared the "doc-info" output in the second > pipeline, but the third can't see it. Can someone familiar with the > bizdoc example point out my error to me? Thank you. > > Duane > > > > > -- > You receive this message as a subscriber of the ops- > [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 -- 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 |
Stephen,
Thank you very much. Your suggestion near the top of the message below did the trick, but I'm perplexed because nothing is happening and I can't seem to get any debug output from clone-documents- action.xpl. Recall that I'm patterning this off of the the bizdoc delete-documents-action.xpl, which produces debug output just fine. My debug line is simply the following in my clone XPL: <p:param name="instance" type="input" debug="clone-documents- action"/> It is almost as if it is never called. Recall that my page flow is constructed as follows: <page path-info="/mods-doc/clone" view="summary/list-documents- response.xpl"> <action action="summary/clone-documents-action.xpl"/> </page> This is identical in every way the /mods-doc/delete path, and it is called in the same manner from the summary page. I looked at the page flow documentation for the action element, but it seems to be used in a different way than what I have above. My desired effect is to call the clone-documents-action pipeline and then update the display via list-documents-response, however by all accounts the action doesn't appear to be run. Any thoughts on why this might be? Duane On Jan 30, 2006, at 10:19 AM, Stephen Bayliss wrote: > Hi Duane > > The <p:for-each > constructs now declares id="doc-info", which is > good. > > Your first processor, oxf:pipeline calling read-document.xpl is > declaring a ref output, not an id output, which means that your second > processor, oxf:pipeline calling create-document cannot use this as an > input through href. > > Change it to id="doc-info" for the output of the first one, then the > second one will see it. > > However, this still means that you will have nothing connecting to the > output of the <p:for-each> (ie the id="doc-info"). > > You *could* try just removing the id="doc-info" on the <p:for-each > > as > you don't seem to want any output, not sure without trying it if > this is > valid though. > > Better would be > a) change <p:for=each ... id="doc-info" > to <p:for-each ... > id="doc-info-all" > (ie this is the aggregated output from all docs > processed by the for-each) > b) include the following in your call, this is to take the doc-info > output from the first processor and send it to the "doc-info-all" > output > of the for-each > <p:processor name="oxf:identity"> > <p:input name="data" href="#doc-info"/> > <p:output name="data" ref="doc-info-all"/> > </p:processor> > > If you want you could do something intelligent here, ie run some > xslt to > just output the IDs or something like that of the docs you process, so > that doc-info-all becomes a summary report of all that you processed. > > And of course you will have to consume the output of the main pipeline > itself. > > You can get around that by null-serializing the doc-info-all > output, or > you can declare an output param and connect it to that. > > I see that you are currently calling it as a "view" from page- > flow.xml, > so the best bet would be to > (a) declare the output parameter named "data" type "output" at the > start > of your document > (b) include the following right at the end, to pipe doc-info-all to > the > data output > > <p:processor name="oxf:identity"> > <p:input name="data" href="#doc-info-all"/> > <p:output name="data" ref="data"/> > </p:processor> > > Then your output xml document will be shown in the browser. > > Regards > Steve > > -----Original Message----- > From: Duane Gran [mailto:[hidden email]] > Sent: 30 January 2006 14:50 > To: [hidden email] > Subject: Re: [ops-users] referring to pipeline outputs > > Steve, > > Thanks for the pointer. I looked over the documentation and modified > the p:for-each loop with the root and output id, but I still get the > same message. You are right about the desired functionality to clone > each document, so I added the other pipeline within the p:for-each > statement. Unfortunately, I still get the same error message. Below > is what I have right now: > > <!-- call read-document to pull back the data from exist for each > document id --> > <p:for-each href="#document-ids" select="/*/document-id" > root="newdoc" id="doc-info"> > <!-- read document from data store based on id --> > <p:processor name="oxf:pipeline"> > <p:input name="config" href="../data-access/delegate/read- > document.xpl"/> > <p:input name="document-id" href="current()"/> > <p:output name="data" ref="doc-info"/> > </p:processor> > > <!-- create a clone of the document in the database --> > <p:processor name="oxf:pipeline"> > <p:input name="config" href="../data-access/delegate/create- > document.xpl"/> > <p:input name="document-info" href="#doc-info"/> > </p:processor> > </p:for-each> > > To clarify, the error message at this time is: > > org.orbeon.oxf.common.ValidationException: oxf:/examples/mods-doc/ > summary/clone-documents-action.xpl, line 36, column 88: Reference to > undeclared output id "doc-info" > oxf:/examples/mods-doc/summary/clone-documents-action.xpl, line 36, > column 88: Reference to undeclared output id "doc-info" > > Can you see the nature of the problem? The desired effect is the > following: > > 1) loop over all the document ids in the input (instance doc) > 2) for each id, call read-document.xpl, which returns a document from > the data store (exist, in my case) > 3) pass this document to the next pipeline, which in turn passes the > document to create-document.xpl to store it into exist > > Duane > > On Jan 30, 2006, at 3:40 AM, Stephen Bayliss wrote: > >> Hi Duane >> >> Looks like your p:for-each is the problem. >> >> In your p:for-each you need to add (1) declaration of what the >> output id >> is for the for-each and (2) what the root node of this output will >> be. >> >> Then your processors within the for-each will reference the same >> output >> id (ie doc-info), and your output will consist of a root node, and >> under >> this will be nodes produced by each execution of the for-each. >> >> Check out http://www.orbeon.com/ops/doc/reference-xpl-pipelines#for- >> each >> for more info. >> >> I don't fully understand the logic of what you are trying to do, but >> from skimming through it, it looks like your section beginning >> <!-- create a clone of the document in the database --> >> Should be within the p:for-each? Don't you want to do this for each >> document in turn? >> >> Steve >> >> >> -----Original Message----- >> From: Duane Gran [mailto:[hidden email]] >> Sent: 30 January 2006 02:13 >> To: [hidden email] >> Subject: [ops-users] referring to pipeline outputs >> >> I'm trying to add functionality to the bizdoc example to clone a copy >> of a document in the document list (summary view), but I'm getting >> hung up on some basic XPL issues. In particular, the error I get is >> the following: >> >> org.orbeon.oxf.common.ValidationException: oxf:/examples/mods-doc/ >> summary/clone-documents-action.xpl, line 47, column 53: Reference to >> undeclared output id "doc-info" >> oxf:/examples/mods-doc/summary/clone-documents-action.xpl, line 47, >> column 53: Reference to undeclared output id "doc-info" >> >> Below is my source for clone-documents-action.xpl (with asterixes on >> line 47 for emphasis): >> >> <p:config xmlns:p="http://www.orbeon.com/oxf/pipeline" >> xmlns:oxf="http://www.orbeon.com/oxf/processors" >> xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> >> <p:param name="instance" type="input"/> >> >> <!-- Create list of document ids --> >> <p:processor name="oxf:xslt"> >> <p:input name="data" href="#instance"/> >> <p:input name="config"> >> <document-ids xsl:version="2.0"> >> <xsl:for-each select="tokenize(/form/document-id, '\s+')"> >> <document-id> >> <xsl:value-of select="."/> >> </document-id> >> </xsl:for-each> >> </document-ids> >> </p:input> >> <p:output name="data" id="document-ids"/> >> </p:processor> >> >> <!-- call read-document to pull back the data from exist for each >> document id --> >> <p:for-each href="#document-ids" select="/*/document-id"> >> <!-- read document from data store based on id --> >> <p:processor name="oxf:pipeline"> >> <p:input name="config" href="../data-access/delegate/read- >> document.xpl"/> >> <p:input name="document-id" href="current()"/> >> <p:output name="data" id="doc-info"/> >> </p:processor> >> </p:for-each> >> >> <!-- create a clone of the document in the database --> >> <p:processor name="oxf:pipeline"> >> <p:input name="config" href="../data-access/delegate/create- >> document.xpl"/> >> ***** <p:input name="document-info" href="#doc-info"/> ****** >> </p:processor> >> </p:config> >> >> Below is how it is called from page-flow.xml: >> >> <page path-info="/mods-doc/clone" view="summary/list-documents- >> response.xpl"> >> <action action="summary/clone-documents-action.xpl"/> >> </page> >> >> It is a modification of the delete action, where the submission >> should replace the instance and use AJAX for the update, but I >> believe I'm getting hung up on something very basic here. From what >> I can see, I've declared the "doc-info" output in the second >> pipeline, but the third can't see it. Can someone familiar with the >> bizdoc example point out my error to me? Thank you. >> >> Duane >> >> >> >> >> -- >> You receive this message as a subscriber of the ops- >> [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 > > > > > > -- > You receive this message as a subscriber of the ops- > [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 -- 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 |
Duane,
The input may not be called if it isn't required in the pipeline, try putting a debug on the output of a processor that uses the instance input. Or on the output of the pipeline to make sure its being called! Looking at your action, you need to specifiy a page in your page flow rather than a file e.g. <page path-info="/mods-doc/clone" view="summary/list-documents- response.xpl"> <action action="summary/clone "/> </page> <page path-info="/summary/clone" view="summary/clone "/> Hope this helps Ryan Puddephatt Web Developer TFX Group 1 Michaelson Square Livingston West Lothian Scotand EH54 7DP * [hidden email] ( 01506 407 110 7 01506 407 108 >-----Original Message----- >From: Duane Gran [mailto:[hidden email]] >Sent: 31 January 2006 21:35 >To: [hidden email] >Subject: Re: [ops-users] referring to pipeline outputs > >Stephen, > >Thank you very much. Your suggestion near the top of the message >below did the trick, but I'm perplexed because nothing is happening >and I can't seem to get any debug output from clone-documents- >action.xpl. Recall that I'm patterning this off of the the bizdoc >delete-documents-action.xpl, which produces debug output just fine. >My debug line is simply the following in my clone XPL: > > <p:param name="instance" type="input" debug="clone-documents- >action"/> > >It is almost as if it is never called. Recall that my page flow is >constructed as follows: > > <page path-info="/mods-doc/clone" view="summary/list-documents- >response.xpl"> > <action action="summary/clone-documents-action.xpl"/> > </page> > >This is identical in every way the /mods-doc/delete path, and it is >called in the same manner from the summary page. I looked at the >page flow documentation for the action element, but it seems to be >used in a different way than what I have above. My desired effect is >to call the clone-documents-action pipeline and then update the >display via list-documents-response, however by all accounts the >action doesn't appear to be run. Any thoughts on why this might be? > >Duane > >On Jan 30, 2006, at 10:19 AM, Stephen Bayliss wrote: > >> Hi Duane >> >> The <p:for-each > constructs now declares id="doc-info", which is >> good. >> >> Your first processor, oxf:pipeline calling read-document.xpl is >> declaring a ref output, not an id output, which means that your second >> processor, oxf:pipeline calling create-document cannot use this as an >> input through href. >> >> Change it to id="doc-info" for the output of the first one, then the >> second one will see it. >> >> However, this still means that you will have nothing connecting to the >> output of the <p:for-each> (ie the id="doc-info"). >> >> You *could* try just removing the id="doc-info" on the <p:for-each >> > as >> you don't seem to want any output, not sure without trying it if >> this is >> valid though. >> >> Better would be >> a) change <p:for=each ... id="doc-info" > to <p:for-each ... >> id="doc-info-all" > (ie this is the aggregated output from all docs >> processed by the for-each) >> b) include the following in your call, this is to take the doc-info >> output from the first processor and send it to the "doc-info-all" >> output >> of the for-each >> <p:processor name="oxf:identity"> >> <p:input name="data" href="#doc-info"/> >> <p:output name="data" ref="doc-info-all"/> >> </p:processor> >> >> If you want you could do something intelligent here, ie run some >> xslt to >> just output the IDs or something like that of the docs you process, so >> that doc-info-all becomes a summary report of all that you processed. >> >> And of course you will have to consume the output of the main pipeline >> itself. >> >> You can get around that by null-serializing the doc-info-all >> output, or >> you can declare an output param and connect it to that. >> >> I see that you are currently calling it as a "view" from page- >> flow.xml, >> so the best bet would be to >> (a) declare the output parameter named "data" type "output" at the >> start >> of your document >> (b) include the following right at the end, to pipe doc-info-all to >> the >> data output >> >> <p:processor name="oxf:identity"> >> <p:input name="data" href="#doc-info-all"/> >> <p:output name="data" ref="data"/> >> </p:processor> >> >> Then your output xml document will be shown in the browser. >> >> Regards >> Steve >> >> -----Original Message----- >> From: Duane Gran [mailto:[hidden email]] >> Sent: 30 January 2006 14:50 >> To: [hidden email] >> Subject: Re: [ops-users] referring to pipeline outputs >> >> Steve, >> >> Thanks for the pointer. I looked over the documentation and modified >> the p:for-each loop with the root and output id, but I still get the >> same message. You are right about the desired functionality to clone >> each document, so I added the other pipeline within the p:for-each >> statement. Unfortunately, I still get the same error message. Below >> is what I have right now: >> >> <!-- call read-document to pull back the data from exist for each >> document id --> >> <p:for-each href="#document-ids" select="/*/document-id" >> root="newdoc" id="doc-info"> >> <!-- read document from data store based on id --> >> <p:processor name="oxf:pipeline"> >> <p:input name="config" href="../data-access/delegate/read- >> document.xpl"/> >> <p:input name="document-id" href="current()"/> >> <p:output name="data" ref="doc-info"/> >> </p:processor> >> >> <!-- create a clone of the document in the database --> >> <p:processor name="oxf:pipeline"> >> <p:input name="config" href="../data-access/delegate/create- >> document.xpl"/> >> <p:input name="document-info" href="#doc-info"/> >> </p:processor> >> </p:for-each> >> >> To clarify, the error message at this time is: >> >> org.orbeon.oxf.common.ValidationException: oxf:/examples/mods-doc/ >> summary/clone-documents-action.xpl, line 36, column 88: Reference to >> undeclared output id "doc-info" >> oxf:/examples/mods-doc/summary/clone-documents-action.xpl, line 36, >> column 88: Reference to undeclared output id "doc-info" >> >> Can you see the nature of the problem? The desired effect is the >> following: >> >> 1) loop over all the document ids in the input (instance doc) >> 2) for each id, call read-document.xpl, which returns a document from >> the data store (exist, in my case) >> 3) pass this document to the next pipeline, which in turn passes the >> document to create-document.xpl to store it into exist >> >> Duane >> >> On Jan 30, 2006, at 3:40 AM, Stephen Bayliss wrote: >> >>> Hi Duane >>> >>> Looks like your p:for-each is the problem. >>> >>> In your p:for-each you need to add (1) declaration of what the >>> output id >>> is for the for-each and (2) what the root node of this output will >>> be. >>> >>> Then your processors within the for-each will reference the same >>> output >>> id (ie doc-info), and your output will consist of a root node, and >>> under >>> this will be nodes produced by each execution of the for-each. >>> >>> Check out http://www.orbeon.com/ops/doc/reference-xpl-pipelines#for- >>> each >>> for more info. >>> >>> I don't fully understand the logic of what you are trying to do, but >>> from skimming through it, it looks like your section beginning >>> <!-- create a clone of the document in the database --> >>> Should be within the p:for-each? Don't you want to do this for each >>> document in turn? >>> >>> Steve >>> >>> >>> -----Original Message----- >>> From: Duane Gran [mailto:[hidden email]] >>> Sent: 30 January 2006 02:13 >>> To: [hidden email] >>> Subject: [ops-users] referring to pipeline outputs >>> >>> I'm trying to add functionality to the bizdoc example to clone a copy >>> of a document in the document list (summary view), but I'm getting >>> hung up on some basic XPL issues. In particular, the error I get is >>> the following: >>> >>> org.orbeon.oxf.common.ValidationException: oxf:/examples/mods-doc/ >>> summary/clone-documents-action.xpl, line 47, column 53: Reference to >>> undeclared output id "doc-info" >>> oxf:/examples/mods-doc/summary/clone-documents-action.xpl, line 47, >>> column 53: Reference to undeclared output id "doc-info" >>> >>> Below is my source for clone-documents-action.xpl (with asterixes on >>> line 47 for emphasis): >>> >>> <p:config xmlns:p="http://www.orbeon.com/oxf/pipeline" >>> xmlns:oxf="http://www.orbeon.com/oxf/processors" >>> xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> >>> <p:param name="instance" type="input"/> >>> >>> <!-- Create list of document ids --> >>> <p:processor name="oxf:xslt"> >>> <p:input name="data" href="#instance"/> >>> <p:input name="config"> >>> <document-ids xsl:version="2.0"> >>> <xsl:for-each select="tokenize(/form/document-id, '\s+')"> >>> <document-id> >>> <xsl:value-of select="."/> >>> </document-id> >>> </xsl:for-each> >>> </document-ids> >>> </p:input> >>> <p:output name="data" id="document-ids"/> >>> </p:processor> >>> >>> <!-- call read-document to pull back the data from exist for each >>> document id --> >>> <p:for-each href="#document-ids" select="/*/document-id"> >>> <!-- read document from data store based on id --> >>> <p:processor name="oxf:pipeline"> >>> <p:input name="config" href="../data-access/delegate/read- >>> document.xpl"/> >>> <p:input name="document-id" href="current()"/> >>> <p:output name="data" id="doc-info"/> >>> </p:processor> >>> </p:for-each> >>> >>> <!-- create a clone of the document in the database --> >>> <p:processor name="oxf:pipeline"> >>> <p:input name="config" href="../data-access/delegate/create- >>> document.xpl"/> >>> ***** <p:input name="document-info" href="#doc-info"/> ****** >>> </p:processor> >>> </p:config> >>> >>> Below is how it is called from page-flow.xml: >>> >>> <page path-info="/mods-doc/clone" view="summary/list-documents- >>> response.xpl"> >>> <action action="summary/clone-documents-action.xpl"/> >>> </page> >>> >>> It is a modification of the delete action, where the submission >>> should replace the instance and use AJAX for the update, but I >>> believe I'm getting hung up on something very basic here. From what >>> I can see, I've declared the "doc-info" output in the second >>> pipeline, but the third can't see it. Can someone familiar with the >>> bizdoc example point out my error to me? Thank you. >>> >>> Duane >>> >>> >>> >>> >>> -- >>> You receive this message as a subscriber of the ops- >>> [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 >> >> >> >> >> >> -- >> You receive this message as a subscriber of the ops- >> [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 > -- 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 |
Ryan, Stephan and other interested parties:
Ultimately I think I found a simpler way to accomplish this, as my use case involves cloning just one document, thereby making the for- each construct unnecessary. In case anyone else runs into something similar, I reproduce below the solution which is working well for me: <p:config xmlns:p="http://www.orbeon.com/oxf/pipeline" xmlns:oxf="http://www.orbeon.com/oxf/processors" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <p:param name="instance" type="input" debug="clone-documents- action"/> <p:param name="data" type="output"/> <!-- Call the data access layer --> <p:processor name="oxf:pipeline"> <p:input name="config" href="../data-access/delegate/read- document.xpl"/> <p:input name="document-id" href="#instance#xpointer(/*/document- id)"/> <p:output name="document-info" ref="data" id="doc-info-id"/> </p:processor> <!-- create a clone of the document in the database --> <p:processor name="oxf:pipeline"> <p:input name="config" href="../data-access/delegate/create- document.xpl"/> <p:input name="document-info" href="#doc-info-id"/> </p:processor> </p:config> As always, I appreciate the input and advice of the mailing list. Duane On Jan 31, 2006, at 4:49 PM, Ryan Puddephatt wrote: > Duane, > The input may not be called if it isn't required in the pipeline, > try putting a debug on the output of a processor that uses the > instance > input. Or on the output of the pipeline to make sure its being called! > > Looking at your action, you need to specifiy a page in your page > flow rather > than a file e.g. > > <page path-info="/mods-doc/clone" view="summary/list-documents- > response.xpl"> > <action action="summary/clone "/> > </page> > > <page path-info="/summary/clone" view="summary/clone "/> > > Hope this helps > > Ryan Puddephatt > Web Developer > TFX Group > 1 Michaelson Square > Livingston > West Lothian > Scotand > EH54 7DP > > * [hidden email] > ( 01506 407 110 > 7 01506 407 108 > > >> -----Original Message----- >> From: Duane Gran [mailto:[hidden email]] >> Sent: 31 January 2006 21:35 >> To: [hidden email] >> Subject: Re: [ops-users] referring to pipeline outputs >> >> Stephen, >> >> Thank you very much. Your suggestion near the top of the message >> below did the trick, but I'm perplexed because nothing is happening >> and I can't seem to get any debug output from clone-documents- >> action.xpl. Recall that I'm patterning this off of the the bizdoc >> delete-documents-action.xpl, which produces debug output just fine. >> My debug line is simply the following in my clone XPL: >> >> <p:param name="instance" type="input" debug="clone-documents- >> action"/> >> >> It is almost as if it is never called. Recall that my page flow is >> constructed as follows: >> >> <page path-info="/mods-doc/clone" view="summary/list-documents- >> response.xpl"> >> <action action="summary/clone-documents-action.xpl"/> >> </page> >> >> This is identical in every way the /mods-doc/delete path, and it is >> called in the same manner from the summary page. I looked at the >> page flow documentation for the action element, but it seems to be >> used in a different way than what I have above. My desired effect is >> to call the clone-documents-action pipeline and then update the >> display via list-documents-response, however by all accounts the >> action doesn't appear to be run. Any thoughts on why this might be? >> >> Duane >> >> On Jan 30, 2006, at 10:19 AM, Stephen Bayliss wrote: >> >>> Hi Duane >>> >>> The <p:for-each > constructs now declares id="doc-info", which is >>> good. >>> >>> Your first processor, oxf:pipeline calling read-document.xpl is >>> declaring a ref output, not an id output, which means that your >>> second >>> processor, oxf:pipeline calling create-document cannot use this >>> as an >>> input through href. >>> >>> Change it to id="doc-info" for the output of the first one, then the >>> second one will see it. >>> >>> However, this still means that you will have nothing connecting >>> to the >>> output of the <p:for-each> (ie the id="doc-info"). >>> >>> You *could* try just removing the id="doc-info" on the <p:for-each >>>> as >>> you don't seem to want any output, not sure without trying it if >>> this is >>> valid though. >>> >>> Better would be >>> a) change <p:for=each ... id="doc-info" > to <p:for-each ... >>> id="doc-info-all" > (ie this is the aggregated output from all docs >>> processed by the for-each) >>> b) include the following in your call, this is to take the doc-info >>> output from the first processor and send it to the "doc-info-all" >>> output >>> of the for-each >>> <p:processor name="oxf:identity"> >>> <p:input name="data" href="#doc-info"/> >>> <p:output name="data" ref="doc-info-all"/> >>> </p:processor> >>> >>> If you want you could do something intelligent here, ie run some >>> xslt to >>> just output the IDs or something like that of the docs you >>> process, so >>> that doc-info-all becomes a summary report of all that you >>> processed. >>> >>> And of course you will have to consume the output of the main >>> pipeline >>> itself. >>> >>> You can get around that by null-serializing the doc-info-all >>> output, or >>> you can declare an output param and connect it to that. >>> >>> I see that you are currently calling it as a "view" from page- >>> flow.xml, >>> so the best bet would be to >>> (a) declare the output parameter named "data" type "output" at the >>> start >>> of your document >>> (b) include the following right at the end, to pipe doc-info-all to >>> the >>> data output >>> >>> <p:processor name="oxf:identity"> >>> <p:input name="data" href="#doc-info-all"/> >>> <p:output name="data" ref="data"/> >>> </p:processor> >>> >>> Then your output xml document will be shown in the browser. >>> >>> Regards >>> Steve >>> >>> -----Original Message----- >>> From: Duane Gran [mailto:[hidden email]] >>> Sent: 30 January 2006 14:50 >>> To: [hidden email] >>> Subject: Re: [ops-users] referring to pipeline outputs >>> >>> Steve, >>> >>> Thanks for the pointer. I looked over the documentation and >>> modified >>> the p:for-each loop with the root and output id, but I still get the >>> same message. You are right about the desired functionality to >>> clone >>> each document, so I added the other pipeline within the p:for-each >>> statement. Unfortunately, I still get the same error message. >>> Below >>> is what I have right now: >>> >>> <!-- call read-document to pull back the data from exist for each >>> document id --> >>> <p:for-each href="#document-ids" select="/*/document-id" >>> root="newdoc" id="doc-info"> >>> <!-- read document from data store based on id --> >>> <p:processor name="oxf:pipeline"> >>> <p:input name="config" href="../data-access/delegate/read- >>> document.xpl"/> >>> <p:input name="document-id" href="current()"/> >>> <p:output name="data" ref="doc-info"/> >>> </p:processor> >>> >>> <!-- create a clone of the document in the database --> >>> <p:processor name="oxf:pipeline"> >>> <p:input name="config" href="../data-access/delegate/create- >>> document.xpl"/> >>> <p:input name="document-info" href="#doc-info"/> >>> </p:processor> >>> </p:for-each> >>> >>> To clarify, the error message at this time is: >>> >>> org.orbeon.oxf.common.ValidationException: oxf:/examples/mods-doc/ >>> summary/clone-documents-action.xpl, line 36, column 88: Reference to >>> undeclared output id "doc-info" >>> oxf:/examples/mods-doc/summary/clone-documents-action.xpl, line 36, >>> column 88: Reference to undeclared output id "doc-info" >>> >>> Can you see the nature of the problem? The desired effect is the >>> following: >>> >>> 1) loop over all the document ids in the input (instance doc) >>> 2) for each id, call read-document.xpl, which returns a document >>> from >>> the data store (exist, in my case) >>> 3) pass this document to the next pipeline, which in turn passes the >>> document to create-document.xpl to store it into exist >>> >>> Duane >>> >>> On Jan 30, 2006, at 3:40 AM, Stephen Bayliss wrote: >>> >>>> Hi Duane >>>> >>>> Looks like your p:for-each is the problem. >>>> >>>> In your p:for-each you need to add (1) declaration of what the >>>> output id >>>> is for the for-each and (2) what the root node of this output will >>>> be. >>>> >>>> Then your processors within the for-each will reference the same >>>> output >>>> id (ie doc-info), and your output will consist of a root node, and >>>> under >>>> this will be nodes produced by each execution of the for-each. >>>> >>>> Check out http://www.orbeon.com/ops/doc/reference-xpl- >>>> pipelines#for- >>>> each >>>> for more info. >>>> >>>> I don't fully understand the logic of what you are trying to do, >>>> but >>>> from skimming through it, it looks like your section beginning >>>> <!-- create a clone of the document in the database --> >>>> Should be within the p:for-each? Don't you want to do this for >>>> each >>>> document in turn? >>>> >>>> Steve >>>> >>>> >>>> -----Original Message----- >>>> From: Duane Gran [mailto:[hidden email]] >>>> Sent: 30 January 2006 02:13 >>>> To: [hidden email] >>>> Subject: [ops-users] referring to pipeline outputs >>>> >>>> I'm trying to add functionality to the bizdoc example to clone a >>>> copy >>>> of a document in the document list (summary view), but I'm getting >>>> hung up on some basic XPL issues. In particular, the error I >>>> get is >>>> the following: >>>> >>>> org.orbeon.oxf.common.ValidationException: oxf:/examples/mods-doc/ >>>> summary/clone-documents-action.xpl, line 47, column 53: >>>> Reference to >>>> undeclared output id "doc-info" >>>> oxf:/examples/mods-doc/summary/clone-documents-action.xpl, line 47, >>>> column 53: Reference to undeclared output id "doc-info" >>>> >>>> Below is my source for clone-documents-action.xpl (with >>>> asterixes on >>>> line 47 for emphasis): >>>> >>>> <p:config xmlns:p="http://www.orbeon.com/oxf/pipeline" >>>> xmlns:oxf="http://www.orbeon.com/oxf/processors" >>>> xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> >>>> <p:param name="instance" type="input"/> >>>> >>>> <!-- Create list of document ids --> >>>> <p:processor name="oxf:xslt"> >>>> <p:input name="data" href="#instance"/> >>>> <p:input name="config"> >>>> <document-ids xsl:version="2.0"> >>>> <xsl:for-each select="tokenize(/form/document-id, '\s+')"> >>>> <document-id> >>>> <xsl:value-of select="."/> >>>> </document-id> >>>> </xsl:for-each> >>>> </document-ids> >>>> </p:input> >>>> <p:output name="data" id="document-ids"/> >>>> </p:processor> >>>> >>>> <!-- call read-document to pull back the data from exist for >>>> each >>>> document id --> >>>> <p:for-each href="#document-ids" select="/*/document-id"> >>>> <!-- read document from data store based on id --> >>>> <p:processor name="oxf:pipeline"> >>>> <p:input name="config" href="../data-access/delegate/read- >>>> document.xpl"/> >>>> <p:input name="document-id" href="current()"/> >>>> <p:output name="data" id="doc-info"/> >>>> </p:processor> >>>> </p:for-each> >>>> >>>> <!-- create a clone of the document in the database --> >>>> <p:processor name="oxf:pipeline"> >>>> <p:input name="config" href="../data-access/delegate/create- >>>> document.xpl"/> >>>> ***** <p:input name="document-info" href="#doc-info"/> ****** >>>> </p:processor> >>>> </p:config> >>>> >>>> Below is how it is called from page-flow.xml: >>>> >>>> <page path-info="/mods-doc/clone" view="summary/list-documents- >>>> response.xpl"> >>>> <action action="summary/clone-documents-action.xpl"/> >>>> </page> >>>> >>>> It is a modification of the delete action, where the submission >>>> should replace the instance and use AJAX for the update, but I >>>> believe I'm getting hung up on something very basic here. From >>>> what >>>> I can see, I've declared the "doc-info" output in the second >>>> pipeline, but the third can't see it. Can someone familiar with >>>> the >>>> bizdoc example point out my error to me? Thank you. >>>> >>>> Duane >>>> >>>> >>>> >>>> >>>> -- >>>> You receive this message as a subscriber of the ops- >>>> [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 >>> >>> >>> >>> >>> >>> -- >>> You receive this message as a subscriber of the ops- >>> [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 >> > > > > > -- > You receive this message as a subscriber of the ops- > [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 -- 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 |
Free forum by Nabble | Edit this page |