I am getting "$wnd.google.visualization is undefined". When I run my
project. From my understanding that error is typical from when you
miss loading the javascript api. But from what I can tell I am
loading the javascript api. Because I am using 2 other visualization
widgets ( table and pie chart ) in this project. Please tell me what
I am doing wrong with areachart.
Thanks in Advance
inherits from .xml file
<inherits name='com.google.gwt.user.theme.standard.Standard'/>
<inherits name='com.google.gwt.gears.Gears' />
<inherits name='com.google.gwt.visualization.Visualization' />
<inherits name='com.google.gwt.http.HTTP'/>
<inherits name='com.gwtext.GwtExt' />
<inherits name='com.google.gwt.widgetideas.WidgetIdeas' />
<inherits name='com.google.gwt.libideas.LibIdeas' />
the html page contains
<script type="text/javascript" src="http://www.google.com/jsapi"></
script>
class containing the AreaChart
import java.util.ArrayList;
import com.google.gwt.event.dom.client.ClickEvent;
import com.google.gwt.event.dom.client.ClickHandler;
import com.google.gwt.gears.client.Factory;
import com.google.gwt.gears.client.database.Database;
import com.google.gwt.gears.client.database.DatabaseException;
import com.google.gwt.gears.client.database.ResultSet;
import com.google.gwt.user.client.Window;
import com.google.gwt.user.client.ui.Button;
import com.google.gwt.user.client.ui.ClickListener;
import com.google.gwt.user.client.ui.FlowPanel;
import com.google.gwt.user.client.ui.Label;
import com.google.gwt.user.client.ui.Widget;
import com.google.gwt.visualization.client.AbstractDataTable;
import com.google.gwt.visualization.client.AjaxLoader;
import com.google.gwt.visualization.client.DataTable;
import
com.google.gwt.visualization.client.AbstractDataTable.ColumnType;
import com.google.gwt.visualization.client.visualizations.AreaChart;
import
com.google.gwt.visualization.client.visualizations.AreaChart.Options;
public class P1TimeLineReport extends FlowPanel implements
ClickHandler, Runnable {
//widget elements
private Button btnRun = new Button("Run");
private Database db = Factory.getInstance().createDatabase();
//widget data
private String campaignName;
private String campaignId;
private AreaChart acResults = new AreaChart();
public P1TimeLineReport(String campaignName){
db.open("dataset");
this.campaignName = campaignName ;
this.campaignId = getCampaignId(campaignName);
AjaxLoader.loadVisualizationApi(this ,AreaChart.PACKAGE);
btnRun.addClickHandler(this);
this.add(btnRun);
}
// public void onClick(Widget sender) {
// // TODO Auto-generated method stub
// AjaxLoader.loadVisualizationApi(this ,AreaChart.PACKAGE);
//
// }
public void onClick(ClickEvent event) {
// TODO Auto-generated method stub
if ( event.getSource().equals(btnRun)){
AjaxLoader.loadVisualizationApi(this
,AreaChart.PACKAGE);
}
}
public void run() {
// TODO Auto-generated method stub
/*
* this.tblResults = new Table();
this.tblResults.draw(createTableData() , createOptions());
fpTable.clear();
this.fpTable.add(tblResults);
*/
acResults.draw(createTableData());
}
public AbstractDataTable createTableData(){
//gather the data from the database
ArrayList<String> alTimeStamp = new ArrayList<String>();
ArrayList<Integer> alDialed = new ArrayList<Integer>();
ArrayList<Integer> alMessage = new ArrayList<Integer>();
ArrayList<Integer> alConnect = new ArrayList<Integer>();
String query = "SELECT LastCalled , DialStatus FROM
campaignStats
WHERE LastCalled != '' AND campaignId = '" + campaignId + "'";
try
{
ResultSet rs = db.execute(query);
while (rs.isValidRow()){
int ts = rs.getFieldAsInt(0);
if (ts % 15 == 0 )
this.add(new Label(rs.getFieldAsString(0)));
}
}
catch (DatabaseException e)
{
Window.alert(e.getMessage());
}
//build the AbstractDataTable for the
//the timeline chart
DataTable data = DataTable.create();
data.addColumn(ColumnType.STRING , "TimeStamp");
data.addColumn(ColumnType.NUMBER , "Dialed");
data.addColumn(ColumnType.NUMBER , "Left Message");
data.addColumn(ColumnType.NUMBER , "Connected");
return data ;
}
public Options createOptions()
{
Options options = Options.create();
options.setOption("sort", "enable");
return options;
}
public String getCampaignId( String campaignName){
String ret = "";
String query = "SELECT campaignId FROM campaign WHERE
campaignName = '" + campaignName + "'";
try
{
ResultSet rs = db.execute(query);
while(rs.isValidRow()){
ret = rs.getFieldAsString(0);
rs.next();
}
rs.close();
}
catch(DatabaseException e){
Window.alert(e.getMessage());
}
return ret ;
}
}
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Google Visualization API" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/google-visualization-api?hl=en
-~----------~----~----~----~------~----~------~--~---