[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [platform-swt-dev] getElement from database

hi bryan, LabelProvider implements ITableProvider. 
That error was a typing error, the best i can get is to populate my table
just with the last element from the select(i didn't understan how to let the
table viewer read for example a vector of array, or an bidimensional array).
Also, the row is written in every columns of my table.
something like
 a a a 
 b b b 
 c c c 
instead of a b c
              a b c
              a b c
Thanks,
gabriele

Bryan Hunt-2 wrote:
> 
> Gabriele, this type of question is best asked in the newsgroups.  I  
> don't see any obvious problems with the code below other than your  
> content provider returning a length instead of Object[], but I'm  
> guessing that's a typo as that won't even compile.  My guess is that  
> the problem is with your label provider.  Does your label provider  
> implement ITableLabelProvider?
> 
> Bryan
> 
> On Jun 13, 2008, at 6:43 AM, gaghi wrote:
> 
>>
>> hi guys, i'm writing a plugin for udig(based on eclipse). I have to  
>> show a
>> table which rows are the result of a DB selection. I'm able to get  
>> the rows
>> from the database, but I think I'm doing something wrong in getting  
>> them
>> back to the table.
>> Following a skeleton of my code.
>> CollectionItem defines the type of data.
>> getElement is a Content Provider method.
>> I don't really know how move on.
>> I have problems with LabelProvider which doesn't allow me to show  
>> the column
>> name because of a casting problem from CollectionItem, but i have a  
>> method
>> like this: String[] colName= coll_It.getColumnName(); this method  
>> returns a
>> string array. Trying instead to print a string array {from 1 to 10}  
>> the
>> label are printed all in the first column filling 10 rows.
>> i hope you could help.
>>
>> public class CollectionItem {
>> 	private ArrayList<Object[]> items= new ArrayList<Object[]>();
>> 	private String collection;
>> 	Object dbRow[]=null;
>> 	public CollectionItem(String collection){
>> 		this.collection=collection;
>> 		extractData();
>> 	}
>> 	
>> 	public ArrayList<Object[]> getItem(){
>> 		return items;
>> 	}
>> 	public void extractData(){
>> 		String query = "SELECT I.* FROM  Items as I  Inner Join  
>> CollectionItems AS
>> CI  ON I.ItemID = CI.ItemID where CI.CollectionID like \""+collection 
>> +"\"";
>> 		System.out.println(query);
>> 		try {
>> 			DbAction db= new DbAction("Collezione");
>> 		    Statement s = db.openConnection();
>> 			ResultSet rs = s.executeQuery(query);
>> 			ResultSetMetaData rsmd = rs.getMetaData();
>> 			dbRow= new Object[rsmd.getColumnCount()];
>> 			columnName= new Object[rsmd.getColumnCount()];
>> 			boolean done=false;
>> 			while( rs.next() )
>> 			{
>> 				for(int i =1; i <= rsmd.getColumnCount(); i++){
>> 					dbRow[i-1]=rs.getString(i);
>> 					
>> 				}
>> 				
>> 				items.add(dbRow);//fill vector with array containing rows
>> 				
>> 			}
>> 			
>> 			db.closeConnection();
>> 		}
>> 		 catch (SQLException e) {
>> 			// TODO Auto-generated catch block
>> 			e.printStackTrace();
>> 		}
>>
>> 	}
>>
>> Inside TableContentProvider:
>>
>> public Object[] getElements(Object inputElement) {
>> 		
>> 		CollectionItem ci = new CollectionItem(inputElement.toString());
>> 		return ci.getItem().toArray().length;
>> 		
>> 	}
>>
>> Thanks,
>> Gabriele
>> -- 
>> View this message in context:
>> http://www.nabble.com/getElement-from-database-tp17820811p17820811.html
>> Sent from the Eclipse Platform - swt mailing list archive at  
>> Nabble.com.
>>
>> _______________________________________________
>> platform-swt-dev mailing list
>> platform-swt-dev@xxxxxxxxxxx
>> https://dev.eclipse.org/mailman/listinfo/platform-swt-dev
> 
> _______________________________________________
> platform-swt-dev mailing list
> platform-swt-dev@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/platform-swt-dev
> 
> 

-- 
View this message in context: http://www.nabble.com/getElement-from-database-tp17820811p17825711.html
Sent from the Eclipse Platform - swt mailing list archive at Nabble.com.