Hi Tim,
Please find below my code snippet,
int get_ref_data(string s){
mysqlpp::Connection conn;
if (conn.connect("Database", "localhost", "proddbuser",
"proddblander")) {
cout << "DB Connected" << endl;
mysqlpp::Query query = conn.query();
query << "SELECT * from table where symbol=" << s << " and
date='20100628'";
if (mysqlpp::StoreQueryResult res = query.store()) {
cout << "Query Data:" << endl;
for (size_t i = 0; i < res.num_rows(); ++i) {
cout << '\t' << res[i][0] << " , "<< res[i][1]
<< " , "<< res[i][2] << "
, "<< res[i][3] << " , "<< res[i][4] << endl;
}
}else{
cout << "Couldn't execute the query";
}
}
cout <<endl;
return 1;
}
void onRequest( void *msg ){
const TextMessage* txtMessage = dynamic_cast< const TextMessage* >(
(Message *)msg );
string s1 = txtMessage->getText();
istringstream is1(s1);
Stream_reader<istringstream, mValue> reader(is1);
mValue value;
reader.read_next(value);
mObject& O = value.get_obj();
for(mObject::iterator it=O.begin();it != O.end();++it){
cout <<endl<< (it)->first;
if(!(it)->first.compare("Portfolio")){
mArray& a = O["Portfolio"].get_array();
for(int i=0;i<a.size();i++){
mArray& tmp = a[i].get_array();
cout << endl << " ";
string t = tmp[0].get_value<string>();
get_ref_data(t);
for(int j=0;j<tmp.size();j++){
cout <<" " << tmp[j].get_value<string>();
}
}
}
}
txtMessage->acknowledge();
// testing the slave response part. The same Object is being sent as
received.
ofstream os( "json_cpp.txt" );
write_stream( mValue( O ), os, true );
mObject OR;
OR["response"] = "done";
OR["input"] = O;
string s2 = write_string(mValue( OR ),true);
destURI = "Data.Response.Q";
respProducer = new clAMQ(brokerURI, destURI);
respProducer->connect();
respProducer->createProducer();
void *rmsg = respProducer->createTextMessage();
clAMQ::addPayLoadToTextMessage(rmsg,s2);
respProducer->sendMsg(rmsg);
}
In the above function, when get_data() is called, I got the error message.
Please let me your inputs.
Thanks,
Manu
Timothy Bish wrote:
>
> On Thu, 2010-07-01 at 06:47 -0700, manua wrote:
>> Hi All,
>>
>> I am getting the following error, when processing the received message,
>>
>> caught unknown exception
>> FILE: activemq/core/ActiveMQConsumer.cpp, LINE: 987
>> FILE: activemq/core/ActiveMQSessionExecutor.cpp, LINE: 133
>>
>> My application is divided into three parts,
>>
>> 1. On receiving the message, its extracting the test message and passing
>> that to json_spirit function.
>> 2. The json spirit function converts the text message to a json and
>> extract
>> the various vector/map parameters. It then pass the extracted parameter
>> to
>> the Db Function.
>> 3. The Db function takes the string as a input and accordingly fetch the
>> data from the db.
>>
>> Its working fine till Step 2. In step 3, Db connection is made but the
>> moment it hits the query part, I got the above error.
>>
>> Am I doing something wrong, or is there a better way to do it.
>> Please let me know your inputs.
>>
>> Thanks,
>> Manu
>
> Without seeing the code my first guess would be that your onMessage
> method is throwing an exception somewhere in your step three which
> propagates back through the ActiveMQConsumer to the
> ActiveMQSessionExecutor. I'd add some more exception handing in you
> onMessage handler to see what your code is throwing.
>
> Regards
>
> --
> Tim Bish
>
> Open Source Integration: http://fusesource.com
> ActiveMQ in Action: http://www.manning.com/snyder/
>
> Follow me on Twitter: http://twitter.com/tabish121
> My Blog: http://timbish.blogspot.com/
>
>
>
--
View this message in context:
http://old.nabble.com/Caught-unknown-exception-in-activeMQConsumer.cpp-tp29045831p29046224.html
Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.