Клиент WS-Security: ошибка подписи SOAP

Я пытаюсь подписать сообщение SOAP в клиенте WS, сгенерированном из WSDL, с использованием оси eclipse +.

Это код:

_call.setOperation(_operations[2]);
    _call.setUseSOAPAction(true);
    _call.setSOAPActionURI("http://hostname/operation");
    _call.setEncodingStyle(null);
    _call.setProperty(org.apache.axis.client.Call.SEND_TYPE_ATTR, Boolean.FALSE);
    _call.setProperty(org.apache.axis.AxisEngine.PROP_DOMULTIREFS, Boolean.FALSE);
    _call.setSOAPVersion(org.apache.axis.soap.SOAPConstants.SOAP11_CONSTANTS);
    _call.setOperationName(new javax.xml.namespace.QName("", "EFACRECEPCIONSOBRE"));
    //Firma

    try {
        Properties configuration = new Properties();
        configuration.load(new FileInputStream(new File("C:\\trabajo\\sts-bundle\\sts-3.7.3.RELEASE\\workspace\\tmp\\securityConfiguration.properties")));
        //Handler que maneja la petición
        ClientHandler sender = new ClientHandler(configuration);
        _call.setClientHandlers(sender, null);
    } catch (Exception e) {
        e.printStackTrace();
    }
    setRequestHeaders(_call);
    setAttachments(_call);
    try {        

        java.lang.Object _resp = _call.invoke(new java.lang.Object[] {parameters});
        if (_resp instanceof java.rmi.RemoteException) {
            throw (java.rmi.RemoteException)_resp;
        }
        else {
            extractAttachments(_call);
            try {
                xxxxxxxx_resp;
            } catch (java.lang.Exception _exception) {
                xxxxxx
            }
        }
    } catch (org.apache.axis.AxisFault axisFaultException) {
        throw axisFaultException;
    }

Но я получаю эту ошибку:

null cannot create instance

При запуске клиента в этой строке:

java.lang.Object _resp = _call.invoke(new java.lang.Object[] {parameters});

Есть идеи?


person user1748166    schedule 02.06.2016    source источник


Ответы (1)


Эта ошибка была вызвана ошибкой в ​​справочном файле конфигурации безопасности. Ссылка на хранилище ключей в Windows должна быть установлена ​​\ как \.

person user1748166    schedule 03.06.2016