Hi all,

I did a quick debug, the /NullPointerException/ exception happens when parsing /OnlineResource /elements of styles legends like this one:

   <Style>
      <Name>default</Name>
      <Title>Bygning, BBR punkt</Title>
      <LegendURL height="21" width="113">
        <Format>image/png</Format>
        <OnlineResource *xmlns:xlink="https://www.w3.org/1999/xlink"*
   
xlink:href="https://services.kortforsyningen.dk/topo_geo?&amp;version=1.1.1&amp;service=WMS&amp;request=GetLegendGraphic&amp;layer=Bygning_BBR_P&amp;format=image/png&amp;STYLE=default";

                        xlink:type="simple"/>
      </LegendURL>
   </Style>

The exception happens because the value of the /xmlns:xlink/ attribute doesn't respect the prefixed value defined by WMS 1.1.1 capabilities document DTD [1]:

   <!-- An OnlineResource is typically an HTTP URL. The URL is placed in the
   xlink:href attribute.  The xmlns:xlink attribute is a required XML namespace
   declaration. -->
   <!ELEMENT OnlineResource EMPTY>
   <!ATTLIST OnlineResource
   *xmlns:xlink CDATA #FIXED "http://www.w3.org/1999/xlink"*
              xlink:type CDATA #FIXED "simple"
              xlink:href CDATA #REQUIRED >

It should be *http://www.w3.org/1999/xlink* and not 
*https://www.w3.org/1999/xlink*.

So I see two options:

 * make the remote server be compliant with WMS 1.1.1
 * make GeoServer capable of accepting this non compliant capabilities document

Regards,

Nuno Oliveira

[1] http://schemas.opengis.net/wms/1.1.1/capabilities_1_1_1.dtd

On 12/07/2017 10:44 AM, Rahkonen Jukka (MML) wrote:

Hi,

Sorry, my own answer was nonsense. The GetCapabilities look good on the browser but the error seems to mean that the XML parser stops to some error when it is resolving the GetLegendGraphics URLs. I believe that the difference that you found is related. The error happens here

Caused by: java.lang.NullPointerException

at org.geotools.data.wms.xml.WMSComplexTypes$_LegendURLType.getValue(WMSComplexTypes.java:4352)

I tried to validate the GetCapabilities XML with an online validator and it did not find errors. Let’s hope that real developers will have a look.

-Jukka Rahkonen-

*Lähettäjä:*KSPA - Kristoffer Steen Pagels [mailto:[email protected]]
*Lähetetty:* 7. joulukuuta 2017 12:00
*Vastaanottaja:* Rahkonen Jukka (MML) <[email protected]>; [email protected]
*Aihe:* SV: NPE when creating cascading WMS service

Hi,

The service requires a login and password, and normally these values are filled out. But I have removed the username and password from the example for security reasons. JIt should however still be possible to get the getcapabilities parsed correctly without username and password.

For example, this WMS service url is working without issues (and without username and password provided)

https://services.kortforsyningen.dk/service?servicename=fot2007&client=undefined&request=GetCapabilities&service=WMS&version=1.1.1

The only difference I have found in the two WMS getcapability xml’s is the 
xlink namespace:

In the failing WMS (servicename=topo_geo) the online resource is

<OnlineResourcexmlns:xlink="https://www.w3.org/1999/xlink"; xlink:href="https://services.kortforsyningen.dk/topo_geo?&version=1.1.1&service=WMS&request=GetLegendGraphic&layer=Territorialomraade&format=image/png&STYLE=default"; xlink:type="simple"/>

While in the WMS that is working (servicename=fot2007) the online resource is

<OnlineResource xmlns:xlink="http://www.w3.org/1999/xlink"; xlink:type="simple" xlink:href="https://services.kortforsyningen.dk/fot2007?&amp;version=1.1.1&amp;service=WMS&amp;request=GetLegendGraphic&amp;layer=HOEJ_BEBYGGELSE&amp;format=image/png&amp;STYLE=default"/>

The difference is https vs http for the xlink namespace. Could this be related to the error, and if so, is it an error in geoserver parsing or in the WMS service itself?

/Kristoffer

*Fra:*Rahkonen Jukka (MML) [mailto:[email protected]]
*Sendt:* 7. december 2017 10:36
*Til:* KSPA - Kristoffer Steen Pagels <[email protected] <mailto:[email protected]>>; [email protected] <mailto:[email protected]>
*Emne:* VS: NPE when creating cascading WMS service

Hi,

That server is as least reporting nonsense as OnlineResource:

<OnlineResource xlink:href="https://services.kortforsyningen.dk/topo_geo?ignoreillegallayers=TRUE&transparent=TRUE&&"; xlink:type="simple"/>

-Jukka Rahkonen-

*Lähettäjä:*KSPA - Kristoffer Steen Pagels [mailto:[email protected]]
*Lähetetty:* 7. joulukuuta 2017 9:43
*Vastaanottaja:* [email protected] 
<mailto:[email protected]>
*Aihe:* [Geoserver-users] NPE when creating cascading WMS service

Hi,

I’m running geoserver 1.12.1 on windows 7, but have experienced the same issue on geoserver 1.11.2 on Ubuntu as well.

I have searched the web for solutions to this issue and have not been able to find any solution, so now I send this mail to the mailinglist.

I want to cascade a remote WMS service on my geoserver, So I add a new WMS-store (from other data sources), and enter the following values

Workspace: kort (not important, just select an empty workspace)

WMS source name: kort

Capabilities URL:

https://services.kortforsyningen.dk/service?servicename=topo_geo&client=undefined&request=GetCapabilities&service=WMS&version=1.1.1

I leave the rest of the settings for default values, and click save.

Instead of getting an list of layers that can be published, I get an exception:

org.apache.wicket.WicketRuntimeException: Exception 'null' occurred during validation org.geoserver.web.data.store.WMSStoreNewPage$WMSCapabilitiesURLValidator on component 13:form:capabilitiesURL:border:border_body:paramValue

at org.apache.wicket.markup.html.form.FormComponent.validateValidators(FormComponent.java:1529)

               at 
org.apache.wicket.markup.html.form.FormComponent.validate(FormComponent.java:1139)

               at 
org.apache.wicket.markup.html.form.Form$18.validate(Form.java:1950)

               at 
org.apache.wicket.markup.html.form.Form$ValidationVisitor.component(Form.java:177)

               at 
org.apache.wicket.markup.html.form.Form$ValidationVisitor.component(Form.java:161)

               at 
org.apache.wicket.util.visit.Visits.visitPostOrderHelper(Visits.java:274)

               at 
org.apache.wicket.util.visit.Visits.visitPostOrderHelper(Visits.java:262)

               at 
org.apache.wicket.util.visit.Visits.visitPostOrderHelper(Visits.java:262)

               at 
org.apache.wicket.util.visit.Visits.visitPostOrderHelper(Visits.java:262)

               at 
org.apache.wicket.util.visit.Visits.visitPostOrderHelper(Visits.java:262)

               at 
org.apache.wicket.util.visit.Visits.visitPostOrder(Visits.java:245)

at org.apache.wicket.markup.html.form.FormComponent.visitFormComponentsPostOrder(FormComponent.java:382)

               at 
org.apache.wicket.markup.html.form.Form.visitFormComponentsPostOrder(Form.java:1155)

               at 
org.apache.wicket.markup.html.form.Form.validateComponents(Form.java:1942)

               at 
org.apache.wicket.markup.html.form.Form.validate(Form.java:1884)

               at org.apache.wicket.markup.html.form.Form.process(Form.java:945)

               at 
org.apache.wicket.markup.html.form.Form.onFormSubmitted(Form.java:797)

at org.apache.wicket.ajax.form.AjaxFormSubmitBehavior.onEvent(AjaxFormSubmitBehavior.java:171)

               at 
org.apache.wicket.ajax.AjaxEventBehavior.respond(AjaxEventBehavior.java:155)

at org.apache.wicket.ajax.AbstractDefaultAjaxBehavior.onRequest(AbstractDefaultAjaxBehavior.java:601)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

               at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

               at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown 
Source)

               at java.lang.reflect.Method.invoke(Unknown Source)

at org.apache.wicket.RequestListenerInterface.internalInvoke(RequestListenerInterface.java:258)

               at 
org.apache.wicket.RequestListenerInterface.invoke(RequestListenerInterface.java:241)

at org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.invokeListener(ListenerInterfaceRequestHandler.java:248)

at org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.respond(ListenerInterfaceRequestHandler.java:234)

at org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:895)

               at 
org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)

               at 
org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:265)

               at 
org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:222)

at org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:293)

at 
org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:261)

               at 
org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:203)

               at 
org.apache.wicket.protocol.http.WicketServlet.doPost(WicketServlet.java:159)

               at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)

               at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)

at org.springframework.web.servlet.mvc.ServletWrappingController.handleRequestInternal(ServletWrappingController.java:157)

at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:174)

at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:50)

at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:963)

at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:897)

at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)

               at 
org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:872)

               at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)

               at 
org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)

               at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)

               at 
org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:808)

at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1669)

at org.geoserver.filters.ThreadLocalsCleanupFilter.doFilter(ThreadLocalsCleanupFilter.java:28)

at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)

at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:75)

               at 
org.geoserver.wms.animate.AnimatorFilter.doFilter(AnimatorFilter.java:71)

at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)

at org.geoserver.filters.SpringDelegatingFilter.doFilter(SpringDelegatingFilter.java:46)

at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)

at org.geoserver.platform.AdvancedDispatchFilter.doFilter(AdvancedDispatchFilter.java:50)

at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:316)

at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)

at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:126)

at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:90)

at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)

at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)

at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:114)

at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)

at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.geoserver.security.filter.GeoServerAnonymousAuthenticationFilter.doFilter(GeoServerAnonymousAuthenticationFilter.java:54)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)

at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:205)

at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)

at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)

at org.geoserver.security.filter.GeoServerUserNamePasswordAuthenticationFilter.doFilter(GeoServerUserNamePasswordAuthenticationFilter.java:116)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)

at org.springframework.security.web.authentication.rememberme.RememberMeAuthenticationFilter.doFilter(RememberMeAuthenticationFilter.java:157)

at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)

at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)

at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:91)

at org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:53)

at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)

at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:213)

at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:176)

at org.geoserver.security.GeoServerSecurityFilterChainProxy.doFilter(GeoServerSecurityFilterChainProxy.java:152)

at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)

at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)

at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)

               at 
org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:88)

at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)

               at 
org.geoserver.filters.XFrameOptionsFilter.doFilter(XFrameOptionsFilter.java:89)

at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)

               at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:42)

at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)

               at 
org.geoserver.filters.SessionDebugFilter.doFilter(SessionDebugFilter.java:48)

at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)

               at 
org.geoserver.filters.FlushSafeFilter.doFilter(FlushSafeFilter.java:44)

at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)

at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197)

at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)

at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)

               at 
org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585)

               at 
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)

               at 
org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577)

               at 
org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)

               at 
org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)

               at 
org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)

               at 
org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)

               at 
org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)

               at 
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)

at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:215)

at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:110)

               at 
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)

               at org.eclipse.jetty.server.Server.handle(Server.java:499)

               at 
org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310)

               at 
org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)

               at 
org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540)

               at 
org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)

               at 
org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)

               at java.lang.Thread.run(Unknown Source)

Caused by: java.lang.NullPointerException

at org.geotools.data.wms.xml.WMSComplexTypes$_LegendURLType.getValue(WMSComplexTypes.java:4352)

at org.geotools.xml.handlers.ComplexElementHandler.endElement(ComplexElementHandler.java:188)

               at 
org.geotools.xml.XMLSAXHandler.endElement(XMLSAXHandler.java:276)

at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(Unknown Source)

at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(Unknown Source)

at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(Unknown Source)

               at 
com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(Unknown 
Source)

at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(Unknown Source)

at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)

               at 
com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown 
Source)

               at 
com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown 
Source)

               at 
com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source)

               at 
com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Unknown 
Source)

at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)

               at 
com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.parse(Unknown Source)

               at javax.xml.parsers.SAXParser.parse(Unknown Source)

               at 
org.geotools.xml.DocumentFactory.getInstance(DocumentFactory.java:156)

at org.geotools.data.wms.response.WMSGetCapabilitiesResponse.<init>(WMSGetCapabilitiesResponse.java:63)

               at 
org.geotools.data.wms.WMS1_0_0$GetCapsRequest.createResponse(WMS1_0_0.java:235)

at org.geotools.data.ows.AbstractOpenWebService.internalIssueRequest(AbstractOpenWebService.java:445)

               at 
org.geotools.data.wms.WebMapServer.issueRequest(WebMapServer.java:435)

at org.geotools.data.ows.AbstractOpenWebService.negotiateVersion(AbstractOpenWebService.java:272)

               at 
org.geotools.data.ows.AbstractOpenWebService.<init>(AbstractOpenWebService.java:120)

               at 
org.geotools.data.wms.WebMapServer.<init>(WebMapServer.java:398)

at org.geoserver.web.data.store.WMSStoreNewPage$WMSCapabilitiesURLValidator.validate(WMSStoreNewPage.java:132)

at org.apache.wicket.markup.html.form.FormComponent.validateValidators(FormComponent.java:1525)

... 127 more

I have tried to use the WMS service directly from openlayers, and it works perfectly, it is just when fetching capabilities from GeoServer that it fails.

/Kristoffer



------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot


_______________________________________________
Geoserver-users mailing list

Please make sure you read the following two resources before posting to this 
list:
- Earning your support instead of buying it, but Ian Turton: 
http://www.ianturton.com/talks/foss4g.html#/
- The GeoServer user list posting guidelines: 
http://geoserver.org/comm/userlist-guidelines.html

[email protected]
https://lists.sourceforge.net/lists/listinfo/geoserver-users

--
Regards,
Nuno Oliveira
==
GeoServer Professional Services from the experts! Visit http://goo.gl/it488V 
for more information.
==

Nuno Miguel Carvalho Oliveira
@nmcoliveira
Software Engineer

GeoSolutions S.A.S.
Via di Montramito 3/A
55054  Massarosa (LU)
Italy
phone: +39 0584 962313
fax:      +39 0584 1660272

http://www.geo-solutions.it
http://twitter.com/geosolutions_it

-------------------------------------------------------
AVVERTENZE AI SENSI DEL D.Lgs. 196/2003
Le informazioni contenute in questo messaggio di posta elettronica e/o nel/i 
file/s allegato/i sono da considerarsi strettamente riservate. Il loro utilizzo 
è consentito esclusivamente al destinatario del messaggio, per le finalità 
indicate nel messaggio stesso. Qualora riceviate questo messaggio senza esserne 
il destinatario, Vi preghiamo cortesemente di darcene notizia via e-mail e di 
procedere alla distruzione del messaggio stesso, cancellandolo dal Vostro 
sistema. Conservare il messaggio stesso, divulgarlo anche in parte, 
distribuirlo ad altri soggetti, copiarlo, od utilizzarlo per finalità diverse, 
costituisce comportamento contrario ai principi dettati dal D.Lgs. 196/2003.
The information in this message and/or attachments, is intended solely for the attention and use of the named addressee(s) and may be confidential or proprietary in nature or covered by the provisions of privacy act (Legislative Decree June, 30 2003, no.196 - Italy's New Data Protection Code).Any use not in accord with its purpose, any disclosure, reproduction, copying, distribution, or either dissemination, either whole or partial, is strictly forbidden except previous formal approval of the named addressee(s). If you are not the intended recipient, please contact immediately the sender by telephone, fax or e-mail and delete the information in this message that has been received in error. The sender does not give any warranty or accept liability as the content, accuracy or completeness of sent messages and accepts no responsibility for changes made after they were sent or for other risks which arise as a result of e-mail transmission, viruses, etc.

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Geoserver-users mailing list

Please make sure you read the following two resources before posting to this 
list:
- Earning your support instead of buying it, but Ian Turton: 
http://www.ianturton.com/talks/foss4g.html#/
- The GeoServer user list posting guidelines: 
http://geoserver.org/comm/userlist-guidelines.html

[email protected]
https://lists.sourceforge.net/lists/listinfo/geoserver-users

Reply via email to