Hiya,

I am a Front End Developer. I am trying to learn GWT.
I think my code is pretty straightforward.
I am creating a DockPanel and in the center of it I have adding a
MapPage object that extends Vertical Panel.

Each time you click on the Map a marker appear which some text in
InfoWindow.
Interaction is pretty much what this example does :
http://gwt.google.com/samples/HelloMaps-1.0.4/HelloMaps.html#Draggable%20Markers

Ok for some reason when closing the InfoWindow using cross icon.
I get 3 alert errors, which YES/NO button to debug with IE tool:
Line: 1123
Error: 'this.ra' is null or not an object
Click NO
Line: 469
Error: 'null' is null or not an object
Click NO
Line: 469
Error: 'null' is null or not an object

In Eclipse:
com.google.gwt.core.client.JavaScriptException: (TypeError): 'null' is
null or not an object
 number: -2146823281
 description: 'null' is null or not an object
        at com.google.gwt.maps.client.impl.OverlayImpl.bindConcreteOverlay
(Native Method)
        at com.google.gwt.maps.client.overlay.Overlay$ConcreteOverlay.<init>
(Overlay.java:42)
        at com.google.gwt.maps.client.overlay.Marker.<init>(Marker.java:130)
        at com.wikik.client.pages.MapPage$3.onClick(MapPage.java:96)
        at com.google.gwt.maps.client.MapWidget$8.callback(MapWidget.java:
481)
        at com.google.gwt.maps.client.impl.EventImpl$OverlayLatLngCallback
$1.execute(EventImpl.java:193)
        at
com.google.gwt.maps.client.impl.EventImpl.invokeAndReportUncaughtExceptions
(EventImpl.java:260)
        at
com.google.gwt.maps.client.impl.EventImpl.invokeAndMaybeReportUncaughtExceptions
(EventImpl.java:246)
        at com.google.gwt.maps.client.impl.EventImpl.access$0(EventImpl.java:
241)
        at com.google.gwt.maps.client.impl.EventImpl
$OverlayLatLngCallback.callbackWrapper(EventImpl.java:191)

The code of MapPage.java


import com.google.gwt.user.client.ui.VerticalPanel;

import com.google.gwt.maps.client.InfoWindowContent;
import com.google.gwt.maps.client.MapWidget;
import com.google.gwt.maps.client.control.LargeMapControl;
import com.google.gwt.maps.client.event.MapClickHandler;
import com.google.gwt.maps.client.geom.LatLng;
import com.google.gwt.maps.client.overlay.Marker;
import com.google.gwt.maps.client.overlay.MarkerOptions;
import com.google.gwt.maps.client.InfoWindow;
import com.google.gwt.maps.client.event.MarkerDragEndHandler;
import com.google.gwt.maps.client.event.MarkerDragStartHandler;

public class MapPage extends VerticalPanel {

        private MapWidget map;
        private Marker newMarker;
        private InfoWindow info = null;

        private void createNewMarker() {
                MarkerOptions options = MarkerOptions.newInstance();
            options.setDraggable(true);
            LatLng point = LatLng.newInstance(0,0);
            newMarker = new Marker(point, options);
            newMarker.setVisible(false);

            newMarker.addMarkerDragEndHandler(new MarkerDragEndHandler() {
                public void onDragEnd(MarkerDragEndEvent event) {
                    info.open(newMarker, new InfoWindowContent("heouhr oehro
eh"));
                  }
              });

            newMarker.addMarkerDragStartHandler(new MarkerDragStartHandler()
{
                public void onDragStart(MarkerDragStartEvent event) {
                  info.setVisible(false);
                }
              });
        }

        public MapPage() {
                map = new MapWidget();
                map.setZoomLevel(2);
                map.setSize("100%", "100%");

                // Add some controls for the zoom level
                map.addControl(new LargeMapControl());

                // remember InfoWindow
                info = map.getInfoWindow();

                // initialise newMarketobject
                this.createNewMarker();

                map.addMapClickHandler(new MapClickHandler() {
                        public void onClick(MapClickEvent event) {
                                if (newMarker != null) {
                                        newMarker.setVisible(false);
                                }
                        LatLng point = event.getLatLng();
                        newMarker.setLatLng(point);
                            map.addOverlay(newMarker);

                            info.open(newMarker, new InfoWindowContent("heouhr 
oehro eh"));
                        }
                });
                map.setVisible(true);
                add(map);
  }
}

Any idea why I see some errors?

Cheers

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Google Web Toolkit" 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-Web-Toolkit?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to