2010-10-04 3 views
1

- истории Bref: -Geoserver - Подключение к SQL Server 2008 Express, и получить данные

Я использовал MapServer, все работает отлично, за исключением того, когда я рисовал маркер непосредственно на слое с использованием PIXMAP он был отрезан между плиткой. Итак, я решил перейти на GeoServer, который работает правильно, чтобы рисовать плитки, где у вас есть изображение/pixmap между плитами.

- Конец истории -

Хорошо, я могу подключиться к хранилищу данных, которая является MS SQL Server 2008 (Express Edition). Возможно, я не могу ничего показать на моей карте OpenLayer.

Пример точки в моей базе данных:

POINT (2.66131 48.8792) 
POINT (2.66131 48.8792) 
POINT (2.67789 48.8982) 
POINT (2.67789 48.8982) 
POINT (2.70361 48.9402) 
POINT (2.76454 48.9866) 

В моей GeoServer 2.0.2, я на самом деле использовать стиль по умолчанию для точки (красный квадрат точки). EPSG этих точек в базе данных «4326» и в конфигурации GeoServer, также 4326 с границами, как это:

Min X: 2 
Min Y: 46 
Max X: 8 
Max Y: 50 

ли я сделал что-то неправильно, чтобы не быть в состоянии показать, какие очки?

Редактировать Вот определение моего стола

id int (PK) 
lon float 
lat float 
geom geometry 

Вот пример запроса наступающего из GeoServer:

SELECT "id",CAST("geom".STSrid as VARCHAR) + ':' + "geom".STAsText() as "geom" FROM "TestGeom" WHERE "geom".Filter(geometry::STGeomFromText('POLYGON ((-236.25 -120.234375, -236.25 120.234375, 236.25 120.234375, 236.25 -120.234375, -236.25 -120.234375))', 0)) = 1 

Он возвращает список точек, только если я установил мой EPSG в базы данных до 0 (они все еще не отображаются в openlayer «preview»). Если я оставлю его в 4326, он ничего не вернет. Полигон, нарисованный геосервером, находится в EPSG: 0.

+0

Я голосую за то, чтобы закрыть этот вопрос как не по теме, потому что было бы лучше на http://gis.stackexchange.com/ – SteveC

+0

как мы переместим его на gis.stackexchange.com? – Nordes

+0

Я надеюсь, что модераторы могут это сделать, я не знаю, как – SteveC

ответ

1

Для тех, кто столкнулся с таким же вопросом:

я нашел причину, почему она не работает. «Native-SRC» не настроился должным образом (на самом деле у меня не было никакой ценности). На самом деле это основная причина, по которой я ничего не видел. Теперь, без уважительной причины (или чуда), после удаления всего и воссоздания всего, теперь у меня есть значение Native SRC, и все выглядит так, как ожидалось.

Фактически база данных, когда я добавил ее в GeoServer, таблицы были установлены с помощью EPSG: 0 (по умолчанию для геометрии). Но вам нужно переключить EPSG в 4326, выполнив обновление, как это:

update MyTable set MyGeom = geometry::...FromText(MyGeom.STAsText(), 4326) 

После, удалить все ссылки на GeoServer таблицу. Вам действительно нужно воссоздать все с нуля. И когда вы снова добавите свою базу данных в свою таблицу, она будет работать. Фактически, вы увидите, что «Native-SRC» будет настроен сам по себе, и вы также можете нажать на автосету BBOX вашего стола. (Min X, Y, Max X, Y)

Смежные вопросы