Hi Minh-Quan,

thank you very much!

I made a standalone commandline tool which uses the cocoon library. It 
takes an xml file and a parameter string as arguments. It should produce a 
html file, the same as would be produced by the url "myfile.xml?arg=val". 
I think a standalone tool with its own commandline entry point is needed, 
because the cocoon commandline entry does not take arguments ('error: 
myfile.xml?arg=val not found').

So I call my tool:

$ webtool myfile.xml page=4

My tool would create myProducer, which should then do the task, as you 
wrote. So I give it a method like this:

Document getMyDocument (String xml,String args);

Let's look at the method in ProducerFromFile:

public Document getDocument(HttpServletRequest request) throws Exception
{
 String file = Utils.getBasename(request, this.context);
 this.monitor.watch(Utils.encode(request), new File(file));
 return parser.parse(new InputSource(file));
}

As you said I have to do it in a similar way, but involve the arguments 
somehow. I guess in the ProducerFromFile the arguments are stored in the 
request parameter. So I could simulate a url like "myfile.xml?args" by 
creating a request object on the fly and do the rest like ProducerFromFile.

So far so good, but two single questions remain:

- How is myProducer involved?
  There is the static main function of my webtool
  class. Can I simply create my producer and call
  the getMyDocument method?

- How to make my HttpServletRequest?
  I tried something like that before, but since
  HttpServletRequest is abstract I cannot make
  it myself.

I would very appreciate if you could give me a second tip.

Thank you,

Markus



On Wednesday 27 June 2001 20:11, you wrote:
> >I got cocoon to translate my xml files into html using the commandline
> >interface to cocoon. But I didn't get it to translate xml files which
> >expect arguments as file.xml?index=3. Cocoon always produces the same
> >output as if there were no arguments. I would like to write a
> >small java
> >tool that involves the cocoon library to translate a url with
> >arguments
> >into a html file. How can I do that and which classes do I have to use
> >(Cocoon 1.8)?
>
> The default cocoon producer is the ProducerFromFile (under
> cocoon/producer). You can write your own producer which takes in
> arguments and recompile cocoon.  You can also configure your producer to
> be a default one.  Look at cocoon.properties.
>
> Minh-Quan
>
> ---------------------------------------------------------------------
> Please check that your question has not already been answered in the
> FAQ before posting. <http://xml.apache.org/cocoon/faqs.html>
>
> To unsubscribe, e-mail: <[EMAIL PROTECTED]>
> For additional commands, e-mail: <[EMAIL PROTECTED]>

---------------------------------------------------------------------
Please check that your question has not already been answered in the
FAQ before posting. <http://xml.apache.org/cocoon/faqs.html>

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

Reply via email to