[Cartoweb-users] MapOverlay
Luigi.marotta
luigi.marotta at email.it
Tue Apr 3 05:44:07 EDT 2007
I Yves,
Sorry for my english . I have try tu use the comment, but the error
dont disappear. The same error persist even if I comment all the line in
the serverclass. Its possible thath I need a Common part?
>Hi Luigi,
>
>It is an english only list, so you will better information if you ask your
>question in english ;-)
>
>Well, I saw that your error come form the server side of your plugin and
you
>try to get a property of an object which does not exist.
>
>You can try to check this line
>> $mapOverlay = $this->serverContext->getPluginManager()->mapOverlay;
>> $mapOverlay->updateMap($layer);
>> $this->serverContext->getMapObj()->save('/tmp/debug.map');
>Or comment some line begining in the end and go up until the error
disappear.
>
>Regards,
>
>Y.
>Le Lundi 2 Avril 2007 11:48, Luigi.marotta a �crit�:
>> Sto cercando di scrivere un plugin che, utilizzando mapOvrlay, mi
consenta
>> di campiare l'argomento "data" di un
>>
>> layer nel mio map file. Per il momento il plugin consiste: in un
pulstante
>> che cambia un'immagine.
>> La parte client �:
>>
>> <?php
>> /**
>> * ClientDataMappa.php
>> */
>>
>> class ClientDataMappa extends ClientPlugin
>> implements ServerCaller, GuiProvider {
>>
>> protected $specialactiontrigger;
>> protected $flag;
>>
>> public function handleHttpPostRequest($request) {
>> if (isset($request['specialactiontrigger'])) {
>> $this->flag = true;
>> }
>> else {
>> $this->flag = false;
>> }
>> }
>>
>> public function handleHttpGetRequest($request) {}
>>
>> public function buildRequest() {
>> if ($this->flag) {
>> $flag=$this->flag;
>> return $flag;
>> }
>> }
>>
>> protected function drawUserForm() {
>> $smarty = new Smarty_Plugin($this->getCartoclient(), $this);
>> return $smarty->fetch('dataInput.tpl');
>> }
>>
>> public function renderForm(Smarty $template) {
>> $template->assign('dataInput', $this->drawUserForm());
>> }
>>
>> public function initializeResult ($request){
>> if (isset ($this->flag)) {
>> print ('ok');}
>> }
>> public function handleResult($request){
>> if (isset ($this->flag)) {
>> print ('ok');}
>> }
>>
>>
>> }
>> ?>
>>
>> Il template:
>>
>> <!-- dataInput.tpl -->
>> <input type="submit" name="specialactiontrigger" value="ok" />
>>
>> e la parte server:
>>
>> <?php
>> class ServerDataMappa extends ClientResponderAdapter {
>>
>> public $flag;
>>
>> public function initializeRequest($requ) {
>> if ($requ) {
>> $this->flag=$requ;
>> $flag=$this->flag;
>> return $flag;
>> }
>> }
>>
>> public function handlePreDrawing($request){
>> if (isset ($this->flag)) {
>> $layer = new LayerOverlay();
>> $layer->action = BasicOverlay::ACTION_UPDATE;
>> $layer->name = "mappa";
>> $layer->data = "images/cc_20050621.tif";
>> $mapOverlay = $this->serverContext->getPluginManager()->mapOverlay;
>> $mapOverlay->updateMap($layer);
>> $this->serverContext->getMapObj()->save('/tmp/debug.map');
>> }
>> }
>> }
>> ?>
>>
>> La parte Cliente sembra funzionare ma quando viene chiamato il server mi
>> compare questo errore:
>>
>> Failure
>>
>> CartoWeb version: 3.3.0 [$Revision: 1.2 $]
>> class: SoapFaultWrapper
>> message: Error [8, Trying to get property of non-object,
>> C:\wamp\www\cartoweb3\server\Cartoserver.php, 229]
>> Backtrace:
>>
>> file: 229 - C:\wamp\www\cartoweb3\server\Cartoserver.php
>> call: Common::cartowebErrorHandler(8, "Trying to get property of
>> non-object",
>>
>> "C:\wamp\www\cartoweb3\server\Cartoserver.php", 229, Array(4))
>>
>> file: 265 - C:\wamp\www\cartoweb3\server\Cartoserver.php
>> call: Cartoserver->checkRequest(Object(MapRequest))
>>
>> file: 349 - C:\wamp\www\cartoweb3\server\Cartoserver.php
>> call: Cartoserver->doGetMap(Object(MapRequest))
>>
>> file: 370 - C:\wamp\www\cartoweb3\server\Cartoserver.php
>> call: Cartoserver->callWithExceptionCheck("doGetMap", Object(MapRequest))
>>
>> file: 81 - C:\wamp\www\cartoweb3\server\MapResultCache.php
>> call: Cartoserver->cacheGetMap(Object(MapRequest))
>>
>> file: 115 - C:\wamp\www\cartoweb3\server\MapResultCache.php
>> call: MapResultCache->getMapResultFromServer(Object(MapRequest))
>>
>> file: 198 - C:\wamp\www\cartoweb3\server\MapResultCache.php
>> call: MapResultCache->cacheMapResult(Object(MapRequest))
>>
>> file: 380 - C:\wamp\www\cartoweb3\server\Cartoserver.php
>> call: MapResultCache->getMap(Object(MapRequest))
>>
>> file: 104 - C:\wamp\www\cartoweb3\client\CartoserverService.php
>> call: Cartoserver->getMap(Object(MapRequest))
>>
>> file: 165 - C:\wamp\www\cartoweb3\client\CartoserverService.php
>> call: CartoserverService->callDirect("getMap", Object(MapRequest))
>>
>> file: 233 - C:\wamp\www\cartoweb3\client\CartoserverService.php
>> call: CartoserverService->callFunction("getMap", Object(MapRequest))
>>
>> file: 916 - C:\wamp\www\cartoweb3\client\Cartoclient.php
>> call: CartoserverService->getMap(Object(MapRequest))
>>
>> file: 1045 - C:\wamp\www\cartoweb3\client\Cartoclient.php
>> call: Cartoclient->getMapResultFromRequest(Object(MapRequest))
>>
>> 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\mymap.php
>> call: require_once("C:\wamp\www\cartoweb3\htdocs\client.php").
>>
>> Utilizzando la funzione print ho potuto notare che nessuna parte del
server
>> viene eseguita o, comunque, l'errore
>>
>> viene generato dall'inizializzazione.
>> Qualcuno ha gia implementato un plugin simele?
>> Qualcuno pu� aiutarmi?
>> Non so pi� che pesci prendere.
>> Grazie.
>> --
>> Email.it, the professional e-mail, gratis per te: http://www.email.it/f
>>
>> Sponsor:
>> Prestiti e Finanziamenti con un semplice click, scopri subito se sei
>> finanziabile cliccando qui
>> Clicca qui: http://adv.email.it/cgi-bin/foclick.cgi?mid=2910&d=20070402
>>
>>
>> _______________________________________________
>> Cartoweb-users mailing list
>> Cartoweb-users at lists.maptools.org
>> http://lists.maptools.org/mailman/listinfo/cartoweb-users
>
>--
>Yves Jacolin
>---
>http://yjacolin.gloobe.org
--
Email.it, the professional e-mail, gratis per te: http://www.email.it/f
Sponsor:
Tutto per il Modding PC: Case, Led, Neon, Ventole. Il tuo PC personalizzato
da noi conviene, visita il nostro sito
Clicca qui: http://adv.email.it/cgi-bin/foclick.cgi?mid=6123&d=20070403
More information about the Cartoweb-users
mailing list