Hi Richard, The WMS I'm testing against is this : http://swing.brgm.fr/cgi-bin/limitesadm? But on other WMS it doesn't work too (for exemple the WMS of GeoSIGnal : http://www.geosignal.org/cgi-bin/wmsmap? ).
Thanks for your help, __________________ François Tertre Mail: [EMAIL PROTECTED] -----Message d'origine----- De : Richard Gould [mailto:[EMAIL PROTECTED] Envoyé : jeudi 19 avril 2007 20:14 À : Tertre Francois Cc : [email protected] Objet : Re: [Geotools-gt2-users] GetFeatureInfo and missing LAYERS parameter That definitely looks like a bug to me. Your code looks like it is perfect. The WMS you are testing against publicly accessible? If not, can you send me the capabilities document? I will write a test case and try to replicate it. Richard Tertre Francois wrote: > Hi, > > I would like to retrieve Infos from a WMS (MapServer 4.10.0) with the > getFeatureInfo request, using GeoTools (2.3.0), but the LAYERS > parameter is missing in my final request. > > I create first my getMap request using > myWebMapServer.createGetMapRequest(), then, create my getFeatureInfo > request using myWebMapServer.createGetFeatureInfoRequest(), finally, I > ask the server using > myWebMapServer.issuerequest(myGetFeatureInfoRequest). But albeit my > getMapRequest has the good LAYERS parameter, my getFeatureInfoRequest > has not it. > > Is someone know why I have this issue? > > This is my code: > > // START CODE > /** > * Makes a GetFeatureInfo request on the current WebMapServer. > * @param size Output size of the Map. > * @param crse Bounding Box of the Map. > * @param p Requested point (warning: with Java Y-axis !). > * @throws java.io.IOException > * @throws org.geotools.ows.ServiceException > * @return GetFeatureInfo of a point of current WebMapServer. > */ > public String getFeatureInfo( Dimension size , CRSEnvelope crse , > Point p ) throws IOException, ServiceException { > StringBuffer sb = new StringBuffer(); > > // GetFeatureInfo needs a GetMap before > GetMapRequest gmReq = wms.createGetMapRequest(); > // We add the requested Layer > gmReq.addLayer( getLayerByName(layerasstring) ); > // We set the BBOX of the requested Map > gmReq.setBBox( crse ); > // We set the dimensions of the output > gmReq.setDimensions(size.width, size.height); > // We set the output format > gmReq.setFormat("image/png"); > // We set the SRS > gmReq.setSRS( crse.getEPSGCode() ); > // We want a transparent background > gmReq.setTransparent(true); > > // Now, we can create our GetFeatureInfo, from the previous GetMap > GetFeatureInfoRequest gfiReq = > wms.createGetFeatureInfoRequest(gmReq); > // We want request this layer > gfiReq.addQueryLayer( getLayerByName( layerasstring ) ); > // We need information from this point (warning : java Y-axis > goes from top to bottom, geographic goes from bottom to top !) > gfiReq.setQueryPoint( p.x , size.height - p.y ); > > // Tummy (Bidouille) used to circle an issue with LAYERS > parameter... > gfiReq.setProperty( "LAYERS" , layerasstring ); > > // Debug > System.out.println( gmReq.getFinalURL().toString() ); > System.out.println( gfiReq.getFinalURL().toString() ); > > // We ask the server > GetFeatureInfoResponse gfiRep = wms.issueRequest( gfiReq ); > // We read the response > sb.append( FileReader.read( gfiRep.getInputStream() ) ); > > return sb.toString(); > } > // END CODE > > - layerasstring is the name of the layer. > - getLayerByName(String) function is a function which returns a > org.geotools.data.ows.Layer of the current server from his name. > - The tummy (is it the good word for "bidouille" in french ?!) is here > for the moment to make the code working, but I prefer find the bug. > ;-) > - In the Debug output, the LAYERS parameter is here for gmReq > (getMap), but not for gfiReq (getFeatureInfo). > > Thanks in advance, > bests, > > ______________________________ > François Tertre > BRGM STI/AD > 3, avenue Claude Guillemin > BP 6009 - 45060 Orléans Cedex 2 > France > Tel:+33 238 643 642 > Fax: +33 238 644 830 > Secr: +33 238 643 999 > Mail: [EMAIL PROTECTED] > Web: http://www.brgm.fr > > Le contenu de ce mél et de ses pièces jointes est destiné à l'usage > exclusif du > (des) destinataire(s) expressément désigné(s) comme tel(s). En cas de > réception de ce mél par erreur, le signaler à son expéditeur et ne > pas en divulguer le contenu. > L'absence de virus a été vérifié à l'émission du message. Il convient > néanmoins de vérifier l'absence de contamination à sa réception. > > The contents of this email and any attachments are confidential. They > are intended for the named recipient(s) only. If you have received > this email in error please notify the system manager or the sender > immediately and do not disclose the contents to anyone or make copies. > eSafe scanned this email for viruses, vandals and malicious content. > > > ---------------------------------------------------------------------- > -- > > ---------------------------------------------------------------------- > --- This SF.net email is sponsored by DB2 Express Download DB2 Express > C - the FREE version of DB2 express and take control of your XML. No > limits. Just data. Click to get it now. > http://sourceforge.net/powerbar/db2/ > > > ---------------------------------------------------------------------- > -- > > _______________________________________________ > Geotools-gt2-users mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/geotools-gt2-users ********************************************************************************************** Le contenu de ce mél et de ses pièces jointes est destiné à l'usage exclusif du (des) destinataire(s) expressément désigné(s) comme tel(s). En cas de réception de ce mél par erreur, le signaler à son expéditeur et ne pas en divulguer le contenu. L'absence de virus a été vérifié à l'émission du message. Il convient néanmoins de vérifier l'absence de contamination à sa réception. The contents of this email and any attachments are confidential. They are intended for the named recipient(s) only. If you have received this email in error please notify the system manager or the sender immediately and do not disclose the contents to anyone or make copies. eSafe scanned this email for viruses, vandals and malicious content. ********************************************************************************************** ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ _______________________________________________ Geotools-gt2-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/geotools-gt2-users
