lenya-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Florent André <florent.andre-...@4sengines.com>
Subject Re: Job Scheduler in Lenya/Cocoon
Date Tue, 24 Mar 2009 15:50:24 GMT
arrrghh !  :)

Thanks for your answer Anish.

On Tue, 24 Mar 2009 14:24:22 +0530, Anish <anish.sneh@techblue.co.uk>
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 <anish.sneh@techblue.co.uk>
>>> 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: user-unsubscribe@lenya.apache.org
>>>>>> For additional commands, e-mail: user-help@lenya.apache.org
>>>>>>
>>>>>>   
>>>>>
>>>>> -- 
>>>>> Thanks & Regards,
>>>>> Anish
>>>> Hi All
>>>>
>>>> Thanks, The issue is resolved.
>>
>>

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@lenya.apache.org
For additional commands, e-mail: user-help@lenya.apache.org


Mime
View raw message