使用CallbackHandler的属性中的AXIS和Spring密码

问题描述 投票:1回答:1

我有Apache Axis和Spring的问题。我在WS-Security中使用此类作为CallBackHandler来设置密码:

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");
        }
    }
}

我正在尝试在.properties中设置密码。我不能使用类路径资源,我的属性在classpath之外。这个类(PasswordCallbackHandler)在我的Spring Context之外,所以我不能使用@Valuetag。

将此密码放在属性文件中的最佳方法是哪种?我试图使用raedicomws.crypto.propertiesraedicomws_client_config.wsdd,但我无法使它工作。

spring apache axis2 ws-security
1个回答
2
投票

你可以使用System.setProperty(“key”,“value”);使用@Value注释从.yml / .properties文件获取/读取属性的方法。然后你可以使用System.getProperty(“key”)获取设置数据; Axis方法的方法。我对CXF webservice采用了相同的方法(相同的安全方法)并且它已经有效。

© www.soinside.com 2019 - 2024. All rights reserved.