Initial Manifest Failed - using DssDeploy with Windows CE

George,

Sigh...I dont' know why this started happening, but I've had my autonomousfollowing service starting up a-okay on my ICOP Vortex86-6082 for the last several days.

Starting last night, I started getting the following error when the service is started up:

Service uri: [05/12/2007 21:58:31][http://windowsce:50000/directory] *
* Service uri: [05/12/2007 21:58:42][http://windowsce:50000/constructor/f9ae4d
d15-d906-4465-b98b-a1916bff8af2] *
* Starting manifest load: \cf1\ul
file:///Program%20Files/AutonomousFollowing/samples/platforms/roboticsconnection/msrsdemo/autonomousfollowing/autonomousfollowing.manifest.xml [05/12/2007 21:58:49][http://windowsce:50000/manifestloaderclient] *
*** NullReferenceException [05/12/2007 21:58:51][http://windowsce:50000/manifestloaderclient] *
*** ManifestLoaderClient: Initial manifest failed: \cf1\ul
http://www.w3.org/2003/05/soap-envelope:Receiver -> Fault [05/12/2007 21:58:52][http://windowsce:50000/manifestloaderclient]

If I start the service up under XP, everything works just fine...

I've blown away my CE image, and reflashed the entire embedDisk. I've rebuilt the entire solution for this project. I've rebuilt the Serializer Services. I've rebuilt the deploy package (using DssDeploy). I've stripped the manifest down to nothing but the autonomousfollowing initial partner list entry (no other partners).

Also, I changed the logging levels in cf.dsshost.exe.xml, and I can't get any extra debugging messages sent out. There's no more debugging information that I can go on....

This error pops up whether I start the service from the command line, or from Visual Studio.

Here's the command line invocation I'm using (under \Program Files\AutonomousFollowing):

Code Snippet

bin/cf.dsshost.exe /p:50000 /t:50001 /m:../samples/platforms/roboticsconnection/msrsdemo/autonomousfollowing/autonomousfollowing.manifest.xml

All of the proper configuration files exist too, and the location of those configuration files within the manifest are relative...In fact, here is my original manifest file.

Code Snippet

<?xmlversion="1.0" ?>

<Manifest

xmlns="http://schemas.microsoft.com/xw/2004/10/manifest.html"

xmlns:dssp="http://schemas.microsoft.com/xw/2004/10/dssp.html"

xmlns:AutonomousFollowing="http://www.roboticsconnection.com/2007/04/autonomousfollowing.html"

>

<CreateServiceList>

<ServiceRecordType>

<dssp:Contract>http://www.roboticsconnection.com/2007/04/autonomousfollowing.html</dssp:Contract>

<dssp:PartnerList>

<dssp:Partner>

<dssp:Service>config/autonomousfollowing.config.xml</dssp:Service>

<dssp:Name>dssp:StateService</dssp:Name>

</dssp:Partner>

<dssp:Partner>

<dssp:Name>AutonomousFollowing:Serializer</dssp:Name>

</dssp:Partner>

<dssp:Partner>

<dssp:Name>AutonomousFollowing:Motor1</dssp:Name>

</dssp:Partner>

<dssp:Partner>

<dssp:Name>AutonomousFollowing:Motor2</dssp:Name>

</dssp:Partner>

<dssp:Partner>

<dssp:Name>AutonomousFollowing:Gp2d120</dssp:Name>

</dssp:Partner>

<dssp:Partner>

<dssp:Name>AutonomousFollowing:LineSensor</dssp:Name>

</dssp:Partner>

<dssp:Partner>

<dssp:Name>AutonomousFollowing:PID</dssp:Name>

</dssp:Partner>

</dssp:PartnerList>

</ServiceRecordType>

<!-- ==========-->

<!-- SERIALIZER-->

<!-- ==========-->

<!-- Configure initial Serializer State-->

<ServiceRecordType>

<dssp:Contract>http://www.roboticsconnection.com/2006/08/Serializer.html</dssp:Contract>

<dssp:PartnerList>

<dssp:Partner>

<dssp:Service>Config\SerializerServices.Config.xml</dssp:Service>

<dssp:Name>dssp:StateService</dssp:Name>

</dssp:Partner>

</dssp:PartnerList>

<Name>AutonomousFollowing:Serializer</Name>

</ServiceRecordType>

<!-- ===========-->

<!-- Line Sensor-->

<!-- ===========-->

<!-- Configure LineSensor-->

<ServiceRecordType>

<dssp:Contract>http://www.roboticsconnection.com/2007/02/LineSensor.html</dssp:Contract>

<dssp:PartnerList>

<dssp:Partner>

<dssp:Service>Config\LineSensor.Config.xml</dssp:Service>

<dssp:Name>dssp:StateService</dssp:Name>

</dssp:Partner>

</dssp:PartnerList>

<Name>AutonomousFollowing:LineSensor</Name>

</ServiceRecordType>

<!-- ================-->

<!-- INFRARED SENSORS-->

<!-- ================-->

<!-- Configure Front GP2D120 Infrared Sensor-->

<ServiceRecordType>

<dssp:Contract>http://www.roboticsconnection.com/2006/08/Gp2d120.html</dssp:Contract>

<dssp:PartnerList>

<dssp:Partner>

<dssp:Service>Config/Gp2d120Front.Config.xml</dssp:Service>

<dssp:Name>dssp:StateService</dssp:Name>

</dssp:Partner>

</dssp:PartnerList>

<Name>AutonomousFollowing:Gp2d120</Name>

</ServiceRecordType>

<!-- ======-->

<!-- MOTORS-->

<!-- ======-->

<!-- Configure Motor 1-->

<ServiceRecordType>

<dssp:Contract>http://www.roboticsconnection.com/2006/08/Motor.html</dssp:Contract>

<dssp:PartnerList>

<dssp:Partner>

<dssp:Service>Config/Motor1.Config.xml</dssp:Service>

<dssp:Name>dssp:StateService</dssp:Name>

</dssp:Partner>

</dssp:PartnerList>

<Name>AutonomousFollowing:Motor1</Name>

</ServiceRecordType>

<!-- Configure Motor 2-->

<ServiceRecordType>

<dssp:Contract>http://www.roboticsconnection.com/2006/08/Motor.html</dssp:Contract>

<dssp:PartnerList>

<dssp:Partner>

<dssp:Service>Config/Motor2.Config.xml</dssp:Service>

<dssp:Name>dssp:StateService</dssp:Name>

</dssp:Partner>

</dssp:PartnerList>

<Name>AutonomousFollowing:Motor2</Name>

</ServiceRecordType>

<!-- ===-->

<!-- PID-->

<!-- ===-->

<!-- Configure PID-->

<ServiceRecordType>

<dssp:Contract>http://www.roboticsconnection.com/2006/08/Pid.html</dssp:Contract>

<dssp:PartnerList>

<dssp:Partner>

<dssp:Service>Config/PID.Config.xml</dssp:Service>

<dssp:Name>dssp:StateService</dssp:Name>

</dssp:Partner>

</dssp:PartnerList>

<Name>AutonomousFollowing:PID</Name>

</ServiceRecordType>

</CreateServiceList>

</Manifest>

I don't know what else to do...very frustrated. What in the heck is going on?

Thanks,

Jason

[21954 byte] By [RoboticsConnection] at [2008-3-6]
# 1

Jason, something must have changed. Here is my thoughts:

1) when DSS services work on desktop .NET, but ont on CE, you must be running into a CF bug or limitation. So far this has been our experience.

2) If you see anull exception in manifest loader, the manifest did not serialize properly. This will happen 100% of the time if you somehow did not put CF SP2 on your CE system!!! If you reflash the CE drive, use new image, etc, you MUST make sure CF SP2 is deployed. THere are several serialization bugs in CF 2.0. SP2 fixes most of the ones that we could not work around

3) You rmanifest is very complicated. As a work around try this: Programmatically, in a "orchestrator" service for this scenario (the LineFollower for example), create the ManifestType class, fill in the fields, and send it as a mesage to the ManifestLoader service!! You can find its URI from the Directory (its contract is Microsoft.Dss.Services.ManifestLoader.Contract). The message is a n Insert operation, with body, being an instance of ManifestType.

Doing 3) above will avoid all serialization issues and will guarantee, assuming your manifest is ok, that the manifest will be read just like you created it.

hope this helps

GeorgeChrysanthakopoulos at 2007-9-26 > top of Msdn Tech,Microsoft Robotics Studio,Microsoft Robotics - Decentralized Software Services (DSS)...
# 2

George,

You’re the MAN!!! You’re right, I didn’t reinstall CF SP2!! J Duhhhhh

That was definitely the problem. Now my services are back and working a-okay.

NOTE: To re-install the CF SP 2.0 on the device, I had to select 'Deploy' from the project in Visual Studio.

Thanks man!

jason

RoboticsConnection at 2007-9-26 > top of Msdn Tech,Microsoft Robotics Studio,Microsoft Robotics - Decentralized Software Services (DSS)...
# 3

Hi, I don't mean to butt in, but I have the Vortex86-6082 board and am trying to get started on a Robotics Studio project for it. Unfortunately, I am a software guy and a bit hardware challenged, also it doesn't help that the board came with no docs, and every copy of the pdf that i can find on the web is either damaged or not in the right format for my Adobe reader, which is the current version.

So, my question is simple, can you direct me to a site or book or something that will get me started using this thing?

Thanks,

Bob Sculley

BobSculley at 2007-9-26 > top of Msdn Tech,Microsoft Robotics Studio,Microsoft Robotics - Decentralized Software Services (DSS)...

Microsoft Robotics Studio

Site Classified