<div dir="ltr">Thank you David and Daniel for helping me.<div><br></div><div>I found the problem.  The error message was pointing at the layer 'select' but it was the dot (.) int the coordinates of the parameters that was causing the problem.  Maybe an escaping problem related to the OGRVRTDataSource XML string.</div><div><br></div><div>Daniel:  What do you think is the best way to encode point in a csv (using the virtual format of OGR) for mapserver:</div><div>1) x y coordinates with  encoding="PointFromColumns"</div><div>2) point in WKT string in the csv</div><div>3) point encoded WKB string in the csv</div><div>4) maybe something else BUT it must be in a csv format</div><div><br></div><div>cheers,</div><div><br></div><div>MartinO<br><br></div><br><div class="gmail_quote">On Thu, Mar 26, 2015 at 8:07 AM Daniel Morissette <<a href="mailto:dmorissette@mapgears.com" target="_blank">dmorissette@mapgears.com</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I believe the variable substitution is working since you see the<br>
coordinate values in the exception message received from the server.<br>
<br>
The error message says that it cannot find layer "select" in the OGR<br>
data source, so it may very well be that it ends up being called<br>
something else for some reason.<br>
<br>
I'd suggest hardcoding the coordinate values in your VRT and starting by<br>
making the VRT works with hardcoded values. Once it works, put the<br>
variables back in.<br>
<br>
Just a guess, but ogrinfo on that VRT may help figure out the source of<br>
the problem.<br>
<br>
Daniel<br>
<br>
<br>
On 2015-03-25 4:47 PM, Fawcett, David (MNIT) wrote:<br>
> Martin,<br>
><br>
> Have you looked at the CGI runtime substitution docs?:<br>
> <a href="http://mapserver.org/cgi/runsub.html" target="_blank">http://mapserver.org/cgi/<u></u>runsu<u></u>b.html</a><br>
><br>
> Make sure that you look at the validation section near the bottom.  If<br>
> the substitution works with CGI WMS, you will need validation.<br>
><br>
> David.<br>
><br>
> *From:*<a href="mailto:mapserver-users-bounces@lists.osgeo.org" target="_blank">mapserver-users-<u></u>bounces<u></u>@lists.osgeo.org</a><br>
> [mailto:<a href="mailto:mapserver-users-bounces@lists.osgeo.org" target="_blank">mapserver-users-<u></u>bounce<u></u>s@lists.osgeo.org</a>] *On Behalf Of *Martin<br>
> Ouellet<br>
> *Sent:* Wednesday, March 25, 2015 3:38 PM<br>
> *To:* <a href="mailto:mapserver-users@lists.osgeo.org" target="_blank">mapserver-users@lists.osgeo.<u></u>or<u></u>g</a><br>
> *Subject:* [mapserver-users] passing parameter to a OGRVRTDataSource layer<br>
><br>
> Hi all,<br>
><br>
> I'm using the virtual plugin of OGR to consume a web service who return<br>
> CSV coordinates and mapserver is able to draw the points without any<br>
> problems.<br>
><br>
> The connection definition in my mapfile is something like this.<br>
><br>
> CONNECTION "<OGRVRTDataSource><<u></u>OGRVRTLaye<u></u>r<br>
> name='select'><SrcDataSource><u></u>C<u></u>SV:/vsicurl/http://<my<br>
> server>/service.php</<u></u>SrcDataSo<u></u>urce><GeometryType><u></u>wkbPoint</<u></u>GeometryType><<u></u>SrcLayer>select<<u></u>/SrcLayer><<u></u>LayerSRS>WGS84</<u></u>LayerSRS><<u></u>GeometryField<br>
> encoding='PointFromColumns' x='PHOTO_LONGITUDE'<br>
> y='PHOTO_LATITUDE'/></<u></u>OGRVRTLa<u></u>yer></<u></u>OGRVRTDataSource>"<br>
><br>
> I would like to pass arguments to that CONNETION string so I could build<br>
> dynamic request.  something like this<br>
><br>
> CONNECTION "<OGRVRTDataSource><<u></u>OGRVRTLaye<u></u>r<br>
> name='select'><SrcDataSource><u></u>C<u></u>SV:/vsicurl/http://<my<br>
> server>/service.php?*param1=%<u></u>P<u></u>ARAM1%&amp;param2=%PARAM2%*</<u></u>S<u></u>rcDataSource><GeometryType><u></u>wkb<u></u>Point</GeometryType><<u></u>SrcLayer><u></u>select</SrcLayer><<u></u>LayerSRS><u></u>WGS84</LayerSRS><<u></u>GeometryField<br>
> encoding='PointFromColumns' x='PHOTO_LONGITUDE'<br>
> y='PHOTO_LATITUDE'/></<u></u>OGRVRTLa<u></u>yer></<u></u>OGRVRTDataSource>"<br>
><br>
> I know the argument values (in my example PARAM1 and PARAM2) are OK<br>
> because I'm seeing them in the error message thrown by mapserver (see<br>
> below).  But mapserver refuse to render the points:<br>
><br>
> <?xml version='1.0' encoding="UTF-8" standalone="no" ?><br>
><br>
> <!DOCTYPE ServiceExceptionReport SYSTEM<br>
> "<a href="http://schemas.opengis.net/wms/1.1.1/exception_1_1_1.dtd" target="_blank">http://schemas.opengis.net/<u></u>wm<u></u>s/1.1.1/exception_1_1_1.dtd</a>"<u></u>><br>
><br>
> <ServiceExceptionReport version="1.1.1"><br>
><br>
> <ServiceException><br>
><br>
> msDrawMap(): Image handling error. Failed to draw layer named<br>
> &#39;photo_ownedby_all&#39;.<br>
><br>
> msOGRFileNextShape(): OGR error. Failed to find layer &#39;select&#39;<br>
> on datasource &#39;CSV:/vsicurl/*http://<my<br>
> server>/geophoto/select.php?<u></u>PA<u></u>RAM1=40.886913500823205%2C-<u></u>84.<u></u>41259765625011&amp;PARAM2=<u></u>63.<u></u>97980162961738%2C-43.<u></u>587402343<u></u>750284*&#39;.<br>
><br>
> </ServiceException><br>
><br>
> </ServiceExceptionReport><br>
><br>
> Strangely, if I copy paste this url in the browser, the web service is<br>
> returning valid csv data:<br>
><br>
> *http://<my <http://%3cmy><br>
> server>/geophoto/select.php?<u></u>ll<u></u>=40.886913500823205%2C-84.<u></u>4125<u></u>9765625011&amp;ur=63.<u></u>979801629<u></u>61738%2C-43.<u></u>587402343750284*<br>
><br>
> returned<br>
><br>
> PHOTO_LATITUDE,PHOTO_LONGITUDE<br>
><br>
> 48.8099315451953,-77.<u></u>090691575<u></u>8454<br>
><br>
> 48.8119226339273,-77.<u></u>123176861<u></u>499<br>
><br>
> 48.8139039864207,-77.<u></u>155664877<u></u>6822<br>
><br>
> 48.8158756013937,-77.<u></u>188155611<u></u>3468<br>
><br>
> 48.8178374775437,-77.<u></u>220649049<u></u>4331<br>
><br>
> 48.8171607148511,-77.<u></u>254636421<u></u>7682<br>
><br>
> 48.8164732928131,-77.<u></u>288622812<u></u>9866<br>
><br>
> 48.8157752119077,-77.<u></u>322608207<u></u>8249<br>
><br>
> 48.815066472652,-77.<u></u>3565925909<u></u>73<br>
><br>
> any thoughts?<br>
><br>
> MartinO<br>
><br>
><br>
><br>
> ______________________________<u></u><u></u>_________________<br>
> mapserver-users mailing list<br>
> <a href="mailto:mapserver-users@lists.osgeo.org" target="_blank">mapserver-users@lists.osgeo.<u></u>or<u></u>g</a><br>
> <a href="http://lists.osgeo.org/mailman/listinfo/mapserver-users" target="_blank">http://lists.osgeo.org/<u></u>mailman<u></u>/listinfo/mapserver-<u></u>users</a><br>
><br>
<br>
<br>
--<br>
Daniel Morissette<br>
T: +1 418-696-5056 #201<br>
<a href="http://www.mapgears.com/" target="_blank">http://www.mapgears.com/</a><br>
Provider of Professional MapServer Support since 2000<br>
______________________________<u></u><u></u>_________________<br>
mapserver-users mailing list<br>
<a href="mailto:mapserver-users@lists.osgeo.org" target="_blank">mapserver-users@lists.osgeo.<u></u>or<u></u>g</a><br>
<a href="http://lists.osgeo.org/mailman/listinfo/mapserver-users" target="_blank">http://lists.osgeo.org/<u></u>mailman<u></u>/listinfo/mapserver-<u></u>users</a><br>
</blockquote></div></div>