1
私のウェブサイト上にジオサーバレイヤを印刷しようとしています。私のアプリケーションと私のジオサーバーインスタンスは、別々のtomcatで動作し、異なるポートを使用しています。Openlayersがジオサーバからレイヤを印刷しない
Firefoxのネットワークインスペクタのログに、適切なPNGイメージがgeoserverからダウンロードされていることが気付きました。
http://localhost:8081/geoserver/wms?SERVICE=WMS&VERSION=1.3.0&REQUEST=GetMap&FORMAT=image/png&TRANSPARENT=true&LAYERS=graves:graves&TILED=true&STYLES=graves&CQL_FILTER=not(id < 0)&WIDTH=256&HEIGHT=256&CRS=EPSG:2001&BBOX=4762.7,-7860.5599999999995,4905.6900000000005,-7717.57
このようなリンクをブラウザで使用すると、いくつかの要素があることがわかりました。しかし、私のアプリケーションは要素のいずれも印刷しません。
私のコードは、そのように何とかです:
もちろんvar projection = new ol.proj.Projection({
code: 'EPSG:2001',
extent: [4762.7, -8003.55, 4950.55, -7717.57],
units: 'm'
});
ol.proj.addProjection(projection);
var mapcenter = [4880, -7930];
var mapzoom = 2;
var view = new ol.View({
center: mapcenter,
projection: projection,
zoom: mapzoom
});
var wmsSource = new ol.source.TileWMS({
url: 'http://localhost:8081/geoserver/wms',
params: {'LAYERS': 'graves:graves', 'TILED': true, 'STYLES': 'graves' },
serverType: 'geoserver',
crossOrigin: 'anonymous'
});
var map = new ol.Map({
layers: [
new ol.layer.Tile({
source: wmsSource
})
],
target: 'map',
controls: ol.control.defaults({
attributionOptions: /** @type {olx.control.AttributionOptions} */ ({
collapsible: false
})
}),
view: view });
私もいくつかのdivを持っている:
<div id="map" class="map" style="width: 1030px; height: 650px;border: 1px solid #0066CC;margin-bottom: 10px;"></div>
が何この問題の原因である可能性がありますか?私はFirefoxのjavascriptコンソールでエラーを見ることができません。私は完全に立ち往生していた。
よろしく
私は問題が何であるか分かりませんが、geoserverでレイヤーを4326または3857に再投影して、openlayersコードから投影を取り除こうとする可能性があります。 – ylka
私はそれをしました。私のジオサーバで宣言したレイヤの宣言SRSをEPSG:3857に変更しました。私のネイティブのバウンディングボックスは、データから計算して4,761、-8,004,4,951,7,775ですが、私は自分のアプリケーションリクエストBBOX = 0、-20037508.342789244,10018754.171394622、-10018754.171394622を発見しました。私はエクステントを[4762.7、-8003.55、4950.55、-7717.57]と見なして変更しようとしましたが、要求は変更されませんでした。 – Gandalf
問題は、ジオサーバアプリケーションと私自身のアプリケーションの別々のtomcatsに関連していることを確認しました。単一のTomcatインスタンス上で両方を実行すると、正しく動作しているようです。残念ながら、私は両方のアプリケーションを本番環境の単一のTomcatインスタンス上で実行することはできません。 – Gandalf