You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "dingweilong (JIRA)" <ji...@apache.org> on 2009/05/12 12:13:45 UTC

[jira] Created: (CXF-2215) can't use non-English character parameter

can't use  non-English character parameter 
-------------------------------------------

                 Key: CXF-2215
                 URL: https://issues.apache.org/jira/browse/CXF-2215
             Project: CXF
          Issue Type: Bug
    Affects Versions: 2.2
         Environment: windows xp, tomcat 6.0.18
            Reporter: dingweilong
            Priority: Critical


I have use cxf 2.2 to publish a web service in tomcat 6, the only operation in which is 

public java.lang.String greetMe( String name);

when invoke with a parameter in Chinese value, i couldn't get my result. 
I use log interceptor to get the log below, you see the encoding and the charset is not consistent

who can tell me the reason and fix the problem, thanks!


Inbound Message 
---------------------------- 
Encoding: GB2312 
Content-Type: text/xml; charset=UTF-8 
Headers: {cache-control=[no-cache], content-type=[text/xml; 
charset=UTF-8], connection=[keep-alive], host=[10.61.0.90:8080], 
content-length=[182], SOAPAction=[""], user-agent=[Apache CXF 2.2], 
Accept=[*/*], pragma=[no-cache]} 
Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
envelope/"> <soap:Body> <ns2:greetMe xmlns:ns2="http://cxf/"> <arg0>测试 </ 
arg0> </ns2:greetMe> </soap:Body> </soap:Envelope> 


Outbound Message 
--------------------------- 
Encoding: GB2312 
Content-Type: text/xml 
Headers: {} 
Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
envelope/"> <soap:Body> <soap:Fault> <faultcode>soap:Client </ 
faultcode> <faultstring>Unmarshalling Error: Unexpected close tag &lt;/ 
ns2:greetMe>; expected &lt;/arg0>.&#xd; 
at [row,col {unknown-source}]: [1,148] </faultstring> </soap:Fault> </ 
soap:Body> </soap:Envelope> 


and the exception is below:
Interceptor has thrown exception, unwinding now 
org.apache.cxf.interceptor.Fault: Unmarshalling Error: Unexpected 
close tag </ns2:greetMe>; expected </arg0>. 
at [row,col {unknown-source}]: [1,148] 
        at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
(JAXBEncoderDecoder.java:622) 
        at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
(JAXBEncoderDecoder.java:527) 
        at org.apache.cxf.jaxb.io.DataReaderImpl.read(DataReaderImpl.java: 
108) 
        at org.apache.cxf.interceptor.DocLiteralInInterceptor.handleMessage 
(DocLiteralInInterceptor.java:102) 
        at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept 
(PhaseInterceptorChain.java:236) 
        at org.apache.cxf.transport.ChainInitiationObserver.onMessage 
(ChainInitiationObserver.java:89) 
        at org.apache.cxf.transport.servlet.ServletDestination.invoke 
(ServletDestination.java:99) 
        at 
org.apache.cxf.transport.servlet.ServletController.invokeDestination 
(ServletController.java:337) 
        at org.apache.cxf.transport.servlet.ServletController.invoke 
(ServletController.java:182) 
        at org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke 
(AbstractCXFServlet.java:163) 
        at org.apache.cxf.transport.servlet.AbstractCXFServlet.doPost 
(AbstractCXFServlet.java:141) 
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) 
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) 
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
(ApplicationFilterChain.java:269) 
        at org.apache.catalina.core.ApplicationFilterChain.doFilter 
(ApplicationFilterChain.java:188) 
        at org.apache.struts2.dispatcher.FilterDispatcher.doFilter 
(FilterDispatcher.java:413) 
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
(ApplicationFilterChain.java:215) 
        at org.apache.catalina.core.ApplicationFilterChain.doFilter 
(ApplicationFilterChain.java:188) 
        at org.apache.catalina.core.StandardWrapperValve.invoke 
(StandardWrapperValve.java:210) 
        at org.apache.catalina.core.StandardContextValve.invoke 
(StandardContextValve.java:174) 
        at org.apache.catalina.core.StandardHostValve.invoke 
(StandardHostValve.java:127) 
        at org.apache.catalina.valves.ErrorReportValve.invoke 
(ErrorReportValve.java:117) 
        at org.apache.catalina.core.StandardEngineValve.invoke 
(StandardEngineValve.java:108) 
        at org.apache.catalina.connector.CoyoteAdapter.service 
(CoyoteAdapter.java:151) 
        at org.apache.coyote.http11.Http11Processor.process 
(Http11Processor.java:870) 
        at org.apache.coyote.http11.Http11BaseProtocol 
$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java: 
665) 
        at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket 
(PoolTcpEndpoint.java:528) 
        at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt 
(LeaderFollowerWorkerThread.java:81) 
        at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run 
(ThreadPool.java:685) 
        at java.lang.Thread.run(Thread.java:619) 
Caused by: javax.xml.bind.UnmarshalException 
- with linked exception: 
[com.ctc.wstx.exc.WstxParsingException: Unexpected close tag </ 
ns2:greetMe>; expected </arg0>. 
at [row,col {unknown-source}]: [1,148]] 
        at 
com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.handleStreamExcep­tion 
(UnmarshallerImpl.java:426) 
        at 
com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
(UnmarshallerImpl.java:362) 
        at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal 
(UnmarshallerImpl.java:339) 
        at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
(JAXBEncoderDecoder.java:607) 
        ... 29 more 
Caused by: com.ctc.wstx.exc.WstxParsingException: Unexpected close tag 
</ns2:greetMe>; expected </arg0>. 
at [row,col {unknown-source}]: [1,148] 
        at com.ctc.wstx.sr.StreamScanner.constructWfcException 
(StreamScanner.java:630) 
        at com.ctc.wstx.sr.StreamScanner.throwParseError(StreamScanner.java: 
461) 
        at com.ctc.wstx.sr.BasicStreamReader.reportWrongEndElem 
(BasicStreamReader.java:3256) 
        at com.ctc.wstx.sr.BasicStreamReader.readEndElem 
(BasicStreamReader.java:3198) 
        at com.ctc.wstx.sr.BasicStreamReader.nextFromTree 
(BasicStreamReader.java:2830) 
        at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java: 
1019) 
        at org.apache.cxf.staxutils.DepthXMLStreamReader.next 
(DepthXMLStreamReader.java:220) 
        at com.sun.xml.bind.v2.runtime.unmarshaller.StAXStreamConnector.bridge 
(StAXStreamConnector.java:225) 
        at 
com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
(UnmarshallerImpl.java:360) 
        ... 31 more 



-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (CXF-2215) can't use non-English character parameter, soap encoding are not consistent

Posted by "Benson Margulies (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CXF-2215?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12708424#action_12708424 ] 

Benson Margulies commented on CXF-2215:
---------------------------------------

CXF generally is tested with messages in UTF-8. How did you persuade the code to use GB2312? Are you running the entire JVM with the encoding set that way?

Can you post a runnable test case that will use GB2312 even when run on a default system configuration?


> can't use  non-English character parameter, soap encoding are not consistent
> ----------------------------------------------------------------------------
>
>                 Key: CXF-2215
>                 URL: https://issues.apache.org/jira/browse/CXF-2215
>             Project: CXF
>          Issue Type: Bug
>    Affects Versions: 2.2
>         Environment: windows xp, tomcat 6.0.18
>            Reporter: dingweilong
>            Priority: Critical
>
> I have use cxf 2.2 to publish a web service in tomcat 6, the only operation in which is 
> public java.lang.String greetMe( String name);
> when invoke with a parameter in Chinese value, i couldn't get my result. 
> I use log interceptor to get the log below, you see the encoding and the charset is not consistent
> I track the source code, and see the error when unmarshall invoked.
> you can see the inbound message is parsed allright, but the outbound message is not, error  occurs.
> I have test there're no problem when i use English parameter.
> who can tell me the reason and fix the problem, thanks!
> Inbound Message 
> ---------------------------- 
> Encoding: GB2312 
> Content-Type: text/xml; charset=UTF-8 
> Headers: {cache-control=[no-cache], content-type=[text/xml; 
> charset=UTF-8], connection=[keep-alive], host=[10.61.0.90:8080], 
> content-length=[182], SOAPAction=[""], user-agent=[Apache CXF 2.2], 
> Accept=[*/*], pragma=[no-cache]} 
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
> envelope/"> <soap:Body> <ns2:greetMe xmlns:ns2="http://cxf/"> <arg0>测试 </ 
> arg0> </ns2:greetMe> </soap:Body> </soap:Envelope> 
> Outbound Message 
> --------------------------- 
> Encoding: GB2312 
> Content-Type: text/xml 
> Headers: {} 
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
> envelope/"> <soap:Body> <soap:Fault> <faultcode>soap:Client </ 
> faultcode> <faultstring>Unmarshalling Error: Unexpected close tag &lt;/ 
> ns2:greetMe>; expected &lt;/arg0>.&#xd; 
> at [row,col {unknown-source}]: [1,148] </faultstring> </soap:Fault> </ 
> soap:Body> </soap:Envelope> 
> and the exception is below:
> Interceptor has thrown exception, unwinding now 
> org.apache.cxf.interceptor.Fault: Unmarshalling Error: Unexpected 
> close tag </ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148] 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:622) 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:527) 
>         at org.apache.cxf.jaxb.io.DataReaderImpl.read(DataReaderImpl.java: 
> 108) 
>         at org.apache.cxf.interceptor.DocLiteralInInterceptor.handleMessage 
> (DocLiteralInInterceptor.java:102) 
>         at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept 
> (PhaseInterceptorChain.java:236) 
>         at org.apache.cxf.transport.ChainInitiationObserver.onMessage 
> (ChainInitiationObserver.java:89) 
>         at org.apache.cxf.transport.servlet.ServletDestination.invoke 
> (ServletDestination.java:99) 
>         at 
> org.apache.cxf.transport.servlet.ServletController.invokeDestination 
> (ServletController.java:337) 
>         at org.apache.cxf.transport.servlet.ServletController.invoke 
> (ServletController.java:182) 
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke 
> (AbstractCXFServlet.java:163) 
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.doPost 
> (AbstractCXFServlet.java:141) 
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) 
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) 
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
> (ApplicationFilterChain.java:269) 
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter 
> (ApplicationFilterChain.java:188) 
>         at org.apache.struts2.dispatcher.FilterDispatcher.doFilter 
> (FilterDispatcher.java:413) 
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
> (ApplicationFilterChain.java:215) 
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter 
> (ApplicationFilterChain.java:188) 
>         at org.apache.catalina.core.StandardWrapperValve.invoke 
> (StandardWrapperValve.java:210) 
>         at org.apache.catalina.core.StandardContextValve.invoke 
> (StandardContextValve.java:174) 
>         at org.apache.catalina.core.StandardHostValve.invoke 
> (StandardHostValve.java:127) 
>         at org.apache.catalina.valves.ErrorReportValve.invoke 
> (ErrorReportValve.java:117) 
>         at org.apache.catalina.core.StandardEngineValve.invoke 
> (StandardEngineValve.java:108) 
>         at org.apache.catalina.connector.CoyoteAdapter.service 
> (CoyoteAdapter.java:151) 
>         at org.apache.coyote.http11.Http11Processor.process 
> (Http11Processor.java:870) 
>         at org.apache.coyote.http11.Http11BaseProtocol 
> $Http11ConnectionHandler.processConnection(Http11BaseProtocol.java: 
> 665) 
>         at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket 
> (PoolTcpEndpoint.java:528) 
>         at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt 
> (LeaderFollowerWorkerThread.java:81) 
>         at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run 
> (ThreadPool.java:685) 
>         at java.lang.Thread.run(Thread.java:619) 
> Caused by: javax.xml.bind.UnmarshalException 
> - with linked exception: 
> [com.ctc.wstx.exc.WstxParsingException: Unexpected close tag </ 
> ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148]] 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.handleStreamExcep­tion 
> (UnmarshallerImpl.java:426) 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
> (UnmarshallerImpl.java:362) 
>         at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal 
> (UnmarshallerImpl.java:339) 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:607) 
>         ... 29 more 
> Caused by: com.ctc.wstx.exc.WstxParsingException: Unexpected close tag 
> </ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148] 
>         at com.ctc.wstx.sr.StreamScanner.constructWfcException 
> (StreamScanner.java:630) 
>         at com.ctc.wstx.sr.StreamScanner.throwParseError(StreamScanner.java: 
> 461) 
>         at com.ctc.wstx.sr.BasicStreamReader.reportWrongEndElem 
> (BasicStreamReader.java:3256) 
>         at com.ctc.wstx.sr.BasicStreamReader.readEndElem 
> (BasicStreamReader.java:3198) 
>         at com.ctc.wstx.sr.BasicStreamReader.nextFromTree 
> (BasicStreamReader.java:2830) 
>         at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java: 
> 1019) 
>         at org.apache.cxf.staxutils.DepthXMLStreamReader.next 
> (DepthXMLStreamReader.java:220) 
>         at com.sun.xml.bind.v2.runtime.unmarshaller.StAXStreamConnector.bridge 
> (StAXStreamConnector.java:225) 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
> (UnmarshallerImpl.java:360) 
>         ... 31 more 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (CXF-2215) can't use non-English character parameter, soap encoding are not consistent

Posted by "dingweilong (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CXF-2215?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12708721#action_12708721 ] 

dingweilong commented on CXF-2215:
----------------------------------

I have track the source code, i haven't got when the ENCODING was generated.

my test case is simple:
@Test
public void testGreetMe() throws Exception
{
	String name="测试";
	String r=greeter.greetMe(name);
	log.info(r);
}

server side is also simple:
public String greetMe(String user)
    {
    	return "Hello "+user;
    }

Where is the chance that encoding is changed?
thanks.


> can't use  non-English character parameter, soap encoding are not consistent
> ----------------------------------------------------------------------------
>
>                 Key: CXF-2215
>                 URL: https://issues.apache.org/jira/browse/CXF-2215
>             Project: CXF
>          Issue Type: Bug
>    Affects Versions: 2.2
>         Environment: windows xp, tomcat 6.0.18
>            Reporter: dingweilong
>            Priority: Critical
>
> I have use cxf 2.2 to publish a web service in tomcat 6, the only operation in which is 
> public java.lang.String greetMe( String name);
> when invoke with a parameter in Chinese value, i couldn't get my result. 
> I use log interceptor to get the log below, you see the encoding and the charset is not consistent
> I track the source code, and see the error when unmarshall invoked.
> you can see the inbound message is parsed allright, but the outbound message is not, error  occurs.
> I have test there're no problem when i use English parameter.
> who can tell me the reason and fix the problem, thanks!
> Inbound Message 
> ---------------------------- 
> Encoding: GB2312 
> Content-Type: text/xml; charset=UTF-8 
> Headers: {cache-control=[no-cache], content-type=[text/xml; 
> charset=UTF-8], connection=[keep-alive], host=[10.61.0.90:8080], 
> content-length=[182], SOAPAction=[""], user-agent=[Apache CXF 2.2], 
> Accept=[*/*], pragma=[no-cache]} 
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
> envelope/"> <soap:Body> <ns2:greetMe xmlns:ns2="http://cxf/"> <arg0>测试 </ 
> arg0> </ns2:greetMe> </soap:Body> </soap:Envelope> 
> Outbound Message 
> --------------------------- 
> Encoding: GB2312 
> Content-Type: text/xml 
> Headers: {} 
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
> envelope/"> <soap:Body> <soap:Fault> <faultcode>soap:Client </ 
> faultcode> <faultstring>Unmarshalling Error: Unexpected close tag &lt;/ 
> ns2:greetMe>; expected &lt;/arg0>.&#xd; 
> at [row,col {unknown-source}]: [1,148] </faultstring> </soap:Fault> </ 
> soap:Body> </soap:Envelope> 
> and the exception is below:
> Interceptor has thrown exception, unwinding now 
> org.apache.cxf.interceptor.Fault: Unmarshalling Error: Unexpected 
> close tag </ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148] 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:622) 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:527) 
>         at org.apache.cxf.jaxb.io.DataReaderImpl.read(DataReaderImpl.java: 
> 108) 
>         at org.apache.cxf.interceptor.DocLiteralInInterceptor.handleMessage 
> (DocLiteralInInterceptor.java:102) 
>         at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept 
> (PhaseInterceptorChain.java:236) 
>         at org.apache.cxf.transport.ChainInitiationObserver.onMessage 
> (ChainInitiationObserver.java:89) 
>         at org.apache.cxf.transport.servlet.ServletDestination.invoke 
> (ServletDestination.java:99) 
>         at 
> org.apache.cxf.transport.servlet.ServletController.invokeDestination 
> (ServletController.java:337) 
>         at org.apache.cxf.transport.servlet.ServletController.invoke 
> (ServletController.java:182) 
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke 
> (AbstractCXFServlet.java:163) 
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.doPost 
> (AbstractCXFServlet.java:141) 
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) 
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) 
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
> (ApplicationFilterChain.java:269) 
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter 
> (ApplicationFilterChain.java:188) 
>         at org.apache.struts2.dispatcher.FilterDispatcher.doFilter 
> (FilterDispatcher.java:413) 
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
> (ApplicationFilterChain.java:215) 
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter 
> (ApplicationFilterChain.java:188) 
>         at org.apache.catalina.core.StandardWrapperValve.invoke 
> (StandardWrapperValve.java:210) 
>         at org.apache.catalina.core.StandardContextValve.invoke 
> (StandardContextValve.java:174) 
>         at org.apache.catalina.core.StandardHostValve.invoke 
> (StandardHostValve.java:127) 
>         at org.apache.catalina.valves.ErrorReportValve.invoke 
> (ErrorReportValve.java:117) 
>         at org.apache.catalina.core.StandardEngineValve.invoke 
> (StandardEngineValve.java:108) 
>         at org.apache.catalina.connector.CoyoteAdapter.service 
> (CoyoteAdapter.java:151) 
>         at org.apache.coyote.http11.Http11Processor.process 
> (Http11Processor.java:870) 
>         at org.apache.coyote.http11.Http11BaseProtocol 
> $Http11ConnectionHandler.processConnection(Http11BaseProtocol.java: 
> 665) 
>         at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket 
> (PoolTcpEndpoint.java:528) 
>         at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt 
> (LeaderFollowerWorkerThread.java:81) 
>         at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run 
> (ThreadPool.java:685) 
>         at java.lang.Thread.run(Thread.java:619) 
> Caused by: javax.xml.bind.UnmarshalException 
> - with linked exception: 
> [com.ctc.wstx.exc.WstxParsingException: Unexpected close tag </ 
> ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148]] 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.handleStreamExcep­tion 
> (UnmarshallerImpl.java:426) 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
> (UnmarshallerImpl.java:362) 
>         at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal 
> (UnmarshallerImpl.java:339) 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:607) 
>         ... 29 more 
> Caused by: com.ctc.wstx.exc.WstxParsingException: Unexpected close tag 
> </ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148] 
>         at com.ctc.wstx.sr.StreamScanner.constructWfcException 
> (StreamScanner.java:630) 
>         at com.ctc.wstx.sr.StreamScanner.throwParseError(StreamScanner.java: 
> 461) 
>         at com.ctc.wstx.sr.BasicStreamReader.reportWrongEndElem 
> (BasicStreamReader.java:3256) 
>         at com.ctc.wstx.sr.BasicStreamReader.readEndElem 
> (BasicStreamReader.java:3198) 
>         at com.ctc.wstx.sr.BasicStreamReader.nextFromTree 
> (BasicStreamReader.java:2830) 
>         at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java: 
> 1019) 
>         at org.apache.cxf.staxutils.DepthXMLStreamReader.next 
> (DepthXMLStreamReader.java:220) 
>         at com.sun.xml.bind.v2.runtime.unmarshaller.StAXStreamConnector.bridge 
> (StAXStreamConnector.java:225) 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
> (UnmarshallerImpl.java:360) 
>         ... 31 more 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (CXF-2215) can't use non-English character parameter, soap encoding are not consistent

Posted by "Daniel Kulp (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CXF-2215?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12709668#action_12709668 ] 

Daniel Kulp commented on CXF-2215:
----------------------------------


I THINK I may have fixed this.   My "gut feeling" is that the version of tomcat you are using is returning the wrong value from request.getCharacterEncoding().    I've flipped the code over to using the charset found in the Content-Type header (which is what getCharacterEncoding should do, but in your case obviously isn't).   That SHOULD fix this as your initial logs shows that the charset=UTF-8 which is what should work for this case.

> can't use  non-English character parameter, soap encoding are not consistent
> ----------------------------------------------------------------------------
>
>                 Key: CXF-2215
>                 URL: https://issues.apache.org/jira/browse/CXF-2215
>             Project: CXF
>          Issue Type: Bug
>    Affects Versions: 2.2
>         Environment: windows xp, tomcat 6.0.18
>            Reporter: DingWeilong
>            Priority: Critical
>
> I have use cxf 2.2 to publish a web service in tomcat 6, the only operation in which is 
> public java.lang.String greetMe( String name);
> when invoke with a parameter in Chinese value, i couldn't get my result. 
> I use log interceptor to get the log below, you see the encoding and the charset is not consistent
> I track the source code, and see the error when unmarshall invoked.
> you can see the inbound message is parsed allright, but the outbound message is not, error  occurs.
> I have test there're no problem when i use English parameter.
> who can tell me the reason and fix the problem, thanks!
> Inbound Message 
> ---------------------------- 
> Encoding: GB2312 
> Content-Type: text/xml; charset=UTF-8 
> Headers: {cache-control=[no-cache], content-type=[text/xml; 
> charset=UTF-8], connection=[keep-alive], host=[10.61.0.90:8080], 
> content-length=[182], SOAPAction=[""], user-agent=[Apache CXF 2.2], 
> Accept=[*/*], pragma=[no-cache]} 
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
> envelope/"> <soap:Body> <ns2:greetMe xmlns:ns2="http://cxf/"> <arg0>测试 </ 
> arg0> </ns2:greetMe> </soap:Body> </soap:Envelope> 
> Outbound Message 
> --------------------------- 
> Encoding: GB2312 
> Content-Type: text/xml 
> Headers: {} 
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
> envelope/"> <soap:Body> <soap:Fault> <faultcode>soap:Client </ 
> faultcode> <faultstring>Unmarshalling Error: Unexpected close tag &lt;/ 
> ns2:greetMe>; expected &lt;/arg0>.&#xd; 
> at [row,col {unknown-source}]: [1,148] </faultstring> </soap:Fault> </ 
> soap:Body> </soap:Envelope> 
> and the exception is below:
> Interceptor has thrown exception, unwinding now 
> org.apache.cxf.interceptor.Fault: Unmarshalling Error: Unexpected 
> close tag </ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148] 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:622) 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:527) 
>         at org.apache.cxf.jaxb.io.DataReaderImpl.read(DataReaderImpl.java: 
> 108) 
>         at org.apache.cxf.interceptor.DocLiteralInInterceptor.handleMessage 
> (DocLiteralInInterceptor.java:102) 
>         at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept 
> (PhaseInterceptorChain.java:236) 
>         at org.apache.cxf.transport.ChainInitiationObserver.onMessage 
> (ChainInitiationObserver.java:89) 
>         at org.apache.cxf.transport.servlet.ServletDestination.invoke 
> (ServletDestination.java:99) 
>         at 
> org.apache.cxf.transport.servlet.ServletController.invokeDestination 
> (ServletController.java:337) 
>         at org.apache.cxf.transport.servlet.ServletController.invoke 
> (ServletController.java:182) 
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke 
> (AbstractCXFServlet.java:163) 
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.doPost 
> (AbstractCXFServlet.java:141) 
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) 
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) 
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
> (ApplicationFilterChain.java:269) 
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter 
> (ApplicationFilterChain.java:188) 
>         at org.apache.struts2.dispatcher.FilterDispatcher.doFilter 
> (FilterDispatcher.java:413) 
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
> (ApplicationFilterChain.java:215) 
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter 
> (ApplicationFilterChain.java:188) 
>         at org.apache.catalina.core.StandardWrapperValve.invoke 
> (StandardWrapperValve.java:210) 
>         at org.apache.catalina.core.StandardContextValve.invoke 
> (StandardContextValve.java:174) 
>         at org.apache.catalina.core.StandardHostValve.invoke 
> (StandardHostValve.java:127) 
>         at org.apache.catalina.valves.ErrorReportValve.invoke 
> (ErrorReportValve.java:117) 
>         at org.apache.catalina.core.StandardEngineValve.invoke 
> (StandardEngineValve.java:108) 
>         at org.apache.catalina.connector.CoyoteAdapter.service 
> (CoyoteAdapter.java:151) 
>         at org.apache.coyote.http11.Http11Processor.process 
> (Http11Processor.java:870) 
>         at org.apache.coyote.http11.Http11BaseProtocol 
> $Http11ConnectionHandler.processConnection(Http11BaseProtocol.java: 
> 665) 
>         at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket 
> (PoolTcpEndpoint.java:528) 
>         at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt 
> (LeaderFollowerWorkerThread.java:81) 
>         at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run 
> (ThreadPool.java:685) 
>         at java.lang.Thread.run(Thread.java:619) 
> Caused by: javax.xml.bind.UnmarshalException 
> - with linked exception: 
> [com.ctc.wstx.exc.WstxParsingException: Unexpected close tag </ 
> ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148]] 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.handleStreamExcep­tion 
> (UnmarshallerImpl.java:426) 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
> (UnmarshallerImpl.java:362) 
>         at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal 
> (UnmarshallerImpl.java:339) 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:607) 
>         ... 29 more 
> Caused by: com.ctc.wstx.exc.WstxParsingException: Unexpected close tag 
> </ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148] 
>         at com.ctc.wstx.sr.StreamScanner.constructWfcException 
> (StreamScanner.java:630) 
>         at com.ctc.wstx.sr.StreamScanner.throwParseError(StreamScanner.java: 
> 461) 
>         at com.ctc.wstx.sr.BasicStreamReader.reportWrongEndElem 
> (BasicStreamReader.java:3256) 
>         at com.ctc.wstx.sr.BasicStreamReader.readEndElem 
> (BasicStreamReader.java:3198) 
>         at com.ctc.wstx.sr.BasicStreamReader.nextFromTree 
> (BasicStreamReader.java:2830) 
>         at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java: 
> 1019) 
>         at org.apache.cxf.staxutils.DepthXMLStreamReader.next 
> (DepthXMLStreamReader.java:220) 
>         at com.sun.xml.bind.v2.runtime.unmarshaller.StAXStreamConnector.bridge 
> (StAXStreamConnector.java:225) 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
> (UnmarshallerImpl.java:360) 
>         ... 31 more 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Issue Comment Edited: (CXF-2215) can't use non-English character parameter, soap encoding are not consistent

Posted by "dingweilong (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CXF-2215?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12708721#action_12708721 ] 

dingweilong edited comment on CXF-2215 at 5/12/09 7:00 PM:
-----------------------------------------------------------

I have track the source code, i haven't got why the ENCODING was changed.
I find when the MessageSenderEndingInterceptor ( a inner class in org.apache.cxf.transport.Conduit.MessageSenderInterceptor)is called the encoding is changed, who can tell me the rationale.

my test case is simple:
@Test
public void testGreetMe() throws Exception
{
	String name="测试";
	String r=greeter.greetMe(name);
	log.info(r);
}

server side is also simple:
public String greetMe(String user)
    {
    	return "Hello "+user;
    }

Where and how is the chance that encoding is changed?
thanks.


      was (Author: dingweilong):
    I have track the source code, i haven't got when the ENCODING was generated.

my test case is simple:
@Test
public void testGreetMe() throws Exception
{
	String name="测试";
	String r=greeter.greetMe(name);
	log.info(r);
}

server side is also simple:
public String greetMe(String user)
    {
    	return "Hello "+user;
    }

Where is the chance that encoding is changed?
thanks.

  
> can't use  non-English character parameter, soap encoding are not consistent
> ----------------------------------------------------------------------------
>
>                 Key: CXF-2215
>                 URL: https://issues.apache.org/jira/browse/CXF-2215
>             Project: CXF
>          Issue Type: Bug
>    Affects Versions: 2.2
>         Environment: windows xp, tomcat 6.0.18
>            Reporter: dingweilong
>            Priority: Critical
>
> I have use cxf 2.2 to publish a web service in tomcat 6, the only operation in which is 
> public java.lang.String greetMe( String name);
> when invoke with a parameter in Chinese value, i couldn't get my result. 
> I use log interceptor to get the log below, you see the encoding and the charset is not consistent
> I track the source code, and see the error when unmarshall invoked.
> you can see the inbound message is parsed allright, but the outbound message is not, error  occurs.
> I have test there're no problem when i use English parameter.
> who can tell me the reason and fix the problem, thanks!
> Inbound Message 
> ---------------------------- 
> Encoding: GB2312 
> Content-Type: text/xml; charset=UTF-8 
> Headers: {cache-control=[no-cache], content-type=[text/xml; 
> charset=UTF-8], connection=[keep-alive], host=[10.61.0.90:8080], 
> content-length=[182], SOAPAction=[""], user-agent=[Apache CXF 2.2], 
> Accept=[*/*], pragma=[no-cache]} 
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
> envelope/"> <soap:Body> <ns2:greetMe xmlns:ns2="http://cxf/"> <arg0>测试 </ 
> arg0> </ns2:greetMe> </soap:Body> </soap:Envelope> 
> Outbound Message 
> --------------------------- 
> Encoding: GB2312 
> Content-Type: text/xml 
> Headers: {} 
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
> envelope/"> <soap:Body> <soap:Fault> <faultcode>soap:Client </ 
> faultcode> <faultstring>Unmarshalling Error: Unexpected close tag &lt;/ 
> ns2:greetMe>; expected &lt;/arg0>.&#xd; 
> at [row,col {unknown-source}]: [1,148] </faultstring> </soap:Fault> </ 
> soap:Body> </soap:Envelope> 
> and the exception is below:
> Interceptor has thrown exception, unwinding now 
> org.apache.cxf.interceptor.Fault: Unmarshalling Error: Unexpected 
> close tag </ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148] 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:622) 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:527) 
>         at org.apache.cxf.jaxb.io.DataReaderImpl.read(DataReaderImpl.java: 
> 108) 
>         at org.apache.cxf.interceptor.DocLiteralInInterceptor.handleMessage 
> (DocLiteralInInterceptor.java:102) 
>         at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept 
> (PhaseInterceptorChain.java:236) 
>         at org.apache.cxf.transport.ChainInitiationObserver.onMessage 
> (ChainInitiationObserver.java:89) 
>         at org.apache.cxf.transport.servlet.ServletDestination.invoke 
> (ServletDestination.java:99) 
>         at 
> org.apache.cxf.transport.servlet.ServletController.invokeDestination 
> (ServletController.java:337) 
>         at org.apache.cxf.transport.servlet.ServletController.invoke 
> (ServletController.java:182) 
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke 
> (AbstractCXFServlet.java:163) 
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.doPost 
> (AbstractCXFServlet.java:141) 
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) 
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) 
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
> (ApplicationFilterChain.java:269) 
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter 
> (ApplicationFilterChain.java:188) 
>         at org.apache.struts2.dispatcher.FilterDispatcher.doFilter 
> (FilterDispatcher.java:413) 
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
> (ApplicationFilterChain.java:215) 
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter 
> (ApplicationFilterChain.java:188) 
>         at org.apache.catalina.core.StandardWrapperValve.invoke 
> (StandardWrapperValve.java:210) 
>         at org.apache.catalina.core.StandardContextValve.invoke 
> (StandardContextValve.java:174) 
>         at org.apache.catalina.core.StandardHostValve.invoke 
> (StandardHostValve.java:127) 
>         at org.apache.catalina.valves.ErrorReportValve.invoke 
> (ErrorReportValve.java:117) 
>         at org.apache.catalina.core.StandardEngineValve.invoke 
> (StandardEngineValve.java:108) 
>         at org.apache.catalina.connector.CoyoteAdapter.service 
> (CoyoteAdapter.java:151) 
>         at org.apache.coyote.http11.Http11Processor.process 
> (Http11Processor.java:870) 
>         at org.apache.coyote.http11.Http11BaseProtocol 
> $Http11ConnectionHandler.processConnection(Http11BaseProtocol.java: 
> 665) 
>         at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket 
> (PoolTcpEndpoint.java:528) 
>         at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt 
> (LeaderFollowerWorkerThread.java:81) 
>         at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run 
> (ThreadPool.java:685) 
>         at java.lang.Thread.run(Thread.java:619) 
> Caused by: javax.xml.bind.UnmarshalException 
> - with linked exception: 
> [com.ctc.wstx.exc.WstxParsingException: Unexpected close tag </ 
> ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148]] 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.handleStreamExcep­tion 
> (UnmarshallerImpl.java:426) 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
> (UnmarshallerImpl.java:362) 
>         at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal 
> (UnmarshallerImpl.java:339) 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:607) 
>         ... 29 more 
> Caused by: com.ctc.wstx.exc.WstxParsingException: Unexpected close tag 
> </ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148] 
>         at com.ctc.wstx.sr.StreamScanner.constructWfcException 
> (StreamScanner.java:630) 
>         at com.ctc.wstx.sr.StreamScanner.throwParseError(StreamScanner.java: 
> 461) 
>         at com.ctc.wstx.sr.BasicStreamReader.reportWrongEndElem 
> (BasicStreamReader.java:3256) 
>         at com.ctc.wstx.sr.BasicStreamReader.readEndElem 
> (BasicStreamReader.java:3198) 
>         at com.ctc.wstx.sr.BasicStreamReader.nextFromTree 
> (BasicStreamReader.java:2830) 
>         at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java: 
> 1019) 
>         at org.apache.cxf.staxutils.DepthXMLStreamReader.next 
> (DepthXMLStreamReader.java:220) 
>         at com.sun.xml.bind.v2.runtime.unmarshaller.StAXStreamConnector.bridge 
> (StAXStreamConnector.java:225) 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
> (UnmarshallerImpl.java:360) 
>         ... 31 more 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (CXF-2215) can't use non-English character parameter, soap encoding are not consistent

Posted by "Daniel Kulp (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CXF-2215?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Daniel Kulp updated CXF-2215:
-----------------------------

    Fix Version/s: Invalid

> can't use  non-English character parameter, soap encoding are not consistent
> ----------------------------------------------------------------------------
>
>                 Key: CXF-2215
>                 URL: https://issues.apache.org/jira/browse/CXF-2215
>             Project: CXF
>          Issue Type: Bug
>    Affects Versions: 2.2
>         Environment: windows xp, tomcat 6.0.18
>            Reporter: DingWeilong
>            Priority: Critical
>             Fix For: Invalid
>
>
> I have use cxf 2.2 to publish a web service in tomcat 6, the only operation in which is 
> public java.lang.String greetMe( String name);
> when invoke with a parameter in Chinese value, i couldn't get my result. 
> I use log interceptor to get the log below, you see the encoding and the charset is not consistent
> I track the source code, and see the error when unmarshall invoked.
> you can see the inbound message is parsed allright, but the outbound message is not, error  occurs.
> I have test there're no problem when i use English parameter.
> who can tell me the reason and fix the problem, thanks!
> Inbound Message 
> ---------------------------- 
> Encoding: GB2312 
> Content-Type: text/xml; charset=UTF-8 
> Headers: {cache-control=[no-cache], content-type=[text/xml; 
> charset=UTF-8], connection=[keep-alive], host=[10.61.0.90:8080], 
> content-length=[182], SOAPAction=[""], user-agent=[Apache CXF 2.2], 
> Accept=[*/*], pragma=[no-cache]} 
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
> envelope/"> <soap:Body> <ns2:greetMe xmlns:ns2="http://cxf/"> <arg0>测试 </ 
> arg0> </ns2:greetMe> </soap:Body> </soap:Envelope> 
> Outbound Message 
> --------------------------- 
> Encoding: GB2312 
> Content-Type: text/xml 
> Headers: {} 
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
> envelope/"> <soap:Body> <soap:Fault> <faultcode>soap:Client </ 
> faultcode> <faultstring>Unmarshalling Error: Unexpected close tag &lt;/ 
> ns2:greetMe>; expected &lt;/arg0>.&#xd; 
> at [row,col {unknown-source}]: [1,148] </faultstring> </soap:Fault> </ 
> soap:Body> </soap:Envelope> 
> and the exception is below:
> Interceptor has thrown exception, unwinding now 
> org.apache.cxf.interceptor.Fault: Unmarshalling Error: Unexpected 
> close tag </ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148] 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:622) 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:527) 
>         at org.apache.cxf.jaxb.io.DataReaderImpl.read(DataReaderImpl.java: 
> 108) 
>         at org.apache.cxf.interceptor.DocLiteralInInterceptor.handleMessage 
> (DocLiteralInInterceptor.java:102) 
>         at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept 
> (PhaseInterceptorChain.java:236) 
>         at org.apache.cxf.transport.ChainInitiationObserver.onMessage 
> (ChainInitiationObserver.java:89) 
>         at org.apache.cxf.transport.servlet.ServletDestination.invoke 
> (ServletDestination.java:99) 
>         at 
> org.apache.cxf.transport.servlet.ServletController.invokeDestination 
> (ServletController.java:337) 
>         at org.apache.cxf.transport.servlet.ServletController.invoke 
> (ServletController.java:182) 
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke 
> (AbstractCXFServlet.java:163) 
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.doPost 
> (AbstractCXFServlet.java:141) 
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) 
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) 
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
> (ApplicationFilterChain.java:269) 
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter 
> (ApplicationFilterChain.java:188) 
>         at org.apache.struts2.dispatcher.FilterDispatcher.doFilter 
> (FilterDispatcher.java:413) 
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
> (ApplicationFilterChain.java:215) 
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter 
> (ApplicationFilterChain.java:188) 
>         at org.apache.catalina.core.StandardWrapperValve.invoke 
> (StandardWrapperValve.java:210) 
>         at org.apache.catalina.core.StandardContextValve.invoke 
> (StandardContextValve.java:174) 
>         at org.apache.catalina.core.StandardHostValve.invoke 
> (StandardHostValve.java:127) 
>         at org.apache.catalina.valves.ErrorReportValve.invoke 
> (ErrorReportValve.java:117) 
>         at org.apache.catalina.core.StandardEngineValve.invoke 
> (StandardEngineValve.java:108) 
>         at org.apache.catalina.connector.CoyoteAdapter.service 
> (CoyoteAdapter.java:151) 
>         at org.apache.coyote.http11.Http11Processor.process 
> (Http11Processor.java:870) 
>         at org.apache.coyote.http11.Http11BaseProtocol 
> $Http11ConnectionHandler.processConnection(Http11BaseProtocol.java: 
> 665) 
>         at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket 
> (PoolTcpEndpoint.java:528) 
>         at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt 
> (LeaderFollowerWorkerThread.java:81) 
>         at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run 
> (ThreadPool.java:685) 
>         at java.lang.Thread.run(Thread.java:619) 
> Caused by: javax.xml.bind.UnmarshalException 
> - with linked exception: 
> [com.ctc.wstx.exc.WstxParsingException: Unexpected close tag </ 
> ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148]] 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.handleStreamExcep­tion 
> (UnmarshallerImpl.java:426) 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
> (UnmarshallerImpl.java:362) 
>         at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal 
> (UnmarshallerImpl.java:339) 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:607) 
>         ... 29 more 
> Caused by: com.ctc.wstx.exc.WstxParsingException: Unexpected close tag 
> </ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148] 
>         at com.ctc.wstx.sr.StreamScanner.constructWfcException 
> (StreamScanner.java:630) 
>         at com.ctc.wstx.sr.StreamScanner.throwParseError(StreamScanner.java: 
> 461) 
>         at com.ctc.wstx.sr.BasicStreamReader.reportWrongEndElem 
> (BasicStreamReader.java:3256) 
>         at com.ctc.wstx.sr.BasicStreamReader.readEndElem 
> (BasicStreamReader.java:3198) 
>         at com.ctc.wstx.sr.BasicStreamReader.nextFromTree 
> (BasicStreamReader.java:2830) 
>         at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java: 
> 1019) 
>         at org.apache.cxf.staxutils.DepthXMLStreamReader.next 
> (DepthXMLStreamReader.java:220) 
>         at com.sun.xml.bind.v2.runtime.unmarshaller.StAXStreamConnector.bridge 
> (StAXStreamConnector.java:225) 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
> (UnmarshallerImpl.java:360) 
>         ... 31 more 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (CXF-2215) can't use non-English character parameter, soap encoding are not consistent

Posted by "Benson Margulies (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CXF-2215?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12708876#action_12708876 ] 

Benson Margulies commented on CXF-2215:
---------------------------------------

Just to confirm: Are these settings live:

sun.jnu.encoding=GBK
file.encoding=GBK

?

We can set up a test case and see what happens≥


> can't use  non-English character parameter, soap encoding are not consistent
> ----------------------------------------------------------------------------
>
>                 Key: CXF-2215
>                 URL: https://issues.apache.org/jira/browse/CXF-2215
>             Project: CXF
>          Issue Type: Bug
>    Affects Versions: 2.2
>         Environment: windows xp, tomcat 6.0.18
>            Reporter: dingweilong
>            Priority: Critical
>
> I have use cxf 2.2 to publish a web service in tomcat 6, the only operation in which is 
> public java.lang.String greetMe( String name);
> when invoke with a parameter in Chinese value, i couldn't get my result. 
> I use log interceptor to get the log below, you see the encoding and the charset is not consistent
> I track the source code, and see the error when unmarshall invoked.
> you can see the inbound message is parsed allright, but the outbound message is not, error  occurs.
> I have test there're no problem when i use English parameter.
> who can tell me the reason and fix the problem, thanks!
> Inbound Message 
> ---------------------------- 
> Encoding: GB2312 
> Content-Type: text/xml; charset=UTF-8 
> Headers: {cache-control=[no-cache], content-type=[text/xml; 
> charset=UTF-8], connection=[keep-alive], host=[10.61.0.90:8080], 
> content-length=[182], SOAPAction=[""], user-agent=[Apache CXF 2.2], 
> Accept=[*/*], pragma=[no-cache]} 
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
> envelope/"> <soap:Body> <ns2:greetMe xmlns:ns2="http://cxf/"> <arg0>测试 </ 
> arg0> </ns2:greetMe> </soap:Body> </soap:Envelope> 
> Outbound Message 
> --------------------------- 
> Encoding: GB2312 
> Content-Type: text/xml 
> Headers: {} 
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
> envelope/"> <soap:Body> <soap:Fault> <faultcode>soap:Client </ 
> faultcode> <faultstring>Unmarshalling Error: Unexpected close tag &lt;/ 
> ns2:greetMe>; expected &lt;/arg0>.&#xd; 
> at [row,col {unknown-source}]: [1,148] </faultstring> </soap:Fault> </ 
> soap:Body> </soap:Envelope> 
> and the exception is below:
> Interceptor has thrown exception, unwinding now 
> org.apache.cxf.interceptor.Fault: Unmarshalling Error: Unexpected 
> close tag </ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148] 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:622) 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:527) 
>         at org.apache.cxf.jaxb.io.DataReaderImpl.read(DataReaderImpl.java: 
> 108) 
>         at org.apache.cxf.interceptor.DocLiteralInInterceptor.handleMessage 
> (DocLiteralInInterceptor.java:102) 
>         at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept 
> (PhaseInterceptorChain.java:236) 
>         at org.apache.cxf.transport.ChainInitiationObserver.onMessage 
> (ChainInitiationObserver.java:89) 
>         at org.apache.cxf.transport.servlet.ServletDestination.invoke 
> (ServletDestination.java:99) 
>         at 
> org.apache.cxf.transport.servlet.ServletController.invokeDestination 
> (ServletController.java:337) 
>         at org.apache.cxf.transport.servlet.ServletController.invoke 
> (ServletController.java:182) 
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke 
> (AbstractCXFServlet.java:163) 
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.doPost 
> (AbstractCXFServlet.java:141) 
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) 
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) 
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
> (ApplicationFilterChain.java:269) 
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter 
> (ApplicationFilterChain.java:188) 
>         at org.apache.struts2.dispatcher.FilterDispatcher.doFilter 
> (FilterDispatcher.java:413) 
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
> (ApplicationFilterChain.java:215) 
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter 
> (ApplicationFilterChain.java:188) 
>         at org.apache.catalina.core.StandardWrapperValve.invoke 
> (StandardWrapperValve.java:210) 
>         at org.apache.catalina.core.StandardContextValve.invoke 
> (StandardContextValve.java:174) 
>         at org.apache.catalina.core.StandardHostValve.invoke 
> (StandardHostValve.java:127) 
>         at org.apache.catalina.valves.ErrorReportValve.invoke 
> (ErrorReportValve.java:117) 
>         at org.apache.catalina.core.StandardEngineValve.invoke 
> (StandardEngineValve.java:108) 
>         at org.apache.catalina.connector.CoyoteAdapter.service 
> (CoyoteAdapter.java:151) 
>         at org.apache.coyote.http11.Http11Processor.process 
> (Http11Processor.java:870) 
>         at org.apache.coyote.http11.Http11BaseProtocol 
> $Http11ConnectionHandler.processConnection(Http11BaseProtocol.java: 
> 665) 
>         at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket 
> (PoolTcpEndpoint.java:528) 
>         at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt 
> (LeaderFollowerWorkerThread.java:81) 
>         at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run 
> (ThreadPool.java:685) 
>         at java.lang.Thread.run(Thread.java:619) 
> Caused by: javax.xml.bind.UnmarshalException 
> - with linked exception: 
> [com.ctc.wstx.exc.WstxParsingException: Unexpected close tag </ 
> ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148]] 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.handleStreamExcep­tion 
> (UnmarshallerImpl.java:426) 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
> (UnmarshallerImpl.java:362) 
>         at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal 
> (UnmarshallerImpl.java:339) 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:607) 
>         ... 29 more 
> Caused by: com.ctc.wstx.exc.WstxParsingException: Unexpected close tag 
> </ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148] 
>         at com.ctc.wstx.sr.StreamScanner.constructWfcException 
> (StreamScanner.java:630) 
>         at com.ctc.wstx.sr.StreamScanner.throwParseError(StreamScanner.java: 
> 461) 
>         at com.ctc.wstx.sr.BasicStreamReader.reportWrongEndElem 
> (BasicStreamReader.java:3256) 
>         at com.ctc.wstx.sr.BasicStreamReader.readEndElem 
> (BasicStreamReader.java:3198) 
>         at com.ctc.wstx.sr.BasicStreamReader.nextFromTree 
> (BasicStreamReader.java:2830) 
>         at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java: 
> 1019) 
>         at org.apache.cxf.staxutils.DepthXMLStreamReader.next 
> (DepthXMLStreamReader.java:220) 
>         at com.sun.xml.bind.v2.runtime.unmarshaller.StAXStreamConnector.bridge 
> (StAXStreamConnector.java:225) 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
> (UnmarshallerImpl.java:360) 
>         ... 31 more 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (CXF-2215) can't use non-English character parameter, soap encoding are not consistent

Posted by "DingWeilong (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CXF-2215?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12709712#action_12709712 ] 

DingWeilong commented on CXF-2215:
----------------------------------

s

> can't use  non-English character parameter, soap encoding are not consistent
> ----------------------------------------------------------------------------
>
>                 Key: CXF-2215
>                 URL: https://issues.apache.org/jira/browse/CXF-2215
>             Project: CXF
>          Issue Type: Bug
>    Affects Versions: 2.2
>         Environment: windows xp, tomcat 6.0.18
>            Reporter: DingWeilong
>            Priority: Critical
>
> I have use cxf 2.2 to publish a web service in tomcat 6, the only operation in which is 
> public java.lang.String greetMe( String name);
> when invoke with a parameter in Chinese value, i couldn't get my result. 
> I use log interceptor to get the log below, you see the encoding and the charset is not consistent
> I track the source code, and see the error when unmarshall invoked.
> you can see the inbound message is parsed allright, but the outbound message is not, error  occurs.
> I have test there're no problem when i use English parameter.
> who can tell me the reason and fix the problem, thanks!
> Inbound Message 
> ---------------------------- 
> Encoding: GB2312 
> Content-Type: text/xml; charset=UTF-8 
> Headers: {cache-control=[no-cache], content-type=[text/xml; 
> charset=UTF-8], connection=[keep-alive], host=[10.61.0.90:8080], 
> content-length=[182], SOAPAction=[""], user-agent=[Apache CXF 2.2], 
> Accept=[*/*], pragma=[no-cache]} 
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
> envelope/"> <soap:Body> <ns2:greetMe xmlns:ns2="http://cxf/"> <arg0>测试 </ 
> arg0> </ns2:greetMe> </soap:Body> </soap:Envelope> 
> Outbound Message 
> --------------------------- 
> Encoding: GB2312 
> Content-Type: text/xml 
> Headers: {} 
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
> envelope/"> <soap:Body> <soap:Fault> <faultcode>soap:Client </ 
> faultcode> <faultstring>Unmarshalling Error: Unexpected close tag &lt;/ 
> ns2:greetMe>; expected &lt;/arg0>.&#xd; 
> at [row,col {unknown-source}]: [1,148] </faultstring> </soap:Fault> </ 
> soap:Body> </soap:Envelope> 
> and the exception is below:
> Interceptor has thrown exception, unwinding now 
> org.apache.cxf.interceptor.Fault: Unmarshalling Error: Unexpected 
> close tag </ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148] 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:622) 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:527) 
>         at org.apache.cxf.jaxb.io.DataReaderImpl.read(DataReaderImpl.java: 
> 108) 
>         at org.apache.cxf.interceptor.DocLiteralInInterceptor.handleMessage 
> (DocLiteralInInterceptor.java:102) 
>         at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept 
> (PhaseInterceptorChain.java:236) 
>         at org.apache.cxf.transport.ChainInitiationObserver.onMessage 
> (ChainInitiationObserver.java:89) 
>         at org.apache.cxf.transport.servlet.ServletDestination.invoke 
> (ServletDestination.java:99) 
>         at 
> org.apache.cxf.transport.servlet.ServletController.invokeDestination 
> (ServletController.java:337) 
>         at org.apache.cxf.transport.servlet.ServletController.invoke 
> (ServletController.java:182) 
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke 
> (AbstractCXFServlet.java:163) 
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.doPost 
> (AbstractCXFServlet.java:141) 
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) 
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) 
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
> (ApplicationFilterChain.java:269) 
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter 
> (ApplicationFilterChain.java:188) 
>         at org.apache.struts2.dispatcher.FilterDispatcher.doFilter 
> (FilterDispatcher.java:413) 
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
> (ApplicationFilterChain.java:215) 
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter 
> (ApplicationFilterChain.java:188) 
>         at org.apache.catalina.core.StandardWrapperValve.invoke 
> (StandardWrapperValve.java:210) 
>         at org.apache.catalina.core.StandardContextValve.invoke 
> (StandardContextValve.java:174) 
>         at org.apache.catalina.core.StandardHostValve.invoke 
> (StandardHostValve.java:127) 
>         at org.apache.catalina.valves.ErrorReportValve.invoke 
> (ErrorReportValve.java:117) 
>         at org.apache.catalina.core.StandardEngineValve.invoke 
> (StandardEngineValve.java:108) 
>         at org.apache.catalina.connector.CoyoteAdapter.service 
> (CoyoteAdapter.java:151) 
>         at org.apache.coyote.http11.Http11Processor.process 
> (Http11Processor.java:870) 
>         at org.apache.coyote.http11.Http11BaseProtocol 
> $Http11ConnectionHandler.processConnection(Http11BaseProtocol.java: 
> 665) 
>         at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket 
> (PoolTcpEndpoint.java:528) 
>         at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt 
> (LeaderFollowerWorkerThread.java:81) 
>         at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run 
> (ThreadPool.java:685) 
>         at java.lang.Thread.run(Thread.java:619) 
> Caused by: javax.xml.bind.UnmarshalException 
> - with linked exception: 
> [com.ctc.wstx.exc.WstxParsingException: Unexpected close tag </ 
> ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148]] 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.handleStreamExcep­tion 
> (UnmarshallerImpl.java:426) 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
> (UnmarshallerImpl.java:362) 
>         at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal 
> (UnmarshallerImpl.java:339) 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:607) 
>         ... 29 more 
> Caused by: com.ctc.wstx.exc.WstxParsingException: Unexpected close tag 
> </ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148] 
>         at com.ctc.wstx.sr.StreamScanner.constructWfcException 
> (StreamScanner.java:630) 
>         at com.ctc.wstx.sr.StreamScanner.throwParseError(StreamScanner.java: 
> 461) 
>         at com.ctc.wstx.sr.BasicStreamReader.reportWrongEndElem 
> (BasicStreamReader.java:3256) 
>         at com.ctc.wstx.sr.BasicStreamReader.readEndElem 
> (BasicStreamReader.java:3198) 
>         at com.ctc.wstx.sr.BasicStreamReader.nextFromTree 
> (BasicStreamReader.java:2830) 
>         at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java: 
> 1019) 
>         at org.apache.cxf.staxutils.DepthXMLStreamReader.next 
> (DepthXMLStreamReader.java:220) 
>         at com.sun.xml.bind.v2.runtime.unmarshaller.StAXStreamConnector.bridge 
> (StAXStreamConnector.java:225) 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
> (UnmarshallerImpl.java:360) 
>         ... 31 more 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (CXF-2215) can't use non-English character parameter, soap encoding are not consistent

Posted by "Benson Margulies (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CXF-2215?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12708722#action_12708722 ] 

Benson Margulies commented on CXF-2215:
---------------------------------------

I think you need to tell us about the larger context in which your code is launched. Is it a standalone? Inside an app server?

Add a line of code to inspect the system property 'file.encoding' and see if it's GB2312.

Again, what we need here is a complete test case that we can compile and run.


> can't use  non-English character parameter, soap encoding are not consistent
> ----------------------------------------------------------------------------
>
>                 Key: CXF-2215
>                 URL: https://issues.apache.org/jira/browse/CXF-2215
>             Project: CXF
>          Issue Type: Bug
>    Affects Versions: 2.2
>         Environment: windows xp, tomcat 6.0.18
>            Reporter: dingweilong
>            Priority: Critical
>
> I have use cxf 2.2 to publish a web service in tomcat 6, the only operation in which is 
> public java.lang.String greetMe( String name);
> when invoke with a parameter in Chinese value, i couldn't get my result. 
> I use log interceptor to get the log below, you see the encoding and the charset is not consistent
> I track the source code, and see the error when unmarshall invoked.
> you can see the inbound message is parsed allright, but the outbound message is not, error  occurs.
> I have test there're no problem when i use English parameter.
> who can tell me the reason and fix the problem, thanks!
> Inbound Message 
> ---------------------------- 
> Encoding: GB2312 
> Content-Type: text/xml; charset=UTF-8 
> Headers: {cache-control=[no-cache], content-type=[text/xml; 
> charset=UTF-8], connection=[keep-alive], host=[10.61.0.90:8080], 
> content-length=[182], SOAPAction=[""], user-agent=[Apache CXF 2.2], 
> Accept=[*/*], pragma=[no-cache]} 
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
> envelope/"> <soap:Body> <ns2:greetMe xmlns:ns2="http://cxf/"> <arg0>测试 </ 
> arg0> </ns2:greetMe> </soap:Body> </soap:Envelope> 
> Outbound Message 
> --------------------------- 
> Encoding: GB2312 
> Content-Type: text/xml 
> Headers: {} 
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
> envelope/"> <soap:Body> <soap:Fault> <faultcode>soap:Client </ 
> faultcode> <faultstring>Unmarshalling Error: Unexpected close tag &lt;/ 
> ns2:greetMe>; expected &lt;/arg0>.&#xd; 
> at [row,col {unknown-source}]: [1,148] </faultstring> </soap:Fault> </ 
> soap:Body> </soap:Envelope> 
> and the exception is below:
> Interceptor has thrown exception, unwinding now 
> org.apache.cxf.interceptor.Fault: Unmarshalling Error: Unexpected 
> close tag </ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148] 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:622) 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:527) 
>         at org.apache.cxf.jaxb.io.DataReaderImpl.read(DataReaderImpl.java: 
> 108) 
>         at org.apache.cxf.interceptor.DocLiteralInInterceptor.handleMessage 
> (DocLiteralInInterceptor.java:102) 
>         at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept 
> (PhaseInterceptorChain.java:236) 
>         at org.apache.cxf.transport.ChainInitiationObserver.onMessage 
> (ChainInitiationObserver.java:89) 
>         at org.apache.cxf.transport.servlet.ServletDestination.invoke 
> (ServletDestination.java:99) 
>         at 
> org.apache.cxf.transport.servlet.ServletController.invokeDestination 
> (ServletController.java:337) 
>         at org.apache.cxf.transport.servlet.ServletController.invoke 
> (ServletController.java:182) 
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke 
> (AbstractCXFServlet.java:163) 
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.doPost 
> (AbstractCXFServlet.java:141) 
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) 
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) 
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
> (ApplicationFilterChain.java:269) 
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter 
> (ApplicationFilterChain.java:188) 
>         at org.apache.struts2.dispatcher.FilterDispatcher.doFilter 
> (FilterDispatcher.java:413) 
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
> (ApplicationFilterChain.java:215) 
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter 
> (ApplicationFilterChain.java:188) 
>         at org.apache.catalina.core.StandardWrapperValve.invoke 
> (StandardWrapperValve.java:210) 
>         at org.apache.catalina.core.StandardContextValve.invoke 
> (StandardContextValve.java:174) 
>         at org.apache.catalina.core.StandardHostValve.invoke 
> (StandardHostValve.java:127) 
>         at org.apache.catalina.valves.ErrorReportValve.invoke 
> (ErrorReportValve.java:117) 
>         at org.apache.catalina.core.StandardEngineValve.invoke 
> (StandardEngineValve.java:108) 
>         at org.apache.catalina.connector.CoyoteAdapter.service 
> (CoyoteAdapter.java:151) 
>         at org.apache.coyote.http11.Http11Processor.process 
> (Http11Processor.java:870) 
>         at org.apache.coyote.http11.Http11BaseProtocol 
> $Http11ConnectionHandler.processConnection(Http11BaseProtocol.java: 
> 665) 
>         at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket 
> (PoolTcpEndpoint.java:528) 
>         at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt 
> (LeaderFollowerWorkerThread.java:81) 
>         at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run 
> (ThreadPool.java:685) 
>         at java.lang.Thread.run(Thread.java:619) 
> Caused by: javax.xml.bind.UnmarshalException 
> - with linked exception: 
> [com.ctc.wstx.exc.WstxParsingException: Unexpected close tag </ 
> ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148]] 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.handleStreamExcep­tion 
> (UnmarshallerImpl.java:426) 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
> (UnmarshallerImpl.java:362) 
>         at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal 
> (UnmarshallerImpl.java:339) 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:607) 
>         ... 29 more 
> Caused by: com.ctc.wstx.exc.WstxParsingException: Unexpected close tag 
> </ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148] 
>         at com.ctc.wstx.sr.StreamScanner.constructWfcException 
> (StreamScanner.java:630) 
>         at com.ctc.wstx.sr.StreamScanner.throwParseError(StreamScanner.java: 
> 461) 
>         at com.ctc.wstx.sr.BasicStreamReader.reportWrongEndElem 
> (BasicStreamReader.java:3256) 
>         at com.ctc.wstx.sr.BasicStreamReader.readEndElem 
> (BasicStreamReader.java:3198) 
>         at com.ctc.wstx.sr.BasicStreamReader.nextFromTree 
> (BasicStreamReader.java:2830) 
>         at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java: 
> 1019) 
>         at org.apache.cxf.staxutils.DepthXMLStreamReader.next 
> (DepthXMLStreamReader.java:220) 
>         at com.sun.xml.bind.v2.runtime.unmarshaller.StAXStreamConnector.bridge 
> (StAXStreamConnector.java:225) 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
> (UnmarshallerImpl.java:360) 
>         ... 31 more 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (CXF-2215) can't use non-English character parameter, soap encoding are not consistent

Posted by "Daniel Kulp (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CXF-2215?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12709584#action_12709584 ] 

Daniel Kulp commented on CXF-2215:
----------------------------------



Any chance you could write a simple servlet that does:

System.out.println(httpReq.getCharacterEncoding());
System.out.println(httpReq.getContentType());

I'd like to know if the two match or not.   If not, that's the first thing we need to tackle/figure out.  

> can't use  non-English character parameter, soap encoding are not consistent
> ----------------------------------------------------------------------------
>
>                 Key: CXF-2215
>                 URL: https://issues.apache.org/jira/browse/CXF-2215
>             Project: CXF
>          Issue Type: Bug
>    Affects Versions: 2.2
>         Environment: windows xp, tomcat 6.0.18
>            Reporter: DingWeilong
>            Priority: Critical
>
> I have use cxf 2.2 to publish a web service in tomcat 6, the only operation in which is 
> public java.lang.String greetMe( String name);
> when invoke with a parameter in Chinese value, i couldn't get my result. 
> I use log interceptor to get the log below, you see the encoding and the charset is not consistent
> I track the source code, and see the error when unmarshall invoked.
> you can see the inbound message is parsed allright, but the outbound message is not, error  occurs.
> I have test there're no problem when i use English parameter.
> who can tell me the reason and fix the problem, thanks!
> Inbound Message 
> ---------------------------- 
> Encoding: GB2312 
> Content-Type: text/xml; charset=UTF-8 
> Headers: {cache-control=[no-cache], content-type=[text/xml; 
> charset=UTF-8], connection=[keep-alive], host=[10.61.0.90:8080], 
> content-length=[182], SOAPAction=[""], user-agent=[Apache CXF 2.2], 
> Accept=[*/*], pragma=[no-cache]} 
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
> envelope/"> <soap:Body> <ns2:greetMe xmlns:ns2="http://cxf/"> <arg0>测试 </ 
> arg0> </ns2:greetMe> </soap:Body> </soap:Envelope> 
> Outbound Message 
> --------------------------- 
> Encoding: GB2312 
> Content-Type: text/xml 
> Headers: {} 
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
> envelope/"> <soap:Body> <soap:Fault> <faultcode>soap:Client </ 
> faultcode> <faultstring>Unmarshalling Error: Unexpected close tag &lt;/ 
> ns2:greetMe>; expected &lt;/arg0>.&#xd; 
> at [row,col {unknown-source}]: [1,148] </faultstring> </soap:Fault> </ 
> soap:Body> </soap:Envelope> 
> and the exception is below:
> Interceptor has thrown exception, unwinding now 
> org.apache.cxf.interceptor.Fault: Unmarshalling Error: Unexpected 
> close tag </ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148] 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:622) 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:527) 
>         at org.apache.cxf.jaxb.io.DataReaderImpl.read(DataReaderImpl.java: 
> 108) 
>         at org.apache.cxf.interceptor.DocLiteralInInterceptor.handleMessage 
> (DocLiteralInInterceptor.java:102) 
>         at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept 
> (PhaseInterceptorChain.java:236) 
>         at org.apache.cxf.transport.ChainInitiationObserver.onMessage 
> (ChainInitiationObserver.java:89) 
>         at org.apache.cxf.transport.servlet.ServletDestination.invoke 
> (ServletDestination.java:99) 
>         at 
> org.apache.cxf.transport.servlet.ServletController.invokeDestination 
> (ServletController.java:337) 
>         at org.apache.cxf.transport.servlet.ServletController.invoke 
> (ServletController.java:182) 
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke 
> (AbstractCXFServlet.java:163) 
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.doPost 
> (AbstractCXFServlet.java:141) 
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) 
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) 
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
> (ApplicationFilterChain.java:269) 
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter 
> (ApplicationFilterChain.java:188) 
>         at org.apache.struts2.dispatcher.FilterDispatcher.doFilter 
> (FilterDispatcher.java:413) 
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
> (ApplicationFilterChain.java:215) 
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter 
> (ApplicationFilterChain.java:188) 
>         at org.apache.catalina.core.StandardWrapperValve.invoke 
> (StandardWrapperValve.java:210) 
>         at org.apache.catalina.core.StandardContextValve.invoke 
> (StandardContextValve.java:174) 
>         at org.apache.catalina.core.StandardHostValve.invoke 
> (StandardHostValve.java:127) 
>         at org.apache.catalina.valves.ErrorReportValve.invoke 
> (ErrorReportValve.java:117) 
>         at org.apache.catalina.core.StandardEngineValve.invoke 
> (StandardEngineValve.java:108) 
>         at org.apache.catalina.connector.CoyoteAdapter.service 
> (CoyoteAdapter.java:151) 
>         at org.apache.coyote.http11.Http11Processor.process 
> (Http11Processor.java:870) 
>         at org.apache.coyote.http11.Http11BaseProtocol 
> $Http11ConnectionHandler.processConnection(Http11BaseProtocol.java: 
> 665) 
>         at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket 
> (PoolTcpEndpoint.java:528) 
>         at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt 
> (LeaderFollowerWorkerThread.java:81) 
>         at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run 
> (ThreadPool.java:685) 
>         at java.lang.Thread.run(Thread.java:619) 
> Caused by: javax.xml.bind.UnmarshalException 
> - with linked exception: 
> [com.ctc.wstx.exc.WstxParsingException: Unexpected close tag </ 
> ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148]] 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.handleStreamExcep­tion 
> (UnmarshallerImpl.java:426) 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
> (UnmarshallerImpl.java:362) 
>         at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal 
> (UnmarshallerImpl.java:339) 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:607) 
>         ... 29 more 
> Caused by: com.ctc.wstx.exc.WstxParsingException: Unexpected close tag 
> </ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148] 
>         at com.ctc.wstx.sr.StreamScanner.constructWfcException 
> (StreamScanner.java:630) 
>         at com.ctc.wstx.sr.StreamScanner.throwParseError(StreamScanner.java: 
> 461) 
>         at com.ctc.wstx.sr.BasicStreamReader.reportWrongEndElem 
> (BasicStreamReader.java:3256) 
>         at com.ctc.wstx.sr.BasicStreamReader.readEndElem 
> (BasicStreamReader.java:3198) 
>         at com.ctc.wstx.sr.BasicStreamReader.nextFromTree 
> (BasicStreamReader.java:2830) 
>         at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java: 
> 1019) 
>         at org.apache.cxf.staxutils.DepthXMLStreamReader.next 
> (DepthXMLStreamReader.java:220) 
>         at com.sun.xml.bind.v2.runtime.unmarshaller.StAXStreamConnector.bridge 
> (StAXStreamConnector.java:225) 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
> (UnmarshallerImpl.java:360) 
>         ... 31 more 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (CXF-2215) can't use non-English character parameter, soap encoding are not consistent

Posted by "dingweilong (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CXF-2215?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12709247#action_12709247 ] 

dingweilong commented on CXF-2215:
----------------------------------

Thanks for your reply.
I don't think the jvm encoding setting is working. Because of messages'  encoding is GB2312.
Where can the encoding be set? 


> can't use  non-English character parameter, soap encoding are not consistent
> ----------------------------------------------------------------------------
>
>                 Key: CXF-2215
>                 URL: https://issues.apache.org/jira/browse/CXF-2215
>             Project: CXF
>          Issue Type: Bug
>    Affects Versions: 2.2
>         Environment: windows xp, tomcat 6.0.18
>            Reporter: dingweilong
>            Priority: Critical
>
> I have use cxf 2.2 to publish a web service in tomcat 6, the only operation in which is 
> public java.lang.String greetMe( String name);
> when invoke with a parameter in Chinese value, i couldn't get my result. 
> I use log interceptor to get the log below, you see the encoding and the charset is not consistent
> I track the source code, and see the error when unmarshall invoked.
> you can see the inbound message is parsed allright, but the outbound message is not, error  occurs.
> I have test there're no problem when i use English parameter.
> who can tell me the reason and fix the problem, thanks!
> Inbound Message 
> ---------------------------- 
> Encoding: GB2312 
> Content-Type: text/xml; charset=UTF-8 
> Headers: {cache-control=[no-cache], content-type=[text/xml; 
> charset=UTF-8], connection=[keep-alive], host=[10.61.0.90:8080], 
> content-length=[182], SOAPAction=[""], user-agent=[Apache CXF 2.2], 
> Accept=[*/*], pragma=[no-cache]} 
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
> envelope/"> <soap:Body> <ns2:greetMe xmlns:ns2="http://cxf/"> <arg0>测试 </ 
> arg0> </ns2:greetMe> </soap:Body> </soap:Envelope> 
> Outbound Message 
> --------------------------- 
> Encoding: GB2312 
> Content-Type: text/xml 
> Headers: {} 
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
> envelope/"> <soap:Body> <soap:Fault> <faultcode>soap:Client </ 
> faultcode> <faultstring>Unmarshalling Error: Unexpected close tag &lt;/ 
> ns2:greetMe>; expected &lt;/arg0>.&#xd; 
> at [row,col {unknown-source}]: [1,148] </faultstring> </soap:Fault> </ 
> soap:Body> </soap:Envelope> 
> and the exception is below:
> Interceptor has thrown exception, unwinding now 
> org.apache.cxf.interceptor.Fault: Unmarshalling Error: Unexpected 
> close tag </ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148] 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:622) 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:527) 
>         at org.apache.cxf.jaxb.io.DataReaderImpl.read(DataReaderImpl.java: 
> 108) 
>         at org.apache.cxf.interceptor.DocLiteralInInterceptor.handleMessage 
> (DocLiteralInInterceptor.java:102) 
>         at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept 
> (PhaseInterceptorChain.java:236) 
>         at org.apache.cxf.transport.ChainInitiationObserver.onMessage 
> (ChainInitiationObserver.java:89) 
>         at org.apache.cxf.transport.servlet.ServletDestination.invoke 
> (ServletDestination.java:99) 
>         at 
> org.apache.cxf.transport.servlet.ServletController.invokeDestination 
> (ServletController.java:337) 
>         at org.apache.cxf.transport.servlet.ServletController.invoke 
> (ServletController.java:182) 
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke 
> (AbstractCXFServlet.java:163) 
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.doPost 
> (AbstractCXFServlet.java:141) 
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) 
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) 
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
> (ApplicationFilterChain.java:269) 
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter 
> (ApplicationFilterChain.java:188) 
>         at org.apache.struts2.dispatcher.FilterDispatcher.doFilter 
> (FilterDispatcher.java:413) 
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
> (ApplicationFilterChain.java:215) 
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter 
> (ApplicationFilterChain.java:188) 
>         at org.apache.catalina.core.StandardWrapperValve.invoke 
> (StandardWrapperValve.java:210) 
>         at org.apache.catalina.core.StandardContextValve.invoke 
> (StandardContextValve.java:174) 
>         at org.apache.catalina.core.StandardHostValve.invoke 
> (StandardHostValve.java:127) 
>         at org.apache.catalina.valves.ErrorReportValve.invoke 
> (ErrorReportValve.java:117) 
>         at org.apache.catalina.core.StandardEngineValve.invoke 
> (StandardEngineValve.java:108) 
>         at org.apache.catalina.connector.CoyoteAdapter.service 
> (CoyoteAdapter.java:151) 
>         at org.apache.coyote.http11.Http11Processor.process 
> (Http11Processor.java:870) 
>         at org.apache.coyote.http11.Http11BaseProtocol 
> $Http11ConnectionHandler.processConnection(Http11BaseProtocol.java: 
> 665) 
>         at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket 
> (PoolTcpEndpoint.java:528) 
>         at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt 
> (LeaderFollowerWorkerThread.java:81) 
>         at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run 
> (ThreadPool.java:685) 
>         at java.lang.Thread.run(Thread.java:619) 
> Caused by: javax.xml.bind.UnmarshalException 
> - with linked exception: 
> [com.ctc.wstx.exc.WstxParsingException: Unexpected close tag </ 
> ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148]] 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.handleStreamExcep­tion 
> (UnmarshallerImpl.java:426) 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
> (UnmarshallerImpl.java:362) 
>         at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal 
> (UnmarshallerImpl.java:339) 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:607) 
>         ... 29 more 
> Caused by: com.ctc.wstx.exc.WstxParsingException: Unexpected close tag 
> </ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148] 
>         at com.ctc.wstx.sr.StreamScanner.constructWfcException 
> (StreamScanner.java:630) 
>         at com.ctc.wstx.sr.StreamScanner.throwParseError(StreamScanner.java: 
> 461) 
>         at com.ctc.wstx.sr.BasicStreamReader.reportWrongEndElem 
> (BasicStreamReader.java:3256) 
>         at com.ctc.wstx.sr.BasicStreamReader.readEndElem 
> (BasicStreamReader.java:3198) 
>         at com.ctc.wstx.sr.BasicStreamReader.nextFromTree 
> (BasicStreamReader.java:2830) 
>         at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java: 
> 1019) 
>         at org.apache.cxf.staxutils.DepthXMLStreamReader.next 
> (DepthXMLStreamReader.java:220) 
>         at com.sun.xml.bind.v2.runtime.unmarshaller.StAXStreamConnector.bridge 
> (StAXStreamConnector.java:225) 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
> (UnmarshallerImpl.java:360) 
>         ... 31 more 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Resolved: (CXF-2215) can't use non-English character parameter, soap encoding are not consistent

Posted by "DingWeilong (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CXF-2215?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

DingWeilong resolved CXF-2215.
------------------------------

    Resolution: Fixed

I've resovled my problem.
In my Web project, there is Struts2 configuration in web.xml as a filter

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
	http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">

	<listener>
		<listener-class>
			org.springframework.web.context.ContextLoaderListener
		</listener-class>
	</listener>

	<context-param>
		<param-name>contextConfigLocation</param-name>
		<param-value>
			bean.xml,WEB-INF/classes/Struts2_context.xml,WEB-INF/classes/dwr_context.xml,WEB-INF/classes/services.xml</param-value>
	</context-param>


	
	<!-- Strurts2 配置 -->
	<filter>
		<filter-name>struts2</filter-name>
		<filter-class>
			org.apache.struts2.dispatcher.FilterDispatcher
		</filter-class>
	</filter>

	<filter-mapping>
		<filter-name>struts2</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>


	<!-- DWR 配置 -->
	<servlet>
		<servlet-name>dwr</servlet-name>
		<servlet-class>
			org.directwebremoting.spring.DwrSpringServlet
		</servlet-class>
		<init-param>
			<param-name>debug</param-name>
			<param-value>true</param-value>
		</init-param>
		<load-on-startup>1</load-on-startup>
	</servlet>
	<servlet-mapping>
		<servlet-name>dwr</servlet-name>
		<url-pattern>/dwr/*</url-pattern>
	</servlet-mapping>
	
	
	<!-- CXF 配置 -->
	<servlet>
		<servlet-name>CXFServlet</servlet-name>
		<servlet-class>
			org.apache.cxf.transport.servlet.CXFServlet
		</servlet-class>
	</servlet>

	<servlet-mapping>
		<servlet-name>CXFServlet</servlet-name>
		<url-pattern>/services/*</url-pattern>
	</servlet-mapping>


</web-app>

and there is a struts.properties config file, where I write in one line as follow:
struts.i18n.encoding=GB2312
I refer some articles about about struts.i18n.encoding, 
find that this property set the CharacterEncoding of request AND response.

So my the problem is clear now. I should do some modifications about my struts config file. And I did, so it works!

By the way, if the struts.i18n.encoding property is not set in the struts.xml, the default encoding will be the JVM encoding( for example , GBK in my environement ), but only UTF-8 can work well in unmarshall process by CXF. I think we should be attentive when we use non-English character in parameters of CXF Web Service.


In addition, THANK you ALL for your paient answers in time. I appreciate so much all the work in this active community!



> can't use  non-English character parameter, soap encoding are not consistent
> ----------------------------------------------------------------------------
>
>                 Key: CXF-2215
>                 URL: https://issues.apache.org/jira/browse/CXF-2215
>             Project: CXF
>          Issue Type: Bug
>    Affects Versions: 2.2
>         Environment: windows xp, tomcat 6.0.18
>            Reporter: DingWeilong
>            Priority: Critical
>
> I have use cxf 2.2 to publish a web service in tomcat 6, the only operation in which is 
> public java.lang.String greetMe( String name);
> when invoke with a parameter in Chinese value, i couldn't get my result. 
> I use log interceptor to get the log below, you see the encoding and the charset is not consistent
> I track the source code, and see the error when unmarshall invoked.
> you can see the inbound message is parsed allright, but the outbound message is not, error  occurs.
> I have test there're no problem when i use English parameter.
> who can tell me the reason and fix the problem, thanks!
> Inbound Message 
> ---------------------------- 
> Encoding: GB2312 
> Content-Type: text/xml; charset=UTF-8 
> Headers: {cache-control=[no-cache], content-type=[text/xml; 
> charset=UTF-8], connection=[keep-alive], host=[10.61.0.90:8080], 
> content-length=[182], SOAPAction=[""], user-agent=[Apache CXF 2.2], 
> Accept=[*/*], pragma=[no-cache]} 
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
> envelope/"> <soap:Body> <ns2:greetMe xmlns:ns2="http://cxf/"> <arg0>测试 </ 
> arg0> </ns2:greetMe> </soap:Body> </soap:Envelope> 
> Outbound Message 
> --------------------------- 
> Encoding: GB2312 
> Content-Type: text/xml 
> Headers: {} 
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
> envelope/"> <soap:Body> <soap:Fault> <faultcode>soap:Client </ 
> faultcode> <faultstring>Unmarshalling Error: Unexpected close tag &lt;/ 
> ns2:greetMe>; expected &lt;/arg0>.&#xd; 
> at [row,col {unknown-source}]: [1,148] </faultstring> </soap:Fault> </ 
> soap:Body> </soap:Envelope> 
> and the exception is below:
> Interceptor has thrown exception, unwinding now 
> org.apache.cxf.interceptor.Fault: Unmarshalling Error: Unexpected 
> close tag </ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148] 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:622) 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:527) 
>         at org.apache.cxf.jaxb.io.DataReaderImpl.read(DataReaderImpl.java: 
> 108) 
>         at org.apache.cxf.interceptor.DocLiteralInInterceptor.handleMessage 
> (DocLiteralInInterceptor.java:102) 
>         at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept 
> (PhaseInterceptorChain.java:236) 
>         at org.apache.cxf.transport.ChainInitiationObserver.onMessage 
> (ChainInitiationObserver.java:89) 
>         at org.apache.cxf.transport.servlet.ServletDestination.invoke 
> (ServletDestination.java:99) 
>         at 
> org.apache.cxf.transport.servlet.ServletController.invokeDestination 
> (ServletController.java:337) 
>         at org.apache.cxf.transport.servlet.ServletController.invoke 
> (ServletController.java:182) 
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke 
> (AbstractCXFServlet.java:163) 
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.doPost 
> (AbstractCXFServlet.java:141) 
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) 
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) 
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
> (ApplicationFilterChain.java:269) 
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter 
> (ApplicationFilterChain.java:188) 
>         at org.apache.struts2.dispatcher.FilterDispatcher.doFilter 
> (FilterDispatcher.java:413) 
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
> (ApplicationFilterChain.java:215) 
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter 
> (ApplicationFilterChain.java:188) 
>         at org.apache.catalina.core.StandardWrapperValve.invoke 
> (StandardWrapperValve.java:210) 
>         at org.apache.catalina.core.StandardContextValve.invoke 
> (StandardContextValve.java:174) 
>         at org.apache.catalina.core.StandardHostValve.invoke 
> (StandardHostValve.java:127) 
>         at org.apache.catalina.valves.ErrorReportValve.invoke 
> (ErrorReportValve.java:117) 
>         at org.apache.catalina.core.StandardEngineValve.invoke 
> (StandardEngineValve.java:108) 
>         at org.apache.catalina.connector.CoyoteAdapter.service 
> (CoyoteAdapter.java:151) 
>         at org.apache.coyote.http11.Http11Processor.process 
> (Http11Processor.java:870) 
>         at org.apache.coyote.http11.Http11BaseProtocol 
> $Http11ConnectionHandler.processConnection(Http11BaseProtocol.java: 
> 665) 
>         at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket 
> (PoolTcpEndpoint.java:528) 
>         at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt 
> (LeaderFollowerWorkerThread.java:81) 
>         at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run 
> (ThreadPool.java:685) 
>         at java.lang.Thread.run(Thread.java:619) 
> Caused by: javax.xml.bind.UnmarshalException 
> - with linked exception: 
> [com.ctc.wstx.exc.WstxParsingException: Unexpected close tag </ 
> ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148]] 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.handleStreamExcep­tion 
> (UnmarshallerImpl.java:426) 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
> (UnmarshallerImpl.java:362) 
>         at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal 
> (UnmarshallerImpl.java:339) 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:607) 
>         ... 29 more 
> Caused by: com.ctc.wstx.exc.WstxParsingException: Unexpected close tag 
> </ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148] 
>         at com.ctc.wstx.sr.StreamScanner.constructWfcException 
> (StreamScanner.java:630) 
>         at com.ctc.wstx.sr.StreamScanner.throwParseError(StreamScanner.java: 
> 461) 
>         at com.ctc.wstx.sr.BasicStreamReader.reportWrongEndElem 
> (BasicStreamReader.java:3256) 
>         at com.ctc.wstx.sr.BasicStreamReader.readEndElem 
> (BasicStreamReader.java:3198) 
>         at com.ctc.wstx.sr.BasicStreamReader.nextFromTree 
> (BasicStreamReader.java:2830) 
>         at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java: 
> 1019) 
>         at org.apache.cxf.staxutils.DepthXMLStreamReader.next 
> (DepthXMLStreamReader.java:220) 
>         at com.sun.xml.bind.v2.runtime.unmarshaller.StAXStreamConnector.bridge 
> (StAXStreamConnector.java:225) 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
> (UnmarshallerImpl.java:360) 
>         ... 31 more 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (CXF-2215) can't use non-English character parameter, soap encoding are not consistent

Posted by "Benson Margulies (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CXF-2215?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12709365#action_12709365 ] 

Benson Margulies commented on CXF-2215:
---------------------------------------

Generally, it cannot be set. We don't know yet why it is GB2312 for you and not UTF-8. I've tried some experiments.

Again, I think a full test case is needed here. I need to know your full classpath and I need to be able to reproduce the problem.


> can't use  non-English character parameter, soap encoding are not consistent
> ----------------------------------------------------------------------------
>
>                 Key: CXF-2215
>                 URL: https://issues.apache.org/jira/browse/CXF-2215
>             Project: CXF
>          Issue Type: Bug
>    Affects Versions: 2.2
>         Environment: windows xp, tomcat 6.0.18
>            Reporter: DingWeilong
>            Priority: Critical
>
> I have use cxf 2.2 to publish a web service in tomcat 6, the only operation in which is 
> public java.lang.String greetMe( String name);
> when invoke with a parameter in Chinese value, i couldn't get my result. 
> I use log interceptor to get the log below, you see the encoding and the charset is not consistent
> I track the source code, and see the error when unmarshall invoked.
> you can see the inbound message is parsed allright, but the outbound message is not, error  occurs.
> I have test there're no problem when i use English parameter.
> who can tell me the reason and fix the problem, thanks!
> Inbound Message 
> ---------------------------- 
> Encoding: GB2312 
> Content-Type: text/xml; charset=UTF-8 
> Headers: {cache-control=[no-cache], content-type=[text/xml; 
> charset=UTF-8], connection=[keep-alive], host=[10.61.0.90:8080], 
> content-length=[182], SOAPAction=[""], user-agent=[Apache CXF 2.2], 
> Accept=[*/*], pragma=[no-cache]} 
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
> envelope/"> <soap:Body> <ns2:greetMe xmlns:ns2="http://cxf/"> <arg0>测试 </ 
> arg0> </ns2:greetMe> </soap:Body> </soap:Envelope> 
> Outbound Message 
> --------------------------- 
> Encoding: GB2312 
> Content-Type: text/xml 
> Headers: {} 
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
> envelope/"> <soap:Body> <soap:Fault> <faultcode>soap:Client </ 
> faultcode> <faultstring>Unmarshalling Error: Unexpected close tag &lt;/ 
> ns2:greetMe>; expected &lt;/arg0>.&#xd; 
> at [row,col {unknown-source}]: [1,148] </faultstring> </soap:Fault> </ 
> soap:Body> </soap:Envelope> 
> and the exception is below:
> Interceptor has thrown exception, unwinding now 
> org.apache.cxf.interceptor.Fault: Unmarshalling Error: Unexpected 
> close tag </ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148] 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:622) 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:527) 
>         at org.apache.cxf.jaxb.io.DataReaderImpl.read(DataReaderImpl.java: 
> 108) 
>         at org.apache.cxf.interceptor.DocLiteralInInterceptor.handleMessage 
> (DocLiteralInInterceptor.java:102) 
>         at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept 
> (PhaseInterceptorChain.java:236) 
>         at org.apache.cxf.transport.ChainInitiationObserver.onMessage 
> (ChainInitiationObserver.java:89) 
>         at org.apache.cxf.transport.servlet.ServletDestination.invoke 
> (ServletDestination.java:99) 
>         at 
> org.apache.cxf.transport.servlet.ServletController.invokeDestination 
> (ServletController.java:337) 
>         at org.apache.cxf.transport.servlet.ServletController.invoke 
> (ServletController.java:182) 
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke 
> (AbstractCXFServlet.java:163) 
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.doPost 
> (AbstractCXFServlet.java:141) 
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) 
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) 
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
> (ApplicationFilterChain.java:269) 
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter 
> (ApplicationFilterChain.java:188) 
>         at org.apache.struts2.dispatcher.FilterDispatcher.doFilter 
> (FilterDispatcher.java:413) 
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
> (ApplicationFilterChain.java:215) 
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter 
> (ApplicationFilterChain.java:188) 
>         at org.apache.catalina.core.StandardWrapperValve.invoke 
> (StandardWrapperValve.java:210) 
>         at org.apache.catalina.core.StandardContextValve.invoke 
> (StandardContextValve.java:174) 
>         at org.apache.catalina.core.StandardHostValve.invoke 
> (StandardHostValve.java:127) 
>         at org.apache.catalina.valves.ErrorReportValve.invoke 
> (ErrorReportValve.java:117) 
>         at org.apache.catalina.core.StandardEngineValve.invoke 
> (StandardEngineValve.java:108) 
>         at org.apache.catalina.connector.CoyoteAdapter.service 
> (CoyoteAdapter.java:151) 
>         at org.apache.coyote.http11.Http11Processor.process 
> (Http11Processor.java:870) 
>         at org.apache.coyote.http11.Http11BaseProtocol 
> $Http11ConnectionHandler.processConnection(Http11BaseProtocol.java: 
> 665) 
>         at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket 
> (PoolTcpEndpoint.java:528) 
>         at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt 
> (LeaderFollowerWorkerThread.java:81) 
>         at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run 
> (ThreadPool.java:685) 
>         at java.lang.Thread.run(Thread.java:619) 
> Caused by: javax.xml.bind.UnmarshalException 
> - with linked exception: 
> [com.ctc.wstx.exc.WstxParsingException: Unexpected close tag </ 
> ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148]] 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.handleStreamExcep­tion 
> (UnmarshallerImpl.java:426) 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
> (UnmarshallerImpl.java:362) 
>         at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal 
> (UnmarshallerImpl.java:339) 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:607) 
>         ... 29 more 
> Caused by: com.ctc.wstx.exc.WstxParsingException: Unexpected close tag 
> </ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148] 
>         at com.ctc.wstx.sr.StreamScanner.constructWfcException 
> (StreamScanner.java:630) 
>         at com.ctc.wstx.sr.StreamScanner.throwParseError(StreamScanner.java: 
> 461) 
>         at com.ctc.wstx.sr.BasicStreamReader.reportWrongEndElem 
> (BasicStreamReader.java:3256) 
>         at com.ctc.wstx.sr.BasicStreamReader.readEndElem 
> (BasicStreamReader.java:3198) 
>         at com.ctc.wstx.sr.BasicStreamReader.nextFromTree 
> (BasicStreamReader.java:2830) 
>         at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java: 
> 1019) 
>         at org.apache.cxf.staxutils.DepthXMLStreamReader.next 
> (DepthXMLStreamReader.java:220) 
>         at com.sun.xml.bind.v2.runtime.unmarshaller.StAXStreamConnector.bridge 
> (StAXStreamConnector.java:225) 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
> (UnmarshallerImpl.java:360) 
>         ... 31 more 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (CXF-2215) can't use non-English character parameter, soap encoding are not consistent

Posted by "dingweilong (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CXF-2215?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12708730#action_12708730 ] 

dingweilong commented on CXF-2215:
----------------------------------

The service is published by Tomcat 6 container

the web.xml is shown below:

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
	http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">

	<listener>
		<listener-class>
			org.springframework.web.context.ContextLoaderListener
		</listener-class>
	</listener>

	<context-param>
		<param-name>contextConfigLocation</param-name>
		<param-value>
			bean.xml,WEB-INF/classes/services.xml</param-value>
	</context-param>


	<servlet>
		<servlet-name>CXFServlet</servlet-name>
		<servlet-class>
			org.apache.cxf.transport.servlet.CXFServlet
		</servlet-class>
	</servlet>

	<servlet-mapping>
		<servlet-name>CXFServlet</servlet-name>
		<url-pattern>/services/*</url-pattern>
	</servlet-mapping>


</web-app>

the cxf config file service.xml in Spring is shown below:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns:jaxws="http://cxf.apache.org/jaxws"
	xsi:schemaLocation="
	http://www.springframework.org/schema/beans 
	http://www.springframework.org/schema/beans/spring-beans.xsd
	http://cxf.apache.org/jaxws 
	http://cxf.apache.org/schemas/jaxws.xsd">

	<import resource="classpath:META-INF/cxf/cxf.xml" />
	<import resource="classpath:META-INF/cxf/cxf-extension-soap.xml" />
	<import resource="classpath:META-INF/cxf/cxf-servlet.xml" />
	<import resource="classpath:META-INF/cxf/cxf-extension-http-binding.xml"/>
	

	<bean id="CXFGreeter" class="cxf.CXFGreeter"></bean>

	<bean id="LoggingInInterceptor"
		class="org.apache.cxf.interceptor.LoggingInInterceptor" />

	<bean id="LoggingOutInterceptor"
		class="org.apache.cxf.interceptor.LoggingOutInterceptor" />

	<jaxws:endpoint id="CXFGreeterService" implementor="#CXFGreeter"
		address="/Greeter">

		<jaxws:features>
			<bean class="org.apache.cxf.feature.LoggingFeature" />
		</jaxws:features>
	</jaxws:endpoint>

</beans>


by the way, i find the properties in Java environment , there're 2 properties related the encoding:
sun.jnu.encoding=GBK
file.encoding=GBK

but none of them is GB2312, I was so CONFUSED!


> can't use  non-English character parameter, soap encoding are not consistent
> ----------------------------------------------------------------------------
>
>                 Key: CXF-2215
>                 URL: https://issues.apache.org/jira/browse/CXF-2215
>             Project: CXF
>          Issue Type: Bug
>    Affects Versions: 2.2
>         Environment: windows xp, tomcat 6.0.18
>            Reporter: dingweilong
>            Priority: Critical
>
> I have use cxf 2.2 to publish a web service in tomcat 6, the only operation in which is 
> public java.lang.String greetMe( String name);
> when invoke with a parameter in Chinese value, i couldn't get my result. 
> I use log interceptor to get the log below, you see the encoding and the charset is not consistent
> I track the source code, and see the error when unmarshall invoked.
> you can see the inbound message is parsed allright, but the outbound message is not, error  occurs.
> I have test there're no problem when i use English parameter.
> who can tell me the reason and fix the problem, thanks!
> Inbound Message 
> ---------------------------- 
> Encoding: GB2312 
> Content-Type: text/xml; charset=UTF-8 
> Headers: {cache-control=[no-cache], content-type=[text/xml; 
> charset=UTF-8], connection=[keep-alive], host=[10.61.0.90:8080], 
> content-length=[182], SOAPAction=[""], user-agent=[Apache CXF 2.2], 
> Accept=[*/*], pragma=[no-cache]} 
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
> envelope/"> <soap:Body> <ns2:greetMe xmlns:ns2="http://cxf/"> <arg0>测试 </ 
> arg0> </ns2:greetMe> </soap:Body> </soap:Envelope> 
> Outbound Message 
> --------------------------- 
> Encoding: GB2312 
> Content-Type: text/xml 
> Headers: {} 
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
> envelope/"> <soap:Body> <soap:Fault> <faultcode>soap:Client </ 
> faultcode> <faultstring>Unmarshalling Error: Unexpected close tag &lt;/ 
> ns2:greetMe>; expected &lt;/arg0>.&#xd; 
> at [row,col {unknown-source}]: [1,148] </faultstring> </soap:Fault> </ 
> soap:Body> </soap:Envelope> 
> and the exception is below:
> Interceptor has thrown exception, unwinding now 
> org.apache.cxf.interceptor.Fault: Unmarshalling Error: Unexpected 
> close tag </ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148] 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:622) 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:527) 
>         at org.apache.cxf.jaxb.io.DataReaderImpl.read(DataReaderImpl.java: 
> 108) 
>         at org.apache.cxf.interceptor.DocLiteralInInterceptor.handleMessage 
> (DocLiteralInInterceptor.java:102) 
>         at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept 
> (PhaseInterceptorChain.java:236) 
>         at org.apache.cxf.transport.ChainInitiationObserver.onMessage 
> (ChainInitiationObserver.java:89) 
>         at org.apache.cxf.transport.servlet.ServletDestination.invoke 
> (ServletDestination.java:99) 
>         at 
> org.apache.cxf.transport.servlet.ServletController.invokeDestination 
> (ServletController.java:337) 
>         at org.apache.cxf.transport.servlet.ServletController.invoke 
> (ServletController.java:182) 
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke 
> (AbstractCXFServlet.java:163) 
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.doPost 
> (AbstractCXFServlet.java:141) 
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) 
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) 
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
> (ApplicationFilterChain.java:269) 
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter 
> (ApplicationFilterChain.java:188) 
>         at org.apache.struts2.dispatcher.FilterDispatcher.doFilter 
> (FilterDispatcher.java:413) 
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
> (ApplicationFilterChain.java:215) 
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter 
> (ApplicationFilterChain.java:188) 
>         at org.apache.catalina.core.StandardWrapperValve.invoke 
> (StandardWrapperValve.java:210) 
>         at org.apache.catalina.core.StandardContextValve.invoke 
> (StandardContextValve.java:174) 
>         at org.apache.catalina.core.StandardHostValve.invoke 
> (StandardHostValve.java:127) 
>         at org.apache.catalina.valves.ErrorReportValve.invoke 
> (ErrorReportValve.java:117) 
>         at org.apache.catalina.core.StandardEngineValve.invoke 
> (StandardEngineValve.java:108) 
>         at org.apache.catalina.connector.CoyoteAdapter.service 
> (CoyoteAdapter.java:151) 
>         at org.apache.coyote.http11.Http11Processor.process 
> (Http11Processor.java:870) 
>         at org.apache.coyote.http11.Http11BaseProtocol 
> $Http11ConnectionHandler.processConnection(Http11BaseProtocol.java: 
> 665) 
>         at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket 
> (PoolTcpEndpoint.java:528) 
>         at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt 
> (LeaderFollowerWorkerThread.java:81) 
>         at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run 
> (ThreadPool.java:685) 
>         at java.lang.Thread.run(Thread.java:619) 
> Caused by: javax.xml.bind.UnmarshalException 
> - with linked exception: 
> [com.ctc.wstx.exc.WstxParsingException: Unexpected close tag </ 
> ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148]] 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.handleStreamExcep­tion 
> (UnmarshallerImpl.java:426) 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
> (UnmarshallerImpl.java:362) 
>         at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal 
> (UnmarshallerImpl.java:339) 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:607) 
>         ... 29 more 
> Caused by: com.ctc.wstx.exc.WstxParsingException: Unexpected close tag 
> </ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148] 
>         at com.ctc.wstx.sr.StreamScanner.constructWfcException 
> (StreamScanner.java:630) 
>         at com.ctc.wstx.sr.StreamScanner.throwParseError(StreamScanner.java: 
> 461) 
>         at com.ctc.wstx.sr.BasicStreamReader.reportWrongEndElem 
> (BasicStreamReader.java:3256) 
>         at com.ctc.wstx.sr.BasicStreamReader.readEndElem 
> (BasicStreamReader.java:3198) 
>         at com.ctc.wstx.sr.BasicStreamReader.nextFromTree 
> (BasicStreamReader.java:2830) 
>         at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java: 
> 1019) 
>         at org.apache.cxf.staxutils.DepthXMLStreamReader.next 
> (DepthXMLStreamReader.java:220) 
>         at com.sun.xml.bind.v2.runtime.unmarshaller.StAXStreamConnector.bridge 
> (StAXStreamConnector.java:225) 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
> (UnmarshallerImpl.java:360) 
>         ... 31 more 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (CXF-2215) can't use non-English character parameter, soap encoding are not consistent

Posted by "Daniel Kulp (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CXF-2215?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12709670#action_12709670 ] 

Daniel Kulp commented on CXF-2215:
----------------------------------


I just forced a new deploy of snapshots.   Thus, in an hour or so, a new snapshot should be deployed.   It would be great if you could try it and let me know if it works out for you.

> can't use  non-English character parameter, soap encoding are not consistent
> ----------------------------------------------------------------------------
>
>                 Key: CXF-2215
>                 URL: https://issues.apache.org/jira/browse/CXF-2215
>             Project: CXF
>          Issue Type: Bug
>    Affects Versions: 2.2
>         Environment: windows xp, tomcat 6.0.18
>            Reporter: DingWeilong
>            Priority: Critical
>
> I have use cxf 2.2 to publish a web service in tomcat 6, the only operation in which is 
> public java.lang.String greetMe( String name);
> when invoke with a parameter in Chinese value, i couldn't get my result. 
> I use log interceptor to get the log below, you see the encoding and the charset is not consistent
> I track the source code, and see the error when unmarshall invoked.
> you can see the inbound message is parsed allright, but the outbound message is not, error  occurs.
> I have test there're no problem when i use English parameter.
> who can tell me the reason and fix the problem, thanks!
> Inbound Message 
> ---------------------------- 
> Encoding: GB2312 
> Content-Type: text/xml; charset=UTF-8 
> Headers: {cache-control=[no-cache], content-type=[text/xml; 
> charset=UTF-8], connection=[keep-alive], host=[10.61.0.90:8080], 
> content-length=[182], SOAPAction=[""], user-agent=[Apache CXF 2.2], 
> Accept=[*/*], pragma=[no-cache]} 
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
> envelope/"> <soap:Body> <ns2:greetMe xmlns:ns2="http://cxf/"> <arg0>测试 </ 
> arg0> </ns2:greetMe> </soap:Body> </soap:Envelope> 
> Outbound Message 
> --------------------------- 
> Encoding: GB2312 
> Content-Type: text/xml 
> Headers: {} 
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
> envelope/"> <soap:Body> <soap:Fault> <faultcode>soap:Client </ 
> faultcode> <faultstring>Unmarshalling Error: Unexpected close tag &lt;/ 
> ns2:greetMe>; expected &lt;/arg0>.&#xd; 
> at [row,col {unknown-source}]: [1,148] </faultstring> </soap:Fault> </ 
> soap:Body> </soap:Envelope> 
> and the exception is below:
> Interceptor has thrown exception, unwinding now 
> org.apache.cxf.interceptor.Fault: Unmarshalling Error: Unexpected 
> close tag </ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148] 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:622) 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:527) 
>         at org.apache.cxf.jaxb.io.DataReaderImpl.read(DataReaderImpl.java: 
> 108) 
>         at org.apache.cxf.interceptor.DocLiteralInInterceptor.handleMessage 
> (DocLiteralInInterceptor.java:102) 
>         at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept 
> (PhaseInterceptorChain.java:236) 
>         at org.apache.cxf.transport.ChainInitiationObserver.onMessage 
> (ChainInitiationObserver.java:89) 
>         at org.apache.cxf.transport.servlet.ServletDestination.invoke 
> (ServletDestination.java:99) 
>         at 
> org.apache.cxf.transport.servlet.ServletController.invokeDestination 
> (ServletController.java:337) 
>         at org.apache.cxf.transport.servlet.ServletController.invoke 
> (ServletController.java:182) 
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke 
> (AbstractCXFServlet.java:163) 
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.doPost 
> (AbstractCXFServlet.java:141) 
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) 
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) 
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
> (ApplicationFilterChain.java:269) 
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter 
> (ApplicationFilterChain.java:188) 
>         at org.apache.struts2.dispatcher.FilterDispatcher.doFilter 
> (FilterDispatcher.java:413) 
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
> (ApplicationFilterChain.java:215) 
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter 
> (ApplicationFilterChain.java:188) 
>         at org.apache.catalina.core.StandardWrapperValve.invoke 
> (StandardWrapperValve.java:210) 
>         at org.apache.catalina.core.StandardContextValve.invoke 
> (StandardContextValve.java:174) 
>         at org.apache.catalina.core.StandardHostValve.invoke 
> (StandardHostValve.java:127) 
>         at org.apache.catalina.valves.ErrorReportValve.invoke 
> (ErrorReportValve.java:117) 
>         at org.apache.catalina.core.StandardEngineValve.invoke 
> (StandardEngineValve.java:108) 
>         at org.apache.catalina.connector.CoyoteAdapter.service 
> (CoyoteAdapter.java:151) 
>         at org.apache.coyote.http11.Http11Processor.process 
> (Http11Processor.java:870) 
>         at org.apache.coyote.http11.Http11BaseProtocol 
> $Http11ConnectionHandler.processConnection(Http11BaseProtocol.java: 
> 665) 
>         at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket 
> (PoolTcpEndpoint.java:528) 
>         at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt 
> (LeaderFollowerWorkerThread.java:81) 
>         at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run 
> (ThreadPool.java:685) 
>         at java.lang.Thread.run(Thread.java:619) 
> Caused by: javax.xml.bind.UnmarshalException 
> - with linked exception: 
> [com.ctc.wstx.exc.WstxParsingException: Unexpected close tag </ 
> ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148]] 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.handleStreamExcep­tion 
> (UnmarshallerImpl.java:426) 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
> (UnmarshallerImpl.java:362) 
>         at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal 
> (UnmarshallerImpl.java:339) 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:607) 
>         ... 29 more 
> Caused by: com.ctc.wstx.exc.WstxParsingException: Unexpected close tag 
> </ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148] 
>         at com.ctc.wstx.sr.StreamScanner.constructWfcException 
> (StreamScanner.java:630) 
>         at com.ctc.wstx.sr.StreamScanner.throwParseError(StreamScanner.java: 
> 461) 
>         at com.ctc.wstx.sr.BasicStreamReader.reportWrongEndElem 
> (BasicStreamReader.java:3256) 
>         at com.ctc.wstx.sr.BasicStreamReader.readEndElem 
> (BasicStreamReader.java:3198) 
>         at com.ctc.wstx.sr.BasicStreamReader.nextFromTree 
> (BasicStreamReader.java:2830) 
>         at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java: 
> 1019) 
>         at org.apache.cxf.staxutils.DepthXMLStreamReader.next 
> (DepthXMLStreamReader.java:220) 
>         at com.sun.xml.bind.v2.runtime.unmarshaller.StAXStreamConnector.bridge 
> (StAXStreamConnector.java:225) 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
> (UnmarshallerImpl.java:360) 
>         ... 31 more 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (CXF-2215) can't use non-English character parameter, soap encoding are not consistent

Posted by "DingWeilong (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CXF-2215?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

DingWeilong updated CXF-2215:
-----------------------------

    Comment: was deleted

(was: s)

> can't use  non-English character parameter, soap encoding are not consistent
> ----------------------------------------------------------------------------
>
>                 Key: CXF-2215
>                 URL: https://issues.apache.org/jira/browse/CXF-2215
>             Project: CXF
>          Issue Type: Bug
>    Affects Versions: 2.2
>         Environment: windows xp, tomcat 6.0.18
>            Reporter: DingWeilong
>            Priority: Critical
>
> I have use cxf 2.2 to publish a web service in tomcat 6, the only operation in which is 
> public java.lang.String greetMe( String name);
> when invoke with a parameter in Chinese value, i couldn't get my result. 
> I use log interceptor to get the log below, you see the encoding and the charset is not consistent
> I track the source code, and see the error when unmarshall invoked.
> you can see the inbound message is parsed allright, but the outbound message is not, error  occurs.
> I have test there're no problem when i use English parameter.
> who can tell me the reason and fix the problem, thanks!
> Inbound Message 
> ---------------------------- 
> Encoding: GB2312 
> Content-Type: text/xml; charset=UTF-8 
> Headers: {cache-control=[no-cache], content-type=[text/xml; 
> charset=UTF-8], connection=[keep-alive], host=[10.61.0.90:8080], 
> content-length=[182], SOAPAction=[""], user-agent=[Apache CXF 2.2], 
> Accept=[*/*], pragma=[no-cache]} 
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
> envelope/"> <soap:Body> <ns2:greetMe xmlns:ns2="http://cxf/"> <arg0>测试 </ 
> arg0> </ns2:greetMe> </soap:Body> </soap:Envelope> 
> Outbound Message 
> --------------------------- 
> Encoding: GB2312 
> Content-Type: text/xml 
> Headers: {} 
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
> envelope/"> <soap:Body> <soap:Fault> <faultcode>soap:Client </ 
> faultcode> <faultstring>Unmarshalling Error: Unexpected close tag &lt;/ 
> ns2:greetMe>; expected &lt;/arg0>.&#xd; 
> at [row,col {unknown-source}]: [1,148] </faultstring> </soap:Fault> </ 
> soap:Body> </soap:Envelope> 
> and the exception is below:
> Interceptor has thrown exception, unwinding now 
> org.apache.cxf.interceptor.Fault: Unmarshalling Error: Unexpected 
> close tag </ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148] 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:622) 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:527) 
>         at org.apache.cxf.jaxb.io.DataReaderImpl.read(DataReaderImpl.java: 
> 108) 
>         at org.apache.cxf.interceptor.DocLiteralInInterceptor.handleMessage 
> (DocLiteralInInterceptor.java:102) 
>         at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept 
> (PhaseInterceptorChain.java:236) 
>         at org.apache.cxf.transport.ChainInitiationObserver.onMessage 
> (ChainInitiationObserver.java:89) 
>         at org.apache.cxf.transport.servlet.ServletDestination.invoke 
> (ServletDestination.java:99) 
>         at 
> org.apache.cxf.transport.servlet.ServletController.invokeDestination 
> (ServletController.java:337) 
>         at org.apache.cxf.transport.servlet.ServletController.invoke 
> (ServletController.java:182) 
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke 
> (AbstractCXFServlet.java:163) 
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.doPost 
> (AbstractCXFServlet.java:141) 
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) 
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) 
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
> (ApplicationFilterChain.java:269) 
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter 
> (ApplicationFilterChain.java:188) 
>         at org.apache.struts2.dispatcher.FilterDispatcher.doFilter 
> (FilterDispatcher.java:413) 
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
> (ApplicationFilterChain.java:215) 
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter 
> (ApplicationFilterChain.java:188) 
>         at org.apache.catalina.core.StandardWrapperValve.invoke 
> (StandardWrapperValve.java:210) 
>         at org.apache.catalina.core.StandardContextValve.invoke 
> (StandardContextValve.java:174) 
>         at org.apache.catalina.core.StandardHostValve.invoke 
> (StandardHostValve.java:127) 
>         at org.apache.catalina.valves.ErrorReportValve.invoke 
> (ErrorReportValve.java:117) 
>         at org.apache.catalina.core.StandardEngineValve.invoke 
> (StandardEngineValve.java:108) 
>         at org.apache.catalina.connector.CoyoteAdapter.service 
> (CoyoteAdapter.java:151) 
>         at org.apache.coyote.http11.Http11Processor.process 
> (Http11Processor.java:870) 
>         at org.apache.coyote.http11.Http11BaseProtocol 
> $Http11ConnectionHandler.processConnection(Http11BaseProtocol.java: 
> 665) 
>         at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket 
> (PoolTcpEndpoint.java:528) 
>         at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt 
> (LeaderFollowerWorkerThread.java:81) 
>         at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run 
> (ThreadPool.java:685) 
>         at java.lang.Thread.run(Thread.java:619) 
> Caused by: javax.xml.bind.UnmarshalException 
> - with linked exception: 
> [com.ctc.wstx.exc.WstxParsingException: Unexpected close tag </ 
> ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148]] 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.handleStreamExcep­tion 
> (UnmarshallerImpl.java:426) 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
> (UnmarshallerImpl.java:362) 
>         at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal 
> (UnmarshallerImpl.java:339) 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:607) 
>         ... 29 more 
> Caused by: com.ctc.wstx.exc.WstxParsingException: Unexpected close tag 
> </ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148] 
>         at com.ctc.wstx.sr.StreamScanner.constructWfcException 
> (StreamScanner.java:630) 
>         at com.ctc.wstx.sr.StreamScanner.throwParseError(StreamScanner.java: 
> 461) 
>         at com.ctc.wstx.sr.BasicStreamReader.reportWrongEndElem 
> (BasicStreamReader.java:3256) 
>         at com.ctc.wstx.sr.BasicStreamReader.readEndElem 
> (BasicStreamReader.java:3198) 
>         at com.ctc.wstx.sr.BasicStreamReader.nextFromTree 
> (BasicStreamReader.java:2830) 
>         at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java: 
> 1019) 
>         at org.apache.cxf.staxutils.DepthXMLStreamReader.next 
> (DepthXMLStreamReader.java:220) 
>         at com.sun.xml.bind.v2.runtime.unmarshaller.StAXStreamConnector.bridge 
> (StAXStreamConnector.java:225) 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
> (UnmarshallerImpl.java:360) 
>         ... 31 more 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (CXF-2215) can't use non-English character parameter, soap encoding are not consistent

Posted by "dingweilong (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CXF-2215?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

dingweilong updated CXF-2215:
-----------------------------

    Description: 
I have use cxf 2.2 to publish a web service in tomcat 6, the only operation in which is 

public java.lang.String greetMe( String name);

when invoke with a parameter in Chinese value, i couldn't get my result. 
I use log interceptor to get the log below, you see the encoding and the charset is not consistent
I track the source code, and see the error when unmarshall invoked.
you can see the inbound message is parsed allright, but the outbound message is not, error  occurs.

I have test there're no problem when i use English parameter.

who can tell me the reason and fix the problem, thanks!


Inbound Message 
---------------------------- 
Encoding: GB2312 
Content-Type: text/xml; charset=UTF-8 
Headers: {cache-control=[no-cache], content-type=[text/xml; 
charset=UTF-8], connection=[keep-alive], host=[10.61.0.90:8080], 
content-length=[182], SOAPAction=[""], user-agent=[Apache CXF 2.2], 
Accept=[*/*], pragma=[no-cache]} 
Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
envelope/"> <soap:Body> <ns2:greetMe xmlns:ns2="http://cxf/"> <arg0>测试 </ 
arg0> </ns2:greetMe> </soap:Body> </soap:Envelope> 


Outbound Message 
--------------------------- 
Encoding: GB2312 
Content-Type: text/xml 
Headers: {} 
Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
envelope/"> <soap:Body> <soap:Fault> <faultcode>soap:Client </ 
faultcode> <faultstring>Unmarshalling Error: Unexpected close tag &lt;/ 
ns2:greetMe>; expected &lt;/arg0>.&#xd; 
at [row,col {unknown-source}]: [1,148] </faultstring> </soap:Fault> </ 
soap:Body> </soap:Envelope> 


and the exception is below:
Interceptor has thrown exception, unwinding now 
org.apache.cxf.interceptor.Fault: Unmarshalling Error: Unexpected 
close tag </ns2:greetMe>; expected </arg0>. 
at [row,col {unknown-source}]: [1,148] 
        at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
(JAXBEncoderDecoder.java:622) 
        at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
(JAXBEncoderDecoder.java:527) 
        at org.apache.cxf.jaxb.io.DataReaderImpl.read(DataReaderImpl.java: 
108) 
        at org.apache.cxf.interceptor.DocLiteralInInterceptor.handleMessage 
(DocLiteralInInterceptor.java:102) 
        at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept 
(PhaseInterceptorChain.java:236) 
        at org.apache.cxf.transport.ChainInitiationObserver.onMessage 
(ChainInitiationObserver.java:89) 
        at org.apache.cxf.transport.servlet.ServletDestination.invoke 
(ServletDestination.java:99) 
        at 
org.apache.cxf.transport.servlet.ServletController.invokeDestination 
(ServletController.java:337) 
        at org.apache.cxf.transport.servlet.ServletController.invoke 
(ServletController.java:182) 
        at org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke 
(AbstractCXFServlet.java:163) 
        at org.apache.cxf.transport.servlet.AbstractCXFServlet.doPost 
(AbstractCXFServlet.java:141) 
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) 
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) 
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
(ApplicationFilterChain.java:269) 
        at org.apache.catalina.core.ApplicationFilterChain.doFilter 
(ApplicationFilterChain.java:188) 
        at org.apache.struts2.dispatcher.FilterDispatcher.doFilter 
(FilterDispatcher.java:413) 
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
(ApplicationFilterChain.java:215) 
        at org.apache.catalina.core.ApplicationFilterChain.doFilter 
(ApplicationFilterChain.java:188) 
        at org.apache.catalina.core.StandardWrapperValve.invoke 
(StandardWrapperValve.java:210) 
        at org.apache.catalina.core.StandardContextValve.invoke 
(StandardContextValve.java:174) 
        at org.apache.catalina.core.StandardHostValve.invoke 
(StandardHostValve.java:127) 
        at org.apache.catalina.valves.ErrorReportValve.invoke 
(ErrorReportValve.java:117) 
        at org.apache.catalina.core.StandardEngineValve.invoke 
(StandardEngineValve.java:108) 
        at org.apache.catalina.connector.CoyoteAdapter.service 
(CoyoteAdapter.java:151) 
        at org.apache.coyote.http11.Http11Processor.process 
(Http11Processor.java:870) 
        at org.apache.coyote.http11.Http11BaseProtocol 
$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java: 
665) 
        at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket 
(PoolTcpEndpoint.java:528) 
        at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt 
(LeaderFollowerWorkerThread.java:81) 
        at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run 
(ThreadPool.java:685) 
        at java.lang.Thread.run(Thread.java:619) 
Caused by: javax.xml.bind.UnmarshalException 
- with linked exception: 
[com.ctc.wstx.exc.WstxParsingException: Unexpected close tag </ 
ns2:greetMe>; expected </arg0>. 
at [row,col {unknown-source}]: [1,148]] 
        at 
com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.handleStreamExcep­tion 
(UnmarshallerImpl.java:426) 
        at 
com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
(UnmarshallerImpl.java:362) 
        at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal 
(UnmarshallerImpl.java:339) 
        at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
(JAXBEncoderDecoder.java:607) 
        ... 29 more 
Caused by: com.ctc.wstx.exc.WstxParsingException: Unexpected close tag 
</ns2:greetMe>; expected </arg0>. 
at [row,col {unknown-source}]: [1,148] 
        at com.ctc.wstx.sr.StreamScanner.constructWfcException 
(StreamScanner.java:630) 
        at com.ctc.wstx.sr.StreamScanner.throwParseError(StreamScanner.java: 
461) 
        at com.ctc.wstx.sr.BasicStreamReader.reportWrongEndElem 
(BasicStreamReader.java:3256) 
        at com.ctc.wstx.sr.BasicStreamReader.readEndElem 
(BasicStreamReader.java:3198) 
        at com.ctc.wstx.sr.BasicStreamReader.nextFromTree 
(BasicStreamReader.java:2830) 
        at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java: 
1019) 
        at org.apache.cxf.staxutils.DepthXMLStreamReader.next 
(DepthXMLStreamReader.java:220) 
        at com.sun.xml.bind.v2.runtime.unmarshaller.StAXStreamConnector.bridge 
(StAXStreamConnector.java:225) 
        at 
com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
(UnmarshallerImpl.java:360) 
        ... 31 more 



  was:
I have use cxf 2.2 to publish a web service in tomcat 6, the only operation in which is 

public java.lang.String greetMe( String name);

when invoke with a parameter in Chinese value, i couldn't get my result. 
I use log interceptor to get the log below, you see the encoding and the charset is not consistent

who can tell me the reason and fix the problem, thanks!


Inbound Message 
---------------------------- 
Encoding: GB2312 
Content-Type: text/xml; charset=UTF-8 
Headers: {cache-control=[no-cache], content-type=[text/xml; 
charset=UTF-8], connection=[keep-alive], host=[10.61.0.90:8080], 
content-length=[182], SOAPAction=[""], user-agent=[Apache CXF 2.2], 
Accept=[*/*], pragma=[no-cache]} 
Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
envelope/"> <soap:Body> <ns2:greetMe xmlns:ns2="http://cxf/"> <arg0>测试 </ 
arg0> </ns2:greetMe> </soap:Body> </soap:Envelope> 


Outbound Message 
--------------------------- 
Encoding: GB2312 
Content-Type: text/xml 
Headers: {} 
Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
envelope/"> <soap:Body> <soap:Fault> <faultcode>soap:Client </ 
faultcode> <faultstring>Unmarshalling Error: Unexpected close tag &lt;/ 
ns2:greetMe>; expected &lt;/arg0>.&#xd; 
at [row,col {unknown-source}]: [1,148] </faultstring> </soap:Fault> </ 
soap:Body> </soap:Envelope> 


and the exception is below:
Interceptor has thrown exception, unwinding now 
org.apache.cxf.interceptor.Fault: Unmarshalling Error: Unexpected 
close tag </ns2:greetMe>; expected </arg0>. 
at [row,col {unknown-source}]: [1,148] 
        at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
(JAXBEncoderDecoder.java:622) 
        at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
(JAXBEncoderDecoder.java:527) 
        at org.apache.cxf.jaxb.io.DataReaderImpl.read(DataReaderImpl.java: 
108) 
        at org.apache.cxf.interceptor.DocLiteralInInterceptor.handleMessage 
(DocLiteralInInterceptor.java:102) 
        at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept 
(PhaseInterceptorChain.java:236) 
        at org.apache.cxf.transport.ChainInitiationObserver.onMessage 
(ChainInitiationObserver.java:89) 
        at org.apache.cxf.transport.servlet.ServletDestination.invoke 
(ServletDestination.java:99) 
        at 
org.apache.cxf.transport.servlet.ServletController.invokeDestination 
(ServletController.java:337) 
        at org.apache.cxf.transport.servlet.ServletController.invoke 
(ServletController.java:182) 
        at org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke 
(AbstractCXFServlet.java:163) 
        at org.apache.cxf.transport.servlet.AbstractCXFServlet.doPost 
(AbstractCXFServlet.java:141) 
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) 
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) 
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
(ApplicationFilterChain.java:269) 
        at org.apache.catalina.core.ApplicationFilterChain.doFilter 
(ApplicationFilterChain.java:188) 
        at org.apache.struts2.dispatcher.FilterDispatcher.doFilter 
(FilterDispatcher.java:413) 
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
(ApplicationFilterChain.java:215) 
        at org.apache.catalina.core.ApplicationFilterChain.doFilter 
(ApplicationFilterChain.java:188) 
        at org.apache.catalina.core.StandardWrapperValve.invoke 
(StandardWrapperValve.java:210) 
        at org.apache.catalina.core.StandardContextValve.invoke 
(StandardContextValve.java:174) 
        at org.apache.catalina.core.StandardHostValve.invoke 
(StandardHostValve.java:127) 
        at org.apache.catalina.valves.ErrorReportValve.invoke 
(ErrorReportValve.java:117) 
        at org.apache.catalina.core.StandardEngineValve.invoke 
(StandardEngineValve.java:108) 
        at org.apache.catalina.connector.CoyoteAdapter.service 
(CoyoteAdapter.java:151) 
        at org.apache.coyote.http11.Http11Processor.process 
(Http11Processor.java:870) 
        at org.apache.coyote.http11.Http11BaseProtocol 
$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java: 
665) 
        at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket 
(PoolTcpEndpoint.java:528) 
        at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt 
(LeaderFollowerWorkerThread.java:81) 
        at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run 
(ThreadPool.java:685) 
        at java.lang.Thread.run(Thread.java:619) 
Caused by: javax.xml.bind.UnmarshalException 
- with linked exception: 
[com.ctc.wstx.exc.WstxParsingException: Unexpected close tag </ 
ns2:greetMe>; expected </arg0>. 
at [row,col {unknown-source}]: [1,148]] 
        at 
com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.handleStreamExcep­tion 
(UnmarshallerImpl.java:426) 
        at 
com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
(UnmarshallerImpl.java:362) 
        at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal 
(UnmarshallerImpl.java:339) 
        at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
(JAXBEncoderDecoder.java:607) 
        ... 29 more 
Caused by: com.ctc.wstx.exc.WstxParsingException: Unexpected close tag 
</ns2:greetMe>; expected </arg0>. 
at [row,col {unknown-source}]: [1,148] 
        at com.ctc.wstx.sr.StreamScanner.constructWfcException 
(StreamScanner.java:630) 
        at com.ctc.wstx.sr.StreamScanner.throwParseError(StreamScanner.java: 
461) 
        at com.ctc.wstx.sr.BasicStreamReader.reportWrongEndElem 
(BasicStreamReader.java:3256) 
        at com.ctc.wstx.sr.BasicStreamReader.readEndElem 
(BasicStreamReader.java:3198) 
        at com.ctc.wstx.sr.BasicStreamReader.nextFromTree 
(BasicStreamReader.java:2830) 
        at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java: 
1019) 
        at org.apache.cxf.staxutils.DepthXMLStreamReader.next 
(DepthXMLStreamReader.java:220) 
        at com.sun.xml.bind.v2.runtime.unmarshaller.StAXStreamConnector.bridge 
(StAXStreamConnector.java:225) 
        at 
com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
(UnmarshallerImpl.java:360) 
        ... 31 more 



        Summary: can't use  non-English character parameter, soap encoding are not consistent  (was: can't use  non-English character parameter )

> can't use  non-English character parameter, soap encoding are not consistent
> ----------------------------------------------------------------------------
>
>                 Key: CXF-2215
>                 URL: https://issues.apache.org/jira/browse/CXF-2215
>             Project: CXF
>          Issue Type: Bug
>    Affects Versions: 2.2
>         Environment: windows xp, tomcat 6.0.18
>            Reporter: dingweilong
>            Priority: Critical
>
> I have use cxf 2.2 to publish a web service in tomcat 6, the only operation in which is 
> public java.lang.String greetMe( String name);
> when invoke with a parameter in Chinese value, i couldn't get my result. 
> I use log interceptor to get the log below, you see the encoding and the charset is not consistent
> I track the source code, and see the error when unmarshall invoked.
> you can see the inbound message is parsed allright, but the outbound message is not, error  occurs.
> I have test there're no problem when i use English parameter.
> who can tell me the reason and fix the problem, thanks!
> Inbound Message 
> ---------------------------- 
> Encoding: GB2312 
> Content-Type: text/xml; charset=UTF-8 
> Headers: {cache-control=[no-cache], content-type=[text/xml; 
> charset=UTF-8], connection=[keep-alive], host=[10.61.0.90:8080], 
> content-length=[182], SOAPAction=[""], user-agent=[Apache CXF 2.2], 
> Accept=[*/*], pragma=[no-cache]} 
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
> envelope/"> <soap:Body> <ns2:greetMe xmlns:ns2="http://cxf/"> <arg0>测试 </ 
> arg0> </ns2:greetMe> </soap:Body> </soap:Envelope> 
> Outbound Message 
> --------------------------- 
> Encoding: GB2312 
> Content-Type: text/xml 
> Headers: {} 
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
> envelope/"> <soap:Body> <soap:Fault> <faultcode>soap:Client </ 
> faultcode> <faultstring>Unmarshalling Error: Unexpected close tag &lt;/ 
> ns2:greetMe>; expected &lt;/arg0>.&#xd; 
> at [row,col {unknown-source}]: [1,148] </faultstring> </soap:Fault> </ 
> soap:Body> </soap:Envelope> 
> and the exception is below:
> Interceptor has thrown exception, unwinding now 
> org.apache.cxf.interceptor.Fault: Unmarshalling Error: Unexpected 
> close tag </ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148] 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:622) 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:527) 
>         at org.apache.cxf.jaxb.io.DataReaderImpl.read(DataReaderImpl.java: 
> 108) 
>         at org.apache.cxf.interceptor.DocLiteralInInterceptor.handleMessage 
> (DocLiteralInInterceptor.java:102) 
>         at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept 
> (PhaseInterceptorChain.java:236) 
>         at org.apache.cxf.transport.ChainInitiationObserver.onMessage 
> (ChainInitiationObserver.java:89) 
>         at org.apache.cxf.transport.servlet.ServletDestination.invoke 
> (ServletDestination.java:99) 
>         at 
> org.apache.cxf.transport.servlet.ServletController.invokeDestination 
> (ServletController.java:337) 
>         at org.apache.cxf.transport.servlet.ServletController.invoke 
> (ServletController.java:182) 
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke 
> (AbstractCXFServlet.java:163) 
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.doPost 
> (AbstractCXFServlet.java:141) 
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) 
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) 
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
> (ApplicationFilterChain.java:269) 
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter 
> (ApplicationFilterChain.java:188) 
>         at org.apache.struts2.dispatcher.FilterDispatcher.doFilter 
> (FilterDispatcher.java:413) 
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
> (ApplicationFilterChain.java:215) 
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter 
> (ApplicationFilterChain.java:188) 
>         at org.apache.catalina.core.StandardWrapperValve.invoke 
> (StandardWrapperValve.java:210) 
>         at org.apache.catalina.core.StandardContextValve.invoke 
> (StandardContextValve.java:174) 
>         at org.apache.catalina.core.StandardHostValve.invoke 
> (StandardHostValve.java:127) 
>         at org.apache.catalina.valves.ErrorReportValve.invoke 
> (ErrorReportValve.java:117) 
>         at org.apache.catalina.core.StandardEngineValve.invoke 
> (StandardEngineValve.java:108) 
>         at org.apache.catalina.connector.CoyoteAdapter.service 
> (CoyoteAdapter.java:151) 
>         at org.apache.coyote.http11.Http11Processor.process 
> (Http11Processor.java:870) 
>         at org.apache.coyote.http11.Http11BaseProtocol 
> $Http11ConnectionHandler.processConnection(Http11BaseProtocol.java: 
> 665) 
>         at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket 
> (PoolTcpEndpoint.java:528) 
>         at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt 
> (LeaderFollowerWorkerThread.java:81) 
>         at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run 
> (ThreadPool.java:685) 
>         at java.lang.Thread.run(Thread.java:619) 
> Caused by: javax.xml.bind.UnmarshalException 
> - with linked exception: 
> [com.ctc.wstx.exc.WstxParsingException: Unexpected close tag </ 
> ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148]] 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.handleStreamExcep­tion 
> (UnmarshallerImpl.java:426) 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
> (UnmarshallerImpl.java:362) 
>         at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal 
> (UnmarshallerImpl.java:339) 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:607) 
>         ... 29 more 
> Caused by: com.ctc.wstx.exc.WstxParsingException: Unexpected close tag 
> </ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148] 
>         at com.ctc.wstx.sr.StreamScanner.constructWfcException 
> (StreamScanner.java:630) 
>         at com.ctc.wstx.sr.StreamScanner.throwParseError(StreamScanner.java: 
> 461) 
>         at com.ctc.wstx.sr.BasicStreamReader.reportWrongEndElem 
> (BasicStreamReader.java:3256) 
>         at com.ctc.wstx.sr.BasicStreamReader.readEndElem 
> (BasicStreamReader.java:3198) 
>         at com.ctc.wstx.sr.BasicStreamReader.nextFromTree 
> (BasicStreamReader.java:2830) 
>         at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java: 
> 1019) 
>         at org.apache.cxf.staxutils.DepthXMLStreamReader.next 
> (DepthXMLStreamReader.java:220) 
>         at com.sun.xml.bind.v2.runtime.unmarshaller.StAXStreamConnector.bridge 
> (StAXStreamConnector.java:225) 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
> (UnmarshallerImpl.java:360) 
>         ... 31 more 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (CXF-2215) can't use non-English character parameter, soap encoding are not consistent

Posted by "Daniel Kulp (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CXF-2215?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12708601#action_12708601 ] 

Daniel Kulp commented on CXF-2215:
----------------------------------


Any chance you could use wireshark or similar to get the raw bytes off the socket?   

Like Benson, I'm very curious how this could occur.   The "Content-Type"  is "text/xml; charset=UTF-8" and thus the encoding SHOULD be UTF-8.   I have no idea how it could be GB2312.   That may require you to dig in and debug the CXFServlet and figure out where that GB2312 is coming from.    


> can't use  non-English character parameter, soap encoding are not consistent
> ----------------------------------------------------------------------------
>
>                 Key: CXF-2215
>                 URL: https://issues.apache.org/jira/browse/CXF-2215
>             Project: CXF
>          Issue Type: Bug
>    Affects Versions: 2.2
>         Environment: windows xp, tomcat 6.0.18
>            Reporter: dingweilong
>            Priority: Critical
>
> I have use cxf 2.2 to publish a web service in tomcat 6, the only operation in which is 
> public java.lang.String greetMe( String name);
> when invoke with a parameter in Chinese value, i couldn't get my result. 
> I use log interceptor to get the log below, you see the encoding and the charset is not consistent
> I track the source code, and see the error when unmarshall invoked.
> you can see the inbound message is parsed allright, but the outbound message is not, error  occurs.
> I have test there're no problem when i use English parameter.
> who can tell me the reason and fix the problem, thanks!
> Inbound Message 
> ---------------------------- 
> Encoding: GB2312 
> Content-Type: text/xml; charset=UTF-8 
> Headers: {cache-control=[no-cache], content-type=[text/xml; 
> charset=UTF-8], connection=[keep-alive], host=[10.61.0.90:8080], 
> content-length=[182], SOAPAction=[""], user-agent=[Apache CXF 2.2], 
> Accept=[*/*], pragma=[no-cache]} 
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
> envelope/"> <soap:Body> <ns2:greetMe xmlns:ns2="http://cxf/"> <arg0>测试 </ 
> arg0> </ns2:greetMe> </soap:Body> </soap:Envelope> 
> Outbound Message 
> --------------------------- 
> Encoding: GB2312 
> Content-Type: text/xml 
> Headers: {} 
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
> envelope/"> <soap:Body> <soap:Fault> <faultcode>soap:Client </ 
> faultcode> <faultstring>Unmarshalling Error: Unexpected close tag &lt;/ 
> ns2:greetMe>; expected &lt;/arg0>.&#xd; 
> at [row,col {unknown-source}]: [1,148] </faultstring> </soap:Fault> </ 
> soap:Body> </soap:Envelope> 
> and the exception is below:
> Interceptor has thrown exception, unwinding now 
> org.apache.cxf.interceptor.Fault: Unmarshalling Error: Unexpected 
> close tag </ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148] 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:622) 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:527) 
>         at org.apache.cxf.jaxb.io.DataReaderImpl.read(DataReaderImpl.java: 
> 108) 
>         at org.apache.cxf.interceptor.DocLiteralInInterceptor.handleMessage 
> (DocLiteralInInterceptor.java:102) 
>         at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept 
> (PhaseInterceptorChain.java:236) 
>         at org.apache.cxf.transport.ChainInitiationObserver.onMessage 
> (ChainInitiationObserver.java:89) 
>         at org.apache.cxf.transport.servlet.ServletDestination.invoke 
> (ServletDestination.java:99) 
>         at 
> org.apache.cxf.transport.servlet.ServletController.invokeDestination 
> (ServletController.java:337) 
>         at org.apache.cxf.transport.servlet.ServletController.invoke 
> (ServletController.java:182) 
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke 
> (AbstractCXFServlet.java:163) 
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.doPost 
> (AbstractCXFServlet.java:141) 
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) 
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) 
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
> (ApplicationFilterChain.java:269) 
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter 
> (ApplicationFilterChain.java:188) 
>         at org.apache.struts2.dispatcher.FilterDispatcher.doFilter 
> (FilterDispatcher.java:413) 
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
> (ApplicationFilterChain.java:215) 
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter 
> (ApplicationFilterChain.java:188) 
>         at org.apache.catalina.core.StandardWrapperValve.invoke 
> (StandardWrapperValve.java:210) 
>         at org.apache.catalina.core.StandardContextValve.invoke 
> (StandardContextValve.java:174) 
>         at org.apache.catalina.core.StandardHostValve.invoke 
> (StandardHostValve.java:127) 
>         at org.apache.catalina.valves.ErrorReportValve.invoke 
> (ErrorReportValve.java:117) 
>         at org.apache.catalina.core.StandardEngineValve.invoke 
> (StandardEngineValve.java:108) 
>         at org.apache.catalina.connector.CoyoteAdapter.service 
> (CoyoteAdapter.java:151) 
>         at org.apache.coyote.http11.Http11Processor.process 
> (Http11Processor.java:870) 
>         at org.apache.coyote.http11.Http11BaseProtocol 
> $Http11ConnectionHandler.processConnection(Http11BaseProtocol.java: 
> 665) 
>         at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket 
> (PoolTcpEndpoint.java:528) 
>         at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt 
> (LeaderFollowerWorkerThread.java:81) 
>         at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run 
> (ThreadPool.java:685) 
>         at java.lang.Thread.run(Thread.java:619) 
> Caused by: javax.xml.bind.UnmarshalException 
> - with linked exception: 
> [com.ctc.wstx.exc.WstxParsingException: Unexpected close tag </ 
> ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148]] 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.handleStreamExcep­tion 
> (UnmarshallerImpl.java:426) 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
> (UnmarshallerImpl.java:362) 
>         at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal 
> (UnmarshallerImpl.java:339) 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:607) 
>         ... 29 more 
> Caused by: com.ctc.wstx.exc.WstxParsingException: Unexpected close tag 
> </ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148] 
>         at com.ctc.wstx.sr.StreamScanner.constructWfcException 
> (StreamScanner.java:630) 
>         at com.ctc.wstx.sr.StreamScanner.throwParseError(StreamScanner.java: 
> 461) 
>         at com.ctc.wstx.sr.BasicStreamReader.reportWrongEndElem 
> (BasicStreamReader.java:3256) 
>         at com.ctc.wstx.sr.BasicStreamReader.readEndElem 
> (BasicStreamReader.java:3198) 
>         at com.ctc.wstx.sr.BasicStreamReader.nextFromTree 
> (BasicStreamReader.java:2830) 
>         at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java: 
> 1019) 
>         at org.apache.cxf.staxutils.DepthXMLStreamReader.next 
> (DepthXMLStreamReader.java:220) 
>         at com.sun.xml.bind.v2.runtime.unmarshaller.StAXStreamConnector.bridge 
> (StAXStreamConnector.java:225) 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
> (UnmarshallerImpl.java:360) 
>         ... 31 more 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (CXF-2215) can't use non-English character parameter, soap encoding are not consistent

Posted by "Benson Margulies (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CXF-2215?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12709589#action_12709589 ] 

Benson Margulies commented on CXF-2215:
---------------------------------------

In my view, you shouldn't be able to get CXF to use an encoding other than UTF-8 without some explicit configuration -- NOT file.encoding. I suppose the http content type of a request might be respected for the response, but I'm not entirely sold.


> can't use  non-English character parameter, soap encoding are not consistent
> ----------------------------------------------------------------------------
>
>                 Key: CXF-2215
>                 URL: https://issues.apache.org/jira/browse/CXF-2215
>             Project: CXF
>          Issue Type: Bug
>    Affects Versions: 2.2
>         Environment: windows xp, tomcat 6.0.18
>            Reporter: DingWeilong
>            Priority: Critical
>
> I have use cxf 2.2 to publish a web service in tomcat 6, the only operation in which is 
> public java.lang.String greetMe( String name);
> when invoke with a parameter in Chinese value, i couldn't get my result. 
> I use log interceptor to get the log below, you see the encoding and the charset is not consistent
> I track the source code, and see the error when unmarshall invoked.
> you can see the inbound message is parsed allright, but the outbound message is not, error  occurs.
> I have test there're no problem when i use English parameter.
> who can tell me the reason and fix the problem, thanks!
> Inbound Message 
> ---------------------------- 
> Encoding: GB2312 
> Content-Type: text/xml; charset=UTF-8 
> Headers: {cache-control=[no-cache], content-type=[text/xml; 
> charset=UTF-8], connection=[keep-alive], host=[10.61.0.90:8080], 
> content-length=[182], SOAPAction=[""], user-agent=[Apache CXF 2.2], 
> Accept=[*/*], pragma=[no-cache]} 
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
> envelope/"> <soap:Body> <ns2:greetMe xmlns:ns2="http://cxf/"> <arg0>测试 </ 
> arg0> </ns2:greetMe> </soap:Body> </soap:Envelope> 
> Outbound Message 
> --------------------------- 
> Encoding: GB2312 
> Content-Type: text/xml 
> Headers: {} 
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/ 
> envelope/"> <soap:Body> <soap:Fault> <faultcode>soap:Client </ 
> faultcode> <faultstring>Unmarshalling Error: Unexpected close tag &lt;/ 
> ns2:greetMe>; expected &lt;/arg0>.&#xd; 
> at [row,col {unknown-source}]: [1,148] </faultstring> </soap:Fault> </ 
> soap:Body> </soap:Envelope> 
> and the exception is below:
> Interceptor has thrown exception, unwinding now 
> org.apache.cxf.interceptor.Fault: Unmarshalling Error: Unexpected 
> close tag </ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148] 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:622) 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:527) 
>         at org.apache.cxf.jaxb.io.DataReaderImpl.read(DataReaderImpl.java: 
> 108) 
>         at org.apache.cxf.interceptor.DocLiteralInInterceptor.handleMessage 
> (DocLiteralInInterceptor.java:102) 
>         at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept 
> (PhaseInterceptorChain.java:236) 
>         at org.apache.cxf.transport.ChainInitiationObserver.onMessage 
> (ChainInitiationObserver.java:89) 
>         at org.apache.cxf.transport.servlet.ServletDestination.invoke 
> (ServletDestination.java:99) 
>         at 
> org.apache.cxf.transport.servlet.ServletController.invokeDestination 
> (ServletController.java:337) 
>         at org.apache.cxf.transport.servlet.ServletController.invoke 
> (ServletController.java:182) 
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke 
> (AbstractCXFServlet.java:163) 
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.doPost 
> (AbstractCXFServlet.java:141) 
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) 
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) 
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
> (ApplicationFilterChain.java:269) 
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter 
> (ApplicationFilterChain.java:188) 
>         at org.apache.struts2.dispatcher.FilterDispatcher.doFilter 
> (FilterDispatcher.java:413) 
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter 
> (ApplicationFilterChain.java:215) 
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter 
> (ApplicationFilterChain.java:188) 
>         at org.apache.catalina.core.StandardWrapperValve.invoke 
> (StandardWrapperValve.java:210) 
>         at org.apache.catalina.core.StandardContextValve.invoke 
> (StandardContextValve.java:174) 
>         at org.apache.catalina.core.StandardHostValve.invoke 
> (StandardHostValve.java:127) 
>         at org.apache.catalina.valves.ErrorReportValve.invoke 
> (ErrorReportValve.java:117) 
>         at org.apache.catalina.core.StandardEngineValve.invoke 
> (StandardEngineValve.java:108) 
>         at org.apache.catalina.connector.CoyoteAdapter.service 
> (CoyoteAdapter.java:151) 
>         at org.apache.coyote.http11.Http11Processor.process 
> (Http11Processor.java:870) 
>         at org.apache.coyote.http11.Http11BaseProtocol 
> $Http11ConnectionHandler.processConnection(Http11BaseProtocol.java: 
> 665) 
>         at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket 
> (PoolTcpEndpoint.java:528) 
>         at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt 
> (LeaderFollowerWorkerThread.java:81) 
>         at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run 
> (ThreadPool.java:685) 
>         at java.lang.Thread.run(Thread.java:619) 
> Caused by: javax.xml.bind.UnmarshalException 
> - with linked exception: 
> [com.ctc.wstx.exc.WstxParsingException: Unexpected close tag </ 
> ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148]] 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.handleStreamExcep­tion 
> (UnmarshallerImpl.java:426) 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
> (UnmarshallerImpl.java:362) 
>         at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal 
> (UnmarshallerImpl.java:339) 
>         at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall 
> (JAXBEncoderDecoder.java:607) 
>         ... 29 more 
> Caused by: com.ctc.wstx.exc.WstxParsingException: Unexpected close tag 
> </ns2:greetMe>; expected </arg0>. 
> at [row,col {unknown-source}]: [1,148] 
>         at com.ctc.wstx.sr.StreamScanner.constructWfcException 
> (StreamScanner.java:630) 
>         at com.ctc.wstx.sr.StreamScanner.throwParseError(StreamScanner.java: 
> 461) 
>         at com.ctc.wstx.sr.BasicStreamReader.reportWrongEndElem 
> (BasicStreamReader.java:3256) 
>         at com.ctc.wstx.sr.BasicStreamReader.readEndElem 
> (BasicStreamReader.java:3198) 
>         at com.ctc.wstx.sr.BasicStreamReader.nextFromTree 
> (BasicStreamReader.java:2830) 
>         at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java: 
> 1019) 
>         at org.apache.cxf.staxutils.DepthXMLStreamReader.next 
> (DepthXMLStreamReader.java:220) 
>         at com.sun.xml.bind.v2.runtime.unmarshaller.StAXStreamConnector.bridge 
> (StAXStreamConnector.java:225) 
>         at 
> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0 
> (UnmarshallerImpl.java:360) 
>         ... 31 more 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.