]
Ramesh Reddy reassigned TEIID-4220:
-----------------------------------
Assignee: Ramesh Reddy (was: Steven Hawkins)
Unsupported encoding when POSTing to odata on Windows
-----------------------------------------------------
Key: TEIID-4220
URL:
https://issues.jboss.org/browse/TEIID-4220
Project: Teiid
Issue Type: Bug
Components: OData
Affects Versions: 8.12.x
Reporter: Andrej Šmigala
Assignee: Ramesh Reddy
Priority: Critical
When posting to a windows server from a windows client, the default encoding is cp1252.
When an xml request such as this is posted:
{code:xml}
<?xml version='1.0' encoding='cp1252'?><entry
xmlns="http://www.w3.org/2005/Atom"
xmlns:xml="http://www.w3.org/XML/1998/namespace"
xmlns:m="http://docs.oasis-open.org/odata/ns/metadata"
xmlns:d="http://docs.oasis-open.org/odata/ns/data"
xmlns:gml="http://www.opengis.net/gml"
xmlns:georss="http://www.georss.org/georss"><category
scheme="http://docs.oasis-open.org/odata/ns/scheme"/>
<content type="application/xml">
<m:properties>
<d:intkey m:type="Int32">4</d:intkey>
<d:intnum m:type="Int32">4</d:intnum>
<d:stringkey>4</d:stringkey>
<d:stringval>value_4</d:stringval>
<d:booleanval m:type="Boolean">false</d:booleanval>
<d:decimalval m:type="Double">-20.4</d:decimalval>
<d:timeval m:type="TimeOfDay">00:00:04</d:timeval>
<d:dateval m:type="Date">2004-04-04</d:dateval>
<d:timestampval
m:type="DateTimeOffset">2004-01-01T00:00:04Z</d:timestampval>
</m:properties>
</content>
</entry>
{code}
the following error is logged in the server:
{noformat}
09:54:38,069 WARN [org.teiid.ODATA] (http-/0.0.0.0:8080-1) TEIID16050 Unable to process
odata request due to: An I/O exception occurred. with cause Unsupported encoding: IBM1252:
Unsupported encoding: IBM1252
at
org.apache.olingo.server.core.deserializer.xml.ODataXmlDeserializer.entity(ODataXmlDeserializer.java:592)
at
org.apache.olingo.server.core.requests.DataRequest$EntityRequest.getEntityFromClient(DataRequest.java:367)
at
org.apache.olingo.server.core.requests.DataRequest$EntityRequest.execute(DataRequest.java:359)
at org.apache.olingo.server.core.requests.DataRequest.execute(DataRequest.java:255)
at
org.apache.olingo.server.core.ServiceDispatcher.internalExecute(ServiceDispatcher.java:160)
at org.apache.olingo.server.core.ServiceDispatcher.execute(ServiceDispatcher.java:98)
at org.apache.olingo.server.core.OData4HttpHandler.process(OData4HttpHandler.java:66)
at org.teiid.olingo.web.ODataServlet.service(ODataServlet.java:43)
[teiid-olingo-8.12.5.redhat-4.jar:8.12.5.redhat-4]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
[jboss-servlet-api_3.0_spec-1.0.2.Final-redhat-2.jar:1.0.2.Final-redhat-2]
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:295)
[jbossweb-7.5.11.Final-redhat-1.jar:7.5.11.Final-redhat-1]
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
[jbossweb-7.5.11.Final-redhat-1.jar:7.5.11.Final-redhat-1]
at org.teiid.olingo.web.ODataFilter.internalDoFilter(ODataFilter.java:226)
[teiid-olingo-8.12.5.redhat-4.jar:8.12.5.redhat-4]
at org.teiid.olingo.web.ODataFilter.doFilter(ODataFilter.java:100)
[teiid-olingo-8.12.5.redhat-4.jar:8.12.5.redhat-4]
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:246)
[jbossweb-7.5.11.Final-redhat-1.jar:7.5.11.Final-redhat-1]
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
[jbossweb-7.5.11.Final-redhat-1.jar:7.5.11.Final-redhat-1]
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:231)
[jbossweb-7.5.11.Final-redhat-1.jar:7.5.11.Final-redhat-1]
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:149)
[jbossweb-7.5.11.Final-redhat-1.jar:7.5.11.Final-redhat-1]
at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:512)
[jbossweb-7.5.11.Final-redhat-1.jar:7.5.11.Final-redhat-1]
at
org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:169)
[jboss-as-web-7.5.4.Final-redhat-4.jar:7.5.4.Final-redhat-4]
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:150)
[jbossweb-7.5.11.Final-redhat-1.jar:7.5.11.Final-redhat-1]
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:97)
[jbossweb-7.5.11.Final-redhat-1.jar:7.5.11.Final-redhat-1]
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:102)
[jbossweb-7.5.11.Final-redhat-1.jar:7.5.11.Final-redhat-1]
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344)
[jbossweb-7.5.11.Final-redhat-1.jar:7.5.11.Final-redhat-1]
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:854)
[jbossweb-7.5.11.Final-redhat-1.jar:7.5.11.Final-redhat-1]
at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:653)
[jbossweb-7.5.11.Final-redhat-1.jar:7.5.11.Final-redhat-1]
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:926)
[jbossweb-7.5.11.Final-redhat-1.jar:7.5.11.Final-redhat-1]
at java.lang.Thread.run(Unknown Source) [rt.jar:1.7.0_79]
Caused by: com.ctc.wstx.exc.WstxIOException: Unsupported encoding: IBM1252
at com.ctc.wstx.io.StreamBootstrapper.bootstrapInput(StreamBootstrapper.java:247)
at com.ctc.wstx.stax.WstxInputFactory.doCreateSR(WstxInputFactory.java:546)
at com.ctc.wstx.stax.WstxInputFactory.createSR(WstxInputFactory.java:600)
at com.ctc.wstx.stax.WstxInputFactory.createSR(WstxInputFactory.java:615)
at com.ctc.wstx.stax.WstxInputFactory.createXMLEventReader(WstxInputFactory.java:269)
at __redirected.__XMLInputFactory.createXMLEventReader(__XMLInputFactory.java:170)
[jboss-modules.jar:1.3.7.Final-redhat-1]
at
org.apache.olingo.server.core.deserializer.xml.ODataXmlDeserializer.getReader(ODataXmlDeserializer.java:97)
at
org.apache.olingo.server.core.deserializer.xml.ODataXmlDeserializer.entity(ODataXmlDeserializer.java:583)
... 26 more
{noformat}