title: Unable to create new remote session with chromedriver
body: <p>I was previously using selenium-server-standalone-2.53.1 and chromedriver 2.22 and my acceptance was running perfectly. When I ran it today using this same version it started to fail throwing an <code>Unable to create a new remote session</code> error. Now after upgrading to selenium-server-standalone-3.0.1 and chromedriver-2.25, it's throwing almost the same error. I cant figure out why this is the case. I'm very new to Selenium and would very much appreciate any help.</p>
  
  <p><strong>After upgrade error</strong> </p>
  
  <pre><code>Nov 08, 2016 4:27:54 PM org.openqa.selenium.remote.ProtocolHandshake createSession
  INFO: Attempting bi-dialect session, assuming Postel's Law holds true on the remote end
  Nov 08, 2016 4:27:54 PM org.openqa.selenium.remote.ProtocolHandshake createSession
  INFO: Falling back to original OSS JSON Wire Protocol.
  Nov 08, 2016 4:27:54 PM org.openqa.selenium.remote.ProtocolHandshake createSession
  INFO: Falling back to straight W3C remote end connection
  
  org.openqa.selenium.SessionNotCreatedException: Unable to create new remote session. desired capabilities = Capabilities [{browserName=chrome, version=, platform=ANY}], required capabilities = Capabilities [{}]
  Build info: version: '3.0.1', revision: '1969d75', time: '2016-10-18 09:49:13 -0700'
  System info: host: 'xxx.yyy.com', ip: '172.19.10.212', os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.10.5', java.version: '1.8.0_60'
  Driver info: driver.version: RemoteWebDriver
  
  at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:91)
  at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:141)
  at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:601)
  at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:241)
  at org.openqa.selenium.remote.RemoteWebDriver.&lt;init&gt;(RemoteWebDriver.java:128)
  at org.openqa.selenium.remote.RemoteWebDriver.&lt;init&gt;(RemoteWebDriver.java:155)
  at pet.furiend.website.selenium.test.acceptance.HomePageTest.setUp(HomePageTest.java:25)
  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  at java.lang.reflect.Method.invoke(Method.java:497)
  at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
  at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
  at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
  at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
  at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
  at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
  at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:117)
  at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:42)
  at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:262)
  at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:84)
  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  at java.lang.reflect.Method.invoke(Method.java:497)
  at com.intellij.rt.execution.application.AppMain.main(AppMain.java:147)
  </code></pre>
  
  <p>-----<strong>UPDATE</strong>-----</p>
  
  <p>After making a change to the webdriver url, it seems like its starting but I get another error thrown now.</p>
  
  <pre><code>java.lang.ClassCastException: java.lang.String cannot be cast to java.util.Map
  
  at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:251)
  at org.openqa.selenium.remote.RemoteWebDriver.&lt;init&gt;(RemoteWebDriver.java:131)
  at org.openqa.selenium.remote.RemoteWebDriver.&lt;init&gt;(RemoteWebDriver.java:158)
  at pet.furiend.website.selenium.test.acceptance.HomePageTest.setUp(HomePageTest.java:25)
  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  at java.lang.reflect.Method.invoke(Method.java:497)
  at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
  at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
  at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
  at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
  at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
  at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
  at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:117)
  at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:42)
  at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:262)
  at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:84)
  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  at java.lang.reflect.Method.invoke(Method.java:497)
  at com.intellij.rt.execution.application.AppMain.main(AppMain.java:147)
  </code></pre>