Antonio Fiol Bonn�n a �crit :

2005/4/21, C�dric Damioli <[EMAIL PROTECTED]>:


Antonio Fiol Bonn�n a �crit :



Hello,

I am trying to use the CVSSource on Cocoon 2.1.5.

What I tried is adding to cocoon.xconf:
(1 line context information)

  <component-instance
class="org.apache.cocoon.components.source.impl.ModuleSourceFactory"
name="module"/>
  <component-instance name="cocodoco-cvs"
class="com.anwrt.cocoon.cvssource.source.CVSSourceFactory">
    <hostname>cvs.apache.org</hostname>
    <repository>/home/cvspublic</repository>
    <module>xml-cocoon2/src/documentation</module>
    <username>anoncvs</username>
    <password>anoncvs</password>
    <!-- optionnal hierarchy refresh period (in seconds, defaults to 600) -->
    <refresh-period>3600</refresh-period>

    <!-- optionnal commit message expression (sitemap syntax) -->
    <commit-message-expr>{request-param:cvs-message}</commit-message-expr>
  </component-instance>
</source-factories>

I did this because I did not find a "source-handlers" section.

The problem: StackOverflowException.
The repeating stack:
(snip)

If I understand what is happening, cocoon is trying to initialize
everything recursively. IOW, the getVariable method of CVSSource needs
something from the component manager which is not ready until it is
fully initialized... but what?

Any hints? Thank you very much for your help.





You guessed correctly ! :-)

IIRC, the guilty component is an InputModule (in your case,
PropertiesFileModule).
There's also others InputModule (XMLMetaModule ?) trying to lookup a
SourceResolver, which itself try to initialize CVSSourceFactory, which
itself needs InputModule (via VariableResolver), etc etc...

Every time I want to use CVSSource in my project, I clean InputModule
section and all works correctly after that.



Maybe it works if you clean the InputModule section. I will test it.

However, isn't it a bug (of CVSSource or other) that you can't have
both CVSSource and InputModules together at the same time?

Shouldn't someone break the loop? Who? How?



I imagine you could create a version of CVSSource not dependent of InputModules (without variable resolving).

But, on the other hand, you only have to remove those InputModule who create the circular dependencies (those who need a SourceResolver): they are only a few.

--
C�dric Damioli
ANYWARE TECHNOLOGIES
Tel : +33 (0)5 61 00 52 90
Fax : +33 (0)5 61 00 51 46
http://www.anyware-tech.com


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



  • Re: CVSSource Cédric Damioli

Reply via email to