Olá pessoal!
Estamos implementando o CC-e utilizando Axis aqui em minha empresa e enfrentei muitas dificuldades por faltar o elemento cUF no cabeçalho do envelope SOAP (rejeição é o assunto desse post).
Li bastante gente dizendo que o problema era relacionado aos namespaces (mas eu não utilizava nenhum e continuei com o problema).
Resolvi a dificuldade sobrescrevendo o método addHeader do stub!
Segue código aplicado:
protected void addHeader(OMElement omElementToadd,
SOAPEnvelope envelop,
boolean mustUnderstand){
SOAPHeaderBlock soapHeaderBlock =
envelop.getHeader().addHeaderBlock(omElementToadd.getLocalName(),omElementToadd.getNamespace());
soapHeaderBlock.setMustUnderstand(mustUnderstand);
OMNode omNode = null;
// add child elements
List<OMNode> temp = new ArrayList<OMNode>();
for (Iterator iter = omElementToadd.getChildren(); iter.hasNext();) {
omNode = (OMNode) iter.next();
temp.add(omNode);
}
for (OMNode n : temp ) {
soapHeaderBlock.addChild(n);
}
OMAttribute omatribute = null;
// add attributes
for (Iterator iter = omElementToadd.getAllAttributes(); iter.hasNext();) {
omatribute = (OMAttribute) iter.next();
soapHeaderBlock.addAttribute(omatribute);
}
}
Fonte: https://issues.apache.org/jira/browse/AXIS2-5135
[]'s
Hollywoodpanda