Author: kwright
Date: Sun Aug 26 13:56:53 2012
New Revision: 1377441
URL: http://svn.apache.org/viewvc?rev=1377441&view=rev
Log:
Default to input type text when type is absent. Part of CONNECTORS-513.
Modified:
manifoldcf/trunk/connectors/webcrawler/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/webcrawler/FormDataAccumulator.java
manifoldcf/trunk/connectors/webcrawler/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/webcrawler/FormParseState.java
manifoldcf/trunk/connectors/webcrawler/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/webcrawler/WebcrawlerConnector.java
Modified:
manifoldcf/trunk/connectors/webcrawler/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/webcrawler/FormDataAccumulator.java
URL:
http://svn.apache.org/viewvc/manifoldcf/trunk/connectors/webcrawler/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/webcrawler/FormDataAccumulator.java?rev=1377441&r1=1377440&r2=1377441&view=diff
==============================================================================
---
manifoldcf/trunk/connectors/webcrawler/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/webcrawler/FormDataAccumulator.java
(original)
+++
manifoldcf/trunk/connectors/webcrawler/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/webcrawler/FormDataAccumulator.java
Sun Aug 26 13:56:53 2012
@@ -50,67 +50,66 @@ public class FormDataAccumulator impleme
{
// Interpret the input tag, and make a list of the potential elements
we'll want to submit
String type = (String)attributes.get("type");
- if (type != null)
+ if (type == null)
+ type = "text";
+ String name = (String)attributes.get("name");
+ if (name != null)
{
- String name = (String)attributes.get("name");
- if (name != null)
+ String lowerType = type.toLowerCase();
+ if (lowerType.equals("submit"))
{
- String lowerType = type.toLowerCase();
- if (lowerType.equals("submit"))
- {
- String value = (String)attributes.get("value");
- if (value == null)
- value = "Submit Form";
- elementList.add(new
FormItem(name,value,ELEMENTCATEGORY_FREEFORM,true));
- }
- else if (lowerType.equals("hidden") || lowerType.equals("text") ||
lowerType.equals("password"))
- {
- String value = (String)attributes.get("value");
- if (value == null)
- value = "";
- elementList.add(new
FormItem(name,value,ELEMENTCATEGORY_FREEFORM,true));
- }
- else if (lowerType.equals("select"))
- {
- String value = (String)attributes.get("value");
- if (value == null)
- value = "";
- String selected = (String)attributes.get("selected");
- boolean isSelected = false;
- if (selected != null)
- isSelected = true;
- String multiple = (String)attributes.get("multiple");
- boolean isMultiple = false;
- if (multiple != null)
- isMultiple = true;
- elementList.add(new
FormItem(name,value,isMultiple?ELEMENTCATEGORY_FIXEDINCLUSIVE:ELEMENTCATEGORY_FIXEDEXCLUSIVE,isSelected));
- }
- else if (lowerType.equals("radio"))
- {
- String value = (String)attributes.get("value");
- if (value == null)
- value = "";
- String selected = (String)attributes.get("checked");
- boolean isSelected = false;
- if (selected != null)
- isSelected = true;
- elementList.add(new
FormItem(name,value,ELEMENTCATEGORY_FIXEDEXCLUSIVE,isSelected));
- }
- else if (lowerType.equals("checkbox"))
- {
- String value = (String)attributes.get("value");
- if (value == null)
- value = "";
- String selected = (String)attributes.get("checked");
- boolean isSelected = false;
- if (selected != null)
- isSelected = true;
- elementList.add(new
FormItem(name,value,ELEMENTCATEGORY_FIXEDINCLUSIVE,isSelected));
- }
- else if (lowerType.equals("textarea"))
- {
- elementList.add(new FormItem(name,"",ELEMENTCATEGORY_FREEFORM,true));
- }
+ String value = (String)attributes.get("value");
+ if (value == null)
+ value = "Submit Form";
+ elementList.add(new
FormItem(name,value,ELEMENTCATEGORY_FREEFORM,true));
+ }
+ else if (lowerType.equals("hidden") || lowerType.equals("text") ||
lowerType.equals("password"))
+ {
+ String value = (String)attributes.get("value");
+ if (value == null)
+ value = "";
+ elementList.add(new
FormItem(name,value,ELEMENTCATEGORY_FREEFORM,true));
+ }
+ else if (lowerType.equals("select"))
+ {
+ String value = (String)attributes.get("value");
+ if (value == null)
+ value = "";
+ String selected = (String)attributes.get("selected");
+ boolean isSelected = false;
+ if (selected != null)
+ isSelected = true;
+ String multiple = (String)attributes.get("multiple");
+ boolean isMultiple = false;
+ if (multiple != null)
+ isMultiple = true;
+ elementList.add(new
FormItem(name,value,isMultiple?ELEMENTCATEGORY_FIXEDINCLUSIVE:ELEMENTCATEGORY_FIXEDEXCLUSIVE,isSelected));
+ }
+ else if (lowerType.equals("radio"))
+ {
+ String value = (String)attributes.get("value");
+ if (value == null)
+ value = "";
+ String selected = (String)attributes.get("checked");
+ boolean isSelected = false;
+ if (selected != null)
+ isSelected = true;
+ elementList.add(new
FormItem(name,value,ELEMENTCATEGORY_FIXEDEXCLUSIVE,isSelected));
+ }
+ else if (lowerType.equals("checkbox"))
+ {
+ String value = (String)attributes.get("value");
+ if (value == null)
+ value = "";
+ String selected = (String)attributes.get("checked");
+ boolean isSelected = false;
+ if (selected != null)
+ isSelected = true;
+ elementList.add(new
FormItem(name,value,ELEMENTCATEGORY_FIXEDINCLUSIVE,isSelected));
+ }
+ else if (lowerType.equals("textarea"))
+ {
+ elementList.add(new FormItem(name,"",ELEMENTCATEGORY_FREEFORM,true));
}
}
}
Modified:
manifoldcf/trunk/connectors/webcrawler/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/webcrawler/FormParseState.java
URL:
http://svn.apache.org/viewvc/manifoldcf/trunk/connectors/webcrawler/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/webcrawler/FormParseState.java?rev=1377441&r1=1377440&r2=1377441&view=diff
==============================================================================
---
manifoldcf/trunk/connectors/webcrawler/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/webcrawler/FormParseState.java
(original)
+++
manifoldcf/trunk/connectors/webcrawler/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/webcrawler/FormParseState.java
Sun Aug 26 13:56:53 2012
@@ -60,7 +60,7 @@ public class FormParseState extends Link
{
String type = (String)attributes.get("type");
// We're only interested in form elements that can actually transmit
data
- if (type != null && !type.toLowerCase().equals("button") &&
!type.toLowerCase().equals("reset") && !type.toLowerCase().equals("image"))
+ if (type == null || (!type.toLowerCase().equals("button") &&
!type.toLowerCase().equals("reset") && !type.toLowerCase().equals("image")))
handler.noteFormInput(attributes);
}
else if (tagName.equals("select"))
Modified:
manifoldcf/trunk/connectors/webcrawler/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/webcrawler/WebcrawlerConnector.java
URL:
http://svn.apache.org/viewvc/manifoldcf/trunk/connectors/webcrawler/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/webcrawler/WebcrawlerConnector.java?rev=1377441&r1=1377440&r2=1377441&view=diff
==============================================================================
---
manifoldcf/trunk/connectors/webcrawler/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/webcrawler/WebcrawlerConnector.java
(original)
+++
manifoldcf/trunk/connectors/webcrawler/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/webcrawler/WebcrawlerConnector.java
Sun Aug 26 13:56:53 2012
@@ -5771,7 +5771,15 @@ public class WebcrawlerConnector extends
throws ManifoldCFException
{
if (Logging.connectors.isDebugEnabled())
- Logging.connectors.debug("WEB: Saw form element of type
'"+inputAttributes.get("type")+"' name '"+inputAttributes.get("name")+"'");
+ {
+ String type = (String)inputAttributes.get("type");
+ if (type == null)
+ type = "text";
+ String name = (String)inputAttributes.get("name");
+ if (name == null)
+ name = "(null)";
+ Logging.connectors.debug("WEB: Saw form element of type '"+type+"'
name '"+name+"'");
+ }
if (currentFormData != null)
currentFormData.addElement(inputAttributes);
}