我已经通过wscompile
. 请求可以毫无问题地构建,但是一旦发送出去,就会出现以下错误:
javax.xml.rpc.soap.SOAPFaultException: WSEC5061E: The SOAP Body is not signed.; null
at com.sun.xml.rpc.client.StreamingSender._raiseFault(StreamingSender.java:365)
at com.sun.xml.rpc.client.StreamingSender._send(StreamingSender.java:228)
该错误清楚地表明,据The SOAP Body is not signed.
我所知,这似乎是我在设置系统属性时做的不正确。以下是我设置的属性:
System.setProperty("javax.net.debug","ssl");
System.setProperty("javax.net.ssl.keyStoreType","pkcs12");
System.setProperty("javax.net.ssl.keyStore",KeystorePath);
System.setProperty("javax.net.ssl.keyStorePassword",KeystorePassword);
System.setProperty("javax.net.ssl.trustStoreType","jks");
System.setProperty("javax.net.ssl.trustStore",TrustStorePath);
System.setProperty("javax.net.ssl.trustStorePassword",TrustStorePassword);
我搜索了一些关于使用公钥或 KeyStore 对 SOAP 请求的正文进行签名的信息,但对该主题知之甚少,因此我可能正在搜索错误的关键字。
如果有人能指出任何信息或教程的方向,将不胜感激。
谢谢