Upayavira, thank you very much! :-) In Cocoon 2.1.1 there's org.apache.cocoon.ANT.CocoonTask, I have it running and it does NOT break if precompile-only is true. But still my pipeline is executed, so the flag seems to be completely ignored (if I understood its meaning correctly).
In Cocoon 2.1.3 there's org.apache.cocoon.CocoonTask, but it always fails for me, saying "Could not find a classpath that points to the Cocoon classes" In Cocoon 2.1.3 there's also org.apache.cocoon.ANT.CocoonTask which does also fail for me, saying: org.apache.cocoon.ProcessingException: Lookup of serializer for role 'xml' failed.: org.apache.avalon.framework.component.ComponentException: serializers: ComponentSelector could not access the Component for hint [xml] (key [xml]) at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.setSerializer(AbstractProcessingPipeline.java:321) [.. ] Caused by: org.apache.avalon.framework.context.ContextException: Unable to resolve context key: default-encoding at org.apache.avalon.framework.context.DefaultContext.get(DefaultContext.java:157) at org.apache.avalon.framework.context.DefaultContext.get(DefaultContext.java:160) at org.apache.avalon.framework.context.DefaultContext.get(DefaultContext.java:160) at org.apache.cocoon.components.ComponentContext.get(ComponentContext.java:135) at org.apache.cocoon.serialization.AbstractTextSerializer.contextualize(AbstractTextSerializer.java:203) at org.apache.avalon.framework.container.ContainerUtil.contextualize(ContainerUtil.java:154) at org.apache.avalon.excalibur.component.DefaultComponentFactory.newInstance(DefaultComponentFactory.java:278) at org.apache.avalon.excalibur.pool.ResourceLimitingPool.newPoolable(ResourceLimitingPool.java:672) at org.apache.avalon.excalibur.pool.ResourceLimitingPool.get(ResourceLimitingPool.java:402) at org.apache.avalon.excalibur.component.PoolableComponentHandler.doGet(PoolableComponentHandler.java:233) at org.apache.avalon.excalibur.component.ComponentHandler.get(ComponentHandler.java:410) at org.apache.avalon.excalibur.component.ExcaliburComponentSelector.select(ExcaliburComponentSelector.java:246) Besides of that, setting <cocoon logLevel="WARN".../> does not prevent him for doing DEBUG outputs, maybe I should hand over a logkit.xconf... I could go with the 2.1.1 version, -> providing a temporary sitemap which lets direct calls to my XSPs pass through (not containing any actions etc. because of missing context problems) -> having a simple matcher, containing only a serverpages generator (so that my XSP are actually compiled) and a XML-Serializer (because it's mandatory) -> have <map:handle-errors> swallow my pipeline- / XSP- execution errors, so they don't show up at the console -> ignore resp. delete the dest directory containing all the *.xsp.xml files with the errors in it and on top -> let CocoonTask compile the classes directly into tomcat's work directory -> thus no more need to deploy XSP files -> and thus no more ugly runtime spotting of XSP compilation errors (an enormous time saver if you consider the lack of tool support for XSP editing) To do this for all my XSPs, I'd have to write (autogenerate) an URI-file based on my directory structure which is then processed by the Cocoon-Task. Phew, seems like a long way to go and I wonder if I really have a faster development roundtrip afterwards... It would be much greater, if CocoonTask would work without having a sitemap at all, just taking a bunch (ANT- fileset) of xsp files and compiling them... :-) Any further ideas/comments? Jonas Precompilation of XSPs was fixed by Carsten shortly before 2.1.3 was released. I'd therefore suggest you consider upgrading. If you're running from an Ant build process, you'll find a new, as yet largely untested Ant task in 2.1.3 too at org.apache.cocoon.CocoonTask. It'll do everything the CLI can do, except that you can embed the configuration (cli.xconf) into your Ant script rather than having to refer to another file. If you want to try it, let me know and I'll send you a sample build file. I'd be very pleased if you tried it, as I'm curious to see if other people can get it to work. With best wishes, Upayavira [EMAIL PROTECTED] wrote: >Hi all, > >has anybody managed to precompile XSP-files during the ANT build-process? >I'm able to execute a pipeline using cocoon 2.1.1 command line interface: >If I set precompile-only="false" in my custom cli.xconf, cocoon then >generates *_xsp.java and *_xsp.class files into its work directory. Fine, >but my pipeline is also executed, which I DO NOT want! > >If I specify precompile-only="true", no xsp file gets precompiled, instead >cocoon produces the following error: > >java.lang.NullPointerException > at >org.apache.cocoon.environment.AbstractEnvironment.initComponents(AbstractEnvironment.java:532) > at >org.apache.cocoon.environment.AbstractEnvironment.resolveURI(AbstractEnvironment.java:511) > at >org.apache.cocoon.environment.AbstractEnvironment.resolveURI(AbstractEnvironment.java:500) > at org.apache.cocoon.Cocoon.precompile(Cocoon.java:735) > at org.apache.cocoon.bean.CocoonBean.processXSP(CocoonBean.java:930) > at org.apache.cocoon.bean.CocoonBean.process(CocoonBean.java:636) > at org.apache.cocoon.Main.main(Main.java:375) > >This happens, because no CocoonComponentManager is instantiated, the call > >this.manager = CocoonComponentManager.getSitemapComponentManager(); > >in line 531 obviously returns null, which leads to the above NPE when >looking up the component org.apache.excalibur.source.SourceResolver. > >Seems like a bug to me, can anyone provide further details? > >Thanks a lot, >Jonas > > >---------------------------------------------------------------------------------------------------- >This electronic message contains information from the mmo2 plc Group which >may be >privileged or confidential. The information is intended to be for the use >of the >individual(s) or entity named above. If you are not the intended recipient >be aware >that any disclosure, copying, distribution or use of the contents of this >information >is prohibited. If you have received this electronic message in error, >please notify >us by telephone or email (to the numbers or address above) immediately. > > > >--------------------------------------------------------------------- >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] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]