]
Marko Asplund commented on JBWS-3339:
-------------------------------------
if either utf-8 or utf-16 should be used, how does one specify which one is actually
used?
i think the preamble is the standard way of specifying that.
or is is there another way of doing that?
Preamble is omitted when supplying WSDL and external XSDs
---------------------------------------------------------
Key: JBWS-3339
URL:
https://issues.jboss.org/browse/JBWS-3339
Project: JBoss Web Services
Issue Type: Bug
Security Level: Public(Everyone can see)
Components: jbossws-native
Affects Versions: jbossws-native-3.1.2
Reporter: Kyle Lape
Labels: character_encoding, webservices, wsdl, xsd
The XML preamble is omitted when serving external WSDL resources. This can cause problem
when specifying a non-default character set using the XML preamble.
For example, you access an external XSD:
{noformat}http://localhost:8080/testService/Service?wsdl&resource=external.xsd{noformat}
The file on the server starts like this:
{code:xml}
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema ...>
...
</xsd:schema>
{code}
But when it's served to a client, it starts like this:
{code:xml}
<xsd:schema ...>
...
</xsd:schema>
{code}
This affects the WSDL and any resources referenced by the WSDL.
Looking at the code, this is what happens when a request for a WSDL resource is
received:
- The WSDL resource is read in from the file system.
- It is then parsed into a DOM tree.
- JBossWS then replaces references to external resources with appropriate URLs that can
be reached using "?wsdl" URLs.
- The DOM tree is then marshaled to XML text.
In this process, the XML preamble is lost.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: