Uploaded image for project: 'Apache Flex'
  1. Apache Flex
  2. FLEX-18044

SOAPEncoder double-encodes string values in AS proxy code generated from .NET web services.

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Critical
    • Resolution: Fixed
    • Adobe Flex SDK 3.3 (Release)
    • RPC: WebService
    • None
    • Affected OS(s): All OS Platforms
      Language Found: English

    Description

      PROBLEM:

      When a string value is sent to a .NET web service that simply echoes the string back, you discover that when Flex sends the value, it double-encodes ampersands and other special characters.

      METHOD:

      1. Ensure that the .NET web service "Service" is running (from the attached archive), and import the WSDL to generate the proxy classes. (Data -> Import Web Service...)

      2. Update import statements to reflect your class package.

      3. (Important!) Breakpoint line 166 of mx.rpc.soap.SOAPEncoder.

      4. Run application.

      5. Click "Assign Input Value", which assigns a string literal "Test & More" to the first input field.

      6. Click "Get Returned Value ->", which passes the input field to the webservice, which simply returns the same value.

      7. Note that SOAPEncoder double-encodes the value in the soap envelope, creating the value "&"

      8. The webservice processes this (&amp and returns "&" as shown in the second field.

      EXPECTED OUTCOME:

      SOAPEncoder should properly escape strings, and the result from the web service should be identical to the value sent to it.

      Attachments

        Activity

          People

            adobejira Adobe JIRA
            adobejira Adobe JIRA
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: