<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
That is likely an Xml validation error.<br>
It can occur if the Xsd has changed, or one of your attribute values
are invalid.<br>
<br>
What does the MapGuide error log state?<br>
(On windows, look in C:\Program
Files\MapGuideOpenSource2.0\Server\Logs\Error.log)<br>
<br>
<pre class="moz-signature" cols="72">Regards, Kenneth Skovhede, GEOGRAF A/S
</pre>
<br>
<br>
Arnaud De Groof skrev:
<blockquote
 cite="mid:22E55E9B9202984A9BE3AD4D1114465E54E045@spb-lge-mx01.spb.spacebel.be"
 type="cite">
  <meta http-equiv="Content-Type" content="text/html; ">
  <meta name="Generator" content="Microsoft Word 11 (filtered medium)">
<!--[if !mso]>
<style>
st1\:*{behavior:url(#default#ieooui) }
</style>
<![endif]-->
  <style>
<!--
 
 p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman";}
h4
        {mso-margin-top-alt:auto;
        margin-right:0cm;
        mso-margin-bottom-alt:auto;
        margin-left:0cm;
        font-size:12.0pt;
        font-family:"Times New Roman";
        font-weight:bold;}
a:link, span.MsoHyperlink
        {color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {color:purple;
        text-decoration:underline;}
p
        {mso-margin-top-alt:auto;
        margin-right:0cm;
        mso-margin-bottom-alt:auto;
        margin-left:0cm;
        font-size:12.0pt;
        font-family:"Times New Roman";}
pre
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:10.0pt;
        font-family:"Courier New";}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:Arial;
        color:windowtext;}
@page Section1
        {size:612.0pt 792.0pt;
        margin:72.0pt 90.0pt 72.0pt 90.0pt;}
div.Section1
        {page:Section1;}
-->
  </style>
  <div class="Section1">
  <p class="MsoNormal"><font face="Arial" size="2"><span
 style="font-size: 10pt; font-family: Arial;">Hi,</span></font></p>
  <p class="MsoNormal"><font face="Arial" size="2"><span
 style="font-size: 10pt; font-family: Arial;">&nbsp;</span></font></p>
  <p class="MsoNormal"><font face="Arial" size="2"><span
 style="font-size: 10pt; font-family: Arial;">According to the codes
samples (<a moz-do-not-send="true"
 href="http://trac.osgeo.org/mapguide/wiki/CodeSamples">http://trac.osgeo.org/mapguide/wiki/CodeSamples</a>),
I try to use the PHP code samples to add a layer to the initial map. </span></font></p>
  <p class="MsoNormal"><font face="Arial" size="2"><span
 style="font-size: 10pt; font-family: Arial;">I carried out the below
code but it seems that &#8220;</span></font>$resourceService-&gt;SetResource($sessionResourceId,
$byteSource-&gt;GetReader(), null);&#8221; encounters an error in the code.<font
 face="Arial" size="2"><span
 style="font-size: 10pt; font-family: Arial;"></span></font></p>
  <h4><b><font face="Times New Roman" size="3"><span
 style="font-size: 12pt; font-weight: normal;">&lt;?php</span></font></b></h4>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">include "../../mapviewerphp/constants.php";</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">include "../../mapviewerphp/common.php";</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">// Initialize</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp;&nbsp; MgInitializeWebTier($webconfigFilePath);</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp;&nbsp; $args = ($_SERVER['REQUEST_METHOD'] == "POST") ? $_POST : $_GET;</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp;&nbsp; $sessionId = $args['SESSION'];</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp;&nbsp; $mapName = $args['MAPNAME'];</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp;&nbsp; $layerName1 = 'YYY';</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp;&nbsp; </span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp;&nbsp;&nbsp;$userInfo = new MgUserInformation($sessionId);</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp;&nbsp; $siteConnection = new MgSiteConnection();</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp;&nbsp; $siteConnection-&gt;Open($userInfo);</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp;&nbsp; $resourceService = $siteConnection-&gt;CreateService(MgServiceType::ResourceService);</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp;&nbsp; $wl = "Library://XXX/XXX.WebLayout"; // TODO Constant!</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">// Build a string pointing to the new layer in the Session</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp;&nbsp; $rlLayerResourceId = "Session:$sessionId//$layerName1.LayerDefinition";</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">// Read the XML of the Library Map Definition</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp; $md ="Library://XXX/$mapName.MapDefinition";</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp; $mdResourceId = new MgResourceIdentifier($md);&nbsp; </span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp;&nbsp;$mdReader = $resourceService-&gt;GetResourceContent($mdResourceId);</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp; $mdXml = $mdReader-&gt;ToString();</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp; $mdDomDoc = DOMDocument::loadXML($mdXml); </span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">// Create the MapLayer XML nodeset in the first position</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp; $targetNode = $mdDomDoc-&gt;getElementsByTagName("MapLayer")-&gt;item(0);</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp; $newNode = $targetNode-&gt;parentNode-&gt;insertBefore(new DOMElement("MapLayer"), $targetNode); </span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp;&nbsp;$newNode-&gt;appendChild($mdDomDoc-&gt;createElement("Name", $layerName1));</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp; $newNode-&gt;appendChild($mdDomDoc-&gt;createElement("ResourceId", $rlLayerResourceId));</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp; $newNode-&gt;appendChild($mdDomDoc-&gt;createElement("Selectable", "false"));</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp; $newNode-&gt;appendChild($mdDomDoc-&gt;createElement("ShowInLegend", "false"));</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp; $newNode-&gt;appendChild($mdDomDoc-&gt;createElement("LegendLabel"));</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp; $newNode-&gt;appendChild($mdDomDoc-&gt;createElement("ExpandInLegend", "false"));</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp; $newNode-&gt;appendChild($mdDomDoc-&gt;createElement("Visible", "true"));</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp; $newNode-&gt;appendChild($mdDomDoc-&gt;createElement("Group"));</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">// Write the XML out to form the Session Map Definition</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp; $updatedXml = $mdDomDoc-&gt;saveXML();</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp; $byteSource = new MgByteSource($updatedXml, strlen($updatedXml));</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">// Create a web layout in the session to hold the updated version</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">// from the library.</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp; $sessionMapName = $mdResourceId-&gt;GetName();</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp; $sessionWebLayout = "Session:$sessionId//$sessionMapName.WebLayout";</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp; $sessionResourceId = new MgResourceIdentifier($sessionWebLayout);</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">// Write the updated web layout to the session.</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp; $resourceService-&gt;SetResource($sessionResourceId, $byteSource-&gt;GetReader(), null);</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">// Redirect to the Ajax viewer pointing at the map at the desired coordinates.</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp; $redirectTo = "mapguide/mapviewerajax/?WEBLAYOUT=$sessionWebLayout&amp;SESSION=$sessionId";</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp; $host = $_SERVER["HTTP_HOST"];</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp; $url = <a class="moz-txt-link-rfc2396E" href="http://$host/$redirectTo">"http://$host/$redirectTo"</a>;</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">// Redirect!</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp; header("Location: $url");</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp; exit;</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">//Test</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp; $f = 'exemple.txt';</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp; $handle = fopen($f,"w");</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp; fwrite($handle, "test0: &lt;".$sessionId."&gt;\r\ntest1 :&lt;".$wl."&gt;\r\ntest2 :&lt;".$rlLayerResourceId."&gt;\r\ntest3 :&lt;".$md."&gt;\r\ntestxml :&lt;".$mdXml."&gt;\r\ntest4 :&lt;".$layerName1."&gt;\r\ntestxml1 :&lt;".$updatedXml."&gt;\r\ntest6 :&lt;".$sessionMapName."&gt;\r\ntest5 :&lt;".$sessionWebLayout."&gt;\r\ntest6 :&lt;".$host."&gt;\r\ntest7 :&lt;".$redirectTo."&gt;");</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp; fclose($handle);</span></font></pre>
  <h4><b><font face="Times New Roman" size="3"><span
 style="font-size: 12pt; font-weight: normal;">?&gt;</span></font></b></h4>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">Please would you like to help me to resolve the following issue?</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">Thanks,</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;</span></font></pre>
  <pre><font face="Courier New" size="2"><span style="font-size: 10pt;">Arnaud De Groof</span></font></pre>
  </div>
<!--[object_id=#spacebel.be#]-->
  <p><font color="#0000ff"><font face="Tahoma"><strong>
  <hr><font size="2">E-MAIL DISCLAIMER</font></strong></font></font></p>
  <p><font color="#0000ff" face="Arial" size="1">The present message
may contain confidential and/or legally privileged information. If you
are not the intended addressee and in case of a transmission error,
please notify the sender immediately and destroy this E-mail.
Disclosure, reproduction or distribution of this document and its
possible attachments is strictly forbidden.</font></p>
  <p><font color="#0000ff" face="Arial" size="1">SPACEBEL denies all
liability for incomplete, improper, inaccurate, intercepted, (partly)
destroyed, lost and/or belated transmission of the current information
given that unencrypted electronic transmission cannot currently be
guaranteed to be secure or error free.<br>
Upon request or in conformity with formal, contractual agreements, an
originally signed hard copy will be sent to you to confirm the
information contained in this E-mail.</font></p>
  <p><font color="#0000ff" face="Arial" size="1">SPACEBEL denies all
liability where E-mail is used for private use.</font></p>
  <p><font size="2"><font color="#0000ff" face="Arial" size="1">SPACEBEL
cannot be held responsible for possible viruses that might corrupt this
message and/or your computer system.<br>
  </font></font></p>
  <font size="2"><font color="#0000ff" face="Arial">
  <hr></font></font>
  <pre wrap="">
<hr size="4" width="90%">
_______________________________________________
mapguide-users mailing list
<a class="moz-txt-link-abbreviated" href="mailto:mapguide-users@lists.osgeo.org">mapguide-users@lists.osgeo.org</a>
<a class="moz-txt-link-freetext" href="http://lists.osgeo.org/mailman/listinfo/mapguide-users">http://lists.osgeo.org/mailman/listinfo/mapguide-users</a>
  </pre>
</blockquote>
</body>
</html>