[Cartoweb-users] Re: Cartoweb-users Digest, Vol 24, Issue 21

Véro Herzl - Bluewin veroh at bluewin.ch
Tue Apr 17 10:20:56 EDT 2007


YES !

I received a response (well that's what my Ajax said). It is updating 
the Gui for the plugin now... for quite a long time actually (the result 
should give me 25 rows for 6 columns).

Who knows. If ever I got something or if I don't I will tell.

Thanks anyway for your help

Véronique

cartoweb-users-request at lists.maptools.org a écrit :
> Send Cartoweb-users mailing list submissions to
> 	cartoweb-users at lists.maptools.org
>
> To subscribe or unsubscribe via the World Wide Web, visit
> 	http://lists.maptools.org/mailman/listinfo/cartoweb-users
> or, via email, send a message with subject or body 'help' to
> 	cartoweb-users-request at lists.maptools.org
>
> You can reach the person managing the list at
> 	cartoweb-users-owner at lists.maptools.org
>
> When replying, please edit your Subject line so it is more specific
> than "Re: Contents of Cartoweb-users digest..."
>
>
> Today's Topics:
>
>    1. Re: Plugin search not working (veroh at bluewin.ch)
>    2. Re: Plugin search not working (Yves Bolognini)
>
>
> ----------------------------------------------------------------------
>
> Message: 1
> Date: Tue, 17 Apr 2007 13:56:00 +0000 (GMT)
> From: "veroh at bluewin.ch" <veroh at bluewin.ch>
> Subject: Re: [Cartoweb-users] Plugin search not working
> To: <oliver.christen at camptocamp.com>
> Cc: cartoweb-users at lists.maptools.org
> Message-ID:
> 	<9132204.1007211176818160327.JavaMail.webmail at ps10zhh.bluewin.ch>
> Content-Type: text/plain;charset="UTF-8"
>
> Well, my databas eis in UTF 8 so I added a line
> EncoderClass.POSTGIS_MAJ = EncoderUTF
> in my project.ini (server side) in adition ot the already existing 
> line : EncoderClass.config = EncoderISO
>
> In my search.ini (client side), I now added the line 
> encodingContext = EncoderUTF (as my db is in UTF8)
>
> And nothing on the server side (no search file), so I got a quite 
> similar problem still.
>
> Failure
>
> CartoWeb version: 3.3.0 [$Revision: 1.2 $]
> class:   CartocommonException
> message:   Error [8, Undefined index:  EncoderUTF, C:
> \wamp\www\cartoweb3\common\Encoding.php, 79]
> Backtrace:
>
> file: 79 - C:\wamp\www\cartoweb3\common\Encoding.php
> call: Common::cartowebErrorHandler(8, "Undefined index:  
> EncoderUTF", "C:\wamp\www\cartoweb3\common\Encoding.php", 79, Array
> (1))
>
> file: 117 - C:\wamp\www\cartoweb3\common\Encoding.php
> call: Encoder::getEncoder("EncoderUTF")
>
> file: 272 - C:\wamp\www\cartoweb3\plugins\search\common\Search.php
> call: Encoder::decode("", "EncoderUTF")
>
> file: 269 - C:
> \wamp\www\cartoweb3\plugins\search\client\ClientSearch.php
> call: DbResultProvider->getResult(Object(SearchRequest))
>
> file: 265 - C:\wamp\www\cartoweb3\client\ClientPluginHelper.php
> call: ClientSearch->initializeResult(Null)
>
> file: UNKNOWN - UNKNOWN
> call: ServerCallerHelper->initializeResultHelper(Object
> (ClientSearch), Object(MapResult))
>
> file: 267 - C:\wamp\www\cartoweb3\common\PluginManager.php
> call: call_user_func_array(Array(2), Array(2))
>
> file: 320 - C:\wamp\www\cartoweb3\common\PluginManager.php
> call: PluginManager->callPluginImplementing(Object(ClientSearch), 
> "ServerCaller", "initializeResult", Array(1))
>
> file: 685 - C:\wamp\www\cartoweb3\client\Cartoclient.php
> call: PluginManager->callEnabledPluginsImplementing(2, 
> "ServerCaller", "initializeResult", Array(1))
>
> file: 1057 - C:\wamp\www\cartoweb3\client\Cartoclient.php
> call: Cartoclient->callEnabledPluginsImplementing(2, 
> "ServerCaller", "initializeResult", Object(MapResult))
>
> file: 1220 - C:\wamp\www\cartoweb3\client\Cartoclient.php
> call: Cartoclient->doMain()
>
> file: 38 - C:\wamp\www\cartoweb3\htdocs\client.php
> call: Cartoclient->main()
>
> file: 3 - C:\wamp\www\cartoweb3\htdocs\n16.php
> call: require_once("C:\wamp\www\cartoweb3\htdocs\client.php")
>
>
> So if now I put a search.ini on the client and server side with 
> both the same content, I got the same error as above.
>
> What can I do then ?
> Véronique
>
>
> ----Message d'origine----
> De: oliver.christen at camptocamp.com
> Date: 17.04.2007 15:45
> À: <veroh at bluewin.ch>
> Copie: <cartoweb-users at lists.maptools.org>
> Objet: Re: [Cartoweb-users] Plugin search not working
>
> as far as i know there is no need for a server side config file
>
> and the syntax for the database connection seems ok
>
> the error seems now to come from the encoding/decoding
> did you set an encodingContext = xxxx in your search.ini?
> and also you must have a corresponding EncoderClass.xxxx = 
> EncoderISO
>
> the encodingContext is simply a name attributed to the search 
> plugin so all
> encoding/decoding of string are done in the same type of encoding 
> (utf-8,
> ISO-8859-1, ASCII, ...)
>
> the name reffer to the encoding set in client.ini, for exemple:
> EncoderClass.xxxx = EncoderISO <- this mean the database encoding 
> is
> ISO-8859-1
>
> This is only needed if, for exemple, your database data is in
> ISO-8859-1 and specials characters are not displayed correctly in 
> the page
> (which usually is in UTF-8)
>
> see
> http://www.cartoweb.org/doc/cw3.3/xhtml/user.i18n.html#user.i18n.
> encoding
> for more info
>
>
> regards
> Oliver
>
> ----- Original Message ----- 
> From: <veroh at bluewin.ch>
> To: <oliver.christen at camptocamp.com>
> Cc: <cartoweb-users at lists.maptools.org>
> Sent: Tuesday, April 17, 2007 3:31 PM
> Subject: Re: [Cartoweb-users] Plugin search not working
>
>
> Hello,
>
> So basically, if I introduce the value POSTGIS_MAJ, I do get a bit
> further on... I got a failure which say that it can not connect to
> the dsn or db.
>
> I decided then to try to follow the chapter 24 which says that no
> file should be under the serverside ini file but on the client 
> side.
> This is not what I did the first time as I followed the advices 
> you
> gave in March to another contributor.
>
> So I got now
>
> dbType = pgsql
> dsn = pgsql://postgres:afgan6@localhost:5432/demo_n16 in my 
> search.
> ini on the client side and on the server side (same search.ini
> files).
>
> Here is the message of the failure
>
> Failure
>
> CartoWeb version: 3.3.0 [$Revision: 1.2 $]
> class:   CartocommonException
> message:   Error [8, Undefined index:  , C:
> \wamp\www\cartoweb3\common\Encoding.php, 79]
> Backtrace:
>
> file: 79 - C:\wamp\www\cartoweb3\common\Encoding.php
> call: Common::cartowebErrorHandler(8, "Undefined index:  ", "C:
> \wamp\www\cartoweb3\common\Encoding.php", 79, Array(1))
>
> file: 117 - C:\wamp\www\cartoweb3\common\Encoding.php
> call: Encoder::getEncoder(Null)
>
> file: 272 - C:\wamp\www\cartoweb3\plugins\search\common\Search.php
> call: Encoder::decode("", Null)
>
> file: 269 - C:
> \wamp\www\cartoweb3\plugins\search\client\ClientSearch.php
> call: DbResultProvider->getResult(Object(SearchRequest))
>
> file: 265 - C:\wamp\www\cartoweb3\client\ClientPluginHelper.php
> call: ClientSearch->initializeResult(Null)
>
> file: UNKNOWN - UNKNOWN
> call: ServerCallerHelper->initializeResultHelper(Object
> (ClientSearch), Object(MapResult))
>
> file: 267 - C:\wamp\www\cartoweb3\common\PluginManager.php
> call: call_user_func_array(Array(2), Array(2))
>
> file: 320 - C:\wamp\www\cartoweb3\common\PluginManager.php
> call: PluginManager->callPluginImplementing(Object(ClientSearch),
> "ServerCaller", "initializeResult", Array(1))
>
> file: 685 - C:\wamp\www\cartoweb3\client\Cartoclient.php
> call: PluginManager->callEnabledPluginsImplementing(2,
> "ServerCaller", "initializeResult", Array(1))
>
> file: 1057 - C:\wamp\www\cartoweb3\client\Cartoclient.php
> call: Cartoclient->callEnabledPluginsImplementing(2,
> "ServerCaller", "initializeResult", Object(MapResult))
>
> file: 1220 - C:\wamp\www\cartoweb3\client\Cartoclient.php
> call: Cartoclient->doMain()
>
> file: 38 - C:\wamp\www\cartoweb3\htdocs\client.php
> call: Cartoclient->main()
>
> file: 3 - C:\wamp\www\cartoweb3\htdocs\n16.php
> call: require_once("C:\wamp\www\cartoweb3\htdocs\client.php")
>
>
> Is it a step backward or forward ???
>
> Véronique
>
> ----Message d'origine----
> De: oliver.christen at camptocamp.com
> Date: 17.04.2007 15:07
> À: "Véro Herzl - Bluewin"<veroh at bluewin.ch>, <cartoweb-
> users at lists.
> maptools.org>
> Objet: Re: [Cartoweb-users] Plugin search not working
>
> i think POSTGIS_MAJ
> Well yes, you got it right, it is empty. So to fill it, what do I
> have to put in ?
>
> Véronique
>
>
> Oliver Christen a écrit: I forgot to say the most important:be 
> sure
> the value of that input is not emptyregardsOliverHithere are no
> search_config parameter set in the post request. I think the main
> search input name must be search_configdo you have a <input type="
> hidden" id="search_config" name="search_config" element in your
> search template ?regardsOliver----- Original Message ----- From: 
> Véro
> Herzl - Bluewin 'mailto:veroh at bluewin.ch'To: Damien Corpataux 
> 'mailto:
> damien.corpataux at camptocamp.com' ; cartoweb-users at lists.maptools.
> org
> 'mailto:cartoweb-users at lists.maptools.org' Sent: Tuesday, April 
> 17,
> 2007 2:21 PMSubject: Re: [Cartoweb-users] Plugin search not 
> working
> OK, well, I am in the development mode but with Ajax on and
> cartoclient.Ajaxheader,tpl, so the error message is for the Ajay
> part
>
>
> --- Action Search.DoIt triggered ---
> Calling Search.DoIt onBeforeAjaxCall()
> Calling AjaxPlugins.Common.onBeforeAjaxCall()
> Initiating AJAX request
> Pending actions: 1
> GET params:
> ajaxActionRequest=Search.DoIt&
> POST params:
>
>
> posted=1&js_folder_idx=5&js_toolbar_idx=&selection_type=&selection_coords=&features=&js_accounting=version=0;
> hasJava=true;winInnerWidth=1024;winInnerHeight=578;
> screenWidth=1024;
> screenHeight=768;screenColorDepth=32&outline_label_text=votre
>
>
> titre&tool=zoomin&project=n16&recenter_x=&recenter_y=&recenter_doit=0&shortcut_doit=0&openNodes=&layers
> []=OPA&layers[]=OPB&layers[]=OPC&layers[]=OPD&layers[]=OPE&layers
> []
> =OPF&layers[]=OPG&layers[]=OPH&layers[]=N16&layers[]
> =POSTGIS_MAJ&layers[]=EDITPOINT&layers[]=EDITPOLY&layers[]
>
>
> =EDITLINE&pdfMarginX=20&pdfMarginY=20&pdfA4x=210&pdfA4y=297&pdfA3x=297&pdfA3y=420&pdfOrientation=portrait&pdfMapAngle=&pdfMapCenterX=&pdfMapCenterY=&pdfTitle=&pdfNote=&pdfScalebar=&pdfLegend=0&viewTitle=&author=&handleView=0&locate_MAJ=&locate_MAJ2=&id_recenter_ids=&search_mandat_n16=N2354&search_travaux=&search_date_txt=&search_en_cours=&search_config=&search_sort_column=&search_sort_direction=asc&search_number=&outline_mask=no&outline_point_symbol=circle&outline_point_size=10&outline_line_size=3&outline_line_transparency=100&outline_polygon_transparency=60&edit_validate_all=0&recenter_scale=0&shortcut_id=-
>
>
> 1&mapsize=1&pdfFormat=A4&pdfResolution=96&pdfScale=2500&id_recenter_layer=MAJ&edit_layer=0&
> Waiting for response...
> Response received!
> Error: AjaxHandler.actionRequest(): received response is
> malformed!
> And below it, I got the following failure :
> Failure
>
> CartoWeb version: 3.3.0 [$Revision: 1.2 $]
> class: CartoclientException
> message: Empty config or config not found
> Backtrace:
>
> file: UNKNOWN - UNKNOWN
> call: ClientSearch->handleHttpPostRequest(Array(62))
>
> file: 270 - C:\wamp\www\cartoweb3\common\PluginManager.php
> call: call_user_func_array(Array(2), Array(1))
>
> file: 320 - C:\wamp\www\cartoweb3\common\PluginManager.php
> call: PluginManager->callPluginImplementing(Object(ClientSearch),
> "GuiProvider", "handleHttpPostRequest", Array(1))
>
> file: 685 - C:\wamp\www\cartoweb3\client\Cartoclient.php
> call: PluginManager->callEnabledPluginsImplementing(1,
> "GuiProvider", "handleHttpPostRequest", Array(1))
>
> file: 995 - C:\wamp\www\cartoweb3\client\Cartoclient.php
> call: Cartoclient->callEnabledPluginsImplementing(1, 
> "GuiProvider",
> "handleHttpPostRequest", Array(62))
>
> file: 1220 - C:\wamp\www\cartoweb3\client\Cartoclient.php
> call: Cartoclient->doMain()
>
> file: 38 - C:\wamp\www\cartoweb3\htdocs\client.php
> call: Cartoclient->main()
>
> file: 3 - C:\wamp\www\cartoweb3\htdocs\n16.php
> call: require_once("C:\wamp\www\cartoweb3\htdocs\client.php")
>
>
>
>
>
> Damien Corpataux a écrit: Hello,
>
> if you are in development mode, when an error occurs, an alert box
> is displayed and allows you to print the cartoweb error message. 
> Can
> you post this error message?
>
> Regards,
> Damien
>
>
> veroh at bluewin.ch 'mailto:veroh at bluewin.ch' wrote:
> Hello,
> I am trying to implement the plugin search in my project but I got
> the following error
> --- Action Search.DoIt triggered ---
> Calling Search.DoIt onBeforeAjaxCall()
> Calling AjaxPlugins.Common.onBeforeAjaxCall()
> Initiating AJAX request
> Pending actions: 1
> GET params:
> ajaxActionRequest=Search.DoIt&
> POST params:
>
>
> posted=1&js_folder_idx=5&js_toolbar_idx=&selection_type=&selection_coords=&features=&js_accounting=version=0;
> hasJava=true;winInnerWidth=1024;winInnerHeight=578;
> screenWidth=1024;
> screenHeight=768;screenColorDepth=32&outline_label_text=votre
>
>
> titre&tool=zoomin&project=n16&recenter_x=&recenter_y=&recenter_doit=0&shortcut_doit=0&openNodes=&layers
> []=OPA&layers[]=OPB&layers[]=OPC&layers[]=OPD&layers[]=OPE&layers
> []
> =OPF&layers[]=OPG&layers[]=OPH&layers[]=N16&layers[]
> =POSTGIS_MAJ&layers[]=EDITPOINT&layers[]=EDITPOLY&layers[]
>
>
> =EDITLINE&pdfMarginX=20&pdfMarginY=20&pdfA4x=210&pdfA4y=297&pdfA3x=297&pdfA3y=420&pdfOrientation=portrait&pdfMapAngle=&pdfMapCenterX=&pdfMapCenterY=&pdfTitle=&pdfNote=&pdfScalebar=&pdfLegend=0&viewTitle=&author=&handleView=0&locate_MAJ=&locate_MAJ2=&id_recenter_ids=&search_mandat_n16=N2354&search_travaux=&search_date_txt=&search_en_cours=&search_config=&search_sort_column=&search_sort_direction=asc&search_number=&outline_mask=no&outline_point_symbol=circle&outline_point_size=10&outline_line_size=3&outline_line_transparency=100&outline_polygon_transparency=60&edit_validate_all=0&recenter_scale=0&shortcut_id=-
>
>
> 1&mapsize=1&pdfFormat=A4&pdfResolution=96&pdfScale=2500&id_recenter_layer=MAJ&edit_layer=0&
> Waiting for response...
> Response received!
> Error: AjaxHandler.actionRequest(): received response is
> malformed!
> I have a search.ini file in my client_conf :
> config.POSTGIS_MAJ.provider.type = fulltextTable
> config.POSTGIS_MAJ.provider.table = maj2
> config.POSTGIS_MAJ.provider.id = gid
> config.POSTGIS_MAJ.provider.columns = mandat_n16, travaux,
> date_txt, en_cours
> config.POSTGIS_MAJ.provider.fulltextColumns = mandat_n16, travaux,
> date_txt, en_cours
> config.POSTGIS_MAJ.provider.sortColumn = date_txt
> config.POSTGIS_MAJ.provider.sortDirection = asc
> config.POSTGIS_MAJ.provider.sortPriorities = date_txt, mandat_n16,
> travaux, en_cours
> config.POSTGIS_MAJ.provider.labels = mandat_n16, travaux,
> date_txt,
> en_cours
> config.POSTGIS_MAJ.formatter.type = smarty
> config.POSTGIS_MAJ.formatter.template = search_results
> Where POSTGIS is the layer I declared in my MAP file which is a
> POSTGRESQL/POSTGIS table (maj2) and gid is the
> 'id_attribute_string'
> I have also one in the server_side :
> dbType = pgsql
> dsn = pgsql://postgres:afgan6@localhost:5432/demo_n16
> config.POSTGIS_MAJ.provider.type = fulltextTable
> config.POSTGIS_MAJ.provider.table = maj2
> config.POSTGIS_MAJ.provider.id = gid
> config.POSTGIS_MAJ.provider.columns = mandat_n16, travaux,
> date_txt, en_cours
> config.POSTGIS_MAJ.provider.fulltextColumns = mandat_n16, travaux,
> date_txt, en_cours
> config.POSTGIS_MAJ.provider.sortColumn = date_txt
> config.POSTGIS_MAJ.provider.sortDirection = asc
> config.POSTGIS_MAJ.provider.sortPriorities = date_txt, mandat_n16,
> travaux, en_cours
> config.POSTGIS_MAJ.provider.labels = mandat_n16, travaux,
> date_txt,
> en_cours
> config.POSTGIS_MAJ.formatter.type = smarty
> config.POSTGIS_MAJ.formatter.template = search_results
> I modified my cartoclient.tpl by adding two lines
> {if $search_active|default:''}<script type="text/javascript" src="
> {r type=js plugin=search}Search.ajax.js{/r}"></script>{/if}
> which is just after the one for the Ajax ({if $ajaxOn|default:''}
> etc..)
> and in the div="container", I added in one of my div=folder :
> {if $search_active|default:''} {$search} {/if}
> I got in templates, two files :
> search.tpl:
> <div id="search_div">
> <fieldset>
> <legend>{t}Search{/t}
> </legend>
> <br/>
> <table width="100%">
> <tr>
> <td>
> {t}Mandat: {/t}
> </td>
> <td>
> <input type="text" id="search_mandat_n16" name="
> search_mandat_n16" size="13"/>
> </td>
> </tr>
> <tr>
> <td>
> {t}Type de travaux: {/t}
> </td>
> <td>
> <input type="text" id="search_travaux" name="search_travaux"
> size="13"/>
> </td>
> </tr>
> <tr>
> <td>
> {t}Date: {/t}
> </td>
> <td>
> <input type="text" id="search_date_txt" name="search_date_txt"
> size="13"/>
> </td>
> </tr>
> <tr>
> <td>
> {t}En cours ou non: {/t}
> </td>
> <td>
> <input type="text" id="search_en_cours" name="search_en_cours"
> size="13"/>
> </td>
> </tr>
> </table>
> <p>
> <input type="submit" value="{t}Search{/t}" class="form_button"
> onclick="Javascript: CartoWeb.trigger('Search.DoIt'); return
> false;"
> />
> <input type="hidden" id="search_config" name="search_config" />
> <input type="hidden" id="search_sort_column" name="
> search_sort_column" />
> <input type="hidden" id="search_sort_direction" name="
> search_sort_direction" value="asc" />
> <input type="hidden" id="search_number" name="search_number" />
> <div id="search_results_div">
> </div>
> </p>
> </fieldset>
> </div>
> and search_results.tpl
> {if $table->numRows > 0}
> <table class="n16table">
> <tr>
> <th>
> {t}Id{/t}
> </th>
> {foreach from=$table->columnIds item=column}
> <th>
> <a href="Javascript: order('{$column}');">{t}{$column}{/t}
> </a>
> </th>
> {/foreach}
> </tr>
> {foreach from=$table->rows item=row}
> <tr>
> {foreach from=$row->cells item=value}
> <td>
> <a href="Javascript: recenter('{$row->rowId}');">{$value}</a>
> </td>
> {/foreach}
> </tr>
> {/foreach}
> </table>
> {else}
> {t}No results{/t}
> {/if}
> Last but not least, I got the js ! Namely Search.ajax.js
> AjaxPlugins.Search = {
> handleResponse: function(pluginOutput) {
> if (pluginOutput.htmlCode.POSTGIS_MAJ)
> $('search_results').innerHTML = pluginOutput.htmlCode.
> POSTGIS_MAJ;
> }
> };
> /*
> * Search plugin's Actions
> */
> AjaxPlugins.Search.Actions = {};
> AjaxPlugins.Search.Actions.DoIt = {
> buildPostRequest: function(argObject) {
> return AjaxHandler.buildPostRequest();
> }
> };
> function order(column) {
> if (column != $('search_sort_column').value){
> $('search_sort_column').value = column;
> $('search_sort_direction').value = 'asc';
> } else {
> if ($('search_sort_direction').value == 'asc') {
> $('search_sort_direction').value = 'desc';
> } else {
> $('search_sort_direction').value = 'asc';
> }
> }
> CartoWeb.trigger('Search.DoIt');
> }
> function recenter(id) {
> if ($('search_config').value == 'POSTGIS_MAJ') {
> $('id_recenter_ids').value = gid; //id to recenter
> $('recenter_scale').value = 1000; //scale for recentering
> $('recenter_doit').value = '1';
> CartoWeb.trigger('Location.Recenter');
> }
> I guess you now know all I did. Could someone please tell me what
> is wrong.
> Apparently, someone else asked the same thing last month but no
> final answer was given on the mail list.
> PS : Yes, I did clean all the file before trying
> Véronique
> _______________________________________________
> Cartoweb-users mailing list
> Cartoweb-users at lists.maptools.org 'mailto:Cartoweb-users at lists.
> maptools.org'http://lists.maptools.org/mailman/listinfo/cartoweb-
> users 'http://lists.maptools.org/mailman/listinfo/cartoweb-users'
>
>   



More information about the Cartoweb-users mailing list