Ola Ricardo,<br><br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<br>
<span style="color: rgb(102, 102, 102);">Não sendo especialista em postgis/geoserver/openlayers, mas já tendo</span><br style="color: rgb(102, 102, 102);"><span style="color: rgb(102, 102, 102);">
feito alguns testes com estas tecnologias, queria só deixar uns</span><br style="color: rgb(102, 102, 102);"><span style="color: rgb(102, 102, 102);">
reparos e espero que alguém mais competente possa dar uma ajuda</span><br style="color: rgb(102, 102, 102);"><span style="color: rgb(102, 102, 102);">
melhor.</span><br></blockquote><div><br>Agradeço muito os comentários.<br> <br></div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<span style="color: rgb(102, 102, 102);">- O extracto de código SQL que mostras parece indicar que a layer dos</span><br style="color: rgb(102, 102, 102);"><span style="color: rgb(102, 102, 102);">
eixos de via está bem definida, uma vez que a definição da tabela</span><br style="color: rgb(102, 102, 102);"><span style="color: rgb(102, 102, 102);">
parece correcta e existe também uma entrada para a layer na tabela</span><br style="color: rgb(102, 102, 102);"><span style="color: rgb(102, 102, 102);">
geometry_columns, com indicação para o SRS que estás a usar, que é o</span><br style="color: rgb(102, 102, 102);"><span style="color: rgb(102, 102, 102);">
epsg:20791. Até existem as constraints que forçam a coluna da</span><br style="color: rgb(102, 102, 102);"><span style="color: rgb(102, 102, 102);">
geometria (que no caso se chama 'the_geom') a ter os valores</span><br style="color: rgb(102, 102, 102);"><span style="color: rgb(102, 102, 102);">
correctos. Assim sendo, ao contrário do que havia dito o Luís, penso</span><br style="color: rgb(102, 102, 102);"><span style="color: rgb(102, 102, 102);">
que o postgis está ciente de qual o sistema de coordenadas usado na</span><br style="color: rgb(102, 102, 102);"><span style="color: rgb(102, 102, 102);">
layer. Assim sendo não me parece que o problema venha da base de</span><br style="color: rgb(102, 102, 102);"><span style="color: rgb(102, 102, 102);">
dados.</span><br style="color: rgb(102, 102, 102);"></blockquote><div><br>Obrigado por confirmar isto.<br> <br></div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<br style="color: rgb(102, 102, 102);"><span style="color: rgb(102, 102, 102);">
- O extracto de código que mostras para a transacção WFS-T parece</span><br style="color: rgb(102, 102, 102);"><span style="color: rgb(102, 102, 102);">
funcionar correctamente. Tenho algumas dúvidas sobre alguns</span><br style="color: rgb(102, 102, 102);"><span style="color: rgb(102, 102, 102);">
parâmetros, mas como não sou entendido no assunto deixo apenas uns</span><br style="color: rgb(102, 102, 102);"><span style="color: rgb(102, 102, 102);">
reparos:</span><br style="color: rgb(102, 102, 102);"><span style="color: rgb(102, 102, 102);">
- porque fazes referência ao namespace 'topp' e a alguns tipos de</span><br style="color: rgb(102, 102, 102);"><span style="color: rgb(102, 102, 102);">
dados definidos por esse namespace? De qualquer forma não sei se é</span><br style="color: rgb(102, 102, 102);"><span style="color: rgb(102, 102, 102);">
relevante...</span><br></blockquote><div><br>O topp faz referencia ao namespace onde é instanciado o resource. Eu estava a utilizar o namespace topp, que já bem criado com o Geoserver, mas agora experimentei com um namespace próprio criado por mim e não esta nenhuma mudança, tenho a sensação que aqui no esta o problema, mas se alguém poder confirmar isto era óptimo.<br>
<br></div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<span style="color: rgb(102, 102, 102);"> - porque fazes referência a outro sistema de coordenadas,</span><br style="color: rgb(102, 102, 102);"><span style="color: rgb(102, 102, 102);">
nomeadamente o epsg:4326 (vulgo wgs84 lat/lon)?</span></blockquote><div><br>Isto foi porque utilicei o <span style="color: rgb(51, 102, 255);">Demos Request</span> do Geoserver e esqueci de alterar este parâmetro.<code class="focusRow subFocusRow "><font style="font-family: courier new,monospace;" size="4"><font size="2"><span style="font-family: arial,helvetica,sans-serif;">Agora seguem os pedidos feitos utilizando openlayers. O namespace agora chama-se <span style="font-family: courier new,monospace;">space.</span></span></font><br>
</font><br></code><br><b>Visualizar Antes </b>de inserir uma linha <br>Isto é o GML que volta quando tento visualizar a layer de linhas via WFS com Openlayers. Nao esta a voltar as linhas já existentes na base de dados.<br>
<div selected class="netInfoResponseText
netInfoText "><pre><code class="wrappedText focusRow"><?xml version="1.0" encoding="UTF-8"?><br><wfs:FeatureCollection <br>xmlns="<a href="http://www.opengis.net/wfs">http://www.opengis.net/wfs</a>" xmlns</code><code class="wrappedText focusRow">:wfs="<a href="http://www.opengis.net/wfs">http://www.opengis.net/wfs</a>" <br>
xmlns:gml="<a href="http://www.opengis.net/gml">http://www.opengis.net/gml</a>" <br>xmlns:space="<a href="http://192.168">http://192.168</a></code><code class="wrappedText focusRow">.58.173:8080/space" <br>
xmlns:xsi="<a href="http://www.w3.org/2001/XMLSchema-instance">http://www.w3.org/2001/XMLSchema-instance</a>" <br>xsi:schemaLocation="http:/</code><code class="wrappedText focusRow">/<a href="http://192.168.58.173:8080/space">192.168.58.173:8080/space</a> <br>
<a href="http://192.168.58.173:8080/geoserver/wfs?service=WFS&amp;version=1.0.0&amp">http://192.168.58.173:8080/geoserver/wfs?service=WFS&amp;version=1.0.0&amp</a></code><code class="wrappedText focusRow">;request=DescribeFeatureType&amp;typeName=space%3Aeixos_via_peniche <br>
<a href="http://www.opengis.net/wfs">http://www.opengis.net/wfs</a> http:</code><code class="wrappedText focusRow">//<a href="http://192.168.58.173:8080/geoserver/schemas/wfs/1.0.0/WFS-basic.xsd">192.168.58.173:8080/geoserver/schemas/wfs/1.0.0/WFS-basic.xsd</a>"><br>
</code></pre><div style="margin-left: 40px;"><code class="wrappedText focusRow"><gml:boundedBy></code><br><code class="wrappedText focusRow"><gml:null>unknown</gml</code><code class="wrappedText focusRow">:null></code><br>
<code class="wrappedText focusRow"></gml:boundedBy></code><br><code class="wrappedText focusRow"></code></div><pre><code class="wrappedText focusRow"></wfs:FeatureCollection></code></pre></div>Este
o pedido feito para <b>inserir uma linha</b>:<br>
<font size="1"><br style="font-family: courier new,monospace;">
<span style="font-family: courier new,monospace;"><wfs:Transaction
xmlns:wfs="<a href="http://www.opengis.net/wfs">http://www.opengis.net/wfs</a>" version="1.0.0" service="WFS"><br>
<wfs:Insert><br>
</span></font>
<div style="margin-left: 40px;"><font size="1"><span style="font-family: courier new,monospace;"><feature:eixos_via_peniche
xmlns:feature="<a href="http://192.168.58.173:8080/space">http://192.168.58.173:8080/space</a>"></span><br style="font-family: courier new,monospace;">
<span style="font-family: courier new,monospace;"><feature:the_geom></span><br style="font-family: courier new,monospace;">
<span style="font-family: courier new,monospace;"><gml:MultiLineString
xmlns:gml="<a href="http://www.opengis.net/gml">http://www.opengis.net/gml</a>"></span><br style="font-family: courier new,monospace;">
<span style="font-family: courier new,monospace;"><gml:lineStringMember></span><br style="font-family: courier new,monospace;">
<span style="font-family: courier new,monospace;"><gml:LineString></span><br style="font-family: courier new,monospace;">
<span style="font-family: courier new,monospace;"><gml:coordinates
decimal="." cs="," ts=" ">-9.2917728881836,39.366651153564
-9.2948627929688,39.38381729126</gml:coordinates></span><br style="font-family: courier new,monospace;">
<span style="font-family: courier new,monospace;"></gml:LineString></span><br style="font-family: courier new,monospace;">
<span style="font-family: courier new,monospace;"></gml:lineStringMember></span><br style="font-family: courier new,monospace;">
<span style="font-family: courier new,monospace;"></gml:MultiLineString></span><br style="font-family: courier new,monospace;">
<span style="font-family: courier new,monospace;"></feature:the_geom></span><br style="font-family: courier new,monospace;">
<span style="font-family: courier new,monospace;"></feature:eixos_via_peniche></span><br style="font-family: courier new,monospace;">
</font></div>
<font size="1"><span style="font-family: courier new,monospace;"></wfs:Insert></span><br style="font-family: courier new,monospace;">
<span style="font-family: courier new,monospace;"></wfs:Transaction></span></font><code class="focusRow subFocusRow "><font style="font-family: courier new,monospace;" size="4"><br><br></font></code><b>Visualizar Depois </b>de inserir uma linha <br>
Isto é o GML que volta quando tento visualizar a layer de linhas via WFS
com Openlayers. Aqui só mostra a ultima linha inserida, e não as restantes 5129 que já existiam. <br><br><div selected class="netInfoResponseText
netInfoText "><pre><code class="wrappedText focusRow"><?xml version="1.0" encoding="UTF-8"?><wfs:FeatureCollection <br>xmlns="<a href="http://www.opengis.net/wfs">http://www.opengis.net/wfs</a>" <br>
xmlns</code><code class="wrappedText focusRow">:wfs="<a href="http://www.opengis.net/wfs">http://www.opengis.net/wfs</a>" <br>xmlns:gml="<a href="http://www.opengis.net/gml">http://www.opengis.net/gml</a>" <br>
xmlns:space="<a href="http://192.168">http://192.168</a></code><code class="wrappedText focusRow">.58.173:8080/space" <br>xmlns:xsi="<a href="http://www.w3.org/2001/XMLSchema-instance">http://www.w3.org/2001/XMLSchema-instance</a>" <br>
xsi:schemaLocation="http:/</code><code class="wrappedText focusRow">/<a href="http://192.168.58.173:8080/space">192.168.58.173:8080/space</a> <br><a href="http://192.168.58.173:8080/geoserver/wfs?service=WFS&amp;version=1.0.0&amp">http://192.168.58.173:8080/geoserver/wfs?service=WFS&amp;version=1.0.0&amp</a></code><code class="wrappedText focusRow">;request=DescribeFeatureType&amp;typeName=space%3Aeixos_via_peniche <br>
<a href="http://www.opengis.net/wfs">http://www.opengis.net/wfs</a> http:</code><code class="wrappedText focusRow">//<a href="http://192.168.58.173:8080/geoserver/schemas/wfs/1.0.0/WFS-basic.xsd">192.168.58.173:8080/geoserver/schemas/wfs/1.0.0/WFS-basic.xsd</a>"><br>
<gml:boundedBy><br><gml:null>unknown</gml</code><code class="wrappedText focusRow">:null><br></gml:boundedBy><br><gml:featureMember><br></code></pre><div style="margin-left: 40px;"><code class="wrappedText focusRow"><space:eixos_via_peniche fid="eixos_via_peniche.5129"></code><br>
<code class="wrappedText focusRow"><space</code><code class="wrappedText focusRow">:the_geom></code><br><code class="wrappedText focusRow"><gml:MultiLineString srsName="<a href="http://www.opengis.net/gml/srs/epsg.xml#20791">http://www.opengis.net/gml/srs/epsg.xml#20791</a>"></code><br>
<code class="wrappedText focusRow"><gml:lineStringMember</code><code class="wrappedText focusRow">></code><br><code class="wrappedText focusRow"><gml:LineString></code><br><code class="wrappedText focusRow"><gml:coordinates xmlns:gml="<a href="http://www.opengis.net/gml">http://www.opengis.net/gml</a>" decimal="." cs="," ts=" ">-9</code><code class="wrappedText focusRow">.29520612,39.36802444 -9.33159833,39.36493454</gml:coordinates></code><br>
<code class="wrappedText focusRow"></gml:LineString></code><br><code class="wrappedText focusRow"></gml:lineStringMember</code><code class="wrappedText focusRow">></code><br><code class="wrappedText focusRow"></gml:MultiLineString></code><br>
<code class="wrappedText focusRow"></space:the_geom></code><br><code class="wrappedText focusRow"></space:eixos_via_peniche></code><br><code class="wrappedText focusRow"></code></div><pre><code class="wrappedText focusRow"></gml:featureMember><br>
</wfs:FeatureCollection</code><code class="wrappedText focusRow">></code></pre></div><code class="focusRow subFocusRow "></code><br></div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<span style="color: rgb(102, 102, 102);">A transacção parece decorrer sem problemas e os dados que mostras na</span><br style="color: rgb(102, 102, 102);"><span style="color: rgb(102, 102, 102);">
base de dados são prova disso. Eu não ficaria admirado por teres as</span><br style="color: rgb(102, 102, 102);"><span style="color: rgb(102, 102, 102);">
colunas 'id' e 'toponimia' em branco. Afinal de contas não pareces</span><br style="color: rgb(102, 102, 102);"><span style="color: rgb(102, 102, 102);">
estar a pedir para inserir nenhuns dados nessas colunas, pelo menos no</span><br style="color: rgb(102, 102, 102);"><span style="color: rgb(102, 102, 102);">
código que se vê no mail. Só vejo dados novos a entrarem na coluna</span><br style="color: rgb(102, 102, 102);"><span style="color: rgb(102, 102, 102);">
'the_geom' e na coluna 'gid'.</span><br></blockquote><div><br>Podemos pensar que a base de dados esta Ok?<br> </div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<span style="color: rgb(102, 102, 102);">Relativamente ao código javascript do openlayers, vejo de novo as</span><br style="color: rgb(102, 102, 102);"><span style="color: rgb(102, 102, 102);">
referências ao namespace topp, que não compreendo, mas de resto, a</span><br style="color: rgb(102, 102, 102);"><span style="color: rgb(102, 102, 102);">
minha lupa de beginner não conseguiu descobrir nenhum erro.</span><br></blockquote><div><br>Novo código OpenLayers:<br><pre id="line1">var roads = new OpenLayers.Layer.WFS(<br> "Roads", <br> "<a href="http://192.168.58.173:8080/geoserver/wfs">http://192.168.58.173:8080/geoserver/wfs</a>",<br>
{typename: 'space:eixos_via_peniche'},<br> {<br>                 version: '1.0.0',<br> typename: 'eixos_via_peniche', <br>                 featureType: 'eixos_via_peniche',<br>
featureNS: '<a href="http://192.168.58.173:8080/space">http://192.168.58.173:8080/space</a>', <br>                 srsName: 'EPSG:20791',<br>                 geometryName: 'the_geom',        <br>                 schema: "<a href="http://192.168.58.173:8080/geoserver/wfs?service=WFS&version=1.1.0&request=DescribeFeatureType&typeName=space:eixos_via_peniche">http://192.168.58.173:8080/geoserver/wfs?service=WFS&version=1.1.0&request=DescribeFeatureType&typeName=space:eixos_via_peniche</a>",<br>
                 extractAttributes: false<br> }<br> );<br>                        <br> roads.style = OpenLayers.Util.applyDefaults({strokeColor: "#ff0000"}, <br> OpenLayers.Feature.Vector.style["default"]);<br>
<br></pre>Também experimentei de trocar o <span style="font-family: courier new,monospace;"></span> <span style="font-family: courier new,monospace;">geometryName </span>por <span style="font-family: courier new,monospace;"></span><span style="font-family: courier new,monospace;">geometry_column </span>e o resultado é o mesmo.<br>
</div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<br>
<span style="color: rgb(102, 102, 102);">Boa sorte na resolução do teu problema. Depois de conseguires </span></blockquote><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<span style="color: rgb(102, 102, 102);">
resolve-lo, por favor envia um mail com a resolução ;)</span><br></blockquote><div><br>Isto era óptimo!<br><br> </div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<span style="color: rgb(102, 102, 102);">Saudações</span><br></blockquote><div><br><br>Muito obrigado por me ajudar!<br>Abraço,<br>Òscar<br><br><br> </div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<br>
2010/6/9 Luís de Sousa <<a href="mailto:luis.a.de.sousa@gmail.com" target="_blank">luis.a.de.sousa@gmail.com</a>>:<br>
<div><div></div><div>> Viva Óscar,<br>
><br>
> A tua mensagem é longa e difícil de compreender; ficam aqui alguns<br>
> pontos que me parecem estar decididamente mal:<br>
><br>
> . Não existe qualquer referência a SRS quer no PostGis quer no código<br>
> do OpenLayers. Que seja possível ver dados nestas condições é algo<br>
> para além da minha compreensão...<br>
><br>
> . A inserção de um campo tipo geometria numa tabela PostGres deve ser<br>
> executada através do comando AddGeometryColumn, indicando o respectivo<br>
> SRS e tipo de geometria. Mais uma vez, que se consiga ver algo sem<br>
> esta informação é algo que não compreendo, o PostGis demostra grande<br>
> versatilidade ao conseguir fazê-lo.<br>
><br>
> . Na declaração dos temas em OpenLayers falta pelo menos a indicação<br>
> do campo de tipo geometria.<br>
><br>
> Diria que mesmo funcionando, este código irá inserir geometrias num<br>
> SRS diferente daquele em que estão os dados originais, daí não serem<br>
> visíveis.<br>
><br>
> Boa sorte,<br>
><br>
> Luís<br>
><br>
> 2010/6/9 Òscar Vidal Calbet <<a href="mailto:oscarblo@gmail.com" target="_blank">oscarblo@gmail.com</a>>:<br>
>> Olá,<br>
>><br>
>> Estou a dar os meus primeiros passos com servidores de mapas, como é de<br>
>> esperar, ando um pouco perdido.<br>
>> Vou tentar explicar as minhas "peripécias" destes últimos dias e assim<br>
>> tratar de encontrar algumas luzes.<br>
>><br>
>> Estou a utilizar o seguinte ecossistema:<br>
>><br>
>> Ubuntu Server 10.4 LTS<br>
>> sun-java6-jdk<br>
>> Tomcat6<br>
>> Geoserver 2.0.2 (*.war) [Native JAI] [Native JAI ImageIO]<br>
>> Postgresql_8.4/Postgis_1.5.0 [proj-bin libproj-dev gdal-bin<br>
>> postgresql-server-dev-8.4 libgdal-dev libgeos-dev build-essential<br>
>> libxml2-dev]<br>
>> GDAL<br>
>><br>
>> Estes são os passos mais importantes que estou a realizar, vou focar a<br>
>> explicação numa das layers (linhas) para simplificar mas acontece o mesmo<br>
>> com a outra layer de pontos que tenho. Qualquer detalhe que achem importante<br>
>> e esteja a esquecer/omitir, não duvidem em pedir!!!:<br>
>><br>
>> Importo o shape para Postgresql_8.4/Postgis_1.5.0, utilizando o Plugin do<br>
>> QGIS.<br>
>><br>
>> Tabela que cria o Plugin:<br>
>><br>
>> CREATE TABLE eixos_via_peniche<br>
>> (<br>
>> gid integer NOT NULL,<br>
>> "ID" integer,<br>
>> "TOPONIMIA" character varying(254),<br>
>> the_geom geometry,<br>
>> CONSTRAINT eixos_via_peniche_pkey PRIMARY KEY (gid),<br>
>> CONSTRAINT enforce_dims_the_geom CHECK (st_ndims(the_geom) = 2),<br>
>> CONSTRAINT enforce_srid_the_geom CHECK (st_srid(the_geom) = 20791)<br>
>> )<br>
>> WITH (<br>
>> OIDS=FALSE<br>
>> );<br>
>> ALTER TABLE eixos_via_peniche OWNER TO postgres;<br>
>><br>
>> Dados que insere o Plugin na tabela geometry_columns<br>
>><br>
>> 17673;"''";"public";"eixos_via_peniche";"the_geom";2;20791;"MULTILINESTRING"<br>
>><br>
>> Publico a tabela no Geoserver 2.0.2<br>
>><br>
>> Todo corre aparentemente bem, todos os parâmetros por defeito, mmmh só<br>
>> “apenas” um *warning no momento de fazer o publish (ao fim desta mensagem<br>
>> segue o texto do warning), mas depois se consegue visualizar a layer sem<br>
>> problemas via WMS utilizando o Layer Preview.<br>
>><br>
>> Experimento de fazer una transacção via Demos Request.<br>
>><br>
>> <wfs:Transaction service="WFS" version="1.0.0"<br>
>> xmlns:wfs="<a href="http://www.opengis.net/wfs" target="_blank">http://www.opengis.net/wfs</a>"<br>
>> xmlns:topp="<a href="http://www.openplans.org/topp" target="_blank">http://www.openplans.org/topp</a>"<br>
>> xmlns:gml="<a href="http://www.opengis.net/gml" target="_blank">http://www.opengis.net/gml</a>"<br>
>> xmlns:xsi="<a href="http://www.w3.org/2001/XMLSchema-instance" target="_blank">http://www.w3.org/2001/XMLSchema-instance</a>"<br>
>> xsi:schemaLocation="<a href="http://www.opengis.net/wfs" target="_blank">http://www.opengis.net/wfs</a><br>
>> <a href="http://schemas.opengis.net/wfs/1.0.0/WFS-transaction.xsd" target="_blank">http://schemas.opengis.net/wfs/1.0.0/WFS-transaction.xsd</a><br>
>> <a href="http://www.openplans.org/topp" target="_blank">http://www.openplans.org/topp</a><br>
>> <a href="http://localhost:8080/geoserver/wfs/DescribeFeatureType?typename=topp:eixos_via_peniche" target="_blank">http://localhost:8080/geoserver/wfs/DescribeFeatureType?typename=topp:eixos_via_peniche</a>"><br>
>> <wfs:Insert><br>
>> <topp:eixos_via_peniche><br>
>> <topp:the_geom><br>
>> <gml:MultiLineString<br>
>> srsName="<a href="http://www.opengis.net/gml/srs/epsg.xml#4326" target="_blank">http://www.opengis.net/gml/srs/epsg.xml#4326</a>"><br>
>> <gml:lineStringMember><br>
>> <gml:LineString><br>
>> <gml:coordinates decimal="." cs="," ts=" "><br>
>> 494475.71056415,5433016.8189323 494982.70115662,5435041.95096618<br>
>> </gml:coordinates><br>
>> </gml:LineString><br>
>> </gml:lineStringMember><br>
>> </gml:MultiLineString><br>
>> </topp:the_geom><br>
>> <topp:TYPE>alley</topp:TYPE><br>
>> </topp:eixos_via_peniche><br>
>> </wfs:Insert><br>
>> </wfs:Transaction><br>
>><br>
>> Resultado da transacção:<br>
>><br>
>> <wfs:WFS_TransactionResponse version="1.0.0"<br>
>> xsi:schemaLocation="<a href="http://www.opengis.net/wfs" target="_blank">http://www.opengis.net/wfs</a><br>
>> <a href="http://192.168.58.173:8080/geoserver/schemas/wfs/1.0.0/WFS-transaction.xsd" target="_blank">http://192.168.58.173:8080/geoserver/schemas/wfs/1.0.0/WFS-transaction.xsd</a>"><br>
>> <wfs:InsertResult><br>
>> <ogc:FeatureId fid="eixos_via_peniche.5134"/><br>
>> </wfs:InsertResult><br>
>> <wfs:TransactionResult><br>
>> <wfs:Status><br>
>> <wfs:SUCCESS/><br>
>> </wfs:Status><br>
>> </wfs:TransactionResult><br>
>> </wfs:WFS_TransactionResponse><br>
>><br>
>> Verifico via WMS utilizando o Layer Preview, se consegue visualizar a layer<br>
>> e a linha inserida, também na tabela Postgis foi inserido o registo, tudo<br>
>> parece correr bem...<br>
>><br>
>> Agora chega o momento de experimentar o mesmo utilizando Openlayers. Para<br>
>> isto modifico o ficheri wfs-t.html que o Geoserver utiliza para mostrar um<br>
>> exemplo de utilização de WFS-T.<br>
>><br>
>> <script type="text/javascript"><br>
>> OpenLayers.IMAGE_RELOAD_ATTEMPTS = 3;<br>
>><br>
>> var map;<br>
>> function init(){<br>
>> map = new OpenLayers.Map('map');<br>
>> var political = new OpenLayers.Layer.WMS(<br>
>> "State",<br>
>> "/geoserver/wms",<br>
>> {layers: 'topp:peniche',<br>
>> format: 'image/png'}<br>
>> );<br>
>><br>
>> var roads = new OpenLayers.Layer.WFS(<br>
>> "Roads",<br>
>> "/geoserver/wfs",<br>
>> {typename: 'topp:eixos_via_peniche'},<br>
>> {<br>
>> typename: 'eixos_via_peniche',<br>
>> featureNS: '<a href="http://www.openplans.org/topp" target="_blank">http://www.openplans.org/topp</a>',<br>
>> extractAttributes: false<br>
>> }<br>
>> );<br>
>> roads.style = OpenLayers.Util.applyDefaults({strokeColor:<br>
>> "#ff0000"},<br>
>> OpenLayers.Feature.Vector.style["default"]);<br>
>><br>
>> var cities = new OpenLayers.Layer.WFS(<br>
>> "Cities",<br>
>> "/geoserver/wfs",<br>
>> {typename: 'topp:pontos_interese_peniche'},<br>
>> {<br>
>> typename: 'pontos_interese_peniche',<br>
>> featureNS: '<a href="http://www.openplans.org/topp" target="_blank">http://www.openplans.org/topp</a>',<br>
>> extractAttributes: false<br>
>> }<br>
>> );<br>
>> cities.style = OpenLayers.Util.applyDefaults({strokeColor:<br>
>> "#0000ff"},<br>
>> OpenLayers.Feature.Vector.style["default"]);<br>
>><br>
>> map.addLayers([political, roads, cities]);<br>
>><br>
>> var panel = new OpenLayers.Control.Panel(<br>
>> {displayClass: 'olControlEditingToolbar'}<br>
>> );<br>
>><br>
>> var drawLine = new OpenLayers.Control.DrawFeature(<br>
>> roads, OpenLayers.Handler.Path,<br>
>> {displayClass: 'olControlDrawFeaturePath'}<br>
>> );<br>
>> drawLine.featureAdded = function(feature) {<br>
>> feature.layer.eraseFeatures([feature]);<br>
>> // cast to multilinestring<br>
>> feature.geometry = new OpenLayers.Geometry.MultiLineString(<br>
>> feature.geometry<br>
>> );<br>
>> feature.style.strokeColor = "#ff0000";<br>
>> feature.state = OpenLayers.State.INSERT;<br>
>> feature.layer.drawFeature(feature);<br>
>> }<br>
>><br>
>> var drawPoint = new OpenLayers.Control.DrawFeature(<br>
>> cities, OpenLayers.Handler.Point,<br>
>> {displayClass: 'olControlDrawFeaturePoint'}<br>
>> );<br>
>> drawPoint.featureAdded = function(feature) {<br>
>> feature.layer.eraseFeatures([feature]);<br>
>> // cast to multipoint<br>
>> feature.geometry = new OpenLayers.Geometry.MultiPoint(<br>
>> feature.geometry<br>
>> );<br>
>> feature.style.strokeColor = "#0000ff";<br>
>> feature.state = OpenLayers.State.INSERT;<br>
>> feature.layer.drawFeature(feature);<br>
>> }<br>
>><br>
>> panel.addControls(<br>
>> [new OpenLayers.Control.Navigation(), drawLine, drawPoint]<br>
>> );<br>
>><br>
>> map.addControl(panel);<br>
>> map.addControl(new OpenLayers.Control.LayerSwitcher());<br>
>><br>
>> map.zoomToExtent(<br>
>> new OpenLayers.Bounds(-9.516,39.279,-9.255,39.421)<br>
>> );<br>
>> }<br>
>> </script><br>
>> </head><br>
>> <body onload="init()"><br>
>> <a href="#" onclick="map.layers[1].commit();return false">Save<br>
>> Roads</a><br /><br>
>> <a href="#" onclick="map.layers[2].commit();return false">Save<br>
>> Cities</a><br>
>> <div id="map"></div><br>
>> </body><br>
>> </html><br>
>><br>
>> Até agora tudo bem... tento visualizar o mapa resultante, e.., não se<br>
>> conseguem visualizar as layers definidas como WFS!!! só apenas a base layer<br>
>> definida como WMS. Mas, o surpreendente é que sim se conseguem realizar<br>
>> transacções WFS-T com sucesso, inserindo novas linhas no mapa (e na base de<br>
>> dados), mas só conseguindo visualizar apenas as linhas acrescentadas com a<br>
>> interface do Openlayers. Experimentando, observo que só consigo visualizar<br>
>> todas as linhas via WMS utilizando o Layer Preview.<br>
>> Depois de todo isto decido aceder ao serviço WFS utilizando outro cliente, o<br>
>> uDig, e fico mesmo surpreendido ao ver que o resultado e totalmente o<br>
>> contrario que utilizando Openlayers, pois só consigo visualizar as linhas<br>
>> originais da layer e ano as que foram acrescentadas via WFS-T. Com tudo<br>
>> isto, insisto, e vou ao QGIS para tentar visualizar via WMS, também só<br>
>> consigo visualizar as linhas originais da layer, e voltando ao ponto<br>
>> anterior, só consigo visualizar todas linhas via WMS utilizando o Layer<br>
>> Preview do geoserver.<br>
>><br>
>> Não estou seguro que seja importante, mas nos registos da tabela<br>
>> eixos_via_peniche é possível observar o seguinte:<br>
>><br>
>> Definição da tabela<br>
>> gid integer NOT NULL,<br>
>> "ID" integer,<br>
>> "TOPONIMIA" character varying(254),<br>
>> the_geom geometry,<br>
>> CONSTRAINT eixos_via_peniche_pkey PRIMARY KEY (gid),<br>
>> CONSTRAINT enforce_dims_the_geom CHECK (st_ndims(the_geom) = 2),<br>
>> CONSTRAINT enforce_srid_the_geom CHECK (st_srid(the_geom) = 20791)<br>
>><br>
>> Linhas originais<br>
>> ...<br>
>> 5126;1606803;"";"010200002037510000020000005DB5847C877AFAC0284A598..."<br>
>> 5127;1606804;"";"010200002037510000030000005DB5847C877AFAC0284A598..."<br>
>> 5128;1606805;"";"010200002037510000040000007A7EFB3A6075FAC02844CF6..."<br>
>> ...<br>
>> Linhas acrescentadas mediante WFS-T. O campo ID não contem nada e o campo<br>
>> TOPONIMIA esta como ""<br>
>> 5130;;"";"01050000203751000001000000010200000002000000DDC32973..."<br>
>> 5131;;"";"01050000203751000001000000010200000002000000DDC32973..."<br>
>> 5133;;"";"010500002037510000010000000102000000020000003E378941..."<br>
>><br>
>><br>
>> Até aqui chega a minha explicação, claramente omiti informações mas não<br>
>> queria que fosse eterno e cansar ao pessoal...qualquer informação que<br>
>> precisarem, digam!!!<br>
>><br>
>> Agradeço qualquer ajuda, critica, ponto de vista...<br>
>><br>
>> Desde já, muito obrigado!!!<br>
>><br>
>><br>
>><br>
>><br>
>><br>
>><br>
>> ======================================================<br>
>><br>
>> *warning<br>
>><br>
>> Oops, something went wrong...<br>
>><br>
>> Sorry, something unexpected happened on the server.<br>
>><br>
>> Here's an error report you can include in a JIRA bug report about this<br>
>> issue:<br>
>><br>
>> org.apache.wicket.WicketRuntimeException: Exception in rendering component:<br>
>> [Component id = message] at<br>
>> org.apache.wicket.Component.renderComponent(Component.java:2563) at<br>
>> org.apache.wicket.markup.html.WebComponent.onRender(WebComponent.java:60) at<br>
>> org.apache.wicket.Component.render(Component.java:2361) at<br>
>> org.apache.wicket.MarkupContainer.renderNext(MarkupContainer.java:1298) at<br>
>> org.apache.wicket.MarkupContainer.renderAll(MarkupContainer.java:1428) at<br>
>> org.apache.wicket.Page.onRender(Page.java:1502) at<br>
>> org.apache.wicket.Component.render(Component.java:2361) at<br>
>> org.apache.wicket.Page.renderPage(Page.java:913) at<br>
>> org.apache.wicket.request.target.component.PageRequestTarget.respond(PageRequestTarget.java:63)<br>
>> at<br>
>> org.apache.wicket.request.AbstractRequestCycleProcessor.respond(AbstractRequestCycleProcessor.java:104)<br>
>> at<br>
>> org.apache.wicket.RequestCycle.processEventsAndRespond(RequestCycle.java:1245)<br>
>> at org.apache.wicket.RequestCycle.step(RequestCycle.java:1316) at<br>
>> org.apache.wicket.RequestCycle.steps(RequestCycle.java:1418) at<br>
>> org.apache.wicket.RequestCycle.request(RequestCycle.java:532) at<br>
>> org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:356) at<br>
>> org.apache.wicket.protocol.http.WicketServlet.doGet(WicketServlet.java:124)<br>
>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:617) at<br>
>> javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at<br>
>> org.springframework.web.servlet.mvc.ServletWrappingController.handleRequestInternal(ServletWrappingController.java:158)<br>
>> at<br>
>> org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:153)<br>
>> at<br>
>> org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48)<br>
>> at<br>
>> org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:875)<br>
>> at<br>
>> org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:809)<br>
>> at<br>
>> org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571)<br>
>> at<br>
>> org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:501)<br>
>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:617) at<br>
>> javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at<br>
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)<br>
>> at<br>
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)<br>
>> at<br>
>> org.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)<br>
>> at<br>
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)<br>
>> at<br>
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)<br>
>> at<br>
>> org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265)<br>
>> at<br>
>> org.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:107)<br>
>> at<br>
>> org.acegisecurity.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:72)<br>
>> at<br>
>> org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)<br>
>> at<br>
>> org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:124)<br>
>> at<br>
>> org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)<br>
>> at<br>
>> org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)<br>
>> at<br>
>> org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)<br>
>> at<br>
>> org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142)<br>
>> at<br>
>> org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)<br>
>> at<br>
>> org.acegisecurity.wrapper.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:81)<br>
>> at<br>
>> org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)<br>
>> at<br>
>> org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)<br>
>> at<br>
>> org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)<br>
>> at org.acegisecurity.ui.logout.LogoutFilter.doFilter(LogoutFilter.java:110)<br>
>> at<br>
>> org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)<br>
>> at<br>
>> org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)<br>
>> at<br>
>> org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)<br>
>> at<br>
>> org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149)<br>
>> at<br>
>> org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98)<br>
>> at<br>
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)<br>
>> at<br>
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)<br>
>> at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:73) at<br>
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)<br>
>> at<br>
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)<br>
>> at<br>
>> org.geoserver.filters.ReverseProxyFilter.doFilter(ReverseProxyFilter.java:183)<br>
>> at<br>
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)<br>
>> at<br>
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)<br>
>> at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:41) at<br>
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)<br>
>> at<br>
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)<br>
>> at<br>
>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)<br>
>> at<br>
>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)<br>
>> at<br>
>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)<br>
>> at<br>
>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)<br>
>> at<br>
>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)<br>
>> at<br>
>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)<br>
>> at<br>
>> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852)<br>
>> at<br>
>> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)<br>
>> at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)<br>
>> at java.lang.Thread.run(Thread.java:619) Caused by:<br>
>> java.util.MissingResourceException: Unable to find resource:<br>
>> featureTypeReloadWarning for component:<br>
>> resource:tabs:panel:theList:1:content<br>
>> [class=org.geoserver.web.data.resource.FeatureResourceConfigurationPanel] at<br>
>> org.apache.wicket.Localizer.getString(Localizer.java:266) at<br>
>> org.apache.wicket.model.StringResourceModel.getString(StringResourceModel.java:491)<br>
>> at<br>
>> org.apache.wicket.model.StringResourceModel.load(StringResourceModel.java:633)<br>
>> at<br>
>> org.apache.wicket.model.LoadableDetachableModel.getObject(LoadableDetachableModel.java:114)<br>
>> at<br>
>> org.apache.wicket.model.StringResourceModel$AssignmentWrapper.getObject(StringResourceModel.java:230)<br>
>> at org.apache.wicket.Component.getModelObject(Component.java:1565) at<br>
>> org.apache.wicket.Component.getModelObjectAsString(Component.java:1587) at<br>
>> org.apache.wicket.markup.html.basic.Label.onComponentTagBody(Label.java:111)<br>
>> at org.apache.wicket.Component.renderComponent(Component.java:2524) ... 72<br>
>> more<br>
>><br>
>> _______________________________________________<br>
>> Portugal mailing list<br>
>> <a href="mailto:Portugal@lists.osgeo.org" target="_blank">Portugal@lists.osgeo.org</a><br>
>> <a href="http://lists.osgeo.org/mailman/listinfo/portugal" target="_blank">http://lists.osgeo.org/mailman/listinfo/portugal</a><br>
>><br>
>><br>
> _______________________________________________<br>
> Portugal mailing list<br>
> <a href="mailto:Portugal@lists.osgeo.org" target="_blank">Portugal@lists.osgeo.org</a><br>
> <a href="http://lists.osgeo.org/mailman/listinfo/portugal" target="_blank">http://lists.osgeo.org/mailman/listinfo/portugal</a><br>
><br>
<br>
<br>
<br>
</div></div><font color="#888888">--<br>
___________________________ ___ __<br>
Ricardo Garcia Silva<br>
</font><div><div></div><div>_______________________________________________<br>
Portugal mailing list<br>
<a href="mailto:Portugal@lists.osgeo.org" target="_blank">Portugal@lists.osgeo.org</a><br>
<a href="http://lists.osgeo.org/mailman/listinfo/portugal" target="_blank">http://lists.osgeo.org/mailman/listinfo/portugal</a><br>
</div></div></blockquote></div><br>