RE: activemq-cpp compilation warnings
Patches are always welcomed. > Hi, > > Why isn't actviemq-cpp compiled with '-W -Wall' options? It's very useful, > because default warning level for gcc is quite low. > > The problem is that while compiling code that uses cms/* headers with -W > -Wall, number of warnings appears like that: > > ./activemq/exceptions/ActiveMQException.h: In copy constructor > `activemq::exceptions::ActiveMQException::ActiveMQException(const > activemq::exceptions::ActiveMQException&)': > ./activemq/exceptions/ActiveMQException.h:55: warning: base class `class > cms::CMSException' should be explicitly initialized in the copy > constructor > > and it's quite annoying. > > Could it be fixed in 1.1 release - there is no big work here. > > Thanks. > -- > View this message in context: http://www.nabble.com/activemq-cpp- > compilation-warnings-tf3033440.html#a8428456 > Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.
RE: activemq-cpp and openwire
Not as yet. We are focused on getting 1.1 out the door first. > > > I 've heard that full openwire support is declared for 2.0. Are there any > approximate time frames for it? > > > > tabish121 wrote: > > > > > > Activemq CPP doesn't currently handle the openwire Protocol. We've been > > working on it slowly, but have had a lot of other issues to address for > > the 1.1 release which should greatly improve the library over the 1.0 > > release. > > > >> -Original Message- > >> From: Motl [mailto:[EMAIL PROTECTED] > >> Sent: Tuesday, January 16, 2007 12:35 PM > >> To: activemq-dev@geronimo.apache.org > >> Subject: activemq-cpp and openwire > >> > >> > >> Hi, > >> I am using the latest version of activemq-cpp (1.1). Is there any > > support > >> of > >> openwire protocol? > >> What are the plans for that support? > >> -- > >> View this message in context: http://www.nabble.com/activemq-cpp-and- > >> openwire-tf3022299.html#a8394849 > >> Sent from the ActiveMQ - Dev mailing list archive at Nabble.com. > > > > > > > > -- > View this message in context: http://www.nabble.com/activemq-cpp-and- > openwire-tf3022299.html#a8397647 > Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.
RE: activemq-cpp and openwire
Activemq CPP doesn't currently handle the openwire Protocol. We've been working on it slowly, but have had a lot of other issues to address for the 1.1 release which should greatly improve the library over the 1.0 release. > -Original Message- > From: Motl [mailto:[EMAIL PROTECTED] > Sent: Tuesday, January 16, 2007 12:35 PM > To: activemq-dev@geronimo.apache.org > Subject: activemq-cpp and openwire > > > Hi, > I am using the latest version of activemq-cpp (1.1). Is there any support > of > openwire protocol? > What are the plans for that support? > -- > View this message in context: http://www.nabble.com/activemq-cpp-and- > openwire-tf3022299.html#a8394849 > Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.
RE: activemq-cpp, OpenWire protocol
> -Original Message- > From: Reptilmo [mailto:[EMAIL PROTECTED] > Sent: Wednesday, December 13, 2006 12:28 PM > To: activemq-dev@geronimo.apache.org > Subject: activemq-cpp, OpenWire protocol > > > Any estimate how long before OpenWire protocol is finished or in some sort > of > working condition for activemq-cpp? > Short answer is it'll be done when its done. Long answer is that it will probably be done sometime in February or March based on the amount of work left and the amount of time we have to spend on it. There's a lot of work going on now to mature the code base and address issues that have be found, once we get things wrapped up on that front we intend on releasing a 1.1 release with all the current fixes and then moving on to working on Openwire support more heavily. > Thank you. > -- > View this message in context: http://www.nabble.com/activemq-cpp%2C- > OpenWire-protocol-tf2815437.html#a7857297 > Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.
RE: activemq-cpp failover?
> The Connection object doesn't seems to throw exceptions. > > my code looks like this: > > class myProducer : public ExceptionListener, > public Runnable { > > > // Create a Connection > connection = connectionFactory->createConnection(); > connection->setExceptionListener(this); > connection->start(); > ... > > virtual void onException( const CMSException& ex ) { > printf("JMS Exception occured. reconnect?.\n"); > ex.printStackTrace(); > } > > ... > > I don't get anything from onException(). Are you doing anything that might trigger an exception? > > How do I get it to work? Please help. > > Thanks > On 12/12/06, Timothy Bish <[EMAIL PROTECTED]> wrote: > > > > > > > > too bad. > > > any work-around? can we catch some exception somewhere and open up > > another > > > connection to failover broker? > > > My producer has to be integrated into cpp code. > > > > > > > Just like in Java, you can set an ExceptionListener on the Connection > > Object, chances are if that gets called its time to reconnect. > > > > > Thanks > > > > > > On 12/12/06, Timothy Bish <[EMAIL PROTECTED]> wrote: > > > > > > > > > > > > > -Original Message- > > > > > From: amq user [mailto:[EMAIL PROTECTED] > > > > > Sent: Tuesday, December 12, 2006 4:58 PM > > > > > To: activemq-dev > > > > > Subject: activemq-cpp failover? > > > > > Importance: High > > > > > > > > > > Does activemq-cpp support failover? > > > > > I got this: > > > > > > > > > > ActiveMQConnectionFactory::createConnection - unknown transport > > > factory > > > > > FILE: activemq/core/ActiveMQConnectionFactory.cpp, LINE: > 124 > > > > > FILE: activemq/core/ActiveMQConnectionFactory.cpp, LINE: > 179 > > > > > > > > > > > > > Failover is not currently supported and is not currently planned, > the > > > > architecture would support extension of the transport layer to > support > > > it. > > > > > > > > > If not, will it be supported in the near future? > > > > > Thanks > > > > > > > > > > > >
RE: active-cpp persistent problem
I am investigating the problem, I will let you know when I figure it out, if you'd like, you can write an issue against activemq-cpp regarding this so you can track the progress there. Regards Tim > -Original Message- > From: amq user [mailto:[EMAIL PROTECTED] > Sent: Friday, December 08, 2006 3:35 PM > To: activemq-dev@geronimo.apache.org > Subject: Re: active-cpp persistent problem > > I do see the message is "NON-PERSISTENT" from jconsole using browse(). > No matter how I set it (persistent or non-persisten) in the cpp code. I > got > "NON_PERSISTENT". Please help! > > > On 12/8/06, amq user <[EMAIL PROTECTED]> wrote: > > > > ActiveMQ 4.0.2 and activemq-cpp-1.0 > > > > > > > > On 12/8/06, Bish, Tim <[EMAIL PROTECTED]> wrote: > > > > > > What version of the broker are you using? > > > > > > Regards > > > > > > Tim > > > > > > > > > > > > > -Original Message- > > > > From: amq user [mailto:[EMAIL PROTECTED] > > > > Sent: Friday, December 08, 2006 2:37 PM > > > > To: activemq-dev@geronimo.apache.org > > > > Subject: Re: active-cpp persistent problem > > > > > > > > On 12/8/06, Bish, Tim < [EMAIL PROTECTED]> wrote: > > > > > > > > > > > > > > > AFAIK the activemq-cpp message do properly send the persistant > flag. > > > > > > > > > > Can you create a small test app that demonstrates to problem? > > > > > > > > > > > > yes. my test code is just a copy of main.cpp from the example. > > > > > > > > run method looks like: > > > > > > > > virtual void run() { > > > > try { > > > > // Open test message file > > > > FILE *fd; > > > > if ( (fd = fopen(messageFile.c_str(), "r")) == NULL) { > > > > cout<<"Error: Can't open file: "< > > > return; > > > > } > > > > > > > > ActiveMQConnectionFactory* connectionFactory = new > > > > ActiveMQConnectionFactory("tcp://10.111.53.230:2"); > > > > // Create a Connection > > > > connection = connectionFactory->createConnection(); > > > > connection->start(); > > > > // Create a Session > > > > session = connection->createSession( > > > Session::AUTO_ACKNOWLEDGE > > > > ); > > > > > > > > // Create the destination (Topic or Queue) > > > > destination = session->createQueue( "TEST.FOO" ); > > > > > > > > // Create a MessageProducer from the Session to the > Topic > > > or > > > > Queue > > > > producer = session->createProducer( destination ); > > > > producer->setDeliveryMode( DeliveryMode::PERSISTANT ); > > > > > > > > // Create the Thread Id String > > > > string threadIdStr = Integer::toString( Thread::getId() > ); > > > > > > > > // Create a messages > > > > string texts = (string)""; > > > > string texte = (string)""; > > > > TextMessage* message_s = session->createTextMessage( > > > > string(texts) ); > > > > > > > > producer->send( message_s ); > > > > delete message_s; > > > > > > > > char * line = NULL; > > > > size_t len = 0; > > > > ssize_t read; > > > > for( int ix=0; ix > > > fseek(fd,0L,SEEK_SET); > > > > while((read = getline(&line,&len,fd)) != -1) { > > > > //TextMessage* message = session->createTextMessage( > > > text > > > > ); > > > > TextMessage* message = session->createTextMessage( > > > > string(line) ); > > > > > > > > // Tell the producer to send the message > > > > //printf( "Sent message from thread %s\n", > > > > threadIdStr.c_str() > > > > ); > > > >
RE: active-cpp persistent problem
What version of the broker are you using? Regards Tim > -Original Message- > From: amq user [mailto:[EMAIL PROTECTED] > Sent: Friday, December 08, 2006 2:37 PM > To: activemq-dev@geronimo.apache.org > Subject: Re: active-cpp persistent problem > > On 12/8/06, Bish, Tim <[EMAIL PROTECTED]> wrote: > > > > > > AFAIK the activemq-cpp message do properly send the persistant flag. > > > > Can you create a small test app that demonstrates to problem? > > > yes. my test code is just a copy of main.cpp from the example. > > run method looks like: > > virtual void run() { > try { > // Open test message file > FILE *fd; > if ( (fd = fopen(messageFile.c_str(), "r")) == NULL) { > cout<<"Error: Can't open file: "< return; > } > > ActiveMQConnectionFactory* connectionFactory = new > ActiveMQConnectionFactory("tcp://10.111.53.230:2"); > // Create a Connection > connection = connectionFactory->createConnection(); > connection->start(); > // Create a Session > session = connection->createSession( Session::AUTO_ACKNOWLEDGE > ); > > // Create the destination (Topic or Queue) > destination = session->createQueue( "TEST.FOO" ); > > // Create a MessageProducer from the Session to the Topic or > Queue > producer = session->createProducer( destination ); > producer->setDeliveryMode( DeliveryMode::PERSISTANT ); > > // Create the Thread Id String > string threadIdStr = Integer::toString( Thread::getId() ); > > // Create a messages > string texts = (string)""; > string texte = (string)""; > TextMessage* message_s = session->createTextMessage( > string(texts) ); > > producer->send( message_s ); > delete message_s; > > char * line = NULL; > size_t len = 0; > ssize_t read; > for( int ix=0; ix fseek(fd,0L,SEEK_SET); > while((read = getline(&line,&len,fd)) != -1) { > //TextMessage* message = session->createTextMessage( text > ); > TextMessage* message = session->createTextMessage( > string(line) ); > > // Tell the producer to send the message > //printf( "Sent message from thread %s\n", > threadIdStr.c_str() > ); > producer->send( message ); > > delete message; > } > } > > TextMessage* message_e = session->createTextMessage( > string(texte) ); > producer->send( message_e ); > delete message_e; > > if(line) > free(line); > >}catch ( CMSException& e ) { > e.printStackTrace(); > } > } > > > > > What are the steps you are currently following in both cases? Are you > > sending messages with the C++ client and they are not persistant when > > you restart and connect a C++ client back to the broker, or have you > > tried sending a message persistantly with C++ and then connecting back > > with a Java client to see if that gets the messages that should have > > been persisted? > > > I used the cpp code above to send some messages. And they are gone after I > restart the broker. I tried to use cpp consumer to get those messages. > Actually, I don't need to restart the message to see if it is consistent > or > not. If i send enough message to the broker, jconsole says > MemoryPercentageUsed: 100. and I got this: > activemq::io::SocketOutputStream::write - Resource temporarily unavailable > - > tid: 3085880224 > FILE: activemq/network/SocketOutputStream.cpp, LINE: 85 - tid: > 3085880224 > FILE: activemq/connector/stomp/StompCommandWriter.cpp, LINE: 101 - > tid: 3085880224 > FILE: ./activemq/transport/ResponseCorrelator.h, LINE: 163 - tid: > 3085880224 > caught unknown exception - tid: 3085880224 > FILE: activemq/connector/stomp/StompConnector.cpp, LINE: 466 - > tid: > 3085880224 > FILE: activemq/core/ActiveMQSession.cpp, LINE: 495 - tid: > 3085880224 > FILE: activemq/core/ActiveMQProducer.cpp, LINE: 89 - tid: > 3085880224 > FILE: activemq/core/ActiveMQProducer.cpp, LINE: 71 - tid: > 3085880224 > caught
RE: active-cpp persistent problem
AFAIK the activemq-cpp message do properly send the persistant flag. Can you create a small test app that demonstrates to problem? What are the steps you are currently following in both cases? Are you sending messages with the C++ client and they are not persistant when you restart and connect a C++ client back to the broker, or have you tried sending a message persistantly with C++ and then connecting back with a Java client to see if that gets the messages that should have been persisted? Regards Tim. > -Original Message- > From: amq user [mailto:[EMAIL PROTECTED] > Sent: Friday, December 08, 2006 2:10 PM > To: activemq-dev > Subject: active-cpp persistent problem > > I'm struggling with persistent option in activemq-cpp client. (my java > client does the trick) > part of my code looks like: > > producer->setDeliveryMode( DeliveryMode::PERSISTANT ); > > The problem is after I send a message, and stop the broker. The message is > gone. > If I send a lot of message exceeding the memory size the broker handles, I > got resource unavailable exception. > > It looks to me the message I send over using cpp doesn't instruct the > broker > to use persistent. > I'm using ActiveMQ 4.0.2, and activemq-cpp-1.0. > > Please help. What else should I check. Did I miss anything? > Thanks
Trying to use the new activemq-cpp makefiles, some issues remain for Solaris
Hiram. I've been hacking away trying to get a build on Solaris 10 using the newer automake stuff. So far I've had some success but still can't build the library. There seems to be some issues with the way sun has set things up on the sun box. I had to hack up a libstdc++.la as described in this article. http://forum.sun.com/jive/thread.jspa?threadID=73150 I deleted the old makefiles so that gmake could find the Makefile versions. I end up with this error on attempting to build the find library file. g++ -g -O2 -o .libs/example main.o ../main/.libs/libactivemq-cpp.so /usr/sfw/lib/libstdc++.so -lc -L/usr/sfw/lib -lm -lpthread -luuid -Wl,-R -Wl,/usr/local/lib -Wl,-R -Wl,/usr/sfw/lib ld: warning: file /usr/sfw/lib/libstdc++.so: attempted multiple inclusion of file Undefined first referenced symbol in file nanosleep ../main/.libs/libactivemq-cpp.so I added an include of time.h to Thread.cpp which is the only code that uses nanosleep, and that doesn't seem to help. According to the man nanosleep this is where it should come from on SUN. When I try and use the Solaris Compiler I get really crazy errors that don't seem to make any sense. Everything builds fine using the older Makefiles, so I think that the source code is okay. Any ideas?
RE: [activemq-cpp] It now compiles under cygwin
Is there anyway that this build system can be modified to put the object files and other build artifacts into someplace other than the root dir of the code being built? This really clutter ups the workspace. Previoulsy we had everything going into the out dir under the root activemq folder. > -Original Message- > From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Hiram > Chirino > Sent: Tuesday, October 03, 2006 4:08 PM > To: activemq-dev@geronimo.apache.org > Subject: Re: [activemq-cpp] It now compiles under cygwin > > Ah.. I just did a source build of cppunit and I see what's happening. > The default prefix for cppunit is /usr/local, so it m4 file got > installed to /usr/local/share/aclocal which is not picked up > automatically. If we configure cppunit with > > ./configure --prefix=/usr > > Then everything should work better out of the box. Including when we > configure activemq-cpp as now I have to use: > > ./configure --with-cppunit-prefix=/usr/local > > To let it know where cppunit is at (that's if I want to run the unit > tests). > > > On 10/3/06, Bish, Tim <[EMAIL PROTECTED]> wrote: > > > > > > > > > > AC_DEFUN is line 17 > > > > > > > > dnl AM_PATH_LIBMCRYPT([MINIMUM-VERSION, [ACTION-IF-FOUND [, > > > > ACTION-IF-NOT-FOUND ]]]) > > > > dnl Test for libmcrypt, and define LIBMCRYPT_CFLAGS and > > LIBMCRYPT_LIBS > > > > dnl > > > > AC_DEFUN(AM_PATH_LIBMCRYPT, > > > > > > Change this line to: > > > AC_DEFUN([AM_PATH_LIBMCRYPT], > > > > > > > K, that got rid of that warning. > > > > > > > > doh.. I may need to look into this some more. Basically what you > > > want to do is installed the cppunit.m4 file to either the > > > activemq-cpp/m4 directory or the /usr/share/aclocal > > > Once it's there it should get picked up and be good to go. But I > > > would have thought that if you built cppunit from source it would have > > > installed the m4 file to the right place. > > > > > > We should look into seeing if that .m4 file can be redistributed so > > > that we can just check it into our m4 directory. I've got a feeling > > > that it can be redistributed since it just gets sourced into the > > > configure script when you run autogen.sh > > > > > > > I put cppunit.m4 in my activemq-cpp m4 folder and its building now. I > > may just move that over the /usr/shar/alcohol as it should be there > > anyway. > > > > > > > > > -- > Regards, > Hiram > > Blog: http://hiramchirino.com
RE: [activemq-cpp] It now compiles under cygwin
Yeah, mine was in a completely different location because I was hacking around some other Cygwin issues I was having earlier. I built it correctly earlier this eveing and it works fine, just have to make sure to override prefix. Looking good, no issues now, haven't had time to actually test out the build. > > Ah.. I just did a source build of cppunit and I see what's happening. > The default prefix for cppunit is /usr/local, so it m4 file got > installed to /usr/local/share/aclocal which is not picked up > automatically. If we configure cppunit with > > ./configure --prefix=/usr > > Then everything should work better out of the box. Including when we > configure activemq-cpp as now I have to use: > > ./configure --with-cppunit-prefix=/usr/local > > To let it know where cppunit is at (that's if I want to run the unit > tests). > > > On 10/3/06, Bish, Tim <[EMAIL PROTECTED]> wrote: > > > > > > > > > > AC_DEFUN is line 17 > > > > > > > > dnl AM_PATH_LIBMCRYPT([MINIMUM-VERSION, [ACTION-IF-FOUND [, > > > > ACTION-IF-NOT-FOUND ]]]) > > > > dnl Test for libmcrypt, and define LIBMCRYPT_CFLAGS and > > LIBMCRYPT_LIBS > > > > dnl > > > > AC_DEFUN(AM_PATH_LIBMCRYPT, > > > > > > Change this line to: > > > AC_DEFUN([AM_PATH_LIBMCRYPT], > > > > > > > K, that got rid of that warning. > > > > > > > > doh.. I may need to look into this some more. Basically what you > > > want to do is installed the cppunit.m4 file to either the > > > activemq-cpp/m4 directory or the /usr/share/aclocal > > > Once it's there it should get picked up and be good to go. But I > > > would have thought that if you built cppunit from source it would have > > > installed the m4 file to the right place. > > > > > > We should look into seeing if that .m4 file can be redistributed so > > > that we can just check it into our m4 directory. I've got a feeling > > > that it can be redistributed since it just gets sourced into the > > > configure script when you run autogen.sh > > > > > > > I put cppunit.m4 in my activemq-cpp m4 folder and its building now. I > > may just move that over the /usr/shar/alcohol as it should be there > > anyway. > > > > > > > > > -- > Regards, > Hiram > > Blog: http://hiramchirino.com
RE: [activemq-cpp] It now compiles under cygwin
> > > > AC_DEFUN is line 17 > > > > dnl AM_PATH_LIBMCRYPT([MINIMUM-VERSION, [ACTION-IF-FOUND [, > > ACTION-IF-NOT-FOUND ]]]) > > dnl Test for libmcrypt, and define LIBMCRYPT_CFLAGS and LIBMCRYPT_LIBS > > dnl > > AC_DEFUN(AM_PATH_LIBMCRYPT, > > Change this line to: > AC_DEFUN([AM_PATH_LIBMCRYPT], > K, that got rid of that warning. > > doh.. I may need to look into this some more. Basically what you > want to do is installed the cppunit.m4 file to either the > activemq-cpp/m4 directory or the /usr/share/aclocal > Once it's there it should get picked up and be good to go. But I > would have thought that if you built cppunit from source it would have > installed the m4 file to the right place. > > We should look into seeing if that .m4 file can be redistributed so > that we can just check it into our m4 directory. I've got a feeling > that it can be redistributed since it just gets sourced into the > configure script when you run autogen.sh > I put cppunit.m4 in my activemq-cpp m4 folder and its building now. I may just move that over the /usr/shar/alcohol as it should be there anyway.
RE: [activemq-cpp] It now compiles under cygwin
> On 10/3/06, Bish, Tim <[EMAIL PROTECTED]> wrote: > > There are some issues using the cygwin compiler, mainly that the tests > > won't pass as the sockets all break for strange reasons. Although Mingw > > isn't much better in this regard. It did also seem to have trouble > > Yeah.. winsock sux. :) Yes it does. Although from devstudio builds, this works fine, its only using cygwins hacked up win32api stuff that breaks it. > > > compiling under cygwin on various machines for reason that I could never > > explain (oh the joy of using Cygwin). I've got no problem using it so > > long as it works :) > > I hope we get it at that stage soon! > > > > > I tried running the autogen.sh in my cygwin bash shell and this is what > > I get > > > > /usr/share/aclocal/pstoedit.m4:7: warning: underquoted definition of > > AM_PATH_PSTOEDIT > > run info '(automake)Extending aclocal' > > or see > > http://sources.redhat.com/automake/automake.html#Extending-aclocal > > /usr/share/aclocal/libmcrypt.m4:17: warning: underquoted definition of > > AM_PATH_LIBMCRYPT > > This is a warnning I used to get with cppunit too.. It can be safely > ignored but if you want to get rid of the warnning, send me what you > have in the /usr/share/aclocal/libmcrypt.m4 file at line 17 and I'll > send you back what you need to update it with. AC_DEFUN is line 17 dnl AM_PATH_LIBMCRYPT([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND ]]]) dnl Test for libmcrypt, and define LIBMCRYPT_CFLAGS and LIBMCRYPT_LIBS dnl AC_DEFUN(AM_PATH_LIBMCRYPT, [dnl dnl Get the cflags and libraries from the libmcrypt-config script dnl > > > aclocal:configure.ac:43: warning: macro `AM_PROG_LIBTOOL' not found in > > library > > Run cygwin setup and install libtool Installed this, thought I had that already :) > > > aclocal:configure.ac:57: warning: macro `AM_PATH_CPPUNIT' not found in > > library > > Run cygwin setup and install cppunit. The version that cygwin wants to put on is 1.9.14 which we could not compile against previously, I had to download the latest an install it from source in order to get it working way back when. Is this the version you have installed? > > > configure.ac:52: error: possibly undefined macro: AM_PROG_LIBTOOL > > If this token and others are legitimate, please use > > m4_pattern_allow. > > See the Autoconf documentation. > > configure.ac:66: error: possibly undefined macro: AM_PATH_CPPUNIT > > autoreconf-2.5x: /usr/bin/autoconf-2.5x failed with exit status: 1 > > > > > > > > Hey activemq-cpp folks. > > > > > > activemq-cpp should now compile fine under cygwin. You may need to > > > install all the right versions of autoconf and automake. > > > > > > Tim.. any chance I could convince you to switch to cygwin instead? I > > > tried as hard as I could to use mingw under automake but I could not > > > find the right combination of packages needed to get everything happy. > > > > > > The automake systems seems to be working well across several different > > > systems now, it supports running the unit tests and generating the > > > docs so I think we should switch to it as soon as possible. (the > > > only system that I have not tested was Solaris) > > > > This may present some problems for people on older Solaris machines such > > as Solaris 8, as there aren't really any distributions on newer versions > > of the tools being maintained anymore. It looks like it might be okay > > on my Solaris 10 machine, but I'd have to install CPPUNIT first. > > > > We are using CPP_UNIT 1.11.6 btw. > > > > > > > > -- > > > Regards, > > > Hiram > > > > > > Blog: http://hiramchirino.com > > > > > -- > Regards, > Hiram > > Blog: http://hiramchirino.com
RE: [activemq-cpp] It now compiles under cygwin
BTW - Thanks for tackling this, both Nate and Myself are stretched pretty thing right now, so the extra hand is appreciated. > Hey activemq-cpp folks. > > activemq-cpp should now compile fine under cygwin. You may need to > install all the right versions of autoconf and automake. > > Tim.. any chance I could convince you to switch to cygwin instead? I > tried as hard as I could to use mingw under automake but I could not > find the right combination of packages needed to get everything happy. > > The automake systems seems to be working well across several different > systems now, it supports running the unit tests and generating the > docs so I think we should switch to it as soon as possible. (the > only system that I have not tested was Solaris) > > -- > Regards, > Hiram > > Blog: http://hiramchirino.com
RE: [activemq-cpp] It now compiles under cygwin
There are some issues using the cygwin compiler, mainly that the tests won't pass as the sockets all break for strange reasons. Although Mingw isn't much better in this regard. It did also seem to have trouble compiling under cygwin on various machines for reason that I could never explain (oh the joy of using Cygwin). I've got no problem using it so long as it works :) I tried running the autogen.sh in my cygwin bash shell and this is what I get /usr/share/aclocal/pstoedit.m4:7: warning: underquoted definition of AM_PATH_PSTOEDIT run info '(automake)Extending aclocal' or see http://sources.redhat.com/automake/automake.html#Extending-aclocal /usr/share/aclocal/libmcrypt.m4:17: warning: underquoted definition of AM_PATH_LIBMCRYPT aclocal:configure.ac:43: warning: macro `AM_PROG_LIBTOOL' not found in library aclocal:configure.ac:57: warning: macro `AM_PATH_CPPUNIT' not found in library configure.ac:52: error: possibly undefined macro: AM_PROG_LIBTOOL If this token and others are legitimate, please use m4_pattern_allow. See the Autoconf documentation. configure.ac:66: error: possibly undefined macro: AM_PATH_CPPUNIT autoreconf-2.5x: /usr/bin/autoconf-2.5x failed with exit status: 1 > > Hey activemq-cpp folks. > > activemq-cpp should now compile fine under cygwin. You may need to > install all the right versions of autoconf and automake. > > Tim.. any chance I could convince you to switch to cygwin instead? I > tried as hard as I could to use mingw under automake but I could not > find the right combination of packages needed to get everything happy. > > The automake systems seems to be working well across several different > systems now, it supports running the unit tests and generating the > docs so I think we should switch to it as soon as possible. (the > only system that I have not tested was Solaris) This may present some problems for people on older Solaris machines such as Solaris 8, as there aren't really any distributions on newer versions of the tools being maintained anymore. It looks like it might be okay on my Solaris 10 machine, but I'd have to install CPPUNIT first. We are using CPP_UNIT 1.11.6 btw. > > -- > Regards, > Hiram > > Blog: http://hiramchirino.com
RE: Openwire Generator Changes
Wow, ignore my terrible English on that one Its probably better if I do them so I get a handle on the new schema. I've still got lots of changes to the ones I have to get around all the C++ yuck. The new stuff looks pretty simple so it shouldn't be to bad. > > > > > I got good practice converting those groovy scripts.. send them to me > > and I'll convert them for ya. > > > > Regards, > > Hiram > > > > On 9/27/06, Bish, Tim <[EMAIL PROTECTED]> wrote: > > > Doh! I just got all my groovy scripts to generate C++ code that > > > compiles :( > > > > > > Thanks for the heads up > > > > > > > > > > > For all you who are interested in openwire... > > > > > > > > I have just checked in some changes for the openwire generators. > They > > > > are now 100% java based. This should make them easier to grok and > > > > maintain / refactor. > > > > > > > > I have also updated the pom.xml files for all the modules that use > > > > openwire generated marshalers so that the marshaller code is > generated > > > > when you run: > > > > mvn antrun:run > > > > > > > > Since the generators use the java sources of the activemq-core > module > > > > when generating the marshallers, the default location configured > in > > > > the pom.xml may not work for you. You may need to set the > > > > activemq-core-dir property to the directory location where it is > > > > checked out to. For example: > > > > mvn antrun:run -Dactivemq-core-dir=../../../activemq/activemq-core > > > > > > > > -- > > > > Regards, > > > > Hiram > > > > > > > > Blog: http://hiramchirino.com > > > > > > > > > -- > > Regards, > > Hiram > > > > Blog: http://hiramchirino.com
RE: Openwire Generator Changes
I probably better if I do them so I get a handle on the new schema. I've still got lots of changes to the ones I have any to get around all the C++ yuck. The new stuff looks pretty simple so it shouldn't be to bad. > > I got good practice converting those groovy scripts.. send them to me > and I'll convert them for ya. > > Regards, > Hiram > > On 9/27/06, Bish, Tim <[EMAIL PROTECTED]> wrote: > > Doh! I just got all my groovy scripts to generate C++ code that > > compiles :( > > > > Thanks for the heads up > > > > > > > > For all you who are interested in openwire... > > > > > > I have just checked in some changes for the openwire generators. They > > > are now 100% java based. This should make them easier to grok and > > > maintain / refactor. > > > > > > I have also updated the pom.xml files for all the modules that use > > > openwire generated marshalers so that the marshaller code is generated > > > when you run: > > > mvn antrun:run > > > > > > Since the generators use the java sources of the activemq-core module > > > when generating the marshallers, the default location configured in > > > the pom.xml may not work for you. You may need to set the > > > activemq-core-dir property to the directory location where it is > > > checked out to. For example: > > > mvn antrun:run -Dactivemq-core-dir=../../../activemq/activemq-core > > > > > > -- > > > Regards, > > > Hiram > > > > > > Blog: http://hiramchirino.com > > > > > -- > Regards, > Hiram > > Blog: http://hiramchirino.com
RE: SVN Repository Reorganization
> > > +1 for reorganizing > +1 for putting all the C++ clients together in their own trunk > I would also suggest getting rid of the CMS project altogether - this has > been replaced by activemq-cpp Yeah, I've got a Jira issue to do this, just waiting to get SVN access. > > > tabish121 wrote: > > > > > > +1 for reorg, getting a bit cluttered now. > > > > I don't know that I'd really like to shove all the c/c++ clients into > one > > branch, some of them don't have much if any activity, so I don't know if > > I'd like to drag all the extra baggage along for each release. Then > > again, having them all in one place would make it easy for someone to > see > > all the available options and try them out to see which one works best > for > > them. > > > > > > Hiram Chirino wrote: > >> > >> Perhaps we should put all the c/c++ stuff together??? I think that > >> would make it simpler to merge implementations and share ideas. > >> > >> On 9/5/06, Hiram Chirino <[EMAIL PROTECTED]> wrote: > >>> Hi Everybody, > >>> > >>> The ActiveMQ project has been growing tremendously and our source tree > >>> now has many modules that are at different stages of development. > >>> Furthermore, we require multiple build systems and platforms to build > >>> all our supported native clients. I think we are getting to the point > >>> where we need reorganize the svn repository a little so that when we > >>> do a main ActiveMQ release, our src distro just includes the things > >>> that are being built / tested in the main ActiveMQ build. > >>> > >>> So.. the reorg would look something like: > >>> > >>> /incubator/activemq/trunk/sandbox - > /incubator/activemq/sandbox > >>> /incubator/activemq/trunk/activemq-dotnet - > > >>> /incubator/activemq/activemq-dotnet/trunk > >>> /incubator/activemq/trunk/activemq-cpp - > > >>> /incubator/activemq/activemq-cpp/trunk > >>> /incubator/activemq/trunk/cms - > /incubator/activemq/cms/trunk > >>> /incubator/activemq/trunk/openwire-c - > > >>> /incubator/activemq/openwire-c/trunk > >>> /incubator/activemq/trunk/openwire-cpp - > > >>> /incubator/activemq/openwire-cpp/trunk > >>> /incubator/activemq/trunk/amazon - > /incubator/activemq/amazon/trunk > >>> /incubator/activemq/trunk/activeio - > > >>> /incubator/activemq/activeio/trunk > >>> /incubator/activemq/trunk/activecluster - > > >>> /incubator/activemq/activecluster/trunk > >>> /incubator/activemq/trunk/activemq-jmeter - > > >>> /incubator/activemq/activemq-jmeter/trunk > >>> /incubator/activemq/trunk/activemq-tooling/maven-gram-plugin - > > >>> /incubator/activemq/maven-plugins/trunk/maven-gram-plugin > >>> /incubator/activemq/trunk/activemq-tooling/maven-bundle-plugin - > > >>> /incubator/activemq/maven-plugins/trunk/maven-bundle-plugin > >>> /incubator/activemq/trunk/activemq-tooling/maven-bundle-plugin - > > >>> /incubator/activemq/maven-plugins/trunk/maven-bundle-plugin > >>> > >>> And finally.. to keep a consistent > >>> /incubator/activemq/${project}/trunk structure... > >>> /incubator/activemq/trunk -> /incubator/activemq/activemq/trunk > >>> /incubator/activemq/tags -> /incubator/activemq/activemq/tags > >>> /incubator/activemq/branches -> /incubator/activemq/activemq/branches > >>> > >>> What do you guys think? Am i missing anything that should also get > >>> moved? When do you think would be a good time for the re-org? > >>> > >>> -- > >>> Regards, > >>> Hiram > >>> > >>> Blog: http://hiramchirino.com > >>> > >> > >> > >> -- > >> Regards, > >> Hiram > >> > >> Blog: http://hiramchirino.com > >> > >> > > > > > > -- > View this message in context: http://www.nabble.com/SVN-Repository- > Reorganization-tf2221183.html#a6172870 > Sent from the ActiveMQ - Dev forum at Nabble.com.
RE: auto-generating documentation for C++ client?
James I've cleaned up the activemq-cpp javadoc style documentation and now can run a clean doxygen run. I've generated docs for the current activemq-cpp code that looks pretty nice, all in HTML format. Question for you guys. I can submit the docs that I've got now attached to a JIRA issue so we can get them up on the site now. Alternatively we can figure out how to automate the process, however, there's a bunch of files that have changed to support this, so if we want to start auto-generating now, I'd need to make another code drop, or we can wait till we get the Openwire support done and submit it all then. Opinions? - Timothy A. Bish Sensis Corporation - > -Original Message- > From: James Strachan [mailto:[EMAIL PROTECTED] > Sent: Friday, July 28, 2006 10:49 AM > To: activemq-dev@geronimo.apache.org > Subject: auto-generating documentation for C++ client? > > I just figured out a way with NAnt to generate documentation for NMS > http://activemq.org/site/javadocs.html > > which is then copied to where the ActiveMQ site is checked out locally > https://svn.apache.org/repos/asf/incubator/activemq/site/ > > so its easy to deploy to Apache via an svn commit. It'd be nice to do > the same for the C++ code too at some point. > > -- > > James > --- > http://radio.weblogs.com/0112098/
RE: auto-generating documentation for C++ client?
It's my goal to try and do that at some point. Just haven't gotten there yet. It would be pretty sweet. - Timothy A. Bish Sensis Corporation - > -Original Message- > From: James Strachan [mailto:[EMAIL PROTECTED] > Sent: Friday, July 28, 2006 10:49 AM > To: activemq-dev@geronimo.apache.org > Subject: auto-generating documentation for C++ client? > > I just figured out a way with NAnt to generate documentation for NMS > http://activemq.org/site/javadocs.html > > which is then copied to where the ActiveMQ site is checked out locally > https://svn.apache.org/repos/asf/incubator/activemq/site/ > > so its easy to deploy to Apache via an svn commit. It'd be nice to do > the same for the C++ code too at some point. > > -- > > James > --- > http://radio.weblogs.com/0112098/
RE: Openwire CPP Client Help
To be honest my knowledge of the openwire-cpp code is limited. I've looked at it a little bit, and while the smart pointer code is scary, I have not seen anything that looks terribly wrong. To figure this out I'd have to spend time debugging and testing this code. I'm only working on this in my free time, which is limited at the moment, so it could take me some time to get to this, stupid day job... Maybe one of the Openwire-cpp authors is lurking and will chime in on what could be going wrong here. - Timothy A. Bish Sensis Corporation - > -Original Message- > From: kevinba [mailto:[EMAIL PROTECTED] > Sent: Wednesday, July 26, 2006 12:20 PM > To: activemq-dev@geronimo.apache.org > Subject: Re: Openwire CPP Client Help > > > I got the latest on the openwire-cpp from the trunk directory and that has > a > different effect. > > p OpenWireProtocol::checkInputStream(p > istream) throw (IOException) > { > // Assert that supplied output stream is a data output stream > p dis = p_dyncast (istream) ; > > > The cast to DataInputStream causes the following error > First-chance exception at 0x10227637 (msvcr71d.dll) in activemq-test.exe: > 0xC005: Access violation reading location 0x0004. > > The 4.0.1 branch hangs and never returns. The trunk version throws and > exception. > > I can connect to the broker using java. I do notice on the jconsole that > the connection to the broker is created. But on the TcpTransport::Start() > method, it calls readThread->Start() that is where it throws the > exception. > > Thanks, > -- > View this message in context: http://www.nabble.com/Openwire-CPP-Client- > Help-tf2004485.html#a5506356 > Sent from the ActiveMQ - Dev forum at Nabble.com.
RE: Problem in openwire-cpp API for messages
Ok, I will take a look and get back to you as soon as I can. - Timothy A. Bish Sensis Corporation - > -Original Message- > From: Arshad Ahamad [mailto:[EMAIL PROTECTED] > Sent: Wednesday, July 26, 2006 7:56 AM > To: [EMAIL PROTECTED]; activemq-dev@geronimo.apache.org > Subject: Re: Problem in openwire-cpp API for messages > > Hi, > > code for create the text message > > p queue, queue1 ; > p message; > char Replay[300] // contains more then 252 char > queue = session->getQueue("FOO.BAR") ; > producer = session->createProducer(queue) ; > consumer = session->createConsumer(queue) ; > consumer->setMessageListener( smartify(this) ) ; > message = session->createTextMessage(Replay); > producer->send(message) ; > > > > > > I am working on openwire-cpp ( for ActiveMQ-4.0) code on SuSe(Linux > > machine->i686-suse-linux, version 2.6.13-15.8-default), > > > > I am not able to ceate a message which have more than 252 char by using > > > > message = session->createTextMessage("Message,moreThan252Char"); API > > > > how I will achieve it, because I want to send the data more than 252 > char. > > is there any other procesure to create a message? Pls assist me > > > > Thanks in advance > > > > > > Regards > > Arashad Ahamad
RE: ActiveMQ-cpp, Stomp, Openwire - need guidance here - newbie newbie
Comments inline: > > We need a MOM that provides C++ API support (ActiveMQ does this ... but i > am > a bit confused on ActiveMQ-cpp, stomp and openwire). I am running into > questions like why openwire would replace stomp, activemq-cpp says it is > swappable for both protocols. Openwire is the native protocol that AMQ uses. Stomp is an extension that is simpler protocol which can be used to communicate with the AMQ broker. Its not going to be as efficient as an client that uses Openwire, but it much simpler so you can generally be up and running with it much quicker. Here's the Stomp Page from the ActiveMQ site. http://www.activemq.org/site/stomp.html What the ActiveMQ CPP client page actually says is this: "ActiveMQ CPP is a C++ API to JMS/MOM implemented currently using Stomp but we hope to have an implementation using OpenWire soon." There currently is no support for openwire in activemq-cpp. There is an openwire-cpp, but I can't speak to how wells it works, someone else whose used it will have to chime in on that. > > What we intend to do in our application is we would be building a C++ > layer > to talk to ActiveMQ and then we would be generating code on the C++ layer > for different languages (Java, Python, .Net etc) using Swig. Ours is a > service bus created mainly for the reasons of performance, integration > etc. There are already clients for ActiveMQ using those languages, see the connectivity section on the AMQ site. http://www.activemq.org/site/connectivity.html > > Can somebody guide me on how i should proceed on these areas. I am a > complete newbie to ActiveMQ and want to run some samples to get a feel of > how ActiveMQ works (consider C++) only. You should probably start buy running through the using activemq section of the website and just get familiar with it from the Java side of things, then look at the various client API to see how they integrate into the picture. http://www.activemq.org/site/using-activemq.html > > Please guide me on how to proceed. > > Thanks in advance > > Lalit Nagpal > -- > View this message in context: http://www.nabble.com/ActiveMQ-cpp%2C- > Stomp%2C-Openwire---need-guidance-here---newbie-newbie- > tf1990634.html#a5462797 > Sent from the ActiveMQ - Dev forum at Nabble.com. - Timothy A. Bish Sensis Corporation -
RE: AMQ production status
Comments inline: > > >Just out of curiosity, which Stomp C++ client did you try? The reason I > >ask is that we just submitted a replacement for the CMS client in > >activemq-cpp. This API does appear to have support for persistence, > >although I'm not sure that we have a unit test that verifies it yet. > > We are using the main.cpp file that comes in /test along with the Stomp > C++ > APIs from svn : > https://svn.apache.org/repos/asf/incubator/activemq/trunk/cms. We have > segregated the main.cpp into a sender and a receiver. > > 1) From where can I get the fresh CMS replacement as told by you. Can you > provide the specific location? The CMS replacement is called activemq-cpp and its located here: https://svn.apache.org/repos/asf/incubator/activemq/trunk/activemq-cpp It is still under active development by Nathan and me. > > > >I would try activemq-cpp, if you haven't already - it's leaps and bounds > >above the old CMS code! > > 2) I am using ActiveMQ 4.0.x java version. Is activemq-cpp a C++ MQ > server? > If, then what's its capacity against Java, .Net clients. Activemq-cpp is a c++ implementation of the JMS Client API, currently it only speaks the stomp protocol, but in time it should also gain the ability to use the openwire protocol as well. You still need to run an AMQ broker just as you did before. The tests in the test-integration folder show example usage, which is now very much like using the Java based JMS client API. - Timothy A. Bish Sensis Corporation -