NullPointerException while running a custom serializer
All, I am trying to run a pipeline that ends with a custom serializer written by me. When I run the pipeline w/o a transformer in between, it runs without any errors and gives back the expected result. However, when I do include a transformer in between, it gives me this 'NullPointerException' with the following stack trace. any thoughts on what is causing this? org.apache.cocoon.ProcessingException: Failed to execute pipeline.: java.lang.RuntimeException: java.lang.NullPointerException --- java.lang.RuntimeException: java.lang.NullPointerException at org.apache.xalan.transformer.TransformerImpl.run(TransformerImpl.java:3407) at org.apache.xalan.transformer.TransformerHandlerImpl.endDocument(TransformerHandlerImpl.java:433) at org.apache.cocoon.xml.AbstractXMLPipe.endDocument(AbstractXMLPipe.java:55) at org.apache.cocoon.transformation.TraxTransformer.endDocument(TraxTransformer.java:562) at org.apache.xerces.parsers.AbstractSAXParser.endDocument(Unknown Source) at org.apache.xerces.impl.XMLDocumentScannerImpl.endEntity(Unknown Source) at org.apache.xerces.impl.XMLEntityManager.endEntity(Unknown Source) at org.apache.xerces.impl.XMLEntityScanner.load(Unknown Source) at org.apache.xerces.impl.XMLEntityScanner.skipSpaces(Unknown Source) at org.apache.xerces.impl.XMLDocumentScannerImpl$TrailingMiscDispatcher.dispatch(Unknown Source) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source) at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) at org.apache.xerces.parsers.XMLParser.parse(Unknown Source) at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source) at org.apache.excalibur.xml.impl.JaxpParser.parse(JaxpParser.java:296) at org.apache.excalibur.xml.impl.JaxpParser.parse(JaxpParser.java:315) at org.apache.cocoon.components.source.SourceUtil.parse(SourceUtil.java:269) at org.apache.cocoon.generation.FileGenerator.generate(FileGenerator.java:117) at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.processXMLPipeline(AbstractProcessingPipeline.java:530) at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.process(AbstractProcessingPipeline.java:468) at org.apache.cocoon.components.treeprocessor.sitemap.SerializeNode.invoke(SerializeNode.java:120) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:68) at org.apache.cocoon.components.treeprocessor.ContainerNode.invoke(ContainerNode.java:31) at org.apache.cocoon.components.treeprocessor.sitemap.CallNode.invoke(CallNode.java:93) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:46) at org.apache.cocoon.components.treeprocessor.sitemap.PreparableMatchNode.invoke(PreparableMatchNode.java:130) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:68) at org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:138) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:68) at org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:89) at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:240) at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:180) at org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:243) at org.apache.cocoon.components.treeprocessor.sitemap.MountNode.invoke(MountNode.java:117) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:46) at org.apache.cocoon.components.treeprocessor.sitemap.PreparableMatchNode.invoke(PreparableMatchNode.java:130) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:68) at org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:138) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:68) at org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:89) at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:240) at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:180) at org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:243) at org.apache.cocoon.components.treeprocessor.sitemap.MountNode.invoke(MountNode.java:117) at org.apache.cocoon.components.treeproces
Codeselector
Hello, the cocoon documentation mentions a codeselector on http://cocoon.apache.org/2.1/userdocs/selectors.html. Anyone knows how to define this selector in the sitemap? Couldn't find any class in the cocoon sources that resembles a code selector. Thanks! Ralph - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: XPathDirectory generator styling help
Hi Andrew, I will give this a try and report back. I have a couple other things before I get back to this particular project. Joe > > How about > > > > ? Or, if you think the characters ".xml" may appear more than once in the > filename (substring-before only looks up to the first occurrence) then maybe > > > > would be better? That assumes you don't also have e.g. any .js files in the > directory, though. > > > Andrew. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: XPathDirectory generator styling help
From: "J.D. Williams" <[EMAIL PROTECTED]> Reply-To: users@cocoon.apache.org To: users@cocoon.apache.org Subject: RE: XPathDirectory generator styling help Date: Fri, 10 Nov 2006 08:31:30 -0600 Hi Ard, I did, in fact, get it to work with some tweaking of the xsl. The snippets follow. What I would like to do now is strip the ".xml" file extension from the resulting href in the html. Suggestions? How about ? Or, if you think the characters ".xml" may appear more than once in the filename (substring-before only looks up to the first occurrence) then maybe would be better? That assumes you don't also have e.g. any .js files in the directory, though. Andrew. -- http://pseudoq.sourceforge.net/ _ Windows Live Messenger has arrived. Click here to download it for free! http://imagine-msn.com/messenger/launch80/?locale=en-gb - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: cocoon 3: first step
Reinhard Poetz wrote: Olivier wrote: Hi all Where can I find more information on cocoon 3 / OSGi I've tried http://cocoon.zones.apache.org/daisy/cocoon3/g1/1153.html but all I can obtain is 404 error pages. Is somebody make this work ? For the time being, Cocoon 3 is "on hold". As the people at the Spring project have decided to provide an integration layer for OSGi (see http://www.springframework.org/osgi), we decided to wait for the outcome of this effort. Apart from this Cocoon 2.2 (including _real_ blocks, see http://wiki.apache.org/cocoon-data/attachments/GT2006Notes/attachments/12-CocoonBlocks.pdf) has made good progress and we are close to the release of a second milestone (I guess some time in November.). If you don't want to wait, checkout trunk and follow the instructions at http://cocoon.zones.apache.org/daisy/cdocs-site-main/g1/1159.html, except that you have to use the SNAPSHOT versions of the archetypes instead. Great, I've already checkout cocoon-2.2 and make it work (inside web container). Sure it's a great job. I was looking how to proceed for adding some contribution I've build (Transactional File Writer Transformer for example). And I was wondering which version of cocoon I should target to dig the block system. So I seem to be the cocoon 2.2 ? Many thanks for the answer and for cocoon. Olivier - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: XPathDirectory generator styling help
Hi Ard, I did, in fact, get it to work with some tweaking of the xsl. The snippets follow. What I would like to do now is strip the ".xml" file extension from the resulting href in the html. Suggestions? Joe P.S. Here is what works. >From this sitemap matcher... ...we get the title of each article for use as text in the resulting html element. The following xsl... ...uses the name attribute of each file in the XPathGenerator result as the href of the elements in the resulting html... Articles Article the first Article the second ...which is all ready for tweaking and CSS-ifying and whatever you want to do to it. On Mon, 2006-11-06 at 21:28 +0100, Ard Schrijvers wrote: > Hello, > > did you manage to get it to work? Think you have some problems with xml/xsl > transformations. Also take into account the namespaces. If you are still > having problems, please let us know, or subscribe to some xsl mailinglist, > like http://www.mulberrytech.com/xsl/xsl-list/. > > Your problem is only xsl related, not browser. > > Regards > > > > > > I would like to be able to drop valid xml files into a directory and > > have them appear automagically in a menu, with the ability to > > transform > > the title of the article in the file into the text of a link > > if I want. > > > > I get the XPathDirectory generator to work with the following pipeline > > matcher. > > > > > > > > > > > > > > > > > > > > The above matcher produces the following output. > > > > > > http://apache.org/cocoon/directory/2.0"; > > name="articles" lastModified="1162301516000" date="31/10/06 07:31" > > size="4096" sort="name" reverse="false" requested="true"> > > > date="31/10/06 10:30" size="136"> > > > > Article title > > > > > > > > > > So far, so good. > > > > However, I would like to transform the XML so I can do other > > things with > > it, such as a quick and dirty dynamic HTML menu or aggregate into > > another web page as XML and subsequently transform the title elements > > into links. I have attempted the following. > > > > > > > > > > > > > > > > > > > > When I add this XSL to the matcher, still serializing as XML > > I get this > > result (when viewing the source). > > > > Article title > > > > Which looks OK, but Firefox complains with the following error. > > > > XML Parsing Error: syntax error > > Location: http://localhost:8080/sandbox/articles/ > > Line Number 1, Column 44: > encoding="ISO-8859-1"?>Article title > > ---^ > > Why is it encoded as ISO-8859-1? Everything in my sitemap says UTF-8. > > > > This happens regardless of the charset I specify in Firefox. > > Amaya also > > complains. > > > > > > > > - > > 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]
IE AJAX Focus Stuff (maybe a little off topic)
There has been a bug that has been plaguing me for a while. Though given it only happens in IE (6.0) and not Firefox I'm not really sure it is the fault of the Cocoon AJAX library but I thought I'd see if any of you have suggestions on scripts that I could play with to maybe fix it. If you are tabbing through a form with AJAX enabled and the system performs an AJAX request which updates the DOM tree then IE seems to lose the current place of the tabs and sticks you back at the top of the page. It isn't so bad for me (as I'm just the developer) but infuriating for my users who fill in the forms all the time. I'd love to be able to say "try using a browser that actually works" but unfortunately I'm not in that position. You can see it in the samples/blocks/forms/do-multipage.flow example (in 2.1.9). On the second page when are asked to "Please enter a number (will automatically set a correct value below if needed): " if you enter a number and hit Tab in IE then it will jump back to the top where you'll have to tab back through to the item again. This is, presumably, because it updates the tree and IE gets confused and loses it's position. I was thinking of maybe adding a function to set the focus of the element after the update has been done but this might present problems in itself. Just looking for any ideas or suggestions but I shall take a look at the source (obviously if I find a solution I will post the fix to save someone else the headache). Looks like the 2.1.9 source I should be looking at is ajax/cocoon.js though as my production system is currently using 2.1.8 (I was having some problems with DOJO) then I think I should be looking at org/apache/cocoon/ajax/resources/js/cocoon-ajax.js from the ajax block. Thanks for any help you might be able to provide for this issue, Gary * The information contained in this message may be confidential or legally privileged and is intended for the addressee only. If you have received this message in error or there are any problems please notify the originator immediately. The unauthorised use, disclosure, copying or alteration of this message is strictly forbidden. * - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: Antw: log4j config
Is it Coccon that produces these log4j warnings? I think they come from servlet container (Tomcat). Thus the log4j config file should be in the classpath of servlet container. The WEB-INF/log4j.xconf config file configures the cocoon logging. You have to add appenders and categories to it in order to get various logfiles. You should simply transfer the logkit.xconf content to log4j syntax. Regards, Kai > -Original Message- > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] Behalf Of > Nicolas BOUSSUGE > Sent: Friday, November 10, 2006 11:28 AM > To: users@cocoon.apache.org > Subject: Re: Antw: log4j config > > > Hello Martin, > > Thanks for your help. > I have created the "log4j.properties" with the content you mentionned in > my "src" folder, to that it is automatically put in the > "WEB-INF\classes" folder. > But unfortunately that does not change anything at Cocoon startup, I am > still getting the message : > log4j:WARN No appenders could be found for logger > (org.apache.catalina.startup.TldConfig). > log4j:WARN Please initialize the log4j system properly. > > Seems this file is not taken into account. I cannot find any trace of it > in the logs. > I am stuck here, and I cannot find more helpful documentation on log4j > integration with Cocoon. > Any help will be very appreciated... > > Best Regards, > Nicolas > > > Martin Geissler a écrit : > > Hello Nicolas, > > > > For your secound question give this a try: > > > > Create a file named " log4j.properties" at > > "D:\cocoon-2.1.9\build\webapp\WEB-INF\classes". > > Content of this file: (this line is not in file) > > > > #** > > # Root log4j appender > > log4j.rootCategory = INFO, root > > log4j.appender.root = org.apache.log4j.FileAppender > > log4j.appender.root.File = ../logs/my.log > > log4j.appender.root.layout = org.apache.log4j.PatternLayout > > log4j.appender.root.layout.ConversionPattern = %-5r %-5p [%t] %c{2} - > > %m%n > > log4j.appender.root.Append = false > > # Apache JCS cache > > log4j.category.org.apache.jcs = INFO, jcs > > log4j.appender.jcs = org.apache.log4j.FileAppender > > log4j.appender.jcs.File = ../logs/jcs.log > > log4j.appender.jcs.layout = org.apache.log4j.PatternLayout > > log4j.appender.jcs.layout.ConversionPattern = %-5r %-5p [%t] %c{2} - > > %m%n > > log4j.appender.jcs.Append = false > > #** > > > > End of file.(this line is not in file) > > With this done an error message will not occure on cocoon startup. > > Regards martin > > > > >>> Nicolas BOUSSUGE <[EMAIL PROTECTED]> Mittwoch, 8. > > November 2006 16:19 >>> > > Hello, > > > > I have 2 quick questions regargding Cocoon 2.1.9 and log4j > configuration. > > I must replace the logkit by log4j in my cocoon app. So I uncommented > > the following settings in the web.xml : > > > > > > logger-class > > > > > org.apache.avalon.excalibur.logger.Log4JLoggerManager > > > > > > > > > log4j-config > > /WEB-INF/log4j.xconf > > > > > > As a consequence, I only get one log4j file, containing all logs. > > How can I configure log4j so as to get the same categories as with the > > logkit (sitemap, forms, handled-errors...) ? > > > > Second point : > > I get the following error at Cocoon startup : > > log4j:WARN No appenders could be found for logger > > (org.apache.catalina.startup.TldConfig). > > log4j:WARN Please initialize the log4j system properly. > > What else needs to be configured ? Everything has to be in the > > log4j.xconf file, or do I need additional config files ? > > > > Thanks for your help. > > Regards, > > > > Nicolas > > > > - > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > -- > --- > Nicolas BOUSSUGE > Atos Origin - Agence Sud-Ouest > 18 av de l escadrille Normandie-Niemen BP 20 > 31701 Blagnac Cedex > > Bureau : 05.62.74.59.59 > Télécopie: 05.62.74.59.00 > > mailto :[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]
Re: Antw: log4j config
Hello Martin, Thanks for your help. I have created the "log4j.properties" with the content you mentionned in my "src" folder, to that it is automatically put in the "WEB-INF\classes" folder. But unfortunately that does not change anything at Cocoon startup, I am still getting the message : log4j:WARN No appenders could be found for logger (org.apache.catalina.startup.TldConfig). log4j:WARN Please initialize the log4j system properly. Seems this file is not taken into account. I cannot find any trace of it in the logs. I am stuck here, and I cannot find more helpful documentation on log4j integration with Cocoon. Any help will be very appreciated... Best Regards, Nicolas Martin Geissler a écrit : Hello Nicolas, For your secound question give this a try: Create a file named " log4j.properties" at "D:\cocoon-2.1.9\build\webapp\WEB-INF\classes". Content of this file: (this line is not in file) #** # Root log4j appender log4j.rootCategory = INFO, root log4j.appender.root = org.apache.log4j.FileAppender log4j.appender.root.File = ../logs/my.log log4j.appender.root.layout = org.apache.log4j.PatternLayout log4j.appender.root.layout.ConversionPattern = %-5r %-5p [%t] %c{2} - %m%n log4j.appender.root.Append = false # Apache JCS cache log4j.category.org.apache.jcs = INFO, jcs log4j.appender.jcs = org.apache.log4j.FileAppender log4j.appender.jcs.File = ../logs/jcs.log log4j.appender.jcs.layout = org.apache.log4j.PatternLayout log4j.appender.jcs.layout.ConversionPattern = %-5r %-5p [%t] %c{2} - %m%n log4j.appender.jcs.Append = false #** End of file.(this line is not in file) With this done an error message will not occure on cocoon startup. Regards martin >>> Nicolas BOUSSUGE <[EMAIL PROTECTED]> Mittwoch, 8. November 2006 16:19 >>> Hello, I have 2 quick questions regargding Cocoon 2.1.9 and log4j configuration. I must replace the logkit by log4j in my cocoon app. So I uncommented the following settings in the web.xml : logger-class org.apache.avalon.excalibur.logger.Log4JLoggerManager log4j-config /WEB-INF/log4j.xconf As a consequence, I only get one log4j file, containing all logs. How can I configure log4j so as to get the same categories as with the logkit (sitemap, forms, handled-errors...) ? Second point : I get the following error at Cocoon startup : log4j:WARN No appenders could be found for logger (org.apache.catalina.startup.TldConfig). log4j:WARN Please initialize the log4j system properly. What else needs to be configured ? Everything has to be in the log4j.xconf file, or do I need additional config files ? Thanks for your help. Regards, Nicolas - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- --- Nicolas BOUSSUGE Atos Origin - Agence Sud-Ouest 18 av de l escadrille Normandie-Niemen BP 20 31701 Blagnac Cedex Bureau : 05.62.74.59.59 Télécopie: 05.62.74.59.00 mailto :[EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: content-type=text/xml output, how to configure
Hank Ratzesberger wrote: Thanks very much for the friendly welcome. I must admit that I probably should be asking at the eXist list, but eXist is really just a ... pupae. In any case, if I get the document (actual url on request): http://myhost/exist/rest/db/css30/sitechans.xml It returns as a text/xml . If I request http://myhost/exist/rest/db/css30/sitechans.xml?_query=//sitechan[sta='GVDA']&_indent=yes It is text/html but otherwise a valid subset of the xpath result. I've changed the default serialzer to xml, and the xml serialzer I instructed to include the xml declaration. Neither made any difference to the output, so I am presuming that it is not even handled by the xml serializer (somehow). Possible, hard to tell without knowing more about your sitemap and how you hook up to exist db Please consider the issue closed. I will bring it up with the eXist group. Good luck, Patrick Best, Hank src="org.apache.cocoon.serialization.XMLSerializer"> UTF-8 no UTF-8 no - Original Message - From: "Patrick Refondini" <[EMAIL PROTECTED]> To: Sent: Thursday, November 09, 2006 3:41 PM Subject: Re: content-type=text/xml output, how to configure Hi Hank, Hank Ratzesberger wrote: I am using the eXist database which is built on Cocoon. It has a REST interface that accepts XPath and XQuery request parameters. My problem is that the returned content-type is text/html, but I want to force it to be text/xml. Is there a bare minimum sitemap.xmap file that I can start with? It seems like I change the piplelines and default serializer, etc., etc., but I get the same results. Maybe this simple example might help: In a test sitemap.xmap add: Then define a file test1.xml containing: http://www.w3.org/1999/xhtml";> HTML namespace http://www.w3.org/1999/xhtml Then define a file test2.xml containing: Default namespace nada Finally given a URL context ${YOUR_URL} with your browser hit: ${YOUR_URL}/XML_test1 ${YOUR_URL}/HTML_test1 ${YOUR_URL}/XML_test2 ${YOUR_URL}/HTML_test2 Looking at your browser page source will show you four different results, the first one being likely the result you want. For more information on e.g. controlling encoding you may want to read: http://cocoon.apache.org/2.1/userdocs/xml-serializer.html I hope this helps, Patrick Regards from a first time visitor, Hank Ratzesberger Goleta, CA - 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] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]