Hi, <br>&nbsp; I have written a plugin which colors the polygon of my map.The following is the code wriiteen for c:\wamp\www\cartoweb3\plugins\ctr\server\ServerCtr.php.<br><br>&nbsp; Before this code there was no problem with the map the map is displaying after writing this I was getting&nbsp; the following exception.
<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; I have also made one more changes previously my project name is ctr&nbsp; and i used to execute it as <a href="http://ctr.php.As">ctr.php.As</a> my plugin name and my project names are same i changed it to chittoor.
<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Now I want to know where the problem actually is.Is it in the code or in Renaming my file names.No doubt i have renamed everything required.<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; The Exception is<br><br><br>
<b>Fatal error</b>: Uncaught exception 'CartocommonException' with
message 'Error [2, Cannot modify header information - headers already
sent by (output started at
C:\wamp\www\cartoweb3\plugins\ctr\server\ServerCtr.php:123),
C:\wamp\www\cartoweb3\client\FormRenderer.php, 301]
Backtrace:
file: UNKNOWN - UNKNOWN
call: Common::cartowebErrorHandler(2, &quot;Cannot modify header information
- headers already sent by (outp...&quot;,
&quot;C:\wamp\www\cartoweb3\client\FormRenderer.php&quot;, 301, Array(1))
file: 301 - C:\wamp\www\cartoweb3\client\FormRenderer.php
call: header(&quot;HTTP/1.1 500 Internal Server Error&quot;)
file: 1032 - C:\wamp\www\cartoweb3\client\Cartoclient.php
call: FormRenderer-&gt;showFailure(Object(SoapFaultWrapper))
file: 38 - C:\wamp\www\cartoweb3\htdocs\client.php
call: Cartoclient-&gt;main()
file: 3 - C:\wamp\www\cartoweb3\htdocs\chittoor.php
call: require_once(&quot;C:\wamp\www\cartoweb3\htdocs\client.php&quot;)
' in C:\wamp\www\cartoweb3\common\Common.php:275
Stack trace:
#0 [internal function]: Common::cartowebErrorHandler(2, 'Cannot modify
h... in <b>C:\wamp\www\cartoweb3\common\Common.php</b> on line <b>275</b><br>
<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Here is my code<br><br>ServerCtr.php<br>------------------<br>&lt;?php&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <br>require_once(CARTOWEB_HOME . 'common/BasicTypes.php');<br>require_once('DB.php');<br><br>class ServerCtr extends ClientResponderAdapter
<br>&nbsp;&nbsp;&nbsp; implements InitProvider<br>{<br><br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; private $log;<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; public function __construct()<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; parent::__construct();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $this-&gt;log =&amp; LoggerManager::getLogger(__CLASS__);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
<br>&nbsp;&nbsp;&nbsp; }<br><br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; public function getInit()<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // Things to learn from the LayerInit<br>&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; public function getValues($id)<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $values = array();<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for($k=0;$k=1105;$k++)
<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $values[k] = rand(0,100);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; return $values;<br>&nbsp;&nbsp;&nbsp; } <br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; public function initializeRequest($requ)<br>&nbsp;&nbsp;&nbsp; { <br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $msMapObj = $this-&gt;serverContext-&gt;getMapObj();
<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $resultArray = $this-&gt;getValues($requ-&gt;dataElement_id);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $msLayer = $msMapObj-&gt;getLayerByName('chittoot');<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $no_intervals = 5;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $color = &quot;Reds&quot;;&nbsp; //dont't think this is necessary
<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $this-&gt;colorMapFromData($resultArray, $msLayer, $no_intervals, $color);&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; public function buildClassExpressions($numberOfIntervals,$resultArray)<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $max_val = max($resultArray);
<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $min_val = min($resultArray);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $intervalLength = ceil(($max_val - $min_val)/$numberOfIntervals);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $idsPerClass = array();<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; foreach($resultArray as $id =&gt; $value)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $classNo = floor($value/$intervalLength);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $idsPerClass[$classNo] .= $id. &quot;,&quot;;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $classes = array();<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for($i=0;$i &lt; $numberOfIntervals+1;$i++)
<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if ($classNo[$i])<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $classIds = substr($classNo[$i],o,-1);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; else<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $classIds = &quot;&quot;;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;$classes[$i] = &quot;([&quot;.$idcol. &quot;] IN '&quot; . $classIds . &quot;')&quot;;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; return $classes;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; public function colorMapFromData($resultArray, $msLayer, $numberOfIntervals, $colorScheme)<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $expressions = $this-&gt;buildClassExpressions($numberOfIntervals,$resultArray);
<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $r = 10;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $g = 10;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $b = 10;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for($i=0;$i&lt;numberOfIntervals;$i++)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $msClass = ms_newClassObj($msLayer);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $msClass-&gt;setexpression($expressions[$i]);
<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $msStyle = ms_newStyleObj($msClass);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $msStyle-&gt;color-&gt;setRGB($r,$g,$b);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $r = $r + 10;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $g = $g + 10;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $b = $b + 10;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; }<br>
}<br>?&gt;<br><br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ctr.ini consists of <br>id_col=&quot;ID&quot;<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Please give me the solution how to solve this problem.<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Thanks in Advance,
<br><br>Regards,<br>Venu.<br><br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; 
<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <br><br>