具有CallbackHandler的属性中的AXIS和Spring密码

具有CallbackHandler的属性中的AXIS和Spring密码,spring,apache,axis2,ws-security,Spring,Apache,Axis2,Ws Security,我对ApacheAxis和Spring有问题。我在WS-Security中将此类作为CallBackHandler,用于设置pasword: public class PasswordCallbackHandler implements CallbackHandler { @Override public void handle(Callback[] callbacks) throws IOException, UnsupportedCallbackException {

我对ApacheAxis和Spring有问题。我在WS-Security中将此类作为CallBackHandler,用于设置pasword:

public class PasswordCallbackHandler implements CallbackHandler {
    @Override
    public void handle(Callback[] callbacks) throws IOException, UnsupportedCallbackException {
        for (int i = 0; i < callbacks.length; i++) {
            WSPasswordCallback pwcb = (WSPasswordCallback)callbacks[i];
            pwcb.setPassword("mysecretpassword");
        }
    }
}
公共类PasswordCallbackHandler实现CallbackHandler{
@凌驾
公共无效句柄(回调[]回调)引发IOException,UnsupportedCallbackException{
for(int i=0;i
我正在尝试在.properties中设置密码。我不能使用类路径资源,我的属性在类路径之外。这个类(
PasswordCallbackHandler
)在我的Spring上下文之外,所以我不能使用
@Value
标记


将此密码放入属性文件的最佳方式是什么?我曾尝试使用
raedicomws.crypto.properties
raedicomws\u client\u config.wsdd
,但无法使其工作。

您可以使用System.setProperty(“key”,“value”);方法,从带有@Value注释的.yml/.properties文件中获取/读取属性。 然后可以使用System.getProperty(“key”)获取设置数据;方法在您的轴上。 我对cxfwebservice也采用了同样的方法(同样的安全性方法),而且效果很好