IllegalArgumentException from AbstractJDBCDataModel constructor which is extended by AbstractBooleanPrefJDBCDataModel ---------------------------------------------------------------------------------------------------------------------
Key: MAHOUT-380 URL: https://issues.apache.org/jira/browse/MAHOUT-380 Project: Mahout Issue Type: Bug Affects Versions: 0.3 Environment: Eclipse Reporter: Rashmi Paliwal AbstractBooleanPrefJDBCDataModel extends the AbstractJDBCDataModel. It calls the super.constructor by intentionally setting the last two argument value as null because AbstractBooleanPrefJDBCDataModel is meant where we don' have the preference value. Below is the code snippet: protected AbstractBooleanPrefJDBCDataModel(DataSource dataSource, String preferenceTable, String userIDColumn, String itemIDColumn, String preferenceColumn, String getPreferenceSQL, String getUserSQL, String getAllUsersSQL, String getNumItemsSQL, String getNumUsersSQL, String setPreferenceSQL, String removePreferenceSQL, String getUsersSQL, String getItemsSQL, String getPrefsForItemSQL, String getNumPreferenceForItemSQL, String getNumPreferenceForItemsSQL) { super(dataSource, preferenceTable, userIDColumn, itemIDColumn, preferenceColumn, getPreferenceSQL, getUserSQL, getAllUsersSQL, getNumItemsSQL, getNumUsersSQL, setPreferenceSQL, removePreferenceSQL, getUsersSQL, getItemsSQL, getPrefsForItemSQL, getNumPreferenceForItemSQL, getNumPreferenceForItemsSQL, null, null); this.setPreferenceSQL = setPreferenceSQL; } AbstractJDBCDataModel is checking for the null arguments and throwing the IlllegalArgumentException. Here is the code AbstractJDBCComponent.checkNotNullAndLog("getMaxPreferenceSQL", getMaxPreferenceSQL); AbstractJDBCComponent.checkNotNullAndLog("getMinPreferenceSQL", getMinPreferenceSQL); For this case getMaxPreferenceSQL and getMinPreferenceSQL value is null as set in the AbstractBooleanPrefJDBCDataModel class. Fix for this would be a great help. Thanks, Rashmi -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: https://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira