Partner enumeration during service startup failed

I'm trying to create a simple service for a iRobot Create eBox 2300 (physically like the Sumo). I created my service by going through Service Tutorial 4 (C#) and then performing the steps in the "DSS User Guide: Developing Services for Windows CE".


When I reboot the robot ( I start DssHost in a batch file in Windows/StartUp ), It starts loading the manifest and I get the following error:


Code Snippet
Partner enumeration during service startup failed.
Service will not start:http://schemas.tempuri.org/2007/08/skeets.html
Partners specified statically in service implementation class:
PartnerAttribute
Name:SubMgr,
Contract:http://schemas.microsoft.com/xw/2005/01/subscriptionmanager.html,
CreationPolicy:CreateAlways
PartnerAttribute
Name:irobotlite,
Contract:http://schemas.microsoft.com/robotics/2007/02/irobotlite.html,
CreationPolicy:UsePartnerListEntry
Partners specified at runtime, in CreateRequest:
Name:http://schemas.tempuri.org/2007/04/skeets.html:irobotlite,
Contract: ,
Service:
Name:http://schemas.microsoft.com/xw/2004/10/dssp.html:ConstructorService,
Contract:http://schemas.microsoft.com/xw/2004/10/constructor.html,
Service:http://windowsce:50000/constructor/3f008db9-cb12-4ab8-8e0f-aa9b41403403
Name:http://schemas.microsoft.com/xw/2004/10/dssp.html:PartnerListService,
Contract:http://schemas.microsoft.com/xw/2004/10/partnerlist.html,
Service:http://windowsce:50000/skeets/dss/partnermanager
Name:http://schemas.microsoft.com/xw/2004/10/dssp.html:StateService,
Contract:http://schemas.microsoft.com/xw/2004/10/dssp.html:StateService,
Service: Store/SkeetsState.xml


This is my manifest:


Code Snippet
<?xml version="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:skeets="http://schemas.tempuri.org/2007/04/skeets.html"
>
<CreateServiceList>
<ServiceRecordType>
<dssp:Contract>http://schemas.tempuri.org/2007/08/skeets.html</dssp:Contract>
<dssp:PartnerList>
<dssp:Partner>
<dssp:Name>skeets:irobotlite</dssp:Name>
</dssp:Partner>
</dssp:PartnerList>
</ServiceRecordType>
<ServiceRecordType>
<dssp:Contract>http://schemas.microsoft.com/robotics/2007/02/irobotlite.html</dssp:Contract>
<dssp:Service>http://localhost:0/irobotlite</dssp:Service>
<dssp:PartnerList>
<!--Initialize Roomba config file -->
<dssp:Partner>
<dssp:Service>irobot.ce.config.xml</dssp:Service>
<dssp:Name>dssp:StateService</dssp:Name>
</dssp:Partner>
</dssp:PartnerList>
<Name>skeets:irobotlite</Name>
</ServiceRecordType>
</CreateServiceList>
</Manifest>


I'm not sure what it is telling me or how to get past this.

Thanks,
Dogulas

[5329 byte] By [Dogulas] at [2008-1-8]
# 1

Does anyone know what kinds of errors will cause a "Partner enumeration during service startup failed" message?

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


SUCCESS!


I finally figured it out. This may have been obvious to some of you, but in case it isn't, I will explain.

I had to back up and create a simpler service. I decided to follow, step by step, the instructions in "Developing Services for Windows CE" in the DSS User Guide:

I deployed it to my eBox and got the same error:

Partner enumeration during service startup failed

I made sure that the contract for my SimpleExample service was the same in SimpleExampleTypes.cs as it was in the contract tag in simpleExample.manifest.xml. What I didn't know was that the third xml namspace also had to match exactly. The contract string has to be the same in THREE places to get rid of this error.

in simpleExample.manifest.xml:

<MANIFEST

Code Snippet
<MANIFEST
<Manifest
xmlns="http://schemas.microsoft.com/xw/2004/10/manifest.html"
xmlns:dssp="http://schemas.microsoft.com/xw/2004/10/dssp.html"
xmlns:example="http://schemas.tempuri.org/2007/08/simpleexample.html"
>
<CreateServiceList>
<ServiceRecordType>
<dssp:Contract>http://schemas.tempuri.org/2007/08/simpleexample.html</dssp:Contract>
...
</ServiceRecordType>
...
</CreateServiceList>
</Manifest>

in simpleExampleTypes.cs:

Code Snippet

public sealed class Contract
{
///
/// The Dss Service contract
///
public const String Identifier = "http://schemas.tempuri.org/2007/08/simpleexample.html";
}

I really don't understand why an xml namespace, which is only used within the xml file, needs to match the contract string. Perhaps someone from Microsoft can explain this.

Thanks,
Dogulas

Dogulas at 2007-10-2 > top of Msdn Tech,Microsoft Robotics Studio,Microsoft Robotics - Decentralized Software Services (DSS)...
# 3

you know, this forum really makes it difficult to post xml as text. It keeps trying to format it.

Dogulas at 2007-10-2 > top of Msdn Tech,Microsoft Robotics Studio,Microsoft Robotics - Decentralized Software Services (DSS)...

Microsoft Robotics Studio

Site Classified