Visual Studio 2010 — клиентское приложение WSO2 C ++ аварийно завершает работу при вызове метода Environment :: initialize.

Я использую инфраструктуру WSO2 для написания веб-сервисов на основе C ++ для одного из моих проектов. Я могу установить фреймворк, запустить сервер оси и протестировать его с примерами клиентских программ.

Когда я пытался написать клиент самостоятельно, код компилируется без каких-либо проблем или предупреждений. Тем не менее, приложение вылетает во время выполнения без надлежащего сообщения. Я попытался установить консоль std :: count и выяснил, что происходит сбой во время вызова метода Environment :: initialize. Пожалуйста, смотрите ниже код клиента. Эти несколько строк составляют целое клиентское приложение, поэтому не осталось ни одного кода.


int main(int argc, char *argv[]){

ServiceClient * sc;
Environment::initialize("hello.log", AXIS2_LOG_LEVEL_TRACE);
string end_point = "http://localhost:9090/axis2/services/hello";
sc = new ServiceClient(end_point);
OMElement * payload = new OMElement("greet");
payload->setText("Hello Service!");
try
{
OMElement* response = sc->request(payload, "");
if (response)
{
cout << endl << "Response: " << response << endl;
}
}
catch (AxisFault & e)
{
if (sc->getLastSOAPFault())
{
cout << endl << "Fault: " << sc->getLastSOAPFault() << endl;
}
else
{
cout << endl << "Error: " << e << endl;
}
}
delete payload;

}
[/ NOEDIT]

Я использую Visual Studio 2010 для IDE & компилятор. Я включил пути для всех заголовков и необходимых библиотек
[Axutil.lib; axiom.lib; axis2_parser.lib; axis2_engine.lib; wso2_wsf.lib;].

Компиляция кода не имеет проблем, как в режиме отладки, так и в режиме выпуска. Приложение вылетает во время выполнения.

Любая помощь с благодарностью.

Заранее спасибо,
Прадип.

1

Решение

В соответствии с эта тема:

Эта проблема возникает, когда вы связываете бинарный файл релиза с отладкой
двоичный файл. Структура памяти для сборки отладки и сборки выпуска
разные и иногда это может вызвать проблемы. Лучшая вещь была бы для
построить WSF / CPP с включенной отладкой. Тогда проблема должна уйти. Или же
Вы можете собрать свой образец как сборку релиза.

Так что это оставляет вам два варианта:

  • Компилировать в режиме релиза.
  • Перестройте WSO2 WSF / C ++ с включенной отладкой. Вы можете активировать эту опцию в configure.ini файл (или файлы) в исходном проекте.
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]