Hi Vadim et al

Okay, I've now edited JaxpParser.java, the diff's between the 2.0.2 
version (same as the 2.0.3 version) and my modification is below.

But it doesn't work. What have I missed? Do I need to fix something 
in cocoon.xconf? I've modified it in the 2.0.2 source. ... How can I 
build a test to see if the xml parser is in fact getting the 
allow-java-encodings feature turned on? Some XSP perhaps? (I am 
really only assuming that Blackdown 1.2.2 JDK does support MacRoman, 
because the Sun JDK 1.2.2 does and we do have a 
$JAVA_HOME/jre/lib/i18n.jar file present, but this is an assumption 
that I need to question... but my feeling is that the code i've 
written into cocoon is probably just plain wrong...)

Thankyou

Jesse

bash-2.04# diff 
./src/java/org/apache/cocoon/components/parser/JaxpParser.java.orig 
./src/java/org/apache/cocoon/components/parser/JaxpParser.java
138a139,141
>      /** do we want to allow all possible text encodings recognised 
>by current JVM? */
>      protected boolean allowJavaEncodings;
>
205a209,214
>        
>          // Pick up "allow-java-encodings" to allow the use of additional
>          //   character encodings supported by current JVM (eg "MacRoman")
>          // Jesse Reynolds 2002.08.10
>          this.allowJavaEncodings = 
>params.getParameterAsBoolean("allow-java-encodings", true);
>
215a225,233
>          }
>        
>          if (this.allowJavaEncodings) {
>              try {
> 
>this.reader.setFeature("http://xml.org/sax/features/allow-java-encodings";, 
>true);
>              } catch (SAXException e) {
>                  getLogger().warn("SAX2 driver does not support 
>feature: 'allow-java-encodings' "+
> 
>"('http://xml.org/sax/features/allow-java-encodings')");
>              }


The error is the same (or similar) as before:

org.xml.sax.SAXException: Stopping after fatal error: The encoding 
"MacRoman" is not supported.

org.apache.cocoon.ProcessingException: Stopping after fatal error: 
The encoding "MacRoman" is not supported.: org.xml.sax.SAXException: 
Stopping after fatal error: The encoding "MacRoman" is not supported.
        at 
org.apache.cocoon.generation.ServerPagesGenerator.setup(ServerPagesGenerator.java, 
Compiled Code)
        at 
org.apache.cocoon.components.pipeline.AbstractEventPipeline.setupPipeline(AbstractEventPipeline.java,
 
Compiled Code)
        at 
org.apache.cocoon.components.pipeline.CachingEventPipeline.setup(CachingEventPipeline.java,
 
Compiled Code)
        at 
org.apache.cocoon.components.pipeline.CachingEventPipeline.generateKey(CachingEventPipeline.java,
 
Compiled Code)
        at 
org.apache.cocoon.components.pipeline.CachingStreamPipeline.process(CachingStreamPipeline.java,
 
Compiled Code)
        at 
org.apache.cocoon.www.afringe.sitemap_xmap.matchN10064(sitemap_xmap.java, 
Compiled Code)
        at 
org.apache.cocoon.www.afringe.sitemap_xmap.process(sitemap_xmap.java, 
Compiled Code)
        at 
org.apache.cocoon.www.afringe.sitemap_xmap.process(sitemap_xmap.java, 
Compiled Code)
        at org.apache.cocoon.sitemap.Handler.process(Handler.java, 
Compiled Code)
        at org.apache.cocoon.sitemap.Manager.invoke(Manager.java, 
Compiled Code)
        at 
org.apache.cocoon.www.sitemap_xmap.matchN10357(sitemap_xmap.java, 
Compiled Code)
        at 
org.apache.cocoon.www.sitemap_xmap.process(sitemap_xmap.java, 
Compiled Code)
        at 
org.apache.cocoon.www.sitemap_xmap.process(sitemap_xmap.java, 
Compiled Code)
        at org.apache.cocoon.sitemap.Handler.process(Handler.java, 
Compiled Code)
        at org.apache.cocoon.sitemap.Manager.invoke(Manager.java, 
Compiled Code)
        at 
org.apache.cocoon.sitemap.SitemapManager.process(SitemapManager.java, 
Compiled Code)
        at org.apache.cocoon.Cocoon.process(Cocoon.java, Compiled Code)
        at 
org.apache.cocoon.servlet.CocoonServlet.service(CocoonServlet.java, 
Compiled Code)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java, 
Compiled Code)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java,
 
Compiled Code)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java, 
Compiled Code)
        at 
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java, 
Compiled Code)
        at 
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardContext.invoke(StandardContext.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java, 
Compiled Code)
        at 
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java, 
Compiled Code)
        at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java, 
Compiled Code)
        at 
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java, 
Compiled Code)
        at 
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java, 
Compiled Code)
        at 
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java, 
Compiled Code)
        at 
org.apache.catalina.connector.http.HttpProcessor.process(HttpProcessor.java, 
Compiled Code)
        at 
org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java, 
Compiled Code)
        at java.lang.Thread.run(Thread.java, Compiled Code)
org.xml.sax.SAXException: Stopping after fatal error: The encoding 
"MacRoman" is not supported.
        at 
org.apache.xerces.framework.XMLParser.reportError(XMLParser.java, 
Compiled Code)
        at 
org.apache.xerces.readers.DefaultEntityHandler.startReadingFromDocument(DefaultEntityHandler.java,
 
Compiled Code)
        at 
org.apache.xerces.framework.XMLParser.parseSomeSetup(XMLParser.java, 
Compiled Code)
        at 
org.apache.xerces.framework.XMLParser.parse(XMLParser.java, Compiled 
Code)
        at 
org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java, Compiled 
Code)
        at 
org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java, Compiled 
Code)
        at 
org.apache.cocoon.components.language.markup.LogicsheetCodeGenerator.generateCode(LogicsheetCodeGenerator.java,
 
Compiled Code)
        at 
org.apache.cocoon.components.language.markup.AbstractMarkupLanguage.generateCode(AbstractMarkupLanguage.java,
 
Compiled Code)
        at 
org.apache.cocoon.components.language.generator.ProgramGeneratorImpl.generateResource(ProgramGeneratorImpl.java,
 
Compiled Code)
        at 
org.apache.cocoon.components.language.generator.ProgramGeneratorImpl.createResource(ProgramGeneratorImpl.java,
 
Compiled Code)
        at 
org.apache.cocoon.components.language.generator.ProgramGeneratorImpl.load(ProgramGeneratorImpl.java,
 
Compiled Code)
        at 
org.apache.cocoon.generation.ServerPagesGenerator.setup(ServerPagesGenerator.java, 
Compiled Code)
        at 
org.apache.cocoon.components.pipeline.AbstractEventPipeline.setupPipeline(AbstractEventPipeline.java,
 
Compiled Code)
        at 
org.apache.cocoon.components.pipeline.CachingEventPipeline.setup(CachingEventPipeline.java,
 
Compiled Code)
        at 
org.apache.cocoon.components.pipeline.CachingEventPipeline.generateKey(CachingEventPipeline.java,
 
Compiled Code)
        at 
org.apache.cocoon.components.pipeline.CachingStreamPipeline.process(CachingStreamPipeline.java,
 
Compiled Code)
        at 
org.apache.cocoon.www.afringe.sitemap_xmap.matchN10064(sitemap_xmap.java, 
Compiled Code)
        at 
org.apache.cocoon.www.afringe.sitemap_xmap.process(sitemap_xmap.java, 
Compiled Code)
        at 
org.apache.cocoon.www.afringe.sitemap_xmap.process(sitemap_xmap.java, 
Compiled Code)
        at org.apache.cocoon.sitemap.Handler.process(Handler.java, 
Compiled Code)
        at org.apache.cocoon.sitemap.Manager.invoke(Manager.java, 
Compiled Code)
        at 
org.apache.cocoon.www.sitemap_xmap.matchN10357(sitemap_xmap.java, 
Compiled Code)
        at 
org.apache.cocoon.www.sitemap_xmap.process(sitemap_xmap.java, 
Compiled Code)
        at 
org.apache.cocoon.www.sitemap_xmap.process(sitemap_xmap.java, 
Compiled Code)
        at org.apache.cocoon.sitemap.Handler.process(Handler.java, 
Compiled Code)
        at org.apache.cocoon.sitemap.Manager.invoke(Manager.java, 
Compiled Code)
        at 
org.apache.cocoon.sitemap.SitemapManager.process(SitemapManager.java, 
Compiled Code)
        at org.apache.cocoon.Cocoon.process(Cocoon.java, Compiled Code)
        at 
org.apache.cocoon.servlet.CocoonServlet.service(CocoonServlet.java, 
Compiled Code)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java, 
Compiled Code)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java,
 
Compiled Code)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java, 
Compiled Code)
        at 
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java, 
Compiled Code)
        at 
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardContext.invoke(StandardContext.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java, 
Compiled Code)
        at 
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java, 
Compiled Code)
        at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java, 
Compiled Code)
        at 
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java, 
Compiled Code)
        at 
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java, 
Compiled Code)
        at 
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java, 
Compiled Code)
        at 
org.apache.catalina.connector.http.HttpProcessor.process(HttpProcessor.java, 
Compiled Code)
        at 
org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java, 
Compiled Code)
        at java.lang.Thread.run(Thread.java, Compiled Code)


Original exception : org.xml.sax.SAXException: Stopping after fatal 
error: The encoding "MacRoman" is not supported.
        at 
org.apache.xerces.framework.XMLParser.reportError(XMLParser.java, 
Compiled Code)
        at 
org.apache.xerces.readers.DefaultEntityHandler.startReadingFromDocument(DefaultEntityHandler.java,
 
Compiled Code)
        at 
org.apache.xerces.framework.XMLParser.parseSomeSetup(XMLParser.java, 
Compiled Code)
        at 
org.apache.xerces.framework.XMLParser.parse(XMLParser.java, Compiled 
Code)
        at 
org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java, Compiled 
Code)
        at 
org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java, Compiled 
Code)
        at 
org.apache.cocoon.components.language.markup.LogicsheetCodeGenerator.generateCode(LogicsheetCodeGenerator.java,
 
Compiled Code)
        at 
org.apache.cocoon.components.language.markup.AbstractMarkupLanguage.generateCode(AbstractMarkupLanguage.java,
 
Compiled Code)
        at 
org.apache.cocoon.components.language.generator.ProgramGeneratorImpl.generateResource(ProgramGeneratorImpl.java,
 
Compiled Code)
        at 
org.apache.cocoon.components.language.generator.ProgramGeneratorImpl.createResource(ProgramGeneratorImpl.java,
 
Compiled Code)
        at 
org.apache.cocoon.components.language.generator.ProgramGeneratorImpl.load(ProgramGeneratorImpl.java,
 
Compiled Code)
        at 
org.apache.cocoon.generation.ServerPagesGenerator.setup(ServerPagesGenerator.java, 
Compiled Code)
        at 
org.apache.cocoon.components.pipeline.AbstractEventPipeline.setupPipeline(AbstractEventPipeline.java,
 
Compiled Code)
        at 
org.apache.cocoon.components.pipeline.CachingEventPipeline.setup(CachingEventPipeline.java,
 
Compiled Code)
        at 
org.apache.cocoon.components.pipeline.CachingEventPipeline.generateKey(CachingEventPipeline.java,
 
Compiled Code)
        at 
org.apache.cocoon.components.pipeline.CachingStreamPipeline.process(CachingStreamPipeline.java,
 
Compiled Code)
        at 
org.apache.cocoon.www.afringe.sitemap_xmap.matchN10064(sitemap_xmap.java, 
Compiled Code)
        at 
org.apache.cocoon.www.afringe.sitemap_xmap.process(sitemap_xmap.java, 
Compiled Code)
        at 
org.apache.cocoon.www.afringe.sitemap_xmap.process(sitemap_xmap.java, 
Compiled Code)
        at org.apache.cocoon.sitemap.Handler.process(Handler.java, 
Compiled Code)
        at org.apache.cocoon.sitemap.Manager.invoke(Manager.java, 
Compiled Code)
        at 
org.apache.cocoon.www.sitemap_xmap.matchN10357(sitemap_xmap.java, 
Compiled Code)
        at 
org.apache.cocoon.www.sitemap_xmap.process(sitemap_xmap.java, 
Compiled Code)
        at 
org.apache.cocoon.www.sitemap_xmap.process(sitemap_xmap.java, 
Compiled Code)
        at org.apache.cocoon.sitemap.Handler.process(Handler.java, 
Compiled Code)
        at org.apache.cocoon.sitemap.Manager.invoke(Manager.java, 
Compiled Code)
        at 
org.apache.cocoon.sitemap.SitemapManager.process(SitemapManager.java, 
Compiled Code)
        at org.apache.cocoon.Cocoon.process(Cocoon.java, Compiled Code)
        at 
org.apache.cocoon.servlet.CocoonServlet.service(CocoonServlet.java, 
Compiled Code)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java, 
Compiled Code)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java,
 
Compiled Code)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java, 
Compiled Code)
        at 
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java, 
Compiled Code)
        at 
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardContext.invoke(StandardContext.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java, 
Compiled Code)
        at 
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java, 
Compiled Code)
        at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java, 
Compiled Code)
        at 
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java, 
Compiled Code)
        at 
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java, 
Compiled Code)
        at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java, 
Compiled Code)
        at 
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java, 
Compiled Code)
        at 
org.apache.catalina.connector.http.HttpProcessor.process(HttpProcessor.java, 
Compiled Code)
        at 
org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java, 
Compiled Code)
        at java.lang.Thread.run(Thread.java, Compiled Code)



At 9:51 -0400 18/7/2002, Vadim Gritsenko wrote:
>  > From: Jesse Reynolds [mailto:[EMAIL PROTECTED]]
>>
>>  Hi
>>
>>  I'm trying to get Xerces 2 (that comes with Cocoon 2.0.2) to parse
>>  MacRoman encoded xml files.
>>
>>  According to the Xerces FAQ
>>  (http://xml.apache.org/xerces2-j/features.html) you can run the
>>  following java code to tell it to recognise and process all character
>>  encodings suppored by Java. The linux-jdk1.2.2 that I'm using does
>>  support MacRoman encoded text, so this is, of course, what I want to
>>  do:
>>
>>
>>  import javax.xml.parsers.SAXParser;
>>  import org.xml.sax.SAXException;
>>  import org.xml.sax.XMLReader;
>>
>>  SAXParser parser = /* created from SAXParserFactory */;
>>  XMLReader reader = parser.getXMLReader();
>>  try {
>>
>reader.setFeature("http://xml.org/sax/features/allow-java-encodings";,
>>                         true);
>>  }
>>  catch (SAXException e) {
>>       System.err.println("could not set parser feature");
>>  }
>>
>>
>>  Question is, how the hell to I tell Cocoon (or Tomcat????) to run
>>  this Java code after loading the Xerces parser?
>
>Cocoon does not know about this feature ATM. If you don't mind, you can
>patch JaxpParser.java to take <allow-java-encodings/> configuration
>element and set this feature to the parser.
>
>Vadim
>
>
>>  Is there any easier way to tell Xerces to allow java encodings, eg a
>>  config file or something???
>>
>>  Thanks very much
>>
>>  Jesse
>>
>>  --
>>         Jesse Reynolds - Virtual Artists Pty Ltd - http://www.va.com.au
>>
>>       Email: jesse (at) va.com.au            > Website Development
>>       Phone: +61 (0)8 8223 2288              > Web & Email Hosting
>>         Web: http://jesse.va.com.au          > Streaming Media Hosting
>
>
>---------------------------------------------------------------------
>Please check that your question  has not already been answered in the
>FAQ before posting.     <http://xml.apache.org/cocoon/faq/index.html>
>
>To unsubscribe, e-mail:     <[EMAIL PROTECTED]>
>For additional commands, e-mail:   <[EMAIL PROTECTED]>


-- 
       Jesse Reynolds - Virtual Artists Pty Ltd - http://www.va.com.au

     Email: jesse (at) va.com.au            > Website Development
     Phone: +61 (0)8 8223 2288              > Web & Email Hosting
       Web: http://jesse.va.com.au          > Streaming Media Hosting
                                            > Telehousing / Colocation

---------------------------------------------------------------------
Please check that your question  has not already been answered in the
FAQ before posting.     <http://xml.apache.org/cocoon/faq/index.html>

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

Reply via email to