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

Ondrej Lukas (JIRA) issues at jboss.org
Tue May 16 06:42:00 EDT 2017


Ondrej Lukas created ELY-1159:
---------------------------------

             Summary: 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
            Reporter: Ondrej Lukas
            Assignee: Darran Lofthouse
            Priority: Critical


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