0

我有一个WSDL文件,然后我使用AXIS2C WSDL2C工具来创建客户端项目。

我修改了axis2.xml文件。在开头添加了这一行<axisconfig name="Axis2/C">

<parameter name="SO_TIMEOUT">8000</parameter>

我现在可以设置超时。如何在我的代码中处理它?我的意思是我怎么知道我有连接超时或套接字超时或服务器正确响应。

问题更新: 是我的项目的链接:

4

1 回答 1

0

您应该在调用客户端后分析错误代码:env->error->status_code

axiom_node_t* resp = axis2_svc_client_send_receive(client, env, payload);

switch (env->error->status_code)
{
case AXIS2_ERROR_RESPONSE_TIMED_OUT:
  // Timeout
    break;

// other errors goes here ...
}

此外,如果您想以编程方式设置超时:

axis2_options_t* opt = axis2_options_create(env)
axis2_options_set_timeout_in_milli_seconds(opt, env, 8000);
axis2_svc_client_set_options(client, env, opt);
于 2015-03-10T06:56:55.327 回答