[jira] [Commented] (CXF-8281) Issue with attachment Chinese file name

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[jira] [Commented] (CXF-8281) Issue with attachment Chinese file name

Andrei Shakirin (Jira)

    [ https://issues.apache.org/jira/browse/CXF-8281?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17162886#comment-17162886 ]

Colm O hEigeartaigh commented on CXF-8281:
------------------------------------------

Sorry, it must have been a problem on my end, it's working now. Please see the attached screenshot - which is a snippet from wireshark of the SOAP-UI message. As you can see it is displaying the incorrect characters. So perhaps it is not a bug in CXF at all, but a problem with SOAP UI !wireshark.png!

> Issue with  attachment Chinese file name
> ----------------------------------------
>
>                 Key: CXF-8281
>                 URL: https://issues.apache.org/jira/browse/CXF-8281
>             Project: CXF
>          Issue Type: Bug
>          Components: Bus, JAX-WS Runtime, WS-* Components
>    Affects Versions: 3.2.4
>            Reporter: Rajesh
>            Priority: Major
>         Attachments: Capture.PNG, Capture.PNG, CustomDataHandler.java, Freeman Yue Fang.url, POAttachmentInterceptor.java, POHeaderInterceptor.java, POInvokeHandler.java, POSwAInInterceptor.java, SoapRequest, Test12送货记录.pdf, attachment-soap.zip, invcreatearibaprod-container.zip, invoice-testing.rar, payloadRequest.txt, screenshot-1.png, soap ui- payload and properties .png, soapui.png, wireshark.png
>
>
> 0
> I'm using apache CXF for exposing the webservice. While reading chinese file name from upstream (SOAP UI in local), unable to read exact chinese characters. It's giving file name as '°U'°U123.pdf . I have tried with all encodings but no luck. For other English name attachments no issues, able to read properly.
> {quote}From soap ui i'm sending UTF-8 encoding , while reading in java I have used same.
>  byte[] b = attachmentName.getBytes(StandardCharsets.UTF_8);
> String attachName = new String(b, StandardCharsets.UTF_8.name());
> `Below is my interceptor code.
> {quote}
> public void handleMessage(SoapMessage message) throws Fault {
>             logger.info("Handle Message for attachments ");
>             BindingOperationInfo bop = message.getExchange().getBindingOperationInfo();  
>             if (bop == null) {
>                 return;
>             }
>             logger.info("binding info "+bop.getBinding());
>             if (bop.isUnwrapped()) {
>                 bop = bop.getWrappedOperation();
>             }
>             if (null == message.getAttachments() || message.getAttachments().isEmpty() ){
>                 return;
>             }
>             Iterator<Attachment> iter = message.getAttachments().iterator();
>             Collection<Attachment> attchments = message.getAttachments();
>             logger.info("message get attachments size   : "+attchments.size());
>              int attachmentCount=0;
>              Map<String, DataHandler> attachmentMap=   AttachmentUtil.getDHMap(attchments);
>              logger.info("Map<String, DataHandler> "+attachmentMap.size());
>             try{
>                 while (iter.hasNext()){
>                     Attachment attachment = iter.next();
>                     attachmentCount++;
>                     }
>                     }
>                     }



--
This message was sent by Atlassian Jira
(v8.3.4#803005)