[jboss-jira] [JBoss JIRA] (ELY-1159) Windows delimiter '\' cannot be used in any path in Elytron client configuration file

Farah Juma (JIRA) issues at jboss.org
Tue Sep 12 15:06:00 EDT 2017


     [ https://issues.jboss.org/browse/ELY-1159?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Farah Juma resolved ELY-1159.
-----------------------------
    Fix Version/s: 1.1.0.CR1
       Resolution: Done


> Windows delimiter '\' cannot be used in any path in Elytron client configuration file
> -------------------------------------------------------------------------------------
>
>                 Key: ELY-1159
>                 URL: https://issues.jboss.org/browse/ELY-1159
>             Project: WildFly Elytron
>          Issue Type: Bug
>    Affects Versions: 1.1.0.Beta42
>            Reporter: Ondrej Lukas
>            Priority: Critical
>             Fix For: 1.1.0.CR1
>
>
> When Elytron client configuration file includes some path (e.g. for keystore) with Windows delimiter '\' then this path cannot be parsed. When Windows delimiter '\' is replaced by linux delimiter '/' then resource on given path can be loaded correctly. That means it is user experience issue since common Windows path cannot be used in Elytron client configuration file, but wokraround (using '/') is simple.
> None of following types of path work:
> {code}
> C:\some\path\to\client.truststore
> C:\\some\\path\\to\\client.truststore
> {code}
> Following type of path works on Windows correctly:
> {code}
> C:/some/path/to/client.truststore
> {code}
> Following exception is thrown when '\' is used in Elytron client configuration file (the same exception is thrown when '\' is escaped in path):
> {code}
> org.wildfly.client.config.ConfigXMLParseException: CONF0020: Failed to parse expression value of attribute "name"
> 	at vfs:/W:/workspace/eap-7x-security-elytron-testsuite-windows/f43f9016/tests-security/elytron/content/wildfly-config-xml-dep.war/META-INF/wildfly-config.xml:18:1
> 	at org.wildfly.client.config.ConfigurationXMLStreamReader.getExpressionAttributeValue(ConfigurationXMLStreamReader.java:685)
> 	at org.wildfly.client.config.ConfigurationXMLStreamReader.getAttributeValueResolved(ConfigurationXMLStreamReader.java:330)
> 	at org.wildfly.security.auth.client.ElytronXmlParser.parseNameType(ElytronXmlParser.java:1697)
> 	at org.wildfly.security.auth.client.ElytronXmlParser.parseNameType(ElytronXmlParser.java:1680)
> 	at org.wildfly.security.auth.client.ElytronXmlParser.parseKeyStoreType(ElytronXmlParser.java:1225)
> 	at org.wildfly.security.auth.client.ElytronXmlParser.parseKeyStoresType(ElytronXmlParser.java:1113)
> 	at org.wildfly.security.auth.client.ElytronXmlParser.parseAuthenticationClientType(ElytronXmlParser.java:279)
> 	at org.wildfly.security.auth.client.ElytronXmlParser.parseAuthenticationClientConfiguration(ElytronXmlParser.java:180)
> 	at org.wildfly.security.auth.client.ElytronXmlParser.parseAuthenticationClientConfiguration(ElytronXmlParser.java:141)
> 	at com.redhat.eap.qe.elytron.authnctx.WildflyConfigXmlServlet.parseAndCreateAuthenticationClientConfiguration(WildflyConfigXmlServlet.java:116)
> 	... 41 more
> Caused by: java.lang.IllegalArgumentException: COM00009: Invalid expression syntax at position 2
> 	W:\workspace\eap-7x-security-elytron-testsuite-windows\f43f9016\tests-security\elytron\target\client.keystore
> 	  ^
> 	at org.wildfly.common.expression.Expression.invalidExpressionSyntax(Expression.java:654)
> 	at org.wildfly.common.expression.Expression.parseString(Expression.java:610)
> 	at org.wildfly.common.expression.Expression.compile(Expression.java:203)
> 	at org.wildfly.common.expression.Expression.compile(Expression.java:183)
> 	at org.wildfly.client.config.ConfigurationXMLStreamReader.getExpressionAttributeValue(ConfigurationXMLStreamReader.java:683)
> 	... 50 more
> {code}



--
This message was sent by Atlassian JIRA
(v7.2.3#72005)


More information about the jboss-jira mailing list