Senhores tenho meu web service :
@@Stateless
@AutoCreate
@Name
@JndiName("/local")
@WebService
public class WebServiceSOAPPart extends GenericService implements
MinhaInterfaceWebService {
@Resource
private WebServiceContext wsContext;
@WebMethod
@WebResult(name = "recibo")
public String receber(String path){
MessageContext context = wsContext.getMessageContext();
// sempre chega vazio, abaixo segue meu cliente
Map<String, DataHandler> request = (Map<String, DataHandler>) context
.get(MessageContext.INBOUND_MESSAGE_ATTACHMENTS);
Set<?> keys = request.keySet();
}
}
Porém o arquivo nunca chega no serviço abaixo meu cliente:
WebService_Service service = new WebService_Service();
WebService port = service.getWebServicePort();
((BindingProvider) port)
.getRequestContext()
.put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY,
"http://localhost:8080/WebServiceSOAPPart");
Map<String, DataHandler> attachmentsMap = new HashMap<String, DataHandler>();
DataHandler data = new DataHandler(new FileDataSource(new File(ClientSoapPart.class
.getResource("anexo.docx").getFile())));
attachmentsMap.put("anexo_processo", data);
((BindingProvider) port).getRequestContext().put(
MessageContext.OUTBOUND_MESSAGE_ATTACHMENTS, attachmentsMap);
String response = port.receber("/meu/path/");
O serviço e chamado corretamente porem sem o DataHandler , e nescessario alguma configuração ??