Obtice
Obtice

Reputation: 1269

Deploying portlet needs restarting tomcat server in liferay

I have a portlet that has some libraries that I put them in lib->ext folder. Every time I want to do some changes in code and deploy it to server, portal server show classnotfound exception and I can't run my portlet until I restart server. classnotfound every time is different. For portlets that don't have any libs in lib->ext folder, I don't have such problem. I run Liferay 6.2.5 .

How can I resolve this ?

Upvotes: 0

Views: 455

Answers (1)

Olaf Kock
Olaf Kock

Reputation: 48057

Classes in tomcat's lib/ or lib/ext folder always require a restart of Tomcat. I'm assuming that these are updated with deployment as well - it doesn't work this way.

I'm suggesting that you keep these classes in your portlet's WEB-INF/lib - at least during development time - and only move them to the global classpath once they're stable.

If you'd update to Liferay 7, you'd be a lot more flexible: When packaged as an OSGi bundle, your components will be truly hot-deployable.

Another option would be to use a tool/JVM that does support the hot replacement of classes - e.g. JRebel (disclaimer: I've not used it myself)

Upvotes: 2

Related Questions