Hi Ivan, thanks for your suggestion, but my problem is not to refresh the viewer to show the map just created, but is the correct creation of new map and layout.
I think to have found the origin of my problem, but I don't understand the error: Argument is null. Exception occurred in method MgWebLayout.ParsePrintCommand at line 880 in file c:\build_bond_area\bond_nightly\build_41.3\ent\os\web\src\webapp\WebLayout.cpp Have you some idea? Thanks, Fabio ------------------------------------------------------------------------------------------------------ Ivan Milicevic wrote: > > Hello, > > You can change href of mapFrame. Here is sample code. > > var mapa = "cijevi"; //defines map name > var stringMape = "Library%3a%2f%2fPROJEKTI%2fSUPRANET%2fMAPE%2f" + mapa; > var hrefMapa = > "http://172.21.10.3/mapguide/mapviewernet/mapframe.aspx?MAPDEFINITION=" > + stringMape + > ".MapDefinition&TYPE=HTML&SHOWLEGEND=0&SHOWPROP=0&INFOWI > DTH=0&LOCALE=en&HLTGT=1&HLTGTNAME=&SHOWSLIDER=0&SESS > ION=" + mgSessionId + "; > > //changing mapFrame href > mapFrame.location.href = hrefMapa; > > > Hope this helps. > > -----Original Message----- > From: mapguide-users-boun...@lists.osgeo.org > [mailto:mapguide-users-boun...@lists.osgeo.org] On Behalf Of sekko970 > Sent: Wednesday, February 18, 2009 9:57 AM > To: mapguide-users@lists.osgeo.org > Subject: Re: [mapguide-users] Create programmatically a map > > > Hi Kenneth, > I need again your help about my problem. > > I think the problem is that after new map run-time creation in library > repository, I cannot use its map definition to create its web layout. > > How can I assign the new map to the layout? > > Thanks again, Fabio > > ------------------------------------------------------------------------ > ------------------------------ > > > Kenneth Skovhede, GEOGRAF A/S wrote: >> >> Try to look at the Maestro code: >> > http://trac.osgeo.org/mapguide/browser/trunk/Tools/Maestro/MaestroAPI/Lo > calNativeConnection.cs#L182 >> >> Hopefully you will find a small difference there. >> >> Regards, Kenneth Skovhede, GEOGRAF A/S >> >> >> >> sekko970 skrev: >>> Yes, the "OuterXml" property contains the XML header line. >>> Fabio >>> >>> > ------------------------------------------------------------------------ > ------------------------------ >>> >>> >>> Kenneth Skovhede, GEOGRAF A/S wrote: >>> >>>> Does the "OuterXml" property contain the <? version="1.0" >>>> encoding="utf-8" standalone="true" ?> line? >>>> >>>> Regards, Kenneth Skovhede, GEOGRAF A/S >>>> >>>> >>>> >>>> sekko970 skrev: >>>> >>>>> Hi Kenneth, and thanks for your promptly reply. >>>>> >>>>> I had used an ancoding instance. >>>>> >>>>> Below, you can see my code to create the new map: >>>>> >>>>> Dim resID As New >>>>> MgResourceIdentifier(Library://.../maps/MyMap.MapDefinition) >>>>> >>>>> Dim enc As New System.Text.UTF8Encoding(False) >>>>> >>>>> Dim newMapDef As New >>>>> MgByteSource(enc.GetBytes(XMLMapTemplate.OuterXml), >>>>> enc.GetByteCount(XMLMapTemplate.OuterXml)) >>>>> >>>>> newMapDef.SetMimeType(MgMimeType.Xml) >>>>> >>>>> Dim resourceSrvc As MgResourceService = >>>>> siteConn.CreateService(MgServiceType.ResourceService) >>>>> >>>>> resourceSrvc.SetResource(resID, newMapDef.GetReader(), Nothing) >>>>> >>>>> Dim map As New MgMap() >>>>> >>>>> map.Create(resourceSrvc, resID, MapName) >>>>> >>>>> ... >>>>> >>>>> Then, this is my code to create the map layout: >>>>> >>>>> Dim resID As New >>>>> MgResourceIdentifier(Library://.../Layouts/MyMap.WebLayout) >>>>> >>>>> Dim enc As New System.Text.UTF8Encoding(False) >>>>> >>>>> Dim newLayoutDef As New >>>>> MgByteSource(enc.GetBytes(XMLLayoutTemplate.OuterXml), >>>>> enc.GetByteCount(XMLLayoutTemplate.OuterXml)) >>>>> >>>>> newLayoutDef.SetMimeType(MgMimeType.Xml) >>>>> >>>>> resourceSrvc As MgResourceService = >>>>> siteConn.CreateService(MgServiceType.ResourceService) >>>>> >>>>> resourceSrvc.SetResource(resID, newLayoutDef.GetReader(), Nothing) >>>>> >>>>> map.Save(resourceSrvc) >>>>> >>>>> >>>>> Thanks for your help. >>>>> Fabio >>>>> >>>>> > ------------------------------------------------------------------------ > ------------------------------ >>>>> >>>>> >>>>> Kenneth Skovhede, GEOGRAF A/S wrote: >>>>> >>>>> >>>>>> You could have the problem that .Net emits an utf-8 > byte-order-marker >>>>>> (BOM), when >>>>>> writing xml. >>>>>> http://en.wikipedia.org/wiki/Byte-order_mark >>>>>> >>>>>> To counter this, explicitly create an encoding instance: >>>>>> System.Text.Encoding enc = new System.Text.UTF8Encoding(false); >>>>>> >>>>>> Then implement a xml writer, or manually convert the xml to bytes, >>>>>> using >>>>>> the encoding. >>>>>> >>>>>> FYI, the MaestroAPI is LGPL, and so you may use it as a library, > even >>>>>> for commercial applications, >>>>>> and it handles this quirk and others. >>>>>> >>>>>> Regards, Kenneth Skovhede, GEOGRAF A/S >>>>>> >>>>>> >>>>>> >>>>>> sekko970 skrev: >>>>>> >>>>>> >>>>>>> Dear all, >>>>>>> >>>>>>> I have created programmatically a map (and its layout) using MG > .Net >>>>>>> web >>>>>>> API. >>>>>>> After creation, the new map and layout are visible in MG Maestro, > and >>>>>>> using >>>>>>> the 'Show in browser" button are correctly shown in browser. >>>>>>> >>>>>>> The problem happens when I load the map directly from browser, > and >>>>>>> the >>>>>>> following error appears: >>>>>>> << The type 'OSGeo.MapGuide.MgNullArgumentException' in assembly >>>>>>> 'MapGuideDotNetApi, Version= 2.0.2.30 11, Culture=neutral, >>>>>>> PublicKeyToken=null' is not marked as serializable >>. >>>>>>> >>>>>>> Then, simply saving the new layout from MG Maestro (without any >>>>>>> modification), and reloading the map directly from browser, the > error >>>>>>> disappears and the map is correctly shown. >>>>>>> >>>>>>> After saving the layout, there aren't differences in map and > layout >>>>>>> XML >>>>>>> definitions. >>>>>>> >>>>>>> Have you any idea about? >>>>>>> Thank you in advance. >>>>>>> Fabio >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>> _______________________________________________ >>>>>> mapguide-users mailing list >>>>>> mapguide-users@lists.osgeo.org >>>>>> http://lists.osgeo.org/mailman/listinfo/mapguide-users >>>>>> >>>>>> >>>>>> >>>>>> >>>>> >>>>> >>>> _______________________________________________ >>>> mapguide-users mailing list >>>> mapguide-users@lists.osgeo.org >>>> http://lists.osgeo.org/mailman/listinfo/mapguide-users >>>> >>>> >>>> >>> >>> >> >> _______________________________________________ >> mapguide-users mailing list >> mapguide-users@lists.osgeo.org >> http://lists.osgeo.org/mailman/listinfo/mapguide-users >> >> > > -- > View this message in context: > http://n2.nabble.com/Create-programmatically-a-map-tp2314238p2345737.htm > l > Sent from the MapGuide Users mailing list archive at Nabble.com. > > _______________________________________________ > mapguide-users mailing list > mapguide-users@lists.osgeo.org > http://lists.osgeo.org/mailman/listinfo/mapguide-users > _______________________________________________ > mapguide-users mailing list > mapguide-users@lists.osgeo.org > http://lists.osgeo.org/mailman/listinfo/mapguide-users > > -- View this message in context: http://n2.nabble.com/Create-programmatically-a-map-tp2314238p2345874.html Sent from the MapGuide Users mailing list archive at Nabble.com. _______________________________________________ mapguide-users mailing list mapguide-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapguide-users