Web services XmlException

B

Bert

Hi,

I'm implementing a web serivce using the .NET Full Framework (server),
which is consumed by a .NET Compact Framework application (client).

The full application does some method mapping (using a channel sink).. a
simple example:

incoming message:
(string) GetMyClass()
mapped message:
(MyClass) GetMyClass()
so a method with a different signature is invoked
return message:
Returnval = MyClassInstance
mapped return message:
Returnval = "a string containing a reference to MyClassInstance"

I tested the application using a .NET Full Framework client, everything
worked perfectly. Then I made a client for the .NET Compact framework.
Method calls who weren't mapped worked but others didn't. I got an
XmlException with message: "The identifier ref-3 does not appear in the
document.".

How can this be?
Is there a way to monitor the soap messages exchanged? I can not do this
with a network sniffer because I can only test locally (loopback).


I would greatly appriciate your help..
Bert.
 
C

casey chesnut

The SOAP toolkit has a TraceUtility that works.
Just have your client call http://MACHINE:8080/~.asmx
then the TraceUtility will map it to http://MACHINE/~.asmx
which would be the actual server.

Else the de facto SoapExtension sample is called TraceExtension.
You'll find it in the MSDN documentation.
You can hook that on your server-side WebMethod,
and it will log all request and responses to a file for you to look at.

casey
http://www.brains-N-brawn.com
 
B

Bert

Great..

I was able to trace the soapmessages now (using soapUtility). But now I
totally don't understand what the problem is. I get the following return
message:

<SOAP-ENV:Body>
<i2:GetClass2InstanceResponse id="ref-1" xmlns:i2
="http://schemas.microsoft.com/clr/nsassem/TestClassesLib.Class1/TestType
s">
<return href="#ref-3" />
</i2:GetClass2InstanceResponse>
<SOAP-ENC:string id="ref-3">
R2WS:http://192.168.0.2:1234/TestClassesLib.Class2[b06247f9-a0b0-42e6-
bffb-8700b4d4a19a]</SOAP-ENC:string>
</SOAP-ENV:Body>

The exception: "The identifier \"ref-3\" does not appear in the
document." is thrown, while clearly "ref-3" is present.

Any suggestions?

Thanks,
Bert.
 
R

Rob

I also have this same problem but haven't been able to locate a fix.
I have another thread where I post some sample code where you can
duplicate the problem. My last post in that thread says that sp2
solves the problem but that is incorrect. I still have the problem in
sp2.

http://groups.google.com/groups?hl=...soft.public.dotnet.framework.compactframework


Rob Beers

Bert said:
Great..

I was able to trace the soapmessages now (using soapUtility). But now I
totally don't understand what the problem is. I get the following return
message:

<SOAP-ENV:Body>
<i2:GetClass2InstanceResponse id="ref-1" xmlns:i2
="http://schemas.microsoft.com/clr/nsassem/TestClassesLib.Class1/TestType
s">
<return href="#ref-3" />
</i2:GetClass2InstanceResponse>
<SOAP-ENC:string id="ref-3">
R2WS:http://192.168.0.2:1234/TestClassesLib.Class2[b06247f9-a0b0-42e6-
bffb-8700b4d4a19a]</SOAP-ENC:string>
</SOAP-ENV:Body>

The exception: "The identifier \"ref-3\" does not appear in the
document." is thrown, while clearly "ref-3" is present.

Any suggestions?

Thanks,
Bert.


The SOAP toolkit has a TraceUtility that works.
Just have your client call http://MACHINE:8080/~.asmx
then the TraceUtility will map it to http://MACHINE/~.asmx
which would be the actual server.

Else the de facto SoapExtension sample is called TraceExtension.
You'll find it in the MSDN documentation.
You can hook that on your server-side WebMethod,
and it will log all request and responses to a file for you to look
at.

casey
http://www.brains-N-brawn.com
 
B

Bert

Hmm.. now that really isn't good news.
Anyway I will post the problem on your thread on google.

Thanks for the help..
B.

(e-mail address removed) (Rob) wrote in
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top