1

GWT-OpenLayersと呼ばれる GWT 用の OpenLayers ラッパーを使用しています。

ユーザー参照ページには、gwt.xml と .html の両方のファイルに参照を追加する必要があると書かれています。

xml で次のようにします。

 <inherits name='org.gwtopenmaps.openlayers.OpenLayers'/>

そしてこれはhtmlで

 <script src="http://openlayers.org/api/2.11/OpenLayers.js"></script>

GWT-OpenLayers にはショーケースがあり、ショーケースとまったく同じことをしています。しかし、アプリを起動してソースコードを確認しようとすると、html に openlayers スクリプトが表示されません。他のスクリプトを追加しようとしましたが、残念ながら、スクリプトはソース コードに表示されません。
更新 01 - html とブラウザーの結果:

 <head>
  ...
    <script src="http://www.openlayers.org/api/OpenLayers.js"></script>
    <script type="text/javascript" language="javascript"
        src="GeoStatistics/GeoStatistics.nocache.js"></script>
    <script type="text/javascript" src="ol/OpenLayers.js"></script>
    <script src="http://www.openstreetmap.org/openlayers/OpenStreetMap.js">
    </script>
 </head>

ブラウザ = Chrome ここに画像の説明を入力

ご覧のとおり、いくつかのスクリプトが html に追加されていますが、表示されるのは 1 つだけです。

更新 02 - コンパイル後、まだ機能しない プロジェクトをコンパイルしたばかりで、HTML にはまだスクリプト タグがありません。

しかし、html を編集してプロジェクトをロードし、script タグを取得しました。私のスクリプトタグでhtmlを生成する他の方法がない場合は、コンパイル後にタグを付けることができます。

4

2 に答える 2

2

スクリプトはアプリケーション コンテキストに読み込まれます。FireFox は FireBug または Chrome Dev Tools で使用できます。FireBugs スクリプト タブに表示される gwt オープン レイヤー ショーケースのスクリーンショットを追加します。

ここに画像の説明を入力

ステップ 1 - gwt-openlayers-client がホスト モードおよびデプロイ モードのコンパイル用の GWT プロジェクト クラスパスにあることを確認する

ステップ 2 - gwt モジュール xml ファイル内

<inherits name='org.gwtopenmaps.openlayers.OpenLayers' />

ステップ 3 - HTML head タグ内

<script src="http://openlayers.org/api/OpenLayers.js"></script>
<script src="http://openstreetmap.org/openlayers/OpenStreetMap.js"></script>
<script type="text/javascript" language="javascript"
    src="GeoStatistics/GeoStatistics.nocache.js"></script>

ステップ 4 -

public void onModuleLoad()
    {
        MapOptions mapOptions = new MapOptions();
        MapWidget mapWidget = new MapWidget( "400px", "300px", mapOptions );

        OSM osm_1 = OSM.Mapnik( "Mapnik" );
        OSM osm_2 = OSM.CycleMap( "CycleMap" );

        osm_1.setIsBaseLayer( true );
        osm_2.setIsBaseLayer( true );

        LonLat lonLat = new LonLat( 6.95, 50.94 );
        lonLat.transform( "EPSG:4326", "EPSG:900913" );

        Map map = mapWidget.getMap();
        map.addLayer( osm_1 );
        map.addLayer( osm_2 );
        map.addControl( new LayerSwitcher() );
        map.addControl( new MousePosition() );
        map.setCenter( lonLat, 12 );
        RootPanel.get().add( mapWidget );
    }
于 2013-01-03T17:49:36.013 に答える
-1

問題が見つかりました。

maven の GWT プラグインがメインの .html(gwt:compile) をコンパイルしていない

しかし、メインの html はほとんど更新されていないため、これは実際の問題ではありません。そのため、新しい .html をフォルダーに配置するだけで解決できますが、解決策ではありません。

于 2013-01-04T16:21:10.417 に答える