<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -8,14 +8,24 @@
      return this;
     }
     
+    function get(url){
+     try{
+     	super.get(arguments.url);
+     }
+     catch(java.lang.RuntimeException e){
+       throwException(&quot;org.mxunit.cfwebdriver.FirefoxLoadFailureException&quot;,
+                       &quot;Failed to load Firefox&quot;,
+                       &quot;If Firefox is not located in C:/Program Files/Mozilla Firefox/, please set the path to the Firefox executable using driver.setFirefoxPath(...)&quot;);
+     }
+    }
 
-		function setFireFoxPath(path){
-		  createObject(&quot;java&quot;,&quot;java.lang.System&quot;).setProperty(&quot;webdriver.firefox.bin&quot;, path);
-		}
-		
-		function setUseExistingFireFoxInstance(toggle){
-		  createObject(&quot;java&quot;,&quot;java.lang.System&quot;).setProperty(&quot;webdriver.firefox.useExisting&quot;, toggle);
-		}
+	function setFireFoxPath(path){
+	  createObject(&quot;java&quot;,&quot;java.lang.System&quot;).setProperty(&quot;webdriver.firefox.bin&quot;, path);
+	}
+	
+	function setUseExistingFireFoxInstance(toggle){
+	  createObject(&quot;java&quot;,&quot;java.lang.System&quot;).setProperty(&quot;webdriver.firefox.useExisting&quot;, toggle);
+	}
   &lt;/cfscript&gt;
 
 &lt;/cfcomponent&gt;
\ No newline at end of file</diff>
      <filename>FirefoxDriver.cfc</filename>
    </modified>
    <modified>
      <diff>@@ -14,6 +14,8 @@
     }
     
     
+    
+    
    function isJavascriptEnabled(){
 	   return this.driver.isJavascriptEnabled();
 	 } // boolean </diff>
      <filename>HtmlUnitDriver.cfc</filename>
    </modified>
    <modified>
      <diff>@@ -1,9 +1,9 @@
-&lt;cfcomponent output=&quot;false&quot;&gt;
+&lt;cfcomponent output=&quot;false&quot; extends=&quot;WebDriver&quot;&gt;
   
   &lt;cfscript&gt;
    function init(){
   	  this.driverType = &quot;Internet Explorer&quot;;
-	    this.driver = createObject(&quot;java&quot;,&quot;org.openqa.selenium.ie.InternetExplorerDriver&quot;);
+	  this.driver = createObject(&quot;java&quot;,&quot;org.openqa.selenium.ie.InternetExplorerDriver&quot;);
       return this;
     }
   &lt;/cfscript&gt;</diff>
      <filename>InternetExplorerDriver.cfc</filename>
    </modified>
    <modified>
      <diff>@@ -107,11 +107,11 @@
 			 
 		   try{ 
 			 return findElementByLinkText(by); 
-			}catch(org.openqa.selenium.NoSuchElementException ex){} 
+		   }catch(org.openqa.selenium.NoSuchElementException ex){} 
 			 
-			 return &quot;&quot;; //return empty string, mo exception 
-			} 
-		
+		  return &quot;&quot;; //return empty string, if it's not there - no exceptions for now
+		} 
+	
 		
 		function findElementByLinkText(text){
 		  var element = createObject(&quot;component&quot;,&quot;WebElement&quot;);
@@ -137,12 +137,26 @@
 		} //java.lang.String 
 		
 		
+	   function findElementByName(name) {
+			var element = this.driver.findElement(this.by.name(name));
+			return createObject(&quot;component&quot;,&quot;WebElement&quot;).init(element);
+		} 
+	   
 	   function findElementById(id) {
-		  return this.driver.findElementById(id);
+		 var element = this.driver.findElement(this.by.id(id));
+			return createObject(&quot;component&quot;,&quot;WebElement&quot;).init(element);
 		}  //)
 		
 		function findElementsById(id) {
-		  return this.driver.findElementsById(id);
+		   var elements = arrayNew(1);
+		   var element = &quot;&quot;;
+		   var i = 1;
+		   var webelements = this.driver.findElementsById(id);
+		   for(i = 1; i lte arrayLen(webelements); i = i +1){
+			  element = createObject(&quot;component&quot;,&quot;WebElement&quot;).init(webelements[i]);
+			  elements.add(element);
+			}
+		  return elements; //array of WebElement objects
 		}  //)(java.lang.String) java.util.List 
 		
 		
@@ -165,9 +179,7 @@
 		} 
 		
 		
-		function findElementByName(name) {
-			return this.driver.findElementByName(name);
-		} 
+		
 		
 		
 		function findElementsByXPath(xpath) {
@@ -185,7 +197,8 @@
 		
 		
 		function findElementByXPath(xpath) {
-		   return this.driver.findElementByXPath(xpath);
+		   var element = this.driver.findElementByXPath(xpath);
+		   return createObject(&quot;component&quot;,&quot;WebElement&quot;).init(element);
 		} 
 		
 		
@@ -228,12 +241,10 @@
 		
 		
 		
-		
+	   
 		
 		//To Do's ......................
-		function findElements(by){  
-			throwNotImplementedException(&quot;findElements(by)&quot;);
-		} // org.openqa.selenium.By :: org.openqa.selenium.WebElement
+		
 				
 		function manage(){
 		 throwNotImplementedException(&quot;manage&quot;);
@@ -250,6 +261,13 @@
             detail=&quot;Method name: #arguments.methodName#&quot;&gt;
  &lt;/cffunction&gt;
 
-
+ &lt;cffunction name=&quot;throwException&quot;&gt;
+   &lt;cfargument name=&quot;type&quot; /&gt;
+   &lt;cfargument name=&quot;message&quot; /&gt;
+   &lt;cfargument name=&quot;detail&quot; /&gt;
+   &lt;cfthrow type=&quot;#arguments.type#&quot; 
+            message=&quot;#arguments.message#&quot; 
+            detail=&quot;#arguments.detail#&quot;&gt;
+ &lt;/cffunction&gt;
 	
 &lt;/cfcomponent&gt;
\ No newline at end of file</diff>
      <filename>WebDriver.cfc</filename>
    </modified>
    <modified>
      <diff>@@ -2,6 +2,7 @@
   &lt;cfscript&gt;  
   function doGoogleSearch(){
     driver = createObject(&quot;component&quot;,&quot;cfwebdriver.WebDriver&quot;).newInstance(&quot;firefox&quot;);
+    driver.setFirefoxPath(&quot;C:/Programs/Mozilla Firefox/firefox.exe&quot;);
     driver.get(&quot;http://google.com&quot;);
     q = driver.findElement(&quot;q&quot;);
     q.sendKeys(&quot;mxunit&quot;);</diff>
      <filename>test/example1.cfc</filename>
    </modified>
    <modified>
      <diff>@@ -1,4 +1,4 @@
 &lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
 &lt;config&gt;
- &lt;file name=&quot;mxunitblog&quot; path=&quot;file:///home/billy/webapps/cfwebdriver/test/fixture/MXUnitBlog.html&quot; /&gt;
+ &lt;file name=&quot;mxunitblog&quot; path=&quot;file:///C:/JRun4/servers/dev/cfusion.ear/cfusion.war/cfwebdriver/test/fixture/MXUnitBlog.html&quot; /&gt;
 &lt;/config&gt;</diff>
      <filename>test/internal/test-config.xml</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>51c8406c8b6cc683b94d16cdb5b7acdb445f2601</id>
    </parent>
  </parents>
  <author>
    <name>bill[y]</name>
    <email>billshelton@comcast.net</email>
  </author>
  <url>http://github.com/virtix/cfwebdriver/commit/33c9601c080a195092caba8b01d9179a9a68c92c</url>
  <id>33c9601c080a195092caba8b01d9179a9a68c92c</id>
  <committed-date>2008-10-08T13:08:54-07:00</committed-date>
  <authored-date>2008-10-08T13:08:54-07:00</authored-date>
  <message>updating findElement methods</message>
  <tree>f0019b3147652046738353077f6fe6dd532c6fd8</tree>
  <committer>
    <name>bill[y]</name>
    <email>billshelton@comcast.net</email>
  </committer>
</commit>
