2012-04-03 9 views
0

Ich habe gerade mit GWT begonnen. Ich machte das Tutorial gegeben here. Aber als ich ein neues Projekt erstellt und zwei Schaltflächen in einem horizontalen Panel und dann im RootPanel hinzugefügt habe, wurde mir nur der Header angezeigt, den ich in der HTML-Datei erstellt habe. Kannst du mir sagen, was der Grund sein könnte? Hier ist die Java-Klasse, die HTML und XML: Java-Klasse:Tasten in der neuen GWT App

package org.elsys.salvation.client; 

import com.google.gwt.core.client.EntryPoint; 
import com.google.gwt.user.client.ui.Button; 
import com.google.gwt.user.client.ui.HorizontalPanel; 
import com.google.gwt.user.client.ui.Label; 
import com.google.gwt.user.client.ui.RootPanel; 


public class Salvation implements EntryPoint { 

    private Button newData = new Button("New"); 
    private Button existingData = new Button("Existing"); 
    private HorizontalPanel mainHorizontalPanel = new HorizontalPanel(); 
    private Label lastUpdatedLabel = new Label(); 

    public void onModuleLoad() { 
     mainHorizontalPanel.add(newData); 
     mainHorizontalPanel.add(existingData); 
     mainHorizontalPanel.add(lastUpdatedLabel); 

     RootPanel.get("Salvation").add(mainHorizontalPanel); 
    } 

} 

Die HTML:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
<html> 
    <head> 
     <meta http-equiv="content-type" content="text/html; charset=UTF-8"> 
     <link type="text/css" rel="stylesheet" href="Salvation.css"> 
     <title>Diploma Defences Organiser</title> 
     <script type="text/javascript" language="javascript" src="stockwatcher/stockwatcher.nocache.js"></script> 
    </head> 
    <body> 

     <h1>Diploma Defences Organiser</h1> 
     <div id="Salvation"></div> 
     <iframe src="javascript:''" id="__gwt_historyFrame" tabIndex='-1' style="position:absolute;width:0;height:0;border:0"></iframe> 
     <noscript> 
      <div style="width: 22em; position: absolute; left: 50%; margin-left: -11em; color: red; background-color: white; border: 1px solid red; padding: 4px; font-family: sans-serif"> 
      Your web browser must have JavaScript enabled 
      in order for this application to display correctly. 
      </div> 
     </noscript> 
    </body> 
</html> 

Und die XML:

<?xml version="1.0" encoding="UTF-8"?> 
<module rename-to='Salvation'> 
    <!-- Inherit the core Web Toolkit stuff.      --> 
    <inherits name='com.google.gwt.user.User'/> 

    <!-- Inherit the default GWT style sheet. You can change  --> 
    <!-- the theme of your GWT application by uncommenting   --> 
    <!-- any one of the following lines.       --> 
    <inherits name='com.google.gwt.user.theme.clean.Clean'/> 
    <!-- <inherits name='com.google.gwt.user.theme.standard.Standard'/> --> 
    <!-- <inherits name='com.google.gwt.user.theme.chrome.Chrome'/> --> 
    <!-- <inherits name='com.google.gwt.user.theme.dark.Dark'/>  --> 

    <!-- Other module inherits          --> 

    <!-- Specify the app entry point class.       --> 
    <entry-point class='org.elsys.salvation.client.Salvation'/> 

    <!-- Specify the paths for translatable code     --> 
    <source path='client'/> 
    <source path='shared'/> 

</module> 
+0

Wie haben Sie das Projekt gestartet? Verwenden Sie Eclipse als codierende Umgebung? – Stefan

+0

ja, Eclipse :) – malkoto1

Antwort

0

prüfen diese Linie, ob es ist richtig oder nicht:

<script type="text/javascript" language="javascript" src="stockwatcher/stockwatcher.nocache.js"></script> 

Ich denke, Sie sollten etwas wie: Salvation/Salvation.nocache.js als Quelle des Skript-Tags haben.

+0

Ich reparierte es aber wieder nur die Kopfzeile wird angezeigt ... – malkoto1

+0

@ malkoto1 überprüfen, dass .nocache.js Datei von dieser URL aus zugänglich ist, sollte es funktionieren, wenn nocache.js Datei von dieser Seite verfügbar ist. ... –

0

Öffnen Sie in Ihrem bevorzugten Browser die Entwicklerkonsole. Sie sollten in der Lage sein, die Webanforderungen zu verfolgen. Stellen Sie sicher, dass Ihre * nocache.js-Datei aufgerufen wird und in Ordnung zurückkehrt (Status 200).

Wenn das funktioniert ok springt nichts anderes offen auf mich. Vielleicht versuchst du nicht, das div anzugeben, auf das du laden willst?

RootLayoutPanel.get().add(mainHorizontalPanel); 
+0

Das JavaScript wird aufgerufen, aber in der Konsole wird der folgende Fehler angezeigt: Uncaught TypeError: "Eigenschaft '__gwt_getProperty' von undefined nicht festgelegt werden kann und es nach dieser Codezeile angezeigt: " Funktion B() {if (p && q) {var b = m.getElementById (O); var c = b.contentWindow; if (A()) {c .__ gwt_getProperty = Funktion (a) {return F (a)}} Salvation = null; c.gwtOnLoad (y, O, s, x); n && n ({Modulname: O, Session-ID: o, Subsystem: P, EvtGroup: V, Millis: (neues Datum) .getTime(), geben Sie ein: W})}} " – malkoto1

+0

Das ist die generiert js, die visuell schwer zu debuggen sein können. Laufen Sie vom Tomcat-Server in Eclipse oder Compilieren und Deployen? –

+0

Ich benutze den Entwicklungsmodus von Eclipse und starte es einfach – malkoto1

Verwandte Themen