Buggy code:
public class MapView { public interface MapHandler { public void onPositionSelected ( Position position ) { } public void onArchivePositionSelected ( Position position ) { } } private MapView . MapHandler mapHandler ; private ContentPanel contentPanel ; public ContentPanel getView ( ) { } private MapWidget mapWidget ; private Map map ; private Vector vectorLayer ; private Markers markerLayer ; private Messages i18n = GWT . create ( Messages . class ) ; public Map getMap ( ) { } public Vector getVectorLayer ( ) { } public Markers getMarkerLayer ( ) { } public LonLat createLonLat ( double longitude , double latitude ) { } public Point createPoint ( double x , double y ) { } private void initMapLayers ( Map map ) { map . addLayer ( OSM . Mapnik ( "OpenStreetMap" ) ) ; TMSOptions seamarkOptions = new TMSOptions ( ) ; seamarkOptions . setType ( "png" ) ; seamarkOptions . setGetURL ( MapView . getTileURL ( ) ) ; <START_BUG> seamarkOptions . setNumZoomLevels ( 18 ) ; <END_BUG> seamarkOptions . setIsBaseLayer ( false ) ; seamarkOptions . setDisplayOutsideMaxExtent ( true ) ; map . addLayer ( new TMS ( i18n . seamark ( ) , "http:////t1.openseamap.org//seamark//" , seamarkOptions ) ) ; GoogleV3Options gHybridOptions = new GoogleV3Options ( ) ; gHybridOptions . setNumZoomLevels ( 20 ) ; gHybridOptions . setType ( G_HYBRID_MAP ) ; map . addLayer ( new GoogleV3 ( "Google<seq2seq4repair_space>Hybrid" , gHybridOptions ) ) ; GoogleV3Options gNormalOptions = new GoogleV3Options ( ) ; gNormalOptions . setNumZoomLevels ( 22 ) ; gNormalOptions . setType ( G_NORMAL_MAP ) ; map . addLayer ( new GoogleV3 ( "Google<seq2seq4repair_space>Normal" , gNormalOptions ) ) ; GoogleV3Options gSatelliteOptions = new GoogleV3Options ( ) ; gSatelliteOptions . setNumZoomLevels ( 20 ) ; gSatelliteOptions . setType ( G_SATELLITE_MAP ) ; map . addLayer ( new GoogleV3 ( "Google<seq2seq4repair_space>Satellite" , gSatelliteOptions ) ) ; GoogleV3Options gTerrainOptions = new GoogleV3Options ( ) ; gTerrainOptions . setNumZoomLevels ( 16 ) ; gTerrainOptions . setType ( G_TERRAIN_MAP ) ; map . addLayer ( new GoogleV3 ( "Google<seq2seq4repair_space>Terrain" , gTerrainOptions ) ) ; final String bingKey = "AseEs0DLJhLlTNoxbNXu7DGsnnH4UoWuGue7-irwKkE3fffaClwc9q_Mr6AyHY8F" ; map . addLayer ( new Bing ( new BingOptions ( "Bing<seq2seq4repair_space>Road" , bingKey , BingType . ROAD ) ) ) ; map . addLayer ( new Bing ( new BingOptions ( "Bing<seq2seq4repair_space>Hybrid" , bingKey , BingType . HYBRID ) ) ) ; map . addLayer ( new Bing ( new BingOptions ( "Bing<seq2seq4repair_space>Aerial" , bingKey , BingType . AERIAL ) ) ) ; } public static native JSObject getTileURL ( ) { } public MapView ( MapView . MapHandler mapHandler ) { } private final MapPositionRenderer latestPositionRenderer ; private final MapPositionRenderer archivePositionRenderer ; private final MapPositionRenderer latestPositionTrackRenderer ; public void showLatestPositions ( List < Position > positions ) { } public void showDeviceName ( List < Position > positions ) { } public void showLatestTrackPositions ( List < Position > positions ) { } public void showLatestTime ( List < Position > positions ) { } public void showLatestTrack ( List < Position > positions ) { } public void showArchiveTrack ( List < Position > positions ) { } public void showArchivePositions ( List < Position > positions ) { } public void showArchiveTime ( List < Position > positions ) { } public void selectDevice ( Device device ) { } public void selectArchivePosition ( Position position ) { } private SelectHandler latestPositionSelectHandler = new MapPositionRenderer . SelectHandler ( ) { @ Override public void onSelected ( Position position ) { } } ; private MouseHandler positionMouseHandler = new MapPositionRenderer . MouseHandler ( ) { @ Override public void onMouseOver ( Position position ) { } @ Override public void onMouseOut ( Position position ) { } } ; private SelectHandler archivePositionSelectHandler = new MapPositionRenderer . SelectHandler ( ) { @ Override public void onSelected ( Position position ) { } } ; public void catchPosition ( Position position ) { } private PositionInfoPopup popup = new PositionInfoPopup ( ) ; private void showPopup ( Position position ) { } private void hidePopup ( ) { } }

Fix:
seamarkOptions . setNumZoomLevels ( 20 ) ;