Uploaded image for project: 'Spring Web Services'
  1. Spring Web Services
  2. SWS-816

Missing encoding in dom4j element/document

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Minor
    • Resolution: Works as Designed
    • Affects Version/s: None
    • Fix Version/s: 2.1.3
    • Component/s: Core
    • Labels:
      None

      Description

      I'm using spring-ws 2.1.0.RELEASE, my webservice has @RequestPayload on a dom4j element. It appears that the dom4j element has no encoding set: the method element.getDocument().getXMLEncoding() returns null.

      How do I know what encoding was used sending in the request? Is there a way I can force conversion to an encoding such as UTF-8?

      The incoming request (I'm using SOAPUI for testing) shows it transfers ContenType: text/xml;charset=UTF-8, but it's not picked up when creating the Element. Isn't this an issue, or should the dom4j Element be changed to a Document? How do I do that, it appears it's not supported (yet).

        Activity

        lino Lino Cibran created issue -
        arjen.poutsma Arjen Poutsma made changes -
        Field Original Value New Value
        Assignee Arjen Poutsma [ arjen.poutsma ]
        arjen.poutsma Arjen Poutsma made changes -
        Fix Version/s 2.1.3 [ 13897 ]
        Hide
        arjen.poutsma Arjen Poutsma added a comment -

        The underlying issue seems to be a DOM4J issue, as Spring-WS is using the functionality provided in DOM4J to convert the incoming XML request into a DOM4J. DOM4J just doesn't seem to pick up the encoding during that conversion process.

        If you would like to know the character encoding of the incoming message, you can always use the TransportContext to get to it: see ws/site/reference/html/common.html#transport-context.

        Show
        arjen.poutsma Arjen Poutsma added a comment - The underlying issue seems to be a DOM4J issue, as Spring-WS is using the functionality provided in DOM4J to convert the incoming XML request into a DOM4J. DOM4J just doesn't seem to pick up the encoding during that conversion process. If you would like to know the character encoding of the incoming message, you can always use the TransportContext to get to it: see ws/site/reference/html/common.html#transport-context.
        arjen.poutsma Arjen Poutsma made changes -
        Status Open [ 1 ] Resolved [ 5 ]
        Resolution Works as Designed [ 9 ]
        Transition Time In Source Status Execution Times Last Executer Last Execution Date
        Open Open Resolved Resolved
        124d 20h 10m 1 Arjen Poutsma 09/Apr/13 2:41 AM

          People

          • Assignee:
            arjen.poutsma Arjen Poutsma
            Reporter:
            lino Lino Cibran
          • Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: