[
https://issues.apache.org/jira/browse/FELIX-2338?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Valentin Valchev resolved FELIX-2338.
-------------------------------------
Assignee: Valentin Valchev
Fix Version/s: webconsole-3.0.2
Resolution: Fixed
patch commited
> Problem in the Configuration Render
> -----------------------------------
>
> Key: FELIX-2338
> URL: https://issues.apache.org/jira/browse/FELIX-2338
> Project: Felix
> Issue Type: Bug
> Components: Web Console
> Affects Versions: webconsole-3.0.0
> Environment: Skelmir CEE-J 4 VM
> Reporter: Valentin Valchev
> Assignee: Valentin Valchev
> Fix For: webconsole-3.0.2
>
> Attachments: config-render-skelmir.patch
>
>
> With some JVM implementation like Skelmir CEE-J, the configurations will not
> be printed correctly and the server will generate internal server error.
> In the log there is a long stack trace:
> --- cut here --
> Wed, 12 May 2010 13:42:40 GMT 8 ERROR [HTTP] Problem while
> making answer to request /system/console/config/Configurations.nfo from
> client address null
> java.lang.StackOverflowError
> at java/io/PrintWriter.write (Unknown Source, bco=33)
> at java/io/PrintStream.write (Unknown Source, bco=88)
> at java/io/PrintStream.writeInternal (Unknown Source, bco=20)
> at java/io/PrintStream.print (Unknown Source, bco=5)
> at java/io/PrintStream.println (Unknown Source, bco=9)
> at
> org/apache/felix/webconsole/internal/misc/ConfigurationRender$HtmlConfigurationWriter.write
> (ConfigurationRender.java:508)
> at java/io/PrintWriter.write (Unknown Source, bco=25)
> at
> org/apache/felix/webconsole/internal/misc/ConfigurationRender$HtmlConfigurationWriter.writeFiltered
> (ConfigurationRender.java:540)
> at
> org/apache/felix/webconsole/internal/misc/ConfigurationRender$HtmlConfigurationWriter.write
> (ConfigurationRender.java:510)
> at java/io/PrintWriter.write (Unknown Source, bco=25)
> at
> org/apache/felix/webconsole/internal/misc/ConfigurationRender$HtmlConfigurationWriter.writeFiltered
> (ConfigurationRender.java:540)
> at
> org/apache/felix/webconsole/internal/misc/ConfigurationRender$HtmlConfigurationWriter.write
> (ConfigurationRender.java:510)
> at java/io/PrintWriter.write (Unknown Source, bco=25)
> at
> org/apache/felix/webconsole/internal/misc/ConfigurationRender$HtmlConfigurationWriter.writeFiltered
> (ConfigurationRender.java:540)
> at
> org/apache/felix/webconsole/internal/misc/ConfigurationRender$HtmlConfigurationWriter.write
> (ConfigurationRender.java:510)
> at java/io/PrintWriter.write (Unknown Source, bco=25)
> --- cut here --
> These are the first few lines only. Obviously the different implementation of
> PrintWriter makes an endless loop between methods.
> I'm attaching a patch that:
> 1. fixes the above problem
> 2. optimizes the writer by escaping the symbols on the fly one by one
> (writing char by char is not a problem, because the Servet output is already
> buffered)
> 3. because of 2 it doesn't escape the string /using
> WebConsoleUtil.escapeHtml()/ and then write escaped one; and doesn't create a
> new StringBuffer + String objects. This reduces the used temporary memory and
> should have also influence on performance.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.