“Plusieurs repères à cette ligne”

Je suis à la suite de la Stockwatcher tutoriel.

Quand j'essaie de le lancer, j'obtiens cette erreur?: "Plusieurs repères à cette ligne" (j'ai ajouté un commentaire dans la ligne ci-dessous).

package com.google.gwt.sample.stockwatcher.client;
import com.google.gwt.core.client.EntryPoint;
import com.google.gwt.event.dom.client.ClickEvent;
import com.google.gwt.event.dom.client.ClickHandler;
import com.google.gwt.event.dom.client.KeyCodes;
import com.google.gwt.event.dom.client.KeyPressEvent;
import com.google.gwt.event.dom.client.KeyPressHandler;
import com.google.gwt.i18n.client.NumberFormat;
import com.google.gwt.user.client.ui.Label;
import com.google.gwt.user.client.ui.Button;
import com.google.gwt.user.client.ui.FlexTable;
import com.google.gwt.user.client.ui.HorizontalPanel;
import com.google.gwt.user.client.ui.TextBox;
import com.google.gwt.user.client.ui.VerticalPanel;
import com.google.gwt.user.client.ui.RootPanel;
import com.google.gwt.user.client.Random;
import com.google.gwt.user.client.Timer;
import com.google.gwt.user.client.Window;
import java.util.ArrayList;
public class StockWatcher implements EntryPoint {
private static final int REFRESH_INTERVAL = 5000;
private VerticalPanel mainPanel = new VerticalPanel();
private FlexTable stocksFlexTable = new FlexTable();
private HorizontalPanel addPanel = new HorizontalPanel();
private TextBox newSymbolTextBox = new TextBox();
private Button addStockButton = new Button("Add");
private Label lastUpdatedLabel = new Label();
private ArrayList<String> stocks = new ArrayList<String>();
/**
* Entry point method.
*/
public void onModuleLoad() {
//Create table for stock data.
stocksFlexTable.setText(0, 0, "Symbol");
stocksFlexTable.setText(0, 1, "Price");
stocksFlexTable.setText(0, 2, "Change");
stocksFlexTable.setText(0, 3, "Remove");  
//Assemble Add Stock panel.
addPanel.add(newSymbolTextBox);
addPanel.add(addStockButton);
//Assemble Main panel.
mainPanel.add(stocksFlexTable);
mainPanel.add(addPanel);
mainPanel.add(lastUpdatedLabel);
//Associate the Main panel with the HTML host page.
RootPanel.get("stockList").add(mainPanel);    
//Move cursor focus to the input box.
newSymbolTextBox.setFocus(true);
//Setup timer to refresh list automatically.
Timer refreshTimer = new Timer() {
@Override
public void run() {
refreshWatchList();
}
};
refreshTimer.scheduleRepeating(REFRESH_INTERVAL); //THIS IS THE LINE OF THE 
//Listen for mouse events on the Add button.
addStockButton.addClickHandler(new ClickHandler() {
public void onClick(ClickEvent event) {
addStock();
}
});
//Listen for keyboard events in the input box.
newSymbolTextBox.addKeyPressHandler(new KeyPressHandler() {
public void onKeyPress(KeyPressEvent event) {
System.out.println("foo=" + KeyCodes.KEY_ENTER);
System.out.println("bar=" + (int)event.getCharCode());
if (event.getCharCode() == KeyCodes.KEY_ENTER) {
addStock();
}
}
});
}
/**
* Add stock to FlexTable. Executed when the user clicks the addStockButton or
* presses enter in the newSymbolTextBox.
*/
private void addStock() {
final String symbol = newSymbolTextBox.getText().toUpperCase().trim();
newSymbolTextBox.setFocus(true);
//Stock code must be between 1 and 10 chars that are numbers, letters, or dots.
if (!symbol.matches("^[0-9A-Z\\.]{1,10}$")) {
Window.alert("'" + symbol + "' is not a valid symbol.");
newSymbolTextBox.selectAll();
return;
}
newSymbolTextBox.setText("");
//Don't add the stock if it's already in the table.
if (stocks.contains(symbol))
return;
//Add the stock to the table.
int row = stocksFlexTable.getRowCount();
stocks.add(symbol);
stocksFlexTable.setText(row, 0, symbol);
//Add a button to remove this stock from the table.
Button removeStockButton = new Button("x");
removeStockButton.addClickHandler(new ClickHandler() {
public void onClick(ClickEvent event) {
int removedIndex = stocks.indexOf(symbol);
stocks.remove(removedIndex);        stocksFlexTable.removeRow(removedIndex + 1);
}
});
stocksFlexTable.setWidget(row, 3, removeStockButton);
//Get the stock price.
refreshWatchList();
}
private void refreshWatchList() {
final double MAX_PRICE = 100.0; //$100.00
final double MAX_PRICE_CHANGE = 0.02; //+/- 2%
StockPrice[] prices = new StockPrice[stocks.size()];
for (int i = 0; i < stocks.size(); i++) {
double price = Random.nextDouble() * MAX_PRICE;
double change = price * MAX_PRICE_CHANGE
* (Random.nextDouble() * 2.0 - 1.0);
prices[i] = new StockPrice(stocks.get(i), price, change);
}
updateTable(prices);
}
/**
* Update the Price and Change fields all the rows in the stock table.
*
* @param prices Stock data for all rows.
*/
private void updateTable(StockPrice[] prices) {
for (int i = 0; i < prices.length; i++) {
updateTable(prices[i]);
}
}
/**
* Update a single row in the stock table.
*
* @param price Stock data for a single row.
*/
private void updateTable(StockPrice price) {
//Make sure the stock is still in the stock table.
if (!stocks.contains(price.getSymbol())) {
return;
}
int row = stocks.indexOf(price.getSymbol()) + 1;
//Format the data in the Price and Change fields.
String priceText = NumberFormat.getFormat("#,##0.00").format(
price.getPrice());
NumberFormat changeFormat = NumberFormat.getFormat("+#,##0.00;-#,##0.00");
String changeText = changeFormat.format(price.getChange());
String changePercentText = changeFormat.format(price.getChangePercent());
//Populate the Price and Change fields with new data.
stocksFlexTable.setText(row, 1, priceText);
stocksFlexTable.setText(row, 2, changeText + " (" + changePercentText
+ "%)");
}
}

C'est la pile d'erreurs:

StockWatcher [Web Application]  
com.google.gwt.dev.DevMode at localhost:56938   
Thread [main] (Running) 
Thread [Thread-1] (Running) 
Daemon Thread [Thread-2] (Running)  
Daemon Thread [UnitWriteThread] (Running)   
Daemon Thread [Timer-0] (Running)   
Daemon Thread [Code server listener] (Running)  
Daemon Thread [com.google.gwt.thirdparty.guava.common.base.internal.Finalizer] (Running)    
Thread [2048426764@qtp-774727454-1 - Acceptor0 SelectChannelConnector@0.0.0.0:8888] (Running)   
Thread [2108438076@qtp-774727454-0] (Running)   
Daemon Thread [Timer-1] (Running)   
Daemon Thread [Code server for stockwatcher from Mozilla/5.0 (X11; Linux x86_64; rv:7.0.1) Gecko/20100101 Firefox/7.0.1 on http://127.0.0.1:8888/StockWatcher.html?gwt.codesvr=127.0.0.1:9997 @ 1hS?FL4(4E4"'T^J] (Suspended (breakpoint at line 67 in StockWatcher))   
StockWatcher.onModuleLoad() line: 67    
NativeMethodAccessorImpl.invoke0(Method, Object, Object[]) line: not available [native method]  
NativeMethodAccessorImpl.invoke(Object, Object[]) line: 57  
DelegatingMethodAccessorImpl.invoke(Object, Object[]) line: 43  
Method.invoke(Object, Object...) line: 601  
ModuleSpaceOOPHM(ModuleSpace).onLoad(TreeLogger) line: 396  
OophmSessionHandler.loadModule(BrowserChannelServer, String, String, String, String, String, byte[]) line: 200  
BrowserChannelServer.processConnection() line: 525  
BrowserChannelServer.run() line: 363    
Thread.run() line: 722  
/usr/lib/jdk1.7.0_01/bin/java (Nov 22, 2011 12:45:50 PM)    

Javi

  • Êtes-vous à l'aide d'Eclipse? Si oui, de Multiples Marqueurs ...' est Eclipse façon de vous dire qu'il y a plusieurs erreurs sur la ligne. Essayez d'actualiser le dossier du projet et de faire un build - il pourrait être simplement Eclipse être spécial.
  • oui, je suis en utilisant Eclipse. J'ai choisi le projet, puis actualisé, mais l'erreur est la même... je tiens à le construire comme vous le dites mais je ne trouve pas que l'action et je ne suis pas sûr si cela allait résoudre mon problème, car jusqu'à maintenant je n'ai pas vu anythink liées à la construction de la Stockwatcher app...
  • eh bien j'ai trouvé l'option de compilation, mais il n'est pas actif, même lorsque je sélectionne le projet à partir de l'explorateur. "Génération automatique" est activé.
  • ^B est généralement de l'Éclipse commande build - dans le cas contraire, choisissez Projet / Propre après vous être assuré de Projet / Construire Automatiquement est cochée. En outre, l'ouverture de la Fenêtre / Afficher / Problèmes et vous devriez obtenir une liste des erreurs de compilation dans votre espace de travail.
  • Je ne vois rien à mes Problèmes de la fenêtre. Les erreurs sont pour moi a montré au Show view / mode de Développement.
  • Vous pouvez vous procurer une liste des erreurs de quelque façon?
  • Je l'ai collé dans ma question.
  • laissez-nous continuer cette discussion dans le chat
  • Essayez de supprimer le dossier que GWT crée après la compilation dans la guerre répertoire, puis redéployer.
  • Ce n'est pas le s'tack des erreurs". C'est une liste de ce qui s'est passé au moment de l'exécution lors de l'exécution il. Nous sommes à la recherche pour les erreurs de compilation ici.

InformationsquelleAutor ziiweb | 2011-11-22