Nice work. Simone. ------------------------------------------------------- Ing. Simone Giannecchini GeoSolutions S.A.S. Founder - Software Engineer Via Carignoni 51 55041 Camaiore (LU) Italy
phone: +39 0584983027 fax: +39 0584983027 mob: +39 333 8128928 http://www.geo-solutions.it http://geo-solutions.blogspot.com/ http://www.linkedin.com/in/simonegiannecchini http://twitter.com/simogeo ------------------------------------------------------- On Tue, May 4, 2010 at 7:53 PM, Andrea Aime <[email protected]> wrote: > Hi, > during the last few days I've been working on implementing > WMS cascading for GeoServer trunk. > > The first patch is ready and attached to > http://jira.codehaus.org/browse/GEOS-623. > > I'm going to make a formal GSIP tomorrow, but in the meantime > allow me to share a few screenshots of the work and a brief > description. > > Once patched the GUI allows to create a new "WMS store" by > providing a capabilities link. After that we get to the usual > layer listing, and then to the usual layer configuration > page. > > The layer config page metadata are filled using the values > found in the cascaded WMS capabilities document, including > bounds, srs, descriptions, keywords and whatnot. > The only visible difference compared to a normal layer config > page is that you don't have a style chooser, since cascading > works, at this point, by simply using the default style. > > The preview shows the cascaded layers with their own icon > (thanks Rollie for being prevident and preparing WMS layer > icons as well), and you can then follow and browse the > cascaded maps as if they were local. > > Functionality implemented in the GetMap cascading: > - standard cascading > - reprojected cascading, trying to pass down to the remote > server the destination SRS when possible, reprojecting > on the client when not possible (see the EPSG:900913 > reprojection screenshot, looks nice because the srs > was passed down) > - request merging, if n consequent layers are cascaded > from the same server a single GetMap will be issued > - the WebMapServer instance is cached at the ResourcePool > level making sure we don't do too many GetCapabilities > requests (caching the WebMapServer object results in > the caching of the GetCapabilities response) > > I've also implemented GetFeatureInfo cascading for the > case in which the remote server supports GML2 output > This has been tested against GS only, could not find > a MapServer instance that actually does GML output, > often it's listed in the caps but results to the request are > consistently empty. > GetFeatureInfo cascading works also in the reprojected > case. > > What's missing? Well, I guess it's enough for the first > cut (the sponsored one), though of course we can do better > a number of things: > > - add support for alternate styles > - allow the admin to specify a timeout (right now it's > hard coded) > - full support in Restconfig (we need to add new resources > there) > - improve the GeoTools client code so that we can use > HTTP 1.1 persistent connections and limit the number > of parallel connections we make to a single server > (right now GS is badly behaved from an HTTP client > point of view). > - allow the user to choose the format used for cascading. > Now we try png > - maybe add a pure proxy mode, if the request contains > only cascaded layers avoid decoding the image to just > re-encode it afterwards > - add support for WMS with access restrictions (this is > really just a matter of configuration, the gt2 module > does that already) > - support cascaded layers in GetMap requests that use > &SLD and &SLD_BODY > > Anyone interested in picking up from the above list? ;-) > > Cheers > Andrea > > -- > Andrea Aime > OpenGeo - http://opengeo.org > Expert service straight from the developers. > > ------------------------------------------------------------------------------ > > _______________________________________________ > Geoserver-devel mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/geoserver-devel > > ------------------------------------------------------------------------------ _______________________________________________ Geoserver-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/geoserver-devel
