Java 4 で JAX-RPC SOAP メッセージ ハンドラーを作成する必要があり、メッセージにセキュリティ ヘッダーを追加する必要があります。
現在、メッセージを送信しようとするとjava.lang.AbstractMethodError: org.apache.axis.message.SOAPHeader.addHeaderElement(Ljavax/xml/namespace/QName;)Ljavax/xml/soap/SOAPHeaderElement;
エラーが発生します。
このエラーについてオンラインで見つけることができないので、どんな助けでも大歓迎です!
私のコードは以下の通りです:
public final boolean handleRequest(MessageContext context) {
SOAPMessageContext soapContext = (SOAPMessageContext) context;
String authId = "test";
try {
SOAPMessage soapMsg = soapContext.getMessage();
SOAPEnvelope soapEnv = soapMsg.getSOAPPart().getEnvelope();
SOAPHeader soapHeader = soapEnv.getHeader();
/* If no header, add one */
if (soapHeader == null) {
soapHeader = soapEnv.addHeader();
}
/* Add a soap header, name as AUTH_ID_KEY */
QName qname = new QName(TARGET_NAMESPACE, AUTH_ID_KEY);
SOAPHeaderElement soapHeaderElement = soapHeader.addHeaderElement(qname);
soapHeaderElement.addTextNode(authId);
soapMsg.saveChanges();
} catch (SOAPException e) {
throw new ProtocolException(e);
}
return true;
}
助けてくれてありがとう!