Migrating JEE Applications to Apache Tomcat: Planning the Migration

posted by avanabs on June 14, 2010 10:14 AM

In recent blogs, I've been discussing a major change in the IT server applications environment, specifically the transition away from last decades JEE Application Servers and "mega-blob" applications architectures. Increasingly, we see applications being assembled, leveraging collections of services...both local and remote, sometimes even very remotely in "the cloud" (more on that in future blogs).

This time I'll be talking about planning the migration process. Perhaps the most important step when considering migration of applications from one environment to another is planning. While our temptation is typically to jump in and start coding, it is critically important to understand the objectives and benefits, assess the risks and costs, and then make the business decision. Yup, it's a "business decision", mainly because migrating a running application from one infrastructure to another affects so many areas of the IT organization, plus it can impose risks for the users. There are many successful migration projects and one common characteristic I always find is that the up front planning process was completed and socialized before launching the actual project.

Planning the Migration Process

Most IT organizations considering migrating applications from JEE to light weight environments such as Tomcat will be focusing on a relatively small subset of their existing applications, at least initially. This is a very good idea because it provides the opportunity to take smaller steps and to assess the results incrementally. Do not underestimate the cost of the learning curve associated with any infrastructure changes.

In many cases, a low impact application, or one with reduced technical risk, is a better choice for early migration than to tackle a high visibility mission critical application. This allows us to understand the technologies, build an effective process, and create comfort on the part of management, development teams, and users alike. Unfortunately, in some cases the business needs are such that the IT organization does need to migrate a large JEE application. In that case it is critical to carefully plan the migration, take it step by step, and above all be realistic about the time and effort the migration may take. While it does happen that large scale complex applications migrate smoothly, they are rarely “plug and play”, even between JEE servers from various vendors, and virtually never when migrating to a different infrastructure, such as Tomcat.

Focus on the long term as well as the short term. Understand scope, complexity, and technical challenge. Migrating a codebase involves more than simple direct effort cost. Consider both legacy issues and expected new, “greenfield” development as part of the analysis.

Technology/Architecture Vision

It's really important for the cross function decision team to form a cohesive technology and architecture vision for the organization that addresses these factors:

  • Migration criteria and process for legacy applications
  • Best practice technology, architecture, and process for new development
  • Application server (or in the case of Tomcat, additional services) licensing costs
  • Cost of managing the new Tomcat environment, compared with the current JEE application servers
  • Resource utilization, hardware, and environment (space, power, HVAC, etc) costs.
  • Complexity and direct cost of migration effort, including, where code refactoring is needed, a thoughtful balance between “minimal effort” and “best practice” conversion. This is an area where migration costs can skyrocket, without corresponding benefit.

Don't Assume JEE Migration is Impossible

Fortunately, vendor and customer studies have shown that most applications actually only utilize a small portion of the suite of services provided by JEE Application Servers. This means that while the JEE application server infrastructure has all the capability to do practically everything for anybody (market forces drive this, with a very few extremely demanding customers driving the feature sets), they have become so huge and complicated that JEE Application Servers may not be a particularly good choice for any one application.

With Tomcat, you have to opportunity to select the add-on services you need and leave out all those you don’t need, significantly reducing complexity, cost, and computing overheads. Tomcat provides an excellent environment for today’s improved application environments, such as Spring.

Assessing Applications for Migration

Group candidate applications by the amount of refactoring effort. Assuming no specific external requirements or pressures, it is best to begin migration with those applications that require the least effort. Every company or individual will have their own criteria, but as an example, consider this grouping:

  • Minimal effort
    • One day or less of work
    • Runs-as is (packaged as WAR, no use of unsupported APIs).
    • Testing effort only (but DO NOT underestimate this!)
  • Low effort
    • Several days to two weeks of work
    • Few changes, plus testing effort
  • High effort
    • Many weeks or months of work
    • Extensive changes to many/most modules, perhaps even to architecture

Minimal effort migration projects are relatively unusual (although they do happen, particularly in services architectures) for applications hosted on JEE servers, but it is also fairly common to discover a module/component that can be abstracted relatively easily and provide disproportionate benefit. Assess the level of effort in these areas:

  • Java EE APIs used- This seriously raises the effort, but a remarkable number of the applications running on JEE Application Servers use no JEE API what-so-ever
  • Third-party libraries- Many IT organizations have widely used libraries and frameworks on their JEE Application Servers, often associated with DBMS, links to business applications, etc. The good news is that many of these are supported on Tomcat...and frequently ship with Tomcat by default.
  • Packaging- Typically, JEE Applications will have to be completely re-packaged for Tomcat. While Tomcat is in many ways simpler, it is also different., which can add a surprisingly large amount of effort
  • Types and Number of Components- Sometimes the shear volume of working parts can seriously affect the migration effort, particularly for "mega-blob" applications.
  • Code Quality Assessment- Initial code quality seriously affects migration, particularly factors such as coupling, layering, and so on.
  • Maintenance and Manageability History- If the application was difficult to administer on a JEE server, this is frequently an indicator that the application is fragile, so your "migration" can become a "re-write". That may be a justified decision, but everyone involved should note the scope is beyond mere migration. I know one application being migrated from jBoss to Tomcat where the "re-write" requirement discovered during the initial migration assessment more than trippled the project scope.

Migration Complexity Factors

Several factors contribute to application migration complexity, when migrating applications from a full-stack Java EE environment to a Tomcat environment. The following table may be helpful in assessing the relative complexity. Your mileage may vary!

Documentation Migration Complexity
Good documentation with clear understanding of existing code, database, and requirements. Low complexity
Poor documentation and/or lack of clear understanding of existing code, database, or requirements. Medium-to-high complexity
Architecture Migration Complexity
Well-architected, layered application. Low complexity
Organically grown, non-layered code and architecture, combined with need to refactor. Low-to-medium complexity
Technologies Migration Complexity
Familiarity with Tomcat and/or lightweight application deployment technologies such as Spring Framework. Low complexity
Strong organizational support of legacy EJB and full stack Java EE technologies; Tomcat and/or lightweight technologies such as Spring Framework. Medium complexity
Integration Migration Complexity
No integration with proprietary application server frameworks or APIs. Low complexity
Integration with proprietary application server frameworks or APIs. Low to high complexity depending on extent of usage
EJBs Migration Complexity
No reliance on session EJBs, or reliance only on a straightforward use of session EJBs, for example, in a small quantity or delegating to plain old Java objects (POJOs). Low complexity
Heavy use of session EJBs. Medium complexity
Reliance on stateful middle tier clustering (stateful session EJBs). Medium complexity
Need for distributed transactions. Medium-to-high complexity
Straightforward DAO-based database access (using either JDBC or ORM). Low complexity
Reliance on entity beans. Medium-to-high complexity depending on amount of code
Servlet-spec security usage. Low complexity
Declarative EJB (container-managed) security usage. Medium complexity, or low-to-medium complexity if refactoring to Spring Security

Once application targets are selected and the above analysis is completed, or at least well underway, it is time to rank the targeted applications by cost and benefit. As noted, some of these will be readily measurable, but many are not. In practice it is difficult to assign numeric values, but it is useful to organize the assessment into a comparison chart with best estimates for each task. Experience shows that it's not poor estimates that fracture project plans, but rather the things that never got estimated in the first place.

In my next blog, we will dig deeper into the technologies involved in the JEE Application Server to Tomcat migration process, including a fairly detailed (I hope) review of differences between JEE Application Servers and Tomcat regarding the JEE standards.

Andy has recently decided to make the jump from individual consulting to join the Spring Source team. He will continue to be working with major clients to assist them with IT architecture evolution, now as a member of a large and growing organization. His first project will be leveraging Tomcat, Spring, and a Tomcat based data grid/cache called GemFire. He’s looking forward to sharing the lessons learned with the tomcatexpert community. Andy has been architecting, designing, and building enterprise infrastructure and applications software for most of his career. He’s been responsible for BEA’s “Blended Source” initiative, combining the best of Open Source (including both Tomcat and Spring) with WebLogic, BEA’s WebLogic Enterprise Security product family, MEI Software’s financial systems, Netegrity’s SiteMinder security product, Camex’s electronic publishing systems, mainframe applications for Bell Telephone, and many others. During that time his hands on technology experience has ranged from octal coding into neon lighted switches all the way through JAVA and beyond, including many generations of “the best and final thing we will ever need”, and he looks forward to working on the even better things coming in the future. He was involved in the early days of Open Source software as a contributor to EMACS and refocused on Open Source during his tenure as Director of Product Management with BEA Systems, combined with a fascination for the rapidly evolving application deployment architectures and technologies driving today’s development. Andy has provided architecture and technology guidance for both vendors and IT organizations and he shares what he is learning through consulting services and through his web site, Enterprise Software Trends (


You have shared an

You have shared an informative post. I have tried many ways to do this process but I didn’t get a better result. I think this method that you have shared is much better. So I am going to try that. Keep updating! sell amex points


Obat Herbal Gagal Ginjal
==>Di dalam keadaan yang cukup memprihatinkan, Saya mendapat informasi kalau ada Obat Herbal Gagal Ginjal terbuat dari kulit manggis yang mampu proses penyembuhan sakit ginjalnya. Tidak ragu lagi saya segera mungkin menghubungi kantor Amazon Alami yang bertempat di Jakarta hanya untuk membeli produk herbal tersebut. Setelah mendapatkannya, beliau konsumsi sebanyak tiga puluh ml, tiga kali per hari, ditambah teh Murbei, satu x setiap pagi hari dengan dosis lebih kental. Dengan tempo sepuluh hari bengkak-bengkak pada badan mulai kempes, rasa sakitnya pun tidak sakit lagi. Suatu situasi yang belum pernah ia alami sebelumnya mengkonsumsi Obat Herbal Gagal Ginjal . Setelah obat dokter habis serta terlambat cuci darah, kondisinya pasti langsung menurun, namun sekarang telah hadir Obat herbal Amazon serta teh Murbei yang selalu menjadi teman hidup saya. Mulailah mulailah hidup sehat dan minum Obat sakit ginjal Tradisional.

Obat Herbal Jantung Bengkak
==>Penjualan Obat Herbal Penyakit Jantung Bengkak Amazon Minuman Kesehatan Obat Herbal Sakit Jantung Bengkak}
Apa anda tahu pengertian dari Sakit Jantung Bengkak?
Penyakit Jantung Bengkak, menyerang pada jantung itu sendiri. Jantung yang terserang penyakit ini kebanyakan dikarenakan adanya penyumbatan pada pembuluh darah pada jantung menyebabkan jantung mengalami pembesaran, secara tidak normal, mengakibatkan kekuatan jantung untuk memompa darah semakin lemah. Untuk kasus penyakit jantung bengkak, obat herbal Penyakit Jantung Amazon jus manggis salah satu pilihan yang paling tepat dalam mengobati penyakit jantung bengkak.

Obat Herbal Jantung Koroner
==>Amazon Adalah Obat Alami Jantung Koroner Terampuh
Jenis penyakit jantung koroner yakni salah satu yang menyebabkan angka kematian tertinggi di seruluh Dunia maupun di Negara Indonesia. Penyakit ini sering mengakibatkan kematian mendadak dan tanpa adanya tanda-tanda yang terasa.

easy going

These days it's easy to

These days it's easy to expand or to start a new business, all you have to do is to take advantage of the latest technological innovations. Aside from such migration applications, the oversea sales are another important aspect, that can help a company increase their revenue, while the competitors lag behind.


hack real racing 3 android Acknowledges for paper such a beneficial composition, I stumbled beside your blog besides decipher a limited announce. I want your technique of inscription... gems gratuit clash of clans

An impressive share! I have

An impressive share! I have just forwarded this onto a coworker who has been doing a little research on this. And he in fact ordered me lunch because I found it for him... lol. So allow me to reword this.... Thanks for the meal!! But yeah, thanx for spending time to discuss this subject here on your web page.
Mortgage Broker Calgary

An interesting discussion is

An interesting discussion is worth comment. I believe that you need to publish more about this issue, it might not be a taboo subject but generally folks don't discuss these topics. To the next! Kind regards!!
Edmonton Mortgage Broker
Life Insurance Vancouver
Life Insurance Calgary

thanks for j sharing with

thanks for j sharing with that awesome articles thanks u a lot
rasoio elettrico | regolabarba | ferro da stiro con caldaia | Friggitrice ad Aria | scopa a vapore | ripetitore wifi | ripetitore wifi amplificatore wifi piastra a vapore | miglior aspirapolvere | skateboard elettrico | passeggino leggero | miglior smartphone | tablet per bambini i(-hh


Very true!! Our company is also planning to migrate from JEE to light weight environments. Tomcat would be a great suggestion for our company and I would suggest your name with the team who work on the same. Thanks for sharing this useful medical billing companies in california information.

People who are interested in

People who are interested in migration to any other country must hire a lawyer. If you will try to manage every thing yourself you won't be able to fulfill all legal requirements. While managing on time essay for a client on migration issues I have contacted few people to know about their experience and they all suggested to discuss with migration lawyers.

Gone are the days when one

Gone are the days when one has to move actually to visit betting houses by the use of a car with valet vehicle parking - and after that being provided with all of the requirements and circumstances of the land-based betting house great site.

To do effective SEO, you have

To do effective SEO, you have to address all of these factors, and having a lot of hyperlinks is just one little piece of the challenge. Also, each weblink has its own high quality Most Popular Retail Brands In India .

Re: Apache Tomcat

There were so many things to know about this Tomcat and I am reading articles on the same on daily basis. Each day I visit this site and I will learn some lesson on Tomcat series. Thank you sharing such informations with us.
at&t internet plans

This is a smart blog. I mean

This is a smart blog. I mean it. You have so much knowledge about this issue, and so much passion. You also know how to make people rally behind it, obviously from the responses moonworlds.

It's, in a variety of ways, a

It's, in a variety of ways, a a microcosm of Pakistan a culturally involved specforce alpha Todd Lamb, youthful and rich country however it simultaneously increases the failings on the daily schedule.

Positive site, where did u

Positive site, where did u come up with the information on this posting? I'm pleased I discovered it though, ill be checking back soon to find out what additional posts you include e juice.

If done properly, the

If done properly, the outcomes of your SEO efforts are very impressive. Those who exercise what some refer to as "ethical" and "correct" SEO are known as White-colored Hat SEO's her explanation. The most significant for SEO is to adhere to the guidelines and you won't have anything to worry about .

An excellent assurance should

An excellent assurance should not only appeal to the bottom emotion of a prospective purchaser, but it should also afford some actual protection that the purchasing he or she is creating will provide significant outcomes. Many of the most well-known kinds of assured SEO do not, and that's a shame browse around this site.

The right combination of

The right combination of search phrases an internet-based promotion boosts item sales, attract clients and grow your business exponentially - both on and offline browse around this site.

What does this all mean? To

What does this all mean? To sum up, Seomoz informed its a large number of supporters that "Keyword solidity has NO PART in SEO Website.

Whoever has seen deeply into

Whoever has seen deeply into the world has doubtless divined what wisdom there is in the fact that men are superficial. It is their preservative instinct which teaches them to be flighty, lightsome, and false. Here and there one finds a rolex submariner passionate and exaggerated adoration of "pure forms" in philosophers as well as in artists: it is not to be doubted that whoever has NEED of the cult of the superficial to that extent, has at one time or another made an unlucky dive BENEATH it. Perhaps there is even an order of rank with respect to those burnt children, the born artists who find the enjoyment of life only in trying to FALSIFY its image rolex datejust (as if taking wearisome revenge on it), one might guess to what degree life has disgusted them, by the extent to which they wish to see its image falsified, attenuated, ultrified, and deified,—one might reckon the homines religiosi among the artists, as their HIGHEST rank.

It is the profound, suspicious fear of an incurable pessimism which compels whole centuries breitling to fasten their teeth into a religious interpretation of existence: the fear of the instinct which divines that truth might be attained TOO soon, before man has become strong enough, hard enough, artist enough.... Piety, the "Life in God," regarded in this light, would appear as the most elaborate and ultimate product of the FEAR of truth, as artist-adoration and artist-intoxication in presence of the most logical of all falsifications, as the will to the inversion of truth, to untruth at any price. Perhaps there has hitherto been no more effective means of beautifying man than piety, by means of it man can oyster perpetual air-king become so artful, so superficial, so iridescent, and so good, that his appearance no longer offends.

To love mankind FOR GOD'S SAKE—this has so far been the noblest and remotest sentiment to which mankind has attained. That love to mankind, without any redeeming intention in the background, is only an ADDITIONAL folly and brutishness, that replica burberry handbags the inclination to this love has first to get its proportion, its delicacy, its gram of salt and sprinkling of ambergris from a higher inclination—whoever first perceived and "experienced" this, however his tongue may have stammered as it attempted to express such a delicate matter, let him for all time be holy and respected, as the man who has so far flown highest and gone astray in the finest fashion000008!

There is nothing quite so

There is nothing quite so unpleasant to wake up to as the sound of a baton hitting a window beside your head. Take it from one who knows by experience dog insurance

Once application targets are

Once application targets are selected and the above analysis is completed, or at least well underway, it is time to rank the targeted applications by cost and benefit. As noted, some of these will be readily measurable, but many are not. attorney mm to inches inche to cm In practice it is difficult to assign numeric values, but it is useful to organize the assessment into a comparison chart with best estimates for each task. Experience shows that it's not poor estimates that fracture project plans, but rather the things that never got estimated in the first place.

Excellent published content.

Excellent published content. It will be helpful to anyone who uses it. such as me. Keep doing what you are doing – can’r delay to study more content lånekalkulator forbrukslån.

This is extremely

This is extremely information, sharp and obvious. I think that everything has been described in methodical way so that audience could get highest possible details and discover many factors gta 5 sifre.

very nice

Visit this site and I will learn some lesson on Tomcat series. Thank you sharing such informations with us.big diabetes lie Review


Thanks for the meal! But yeah, thanx for spending time to discuss this subject here on your web page. the flat belly fix program


Thanks for such post and please keep it up. Great wor. fungus terminator system overview


xender for pc
whatsapp for pc

payday loans oceanside

Appreciate it on your time to construct and see your four-legged friend. It might possibly be on the list of superior areas we have now received long. Currently follow-up payday loans oceanside With thanks rather undoubtedly.

Useful info

I have read your post and came to know that JEE applications are migrating to Apache Tomcat. Actually this is a new information to me. Thank you for providing this valuable piece of information. Expecting more useful blogs like this. Dementia Care

Happy to hear about the

Happy to hear about the migration process from JEE APPLICATIONS TO Apache Tomcat. This will be a great asset to most of the IT organizations that can be very helpful in using lightweight environment like Tomcat. It can be very helpful for the programmers to take smaller steps to run the program. server racks

Post new comment

This question is for testing whether you are a human visitor and to prevent automated spam submissions.