I built and published a Silverlight 4 OOB application.
WCF services are hosted on the IIS application (the same IIS app that host the xap).
I use sessions on the server.
Everything works fine when I use the OOB application from a Windows OS.
But from a Mac (Mac OS X 10.6.6) a new session is initiated on the IIS server each time a service is called. The OOB Silverlight app doesn't seem to reuse the same sessionid received from the previous service call. The problem is ONLY observed on a Mac OS..
Any idea ?
Thanks in advance
No answer ? Maybe my question is not clear ?
Here is some additionnal info:
I use basicHttpBinding. My WCF services use ASP.Net sessions (not WCF sessions). I think the sessionid is stored in a cookie in this case (even for an OOB silverlight client). Am I right?
As explain in my previous post, every time my OOB app calls a service, a new sessionid is generated on IIS. I only have that problem with Macintosh clients. I have no problem with Windows clients. Maybe the Mac client is not able to store the sessionid returned by IIS? I think at least it could it be an explanation...
I don't know the Macintosh world. Maybe I should change some settings in Safari or somewhere else to enable the client to store the sessionid? (In Safari preferences, the 'accept cookies' option is already set). Could someone help me on this ?
In general, Silverlight uses the browser to make web calls, including calls to WCF services.
You could try the Silverlight Client Networking stack be calling
This should give you more consistent behavior across browsers and may resolve your issue.
Thanks for your responses.
I didn’t go further in my investigations since the problem doesn’t occur when I select 'Always accept cookies' in Safari.
But the behavior is still strange since the problem occurs (on some mac computer) with the default settings of Safari (accept cookies only from sites you navigate to).
I performed 3 tests on 3 different Mac computers (with the Safari default settings):
- The problem doesn’t occur on a Mac OS x 10.4.11.
- The problem occurs on a Mac OS X 10.5.8.
- The problem occurs on a Mac OS X 10.6.6.
I didn’t test if the problem occurs with a 'in browser' application and didn’t try to understand how the 'accept cookies only form sites you navigate to' setting works. That’s what I should probably do to go further.
Right now, as I suggested to the Mac users to check the 'Always accept cookies' settings in Safari and have no problem with this setting, the problem is not so urgent anymore.
Anyway I still would like to understand!
Silverlight System Requirements.
Silverlight is supported on MAC 10.4.11+ and Safari 3+
Safari 5.x is not listed yet and I do not see MAC 10.6 and Safari 4.0 supported at this time.
I have not found of any change date to this at this time
Was this issue ever resolveD?
I tested Mac too and found that the in-browser application works, but the OOB creates a new session every time it makes a request...
I was using a Mac Mini with Lion OS.
I tried installing the OOB app from Firefox and Safari with the same result... :(