locked
VS2012 RC LightSwitch problems when running in Chrome

    Question

  • Hi,

    I have just installed VS2012 RC and upgraded a LS Beta app I was working on. I notice that when I run the app in browser using the latest version of Chrome (PC) I get the dreaded red x and "Unable to load data. Please check your network connection and try loading again". If I run the app using IE9 then no problems. I also created a new VS2012 RC LightSwitch app and tested and exactly the same probelm. This happens when running locally using IIS Express and when deployed to a live IIS 7.5 / SQL 2008 Server. If I capture traffic through Fiddler I can see that all XML is retrieved successfully.

    Has anyone else experienced this?

    Paul.


    LightSwitchShells.com - Make your business apps shine! Website design for £249, Unlimited pages, Facebook and Twitter integration. www.domainscanners.com

    Friday, June 1, 2012 1:44 PM

All replies

  • Sorry to hear that. I have logged a bug on our side and we are looking into it.

    -Thanks


    Patrick Baker (Visual Studio LightSwitch Test Lead)


    • Edited by OptikSage Friday, June 1, 2012 4:47 PM
    Friday, June 1, 2012 4:23 PM
  • I have also the exact same problem.

    Friday, June 1, 2012 6:05 PM
  • We have narrowed down the problem to an issue with how the OData Feed Charset is getting interpreted on Chrome. Unfortunately I don't have a work-around available at this time. I will keep you posted.

    - Thanks


    Patrick Baker (Visual Studio LightSwitch Test Lead)

    Friday, June 1, 2012 10:35 PM
  • Any update on this issue? Until this can work in Chrome I am unable to push out a new version to my customers.

    Thanks

    Jay


    Jay Turpin

    Sunday, June 24, 2012 3:05 PM
  • We have identified the issue and it will be fixed in the next release of Visual Studio 2012. In the mean time we are investigating possible work arounds and will post back to this thread when we have one.

    -Thanks


    Patrick Baker (Visual Studio LightSwitch Test Lead)

    Monday, June 25, 2012 3:48 PM
  • We are working with some partner teams to get a fix put in place for this issue.  I cannot comment on the delivery mechanism or timeframe for the fix.

    However, I have created a workaround that is done server-side.  If your app is deployed on IIS, this workaround appears to fix the problem entirely.

    The problem is that chrome prefers an iso-8859-1 response over a utf-8 response.  But it is fine receiving a utf-8 response; we just need to make the server give it one.

    I used the URL Rewrite Module in IIS to replace the request's "Accept-Charset" header with one which specifies only utf-8. 

    Here is some background on URL Rewrite (http://learn.iis.net/page.aspx/465/url-rewrite-module-configuration-reference/#Functionality_Overview)

    I've prepared a blog entry with screen shots here:

    http://blogs.msdn.com/b/mattev/archive/2012/06/25/working-around-the-chrome-data-loading-bug-in-lightswitch-2012-rc.aspx

    However, if you are comfortable with URL rewrite here is the pertinent info:

    - add HTTP_ACCEPT_CHARSET in "allowed server variables"

    - then create an Inbound Rule

    -- have it regular expression match the following:   .*

    -- set no conditions

    -- under "server variables", add a new entry for "HTTP_ACCEPT_CHARSET", value="utf-8", and check "replace the existing value"

    -- under "Action", choose "Rewrite".  The Rewrite URL should be "{UNENCODED_URL}".  MAKE SURE TO UNCHECK "Append query string".

    Apply/Save all this and your app should start working!


    Monday, June 25, 2012 3:59 PM
  • I had the same problem with an app I published to Azure. To get this to work for an application published to an Azure web role:

    1. Open the LightSwitch project in File View.
    2. Locate the Web.config in the Server project. 
    3. Add the config settings that Matt mentions in his article here: http://blogs.msdn.com/b/mattev/archive/2012/06/25/working-around-the-chrome-data-loading-bug-in-lightswitch-2012-rc.aspx
    4. Back in Logical View, select to publish the application.
    5. In the LightSwitch Publish Application Wizard, when you get to the Service Configuration page, check the Enable Remote Desktop... item, and then click the Settings link.
    6. In the Remote Desktop Configuration dialog, select to view More Options.
    7. Create a new certificate. Remember the password for it.
    8. Then create a user name, password, and optionally modify the expiry date.
    9. Click OK.
    10. Complete the remaining screens of the publish wizard, and then publish the app.
    11. Once published, you should be able to do a remote desktop (RDP) to your web role server. RDP and log in to the server (I used the Virtual IP address in my RDP connection) and perform the tasks to configure the IIS site with the HTTP_ACCEPT_CHARSET server variable that Matt outlines in his article (link above).

    UPDATE:

    I noticed that each time I publish the app to Azure, that HTTP_ACCEPT_CHARSET server variable disappears. Not sure if this is by design, but something to note, just in case.

    Hope this helps! 

    Paul 
    PaulSPatterson.com


    PP



    Saturday, July 7, 2012 6:17 AM