Dies ist meine erste Feder-Anwendung (Maven-Projekt), die Benutzer zum Hochladen und Validieren einer Datei ermöglichen soll. Ich habe im Moment nur die Standardklasse genannt MyUI.java, die brauchen alles, was ich enthält, hier ein Auszug:erstellen Sie neue Java-Klasse im Frühjahr Anwendung
EDITED Code:
FileUploader.java
public class FileUploader extends AbstractJavaScriptComponent {
public void callScript(){//as usual, it needs a method!! JavaScript.getCurrent().execute(""
+"jsInit();" +"");
}
und Änderungen an die MyUI Klasse: `final Fileuploader Fileuploader = new Fileuploader(); // hat endgültig sein scheinbar
final Button button = new Button("Open popup");
button.addClickListener(new Button.ClickListener(){
@Override
public void buttonClick(ClickEvent event){
fileUploader.callScript();
}
});`
Ich muss den js-Aufruf in eine neue Java-Klasse in einer separaten Datei verschieben, also habe ich eine neue Klasse erstellt, die jetzt in einer eigenen Datei sitzt und AbstractJavaScriptComponent erweitert, meine Frage ist, welche Importe ich für diese Klasse brauche, alle diejenigen, die in der vorherigen Klasse außer der Benutzeroberfläche sind oder diese enthalten? Buchstäblich diese Klasse wird nur den js Anruf für jetzt haben (es gibt mehr Sachen später)? Auch, um diese Klasse nutzen zu können, muss ich vermutlich As -> maven install ausführen? Und was soll ich generell tun? cheers
Welche Importe? Entfernen Sie einfach alle Importe, lassen Sie Ihre IDE der Wahl zeigen die Kompilierungsfehler, dann importieren Sie sie aus den Vorschlägen –
OK, danke @ cricket_007 so weit meine neue Klasse sieht so aus http://pastebin.com/WQaGN8YY und meine alte ist http://pastebin.com/dKYSri1W Was muss ich tun, damit die Anwendung die JavaScript-Datei wie in der neuen Klasse aufruft? Im Moment bekomme ich Java-Fehler: '-Syntax Fehler auf Token". ", {Erwartet -Syntax Fehler auf Token" getcurrent ", Kennung nach diesem Token erwartet -Syntax Fehler, fügen Sie"} ", um ClassBody abzuschließen" Mache ich irgendwie in der alten Klasse ein Objekt der neuen Klasse? Tut mir leid, ich habe das noch nie gemacht – antobbo
Sie haben nie Frühling verwendet oder Sie haben nie eine Java-Klasse gemacht, weil das ein Syntaxfehler ist, und sollte einfach mit jeder IDE herausfinden (Ich benutze Intellij, zum Beispiel) –