[mapguide-users] XML Parser error for Feature Sources
Kenneth Skovhede, GEOGRAF A/S
ks at geograf.dk
Mon Dec 1 08:36:26 EST 2008
Yes, you can do just that.
Look in the Maestro source code to see how it's done.
The files "ResourceEditors/ResourceEditorBase.cs" and
"ResourceEditors/ResourceEditorGeneric.cs" shows it.
Some more customized versions are avalible in eg "FeatureSourceEditorSDF.cs"
Basically you can do:
MaestroAPI.ServerConnectionI con; //You must initialize this, see
the developer docs
MaestroAPI.FeatureSource fs = new MaestroAPI.FeatureSource();
fs.Provider = "OSGeo.SHP.3.1";
fs.Parameter["DefaultFilePath"] = "C:\my.shp";
con.SaveResourceAs(fs, new MaestroAPI.ResourceIdentifier("my fs",
OSGeo.MapGuide.MaestroAPI.ResourceTypes.FeatureSource));
As for your actual problem, does the server error log show anything?
C:\program files\Mapguideopensource2.0\server\logs\error.log
Regards, Kenneth Skovhede, GEOGRAF A/S
cagray skrev:
> Thanks for the reply. Unfortunately that did not solve my problem and I got
> the same error. Is there anything else I could try?
>
> I was not aware you could do this without generating/manipulating the xml.
> My web tool has to fully control setting up data sources. So the user
> selects a provider and then fills in the connection details. I then need to
> create a new data source from this to be stored in mapguide. Can you do this
> using the Meastro API alone?
>
>
> Kenneth Skovhede, GEOGRAF A/S wrote:
>
>> I believe the problem is the .Net UTF-8 Encoder prefixes an UTF-8 BOM,
>> which causes problems in the Xml parser:
>> http://trac.osgeo.org/mapguide/ticket/233
>>
>> You can try to create the UTF-8 encoder with:
>>
>> UTF8Encoding utf8 = new UTF8Encoding(false);
>>
>>
>> And see if the problem goes away.
>> Alternatively you can use the MaestroAPI instead of messing with the raw
>> Xml:
>> http://trac.osgeo.org/mapguide/wiki/maestro/MaestroAPI
>>
>> Regards, Kenneth Skovhede, GEOGRAF A/S
>>
>>
>>
More information about the mapguide-users
mailing list