Not sure why we need 2 copies of JavaMail, so I'm removing one. Both were committed by Kevin, stating that adding the larger mail.jar solved some unspecified problem (didn't go into details unfortunately), so I'm keeping that one. mail.jar has some extra classes that mailapi.jar doesn't have, so presumably the problem was caused by mailapi.jar missing those classes.

git-svn-id: http://sqlpower-library.googlecode.com/svn/trunk@904 49f7741a-0836-0410-9614-f5158065ea1e
Classpath cleanup:

* Removed duplicate servlet API jar file
* Removed Struts jar, which wasn't being used at all
* Removed HSQLDB from classpath (it's supposed to be loaded via the SPDataSource system)

Bug Fix (related to HSQLDB change): now JDBCClassLoader instances are cached and shared across SPDataSourceType instances. The cache key is an immutable list of the jar files in the classloader's classpath. This fix makes it possible to run the test suite without running out of the default PermGen memory allocation.

git-svn-id: http://sqlpower-library.googlecode.com/svn/trunk@905 49f7741a-0836-0410-9614-f5158065ea1e
Removed dependencies on struts and the servlet jsp api. Both are no longer in use.

git-svn-id: http://sqlpower-library.googlecode.com/svn/trunk@906 49f7741a-0836-0410-9614-f5158065ea1e
Whoops, forgot to move the mailapi.jar out of the classpath

git-svn-id: http://sqlpower-library.googlecode.com/svn/trunk@907 49f7741a-0836-0410-9614-f5158065ea1e
Moved the graphical query builder, the query pen, to the library for use in Architect. These classes will allow the OLAP editor to build join type cubes.

git-svn-id: http://sqlpower-library.googlecode.com/svn/trunk@908 49f7741a-0836-0410-9614-f5158065ea1e
Moved icons used by the join line and query pen from Wabit to the library.

git-svn-id: http://sqlpower-library.googlecode.com/svn/trunk@909 49f7741a-0836-0410-9614-f5158065ea1e
Turned down the logging level for the non-fatal case of a missing resource in a JDBC driver JAR file.

git-svn-id: http://sqlpower-library.googlecode.com/svn/trunk@910 49f7741a-0836-0410-9614-f5158065ea1e
Updated the getSchemas() query in both the 2005 and 2008 wrappers. Now both getSchemas() queries match!

The primary functional difference with these queries vs. the previous ones is that they tend to hide things that can be used as schemas but usually aren't (such as the db_denydatareader role, for example). These oddball sometimes-schema things do show up if they have something in them, which is nice.

git-svn-id: http://sqlpower-library.googlecode.com/svn/trunk@911 49f7741a-0836-0410-9614-f5158065ea1e
This fixes some confused logic that got into the Wabit before the
QueryPen moved to the library. For some reason the action in Wabit
was creating a join in the QueryPen and then the QueryPen created the model part of the component in the model (the QueryData) through the
QueryController. Now the action will create the join in the model and
the QueryPen will listen to its model and update when joins are created.

git-svn-id: http://sqlpower-library.googlecode.com/svn/trunk@912 49f7741a-0836-0410-9614-f5158065ea1e
Wrapping SQLException so we can attach the failing statement to it.

git-svn-id: http://sqlpower-library.googlecode.com/svn/trunk@913 49f7741a-0836-0410-9614-f5158065ea1e
Renamed the QueryData class to Query to reduce confusion.

git-svn-id: http://sqlpower-library.googlecode.com/svn/trunk@914 49f7741a-0836-0410-9614-f5158065ea1e
This is a fix for issue 7 in Wabit. If a query is executed and causes
an exception the table will be removed. If the error was in the
group by or having fields then the user will have to remove the 
grouping to be able to get the query to execute again. Now the result
tabs stay when an error occurs on execution and keeps the table headers
but replaces the rest of the table with an error message. This is also
less jarring then suddenly removing all the result tabs and pushing
them to the log tab.

git-svn-id: http://sqlpower-library.googlecode.com/svn/trunk@915 49f7741a-0836-0410-9614-f5158065ea1e
minor correction, but it should be referring to the SQL Power Library API, not the MatchMaker API

git-svn-id: http://sqlpower-library.googlecode.com/svn/trunk@916 49f7741a-0836-0410-9614-f5158065ea1e
Now any Container can be passed in as the parent to the DataEntryPanel
factory. The SwingUtilities.getWindowAncestor will be used to find
the container's ancestor if it is not a window itself.

git-svn-id: http://sqlpower-library.googlecode.com/svn/trunk@917 49f7741a-0836-0410-9614-f5158065ea1e
Introduced a QueryChangeListener and event to properly handle changes
to the Query class itself. Previously the Query class was using a
PropertyChangeEvent to fire events that were not bean property changes.

In support of this change we moved the group by, having, and order by
values into the Item class itself. This actually makes more sense for
each Item to track its values instead of having a map that tracks this
instead.



git-svn-id: http://sqlpower-library.googlecode.com/svn/trunk@918 49f7741a-0836-0410-9614-f5158065ea1e
Pulled out an old bit of code that was trying to compensate for DBMD.getColumns() returning values that were either too high, or 0.

This kind of stuff should be in the JDBC wrappers now, so I've removed it from SQLColumn. It turns out that HSQLDB reports integer columns as having a size (precision) of 0, so I implemented the fix in our HSQLDB wrapper.

There will likely be more fixes that have to be added to the wrappers as we discover them.

git-svn-id: http://sqlpower-library.googlecode.com/svn/trunk@919 49f7741a-0836-0410-9614-f5158065ea1e
Fixed a bug which prevented classes from being loaded from JAR files other than the first one in the database type's classpath.

git-svn-id: http://sqlpower-library.googlecode.com/svn/trunk@920 49f7741a-0836-0410-9614-f5158065ea1e
Removed a few dangerous public set methods that let you set a property without firing the corresponding property change event. It's a complicated problem to solve: the setXXX(boolean) method, if it fired an event, would fire an event with the correct property name, but a String-typed value.

I'm not sure this is the best solution, but all production (non-testing) code that modifies this value was already calling the generic putProperty() method. I adjusted the tests to do the same.

git-svn-id: http://sqlpower-library.googlecode.com/svn/trunk@921 49f7741a-0836-0410-9614-f5158065ea1e
Updated FancyExportableTables' headers size to account for the up and down arrow's which determine sorting. Padded the headers by a few pixels.

git-svn-id: http://sqlpower-library.googlecode.com/svn/trunk@922 49f7741a-0836-0410-9614-f5158065ea1e
Modified the fitColumnWidth method so that when it grabs the TableCellRenderer for the header, it gets it for the given column index, instead of always 0. Otherwise, the utility method only uses the header width of the first column every time, and not the header widths for other columns, which is probably not what we want.

git-svn-id: http://sqlpower-library.googlecode.com/svn/trunk@923 49f7741a-0836-0410-9614-f5158065ea1e