Stream

Ron Smits

User Stories  - 
 
I just finished a proof of concept project for a client where we build a complete system using Activiti and Drools in a Tomee 1.6.0. container. We had no problems whatsoever using these inherent spring frameworks with Tomee. 
Tomee and Arquillian made it quite easy to test just about everything we wanted to test. 

We are very satisfied with the way we could develop fast and easy using Tomee. The only gripe we had (and still have) is the logging of tomee. Way too complicated!
3
1
Serega CarpOFF's profile photoMohammad Noureldin's profile photo
 
It's very interesting. Could you share something more about integration these technologies with TomEE? Or maybe helloworld project in github? Thank you.
Add a comment...

Pete Keyes

User Stories  - 
 
For those considering an architectural change to their integration service.  we were a purely SoftwareAG/wM shop ... decision was made to move from "data" centric integration to RESTful service architecture.

we attended this year's JavaOne and upon return took a crack at bringing up a JEE6 web profile container ... first try was WebLogic - a day later it was still failing to even start.  next try was JBoss - a day went by and no luck and no help.  we saw Mr. Blevins' presentation at JavaOne (easily the best) and thought "why not try it".  2 hours later TomEE-150 was up and running and a simple RESTful service for internal pricing was in unit test.

Our team's experience is strictly tangential in terms of App servers which makes the 2 hours from install to unit test all the more amazing. TomEE is, so far, simply amazing.  Our biggest challenge is getting over the "tribal" knowledge curve of what "not" to do with all that is within TomEE - so many ways to handle CDI, security, extension we will surely refactor things many more times than a team with years of history.

but ... to TomEE's credit it is hands down a simple and stable product.  we have just 5 apps running inside it, but thru 2 months of letting development hit it from all sides it's never once had a hiccup.

"Thank you" to Mr. Blevin's presentation and EVERYONE behind the scenes that contributed to TomEE 150 and beyond - it's an amazingly pure, stable and simple to manage JEE6 web profile container.
9
1
Miles Poindexter's profile photoHoward Smith's profile photo
4 comments
 
+Miles Poindexter wish I can add more than +1 to your response!!! I'm glad so many people are catching a hold of this 'tommy' cat and running with it!
Add a comment...

Howard Smith

User Stories  - 
 
I sent this to the openejb user mail list, but wanted to share this here as well, for those that may see us here on Google+, and may not be receiving/reading/watching openejb user mail list. See below. :)

I just wanted to let you all know, that I am a new user, using TomEE. I started using TomEE 1.5.1 SNAPSHOT, then TomEE 1.5.1, and now TomEE 1.5.2 SNAPSHOT...on my Windows Server 2003 32bit 4GB RAM production server. It is running very well. I like to monitor the log files for TomEE exceptions (like LOCK errors related to @Schedule methods in @Singleton beans), and exceptions caused by my web app.

I am pleased to report that I am seeing NO errors in the log files, and TomEE 1.5.2 SNAPSHOT is running really well!

Recently, I added multiple @Schedule methods to ONE @Singleton bean, and i ran into LOCK errors/exceptions, so I resolved that by moving the @Schedule methods to their own @Singleton bean. Today/yesterday, I just recognized the TomEE Schedule Methods example [1], so I'm planning to use the sample code provided in that example and move the @Schedule methods back to one @Singleton bean and monitor how it performs...in production. :)

Thank you TomEE/OpenEJB committers/users!!!

I'm loving TomEE!!!

[1] http://openejb.apache.org/examples-trunk/schedule-methods/README.html
2
Howard Smith's profile photo
8 comments
 
This came in handy today... I've been using @Singleton @Lock(WRITE) more often along with @AccessTimeout. I finally refactored the implementation from user-intiated hyperlink to download data via CDI @RequestScoped bean; today, i started and completed refactoring, replaced CDI @RequestScoped bean with @Singleton @Lock(WRITE) @AccessTimeout(2 minutes, even though that's not necessary), and the implementation includes @Schedule method on another @Singleton @Lock(WRITE) which invokes everything, and bean uses TomEE's simple MDB (ActiveMQ/JMS) to post/send message, MDB references the newly-converted @Singleton @Lock(WRITE) bean which references @Stateless EJBs to insert data into multiple tables. The stack is FAST on my development server and FASTER on production server!

PrimeFaces used to keep me glued to my seat almost 24/7, now TomEE is where my interest/focus is, wanting to improve the app via TomEE!!!!!!!!!!
Add a comment...

Jörg Jans

User Stories  - 
 
To be honest I never liked Java very much. For fat clients to ugly and for web applications to complicated. Too much specifications, ...Intf and ...Impl and therefore very difficult to read, implement and maintain (my opinion).

We started our project with Tomcat, GWT and what looked like a ton of different frameworks. I tried a few times to get into the code but every time I failed and decided to stay with my other projects. To push up my skills I read some books and went to a "Airport Hacking"-Workshop of +Adam Bien. That was really great stuff and I didn't understand why we couldn't use Java EE. We evaluated the usual open source servers which were available at that point but they all had too much overhead for our application.

Shortly after the release of TomEE 1.0 one of our programmers took a look into it and tried to migrate the project. The farther he went the greater was his enthusiasm. "This is so easy!". "I can make a bean out of this and inject it every where I need it". "I got rid of almost all interfaces". "The admin masks with JSF can be done so fast" 

What should I say? After (almost) everything was migrated I started to take a closer look at the new implementation and got a really fast entry. The code is much leaner and the application much faster and more stable. The communication between the different modules is easier and there is no overhead at all.

We moved almost every setting from different xml files to the ldap server and implemented the needed editors with jsf (what always took a great amount of time with GWT) very quickly. We can define data sources on the fly and activate them immediately via the JdbcManager. The operation team is very happy that there are no more server restarts needed after the change of internal settings. With the JMX beans we can easily display the main internal states within our application.

The switch to TomEE was the best decision we made this year. After a short time the efforts for the migration have paid off. We're really looking forward to the 1.5 release.
4
Rob Williams's profile photoDavid Blevins's profile photo
3 comments
 
Great post. I like the stuff about moving config out of XML. Maybe you can do a separate post about that? Good idea. I have thought about that problem a lot, and possibly having a system for stubbing those config items and the needed corresponding admin ui.
Add a comment...

Howard Smith

User Stories  - 
 
Where do I start???

I am loving TomEE, especially what I have learned and gained from TomEE committers and user group (along with other Apache user groups)!!!

Some months ago, I migrated my app from Mojarra to MyFaces Core (for performance reasons...of course), and I saw this blog, 'Why is OpenWebBeans so fast?'. That peeked my interest, since I want my JSF web app to run really fast on 10-year-old hardware (and operating system)... Windows Server 2003 32bit 4GB RAM server.

Also, I read that it's best to get away from JSF-managed-beans and migrate to CDI managed beans.

Some time went by, I really wanted to use PrimeFaces Push (powered by Atmosphere/websockets), I tried and tried, spent many hours, tried to get it working with Glassfish, and then I tried to load my app in Tomcat7.0.32, since I heard PrimeFaces Push works really well with Tomcat. After many hours/days, I failed on both accounts, but I did not give up entirely.

Little later, I learned that TomEE = OpenWebBeans and Tomcat, which really meant, CDI and PrimeFaces Push for me. Soooo, I began to migrate my JSF-managed-bean app to CDI-managed-bean web app. I had some difficulties starting my CDI-managed-bean web app on Glassfish3.1.2.2/WELD, so I decided to give TomEE a try.

Downloaded TomEE 1.5.0, which I learned 'very quickly' that it had an issue with Windows directories, and the solution was TomEE 1.5.1 SNAPSHOT, so I downloaded TomEE 1.5.1 SNAPSHOT, joined TomEE/openejb user group, and started asking question after question. TomEE committers (Mark, Romain, David, and others) came to the rescue, and stayed there to get me out of the quicksand. :)

At first, TomEE was running my CDI-managed-bean web app soooo much slower than Glassfish3.1.2.2/JSF-managed-beans web app. So, TomEE committers advised me on a few points to improve performance of the web app (eliminate or minimize rendered="#{EL expression}" in xhtml pages, and use single transaction, or improve my database layer/access). So, I spent some time doing just that, and finally, TomEE/CDI-managed-bean web app is running just as fast (and maybe even faster than) the Glassfish3.1.2.2/JSF-managed-beans version of my web app!!!

First, I went through and migrated from dynamic SQL to named queries, and added eclipselink query hints to my JPA query logic. Then, I set out to replace rendered="#{EL expression}" with new facelets and ui:include src="#{EL expression}", and voila, TomEE/CDI is now running faster than Glassfish3.1.2.2/JSF-managed-beans!

I fully recommend TomEE, because of their product and their people/committers. I also like the TomEE Examples and Documentation pages. Most of all, I like that I can ask a question, and more than likely, I will get a response 'every time'. I am really learning a lot by being a part of TomEE user group as well as other Apache user groups.
3
Jean-Louis MONTEIRO's profile photoHoward Smith's profile photo
4 comments
 
You're welcome, thanks for the response!
Add a comment...

Jonathan Fisher

User Stories  - 
 
Fun User Story: I used Apache TomEE and CDI events to implement a lightweight and fast ESB. Endpoints were exposed using JAX-RS annotations and I used the Jersey client for delivery to downstream services.

The marketing director, impressed with the capabilities of the system, asked if he could be showered with confetti or have strobe lights go off when messages entered the bus.

This was a pretty easy accomplishment using a RaspberryPi, Java8, the WiringPi library, and of course TomEE. After a trip to Home Depot on drunken saturday night with my civil engineer buddy, we assembled a 7 foot air cannon. We used an electronically controlled sprinkler valve to release the air and a few relays and other supporting electronic components.

The Apache TomEE instance on the RaspberryPi was setup to connect to the ActiveMQ broken on our production system and listen on a messaging Topic. Anyway, enjoy the pix:
10
1
Martijn Bos's profile photoJonathan Fisher's profile photoNicolas Frankel's profile photo
2 comments
 
Haha, he shat-ted his pants
Add a comment...

Ron Smits

User Stories  - 
 
I have no idea if people are in any way interested in this. I started a stupid little small project to play a bit with some ideas. It combines Tomee, REST and Jade and is intended to run on my PI you can check it out here:
4
Ron Smits's profile photoHoward Smith's profile photo
17 comments
 
well the grief did not come from tomee. It came from Jade. Read http://ron-smits.blogspot.nl/2013/01/jade4j-is-not-ready-bummer.html why. I switched to my all favourite wicket and now it runs like a charm and still on the raspberry.
Add a comment...

Guglielmo Moretti

User Stories  - 
 
I started to play with Tommy when it was young, very young.... It was just 0.9.0 versions old! Was quite hard to look forward to... But as soon as it grews up I really felt myself kind of "familiar" (got it?) with it.. I really felt I was dealing with the old tomcat I used to know! Really appreciating your work! Keep on this way! 
3
David Blevins's profile photoHoward Smith's profile photo
2 comments
 
First a kitten, then a cat, tomorrow a tiger???? WOW, I like that...a lot, and gives me something to look forward to, and I know TomEE (committers and 'users') can get TomEE there/matured...as a grown tiger!!! So, I'll also expect to see favicon change to tiger as well!!! TomEE is definitely tom-cat-on-steriods. tomcat-on-steroids = TIGER!!! :)

This just reminded me of Jaguar CTS, back in my Sybase/PowerBuilder/E.A.Server days. I was going to say instead of TomEE being 'tiger', it could be a 'jaguar' since TomEE is definitely all Java ('J' for java, 'J' for jaguar), but maybe we should just stick with the big cat... tiger, or whatever you all think is best. :)
Add a comment...