[
https://issues.apache.org/jira/browse/CXF-8281?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17153438#comment-17153438
]
Colm O hEigeartaigh commented on CXF-8281:
------------------------------------------
I think to help I will need to reproduce the issue. Could you attach the SOAP
UI project and also a CXF service that includes your custom interceptor so that
I can see what's going on?
> Issue with attachment Chines 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: payloadRequest.txt, screenshot-1.png, soap ui- payload
> and properties .png, soapui.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)