Hi all, The return of cron bug ! :) (resume of lasts episodes : the cron job in cocoon.xconf don't work on Lenya 2.0)
As Anish said : "it's work for me on Lenya on Lenya 1.2.4", -- I do a diff on the org.apache.cocoon.components.cron.CronJob of 1.2 and 2.0 : there is some diff. -- so I get the 1.2 CronJob.java, compile it as CronJobOld.java, try it in the cocoon.xconf cron definition... and it's don't work... -- So the idea of a problem in the global-sitemap.xmap seems to be good... BUT : as Andreas suggests, fire the pipeline throw browser work - so, I edit my linux crontab with this line : 0 9 * * mon wget -O /dev/null http://tomcat.serveur/lenya/dev/modules/mymodules/mypipeline - and it don't work - I open a fresh lovely firefox on the pipe... and it don't work ! - I open a new tab and CONNECT to Lenya, I refresh my pipe's tab : and it work ! IN FACT : - the call of this pipeline works when we are CONNECTED to lenya - the cocoon.xconf, and a unconnected browser can't fire the pipeline ! QUESTIONS : - Anish, can you redo this "way of work" ? (pipeline fire when connected, but not when not connected) - In my case, the module's resource is on authoring (have to be connect)... but I fire a pipeline that have no deal with this resource. I think that there is no relationship between the publication status of the resource and the possibility of fire a pipeline. I'm right ? - This possible to define a pipeline that we can call without have to be connected ? - In a more general way, what is the relationship between pipeline and connexion ? Thanks ! Have a good day On Tue, 24 Mar 2009 16:50:24 +0100, Florent André <[email protected]> wrote: > arrrghh ! :) > > Thanks for your answer Anish. > > On Tue, 24 Mar 2009 14:24:22 +0530, Anish <[email protected]> > wrote: >> Hi Florent >> >>> The URI prefix is removed when the module sitemap is mounted. And the >>> pipeline in the above configuration ends with "crontest". So I guess >>> this should read >>> >>> <map:match pattern="crontest"> >> Even I tried the same way, Andreas suggested. >> >> It's not working for Lenya 2.0 (as I'm calling a module's internal >> pipeline). Although pipeline worked fine if called though browser (on >> http://) > > Me too. I also call this pipeline with a <map:generate > src="cocoon://modules/mymodule/crontest"> and it's work... (the > map:generate and the map:match pattern="crontest" are in the same sitemap). > >> >> Earlier I had applied this scheduler for Cocoon 2.1.7/Lenya 1.2.4 >> (without modules) and there it worked. >> (in that case I called >> <pipeline>mypublication/live/mycron.xml</pipeline>, this pipeline >> resides in my publication-sitemap.xmap) > > I don't have lenya 1.2.4, so do you know if the difference is : > - between the cocoon java cron class (I try with > cocoon.components.cron.TestCronJob and > cocoon.components.cron.CocoonPipelineCronJob : nothing work) > - between the lenya's sitemap ? > > >> >> I think in the case of Lenya 2.0, module's sitemap is not getting >> mounted properly. >> >> I'm trying to resolve this. > > Also... because the log have the error : <map:mount> - > file:///var/lib/tomcat5.5/./webapps/lenya/sitemap.xmap:661:106 > > I try on the sitemap : > ------------------------------------------------------------------ > 1 - to remplace : map:mount by map:read (I see an example on the web with > read) in : > <map:match pattern="**"> > <map:mount check-reload="true" reload-method="synchron" > src="global-sitemap.xmap" uri-prefix=""/> > </map:match> > (the match pointed by log) > ------------------------------------------------------------------ > 2 - to add : > **** in webapps/lenya/sitemap.xmap > <map:match pattern="cron/modules/*/**"> > <map:mount uri-prefix="modules/{1}/" > src="{fallback:lenya/modules/{1}/sitemap.xmap}" check-reload="true" > reload-method="synchron"/> > </map:match> > **** in my cocoon.xconf cron's pipeline definition : > <pipeline>cron/modules/killbookmakers/crontest</pipeline> > > (I'm not really sure with my sitemap.xmap's map:mount definition...) > > And nothing work... :( > > > Open to all suggestions... > > ++ > > > >> >> >> >> >> Andreas Hartmann wrote: >>> Florent André schrieb: >>>> Hi Anish, >>>> >>>> I think I have the same problem you solve : >>>> org.apache.excalibur.source.SourceException: Cannot get input stream > for >>>> cocoon://modules/mymodule/crontest >>>> >>>> In the component test <pipeline> I try >>>> * modules/mymodule/crontest >>>> * lenya/modules/mymodule/crontest >>>> * mymodule/crontest >>>> >>>> ... but nothing work. >>>> >>>> Can you help me ? >>>> >>>> --- cocoon.conf --- >>>> ## cron component/trigger : >>>> <triggers> >>>> <trigger name="test-job1" >>>> > target="org.apache.cocoon.components.cron.CronJob/test" >>>> concurrent-runs="false"> >>>> <cron>*/2 * * * * ? *</cron> >>>> </trigger> >>>> </triggers> >>>> >>>> ##component test : >>>> <component role="org.apache.cocoon.components.cron.CronJob/test" >>>> class="org.apache.cocoon.components.cron.TestCronJob" >>>> logger="cron.test"> >>>> <!-- <msg>I'm here</msg> >>>> <sleep>23000</sleep>--> >>>> <pipeline>modules/mymodule/crontest</pipeline> >>>> </component> >>>> >>>> >>>> >>>> --- Mymodule.xmap --- >>>> <map:match pattern="**/crontest/**"> >>> >>> The URI prefix is removed when the module sitemap is mounted. And the >>> pipeline in the above configuration ends with "crontest". So I guess >>> this should read >>> >>> <map:match pattern="crontest"> >>> >>> Does it work when you call the URI from the browser instead of the >>> cron job? >>> >>> Maybe this helps, >>> >>> -- Andreas >>> >>>> >>>> <map:generate src="test/source.xml"/> >>>> >>>> <!-- DEV DEBUG 1 BEGIN --> >>>> <map:call resource="log-to-file"> >>>> <map:parameter name="fileprefix" value="CronCall"/> >>>> </map:call> >>>> <!-- DEV DEBUG 1 END --> >>>> >>>> <map:serialize type="xml"/> >>>> </map:match> >>>> >>>> TIA & HAND >>>> >>>> >>>> On Tue, 20 Jan 2009 17:25:50 +0530, Anish <[email protected]> >>>> wrote: >>>>> Anish wrote: >>>>>> Hi >>>>>> >>>>>> I've applied cron scheduler to my Cocoon/Lenya Application. I'm >>>>>> trying to call a pipeline (which is publication specific i.e. >>>>>> inside publication-sitemap.xmap). >>>>>> >>>>>> My call from scheduler reaches to the sitemap but during processing >>>>>> it throws : >>>>>> >>>>>> org.apache.excalibur.source.SourceException: Cannot get input >>>>>> stream for cocoon://mypublication/live/mypage.xml >>>>>> >>>>>> due to: >>>>>> >>>>>> java.lang.StringIndexOutOfBoundsException: String index out of >>>>>> range: -1 >>>>>> >>>>>> Although my all pipelines work fine inside the publication as I >>>>>> access through browser. >>>>>> >>>>>> I'm using: >>>>>> >>>>>> Cocoon 2.1.7 >>>>>> Lenya 1.2.4 >>>>>> Tomcat 5.5.17 >>>>>> >>>>>> Please suggest. >>>>>> >>>>>> Vik Tara wrote: >>>>>>>>> for general scheduling tasks, take a look at the cron block API >>>>>>>>> documentation in Cocoon. >>>>>>>>> >>>>>>> I think that's here: >>>>>>> http://xmlshoestring.com/samples/blocks/cron/samples >>>>>>> >>>>>>> Andreas Hartmann wrote: >>>>>>> >>>>>>>> Hi Anish, >>>>>>>> >>>>>>>> Anish schrieb: >>>>>>>> >>>>>>>>> I was trying to implement Cocoon Job Scheduler. Please help and >>>>>>>>> provide me documentation/information as I could hardly find >>>>>>>>> relevant >>>>>>>>> documentation on that. >>>>>>>>> >>>>>>>> for general scheduling tasks, take a look at the cron block API >>>>>>>> documentation in Cocoon. >>>>>>>> >>>>>>>> For an example how to schedule a Lenya usecase, consult the API >>>>>>>> of the >>>>>>>> UsecaseScheduler class and use the Publish usecase as an example. >>>>>>>> >>>>>>>> -- Andreas >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>> >>>>>>> > --------------------------------------------------------------------- >>>>>>> To unsubscribe, e-mail: [email protected] >>>>>>> For additional commands, e-mail: [email protected] >>>>>>> >>>>>>> >>>>>> >>>>>> -- >>>>>> Thanks & Regards, >>>>>> Anish >>>>> Hi All >>>>> >>>>> Thanks, The issue is resolved. >>> >>> > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
