Hi,

I am trying to add in authentication to my Axis2/c client.
I downloaded the latest rampart C 1.2 and deployed to my axis2/c 1.4.

I followed the samples from rampart C and added the following lines to my 
Axis2/C client.  The client_home points to my Axis2/C installation: 
D:\Tools\axis2\axis2c-bin-1.4.0-win32
--------------------------------------------------------
    /*We need to specify the client's policy file location*/
    if(client_home)
    {
        file_name = axutil_stracat(env, client_home, "\\client_repo\\");
        policy_file = axutil_stracat(env, file_name, "policy.xml" );
        AXIS2_FREE(env->allocator, file_name);
        file_name = NULL;        
    }else{
        printf("Client Home not Specified\n");
        printf("echo client invoke FAILED!\n");
        return 0;
    }
    /*Create the policy, from file*/   
    policy = neethi_util_create_policy_from_file(env, policy_file);
    if(policy_file){
        AXIS2_FREE(env->allocator, policy_file);
        policy_file = NULL;
    }
    if(!policy)
    {
        printf("\nPolicy creation failed from the file. %s\n", policy_file);
    }


        stub =
        axis2_stub_create_SecureServiceService(env, client_home, address);
        if( NULL == stub ){
                printf("Unable to create the stub with address='%s' and 
client_home='%s'.\n", address, client_home);
                if (env)
                {
                        axutil_env_free((axutil_env_t *) env);
                        env = NULL;
                }
                exit(1);
        }

        svc_client = axis2_stub_get_svc_client(stub, env );
    options = axis2_stub_get_options( stub, env);
    if (NULL == options)
    {
        AXIS2_ERROR_SET(env->error, AXIS2_ERROR_INVALID_NULL_PARAM, 
AXIS2_FAILURE);
        AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "options is null in stub");
        return NULL;
    }
    axis2_options_set_manage_session(options, env, AXIS2_TRUE);

    status = axis2_svc_client_set_policy(svc_client, env, policy);

    if(status == AXIS2_FAILURE)
    {
        printf("Policy setting failed\n");
    }
    
--------------------------------------------------------
The code seems to run smoothly, but I can't see the security header appear in 
the client request.  I took at look at the log file generated and found that 
the rampart dll is not loaded correctly.

---------------------------------------------------------------
[Thu Jul 03 15:23:33 2008] [debug] ..\..\src\core\deployment\dep_engine.c(1306) 
axis2_dep_engine_load_module_dll: DLL path is : 
D:\Tools\axis2\axis2c-bin-1.4.0-win32/modules/addressing/axis2_mod_addr.dll
[Thu Jul 03 15:23:33 2008] [debug] ..\..\util\src\class_loader.c(141) Object 
loaded successfully
[Thu Jul 03 15:23:33 2008] [debug] ..\..\src\core\deployment\dep_engine.c(1306) 
axis2_dep_engine_load_module_dll: DLL path is : 
D:\Tools\axis2\axis2c-bin-1.4.0-win32/modules/logging/axis2_mod_log.dll
[Thu Jul 03 15:23:33 2008] [debug] ..\..\util\src\class_loader.c(141) Object 
loaded successfully
[Thu Jul 03 15:23:33 2008] [debug] ..\..\src\core\deployment\dep_engine.c(1306) 
axis2_dep_engine_load_module_dll: DLL path is : 
D:\Tools\axis2\axis2c-bin-1.4.0-win32/modules/rampart/mod_rampart.dll
[Thu Jul 03 15:23:33 2008] [error] ..\..\util\src\class_loader.c(161) dlerror 
reason: Something went wrong loading the DLL. If you happen to see this 
message, please note that getting the exact error form Windows is a TODO. And 
if possible please help fix it. :)
[Thu Jul 03 15:23:33 2008] [error] ..\..\src\core\deployment\dep_engine.c(1424) 
Loading module description rampart failed
[Thu Jul 03 15:23:33 2008] [error] ..\..\src\core\deployment\dep_engine.c(1588) 
Adding new module rampart to the deployment engine failed
[Thu Jul 03 15:23:33 2008] [error] 
..\..\src\core\deployment\repos_listener.c(136) Repository listener 
initialization failed
[Thu Jul 03 15:23:33 2008] [debug] 
..\..\src\core\phaseresolver\phase_holder.c(139) Add handler 
AddressingInHandler to phase Transport

---------------------------------------------------------------


I verified that the dll does exist in the path indicated in the log file:

D:\Tools\axis2\axis2c-bin-1.4.0-win32\modules\rampart>dir
 Volume in drive D is Data
 Volume Serial Number is 40CF-E9CF

 Directory of D:\Tools\axis2\axis2c-bin-1.4.0-win32\modules\rampart

07/03/2008  02:22 PM    <DIR>          .
07/03/2008  02:22 PM    <DIR>          ..
09/19/2007  12:04 PM               515 module.xml
05/07/2008  05:13 PM           335,872 mod_rampart.dll
               2 File(s)        336,387 bytes
               2 Dir(s)  56,762,257,408 bytes free




Any idea how to troubleshoot or workaround the problem?


Thanks!

Yuan


      

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to