[
https://issues.apache.org/jira/browse/LOG4J2-409?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13774598#comment-13774598
]
Nick Williams commented on LOG4J2-409:
--------------------------------------
Thanks for reporting this, Frank. Looks like there are two distinct but related
problems here. First, the documentation should not show backslashes, because
those are indeed illegal in URIs. That's an easy fix. Second, the variable
substitution is resulting in an invalid URI (because of the backslashes). This
is a trickier problem, because variable solution has no idea what the semantics
of a variable value are. It could be a file path, a person's name, a database
connection, or someone's favorite color. We're either going to have to put some
context around variable substitution so that it can intelligently replace
backslashes with forward slashes, or we're going to have to deal with the
problem further down the line before converting values to URIs. I'm going to
have to think on this one for a bit.
> Specifying log4jConfiguration in web.xml fails on Windows when using
> ${user.home}
> ---------------------------------------------------------------------------------
>
> Key: LOG4J2-409
> URL: https://issues.apache.org/jira/browse/LOG4J2-409
> Project: Log4j 2
> Issue Type: Bug
> Affects Versions: 2.0-beta8
> Environment: Windows 7, Apache Tomcat 7, Java 7
> Reporter: Frank Steinmann
>
> When specifying the context parameter log4jConfiguration in the web.xml of a
> web application and using $\{user.home\} as part of the path, e.g.
> {code:xml}
> <context-param>
> <param-name>log4jConfiguration</param-name>
> <param-value>file://${user.home}/someDirectory/log4j2.xml</param-value>
> </context-param>
> {code}
> the following exception is thrown on Windows systems:
> {noformat}
> java.net.URISyntaxException: Illegal character in authority at index 7:
> file://C:\Users\steinman/someDirectory/log4j2.xml
> at java.net.URI$Parser.fail(Unknown Source)
> at java.net.URI$Parser.parseAuthority(Unknown Source)
> at java.net.URI$Parser.parseHierarchical(Unknown Source)
> at java.net.URI$Parser.parse(Unknown Source)
> at java.net.URI.<init>(Unknown Source)
> at
> org.apache.logging.log4j.core.config.Configurator.initialize(Configurator.java:46)
> ...
> {noformat}
> It is because of the backslashes that are not allowed in URIs.
> There is an example in the documentation using backslashes
> ([http://logging.apache.org/log4j/2.x/manual/webapp.html]) which will produce
> the same exception.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]