В целевой WebService ответ только xs:base64binary
, а JAXB не генерирует тип ответа. В моем вызове:
public Object signMessage(SigningRequestType request) {
JAXBElement<SigningRequestType> jAXBElement = new ObjectFactory().createSigningRequestType(request);
return getWebServiceTemplate().marshalSendAndReceive(jAXBElement,
new SoapActionCallback(SIGN_METHOD_ACTION));
}
возвращает Object
, и я не могу просто привести к byte[]
или сериализовать его. Как я могу извлечь результат byteArray из ответа?
UDP: Добавьте немного дополнительной информации.
ObjectFactory()
method:
@XmlElementDecl(namespace = "http://www.roskazna.ru/eb/sign/types/sgv", name = "SigningResponseType")
public JAXBElement<byte[]> createSigningResponseType(byte[] value) {
return new JAXBElement<byte[]>(_SigningResponseType_QNAME, byte[].class, null, ((byte[]) value));
}
XSD:
<xs:element name="SigningResponseType" type="cst:notEmptyB64Binary"/>