Discussion:
[Lift] Lift no longer compatible with Tomcat, trying to investigate.
Flavian Alexandru
2018-09-23 20:10:56 UTC
Permalink
Hi, this is more of a casual notice, but there appear to have been
divergences between the latest Lift and Tomcat, somehow in the core Servlet
API things have been made incompatible to the point which Lift can no
longer load. Boot.scala is never called, and even a topline println
statement wouldn't get triggered, in spite of no errors.

The major use case I can think of is native webapp deployment support from
Amazon EC2, which we have been running in prod for years. Two interesting
avenues could potentially diverge.

1. Is there any possibility to run Lift on top of Netty? Are there any such
ongoing efforts? They may well provide a welcome increase in the adoption
curve of Lift, so people who appreciate its beauty are not confined to use
a low quality half Java piece of software like Play. There are many many
things Lift does a lot better, but of course the enterprise adoption curve
of Play has definitely helped with supportability.

2. Is there any scope to include Tomcat testing in Lift releases by
default? Anyone running AWS EC2 Java/Tomcat will be left with a non working
app. There are no meaningful error logs, what I think is happening is
pretty bland, namely the init sequence in Tomcat has somehow changed to the
point where Lift is never triggered. You get a blank error log with no apps
running, but this could well be symptoms localised to my machine.

This has "worsened" over the past few releases, in the sense that before it
was only the CSP acting out, now it seems Lift doesn't get loaded at all.

The fix locally was super simple, use Jetty, and everything worked just as
expected, using:

addSbtPlugin("com.earldouglas" % "xsbt-web-plugin" % "4.0.2")
--
--
Lift, the simply functional web framework: http://liftweb.net
Code: http://github.com/lift
Discussion: http://groups.google.com/group/liftweb
Stuck? Help us help you: https://www.assembla.com/wiki/show/liftweb/Posting_example_code

---
You received this message because you are subscribed to the Google Groups "Lift" group.
To unsubscribe from this group and stop receiving emails from it, send an email to liftweb+***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Juan Jose Olivera
2018-09-23 20:18:46 UTC
Permalink
Thats odd, i am runing currently a couple of lift apps on aws elástica bean
stalk with out problemas, maybe a full log file Will be useful to track the
issue.
Post by Flavian Alexandru
Hi, this is more of a casual notice, but there appear to have been
divergences between the latest Lift and Tomcat, somehow in the core Servlet
API things have been made incompatible to the point which Lift can no
longer load. Boot.scala is never called, and even a topline println
statement wouldn't get triggered, in spite of no errors.
The major use case I can think of is native webapp deployment support from
Amazon EC2, which we have been running in prod for years. Two interesting
avenues could potentially diverge.
1. Is there any possibility to run Lift on top of Netty? Are there any
such ongoing efforts? They may well provide a welcome increase in the
adoption curve of Lift, so people who appreciate its beauty are not
confined to use a low quality half Java piece of software like Play. There
are many many things Lift does a lot better, but of course the enterprise
adoption curve of Play has definitely helped with supportability.
2. Is there any scope to include Tomcat testing in Lift releases by
default? Anyone running AWS EC2 Java/Tomcat will be left with a non working
app. There are no meaningful error logs, what I think is happening is
pretty bland, namely the init sequence in Tomcat has somehow changed to the
point where Lift is never triggered. You get a blank error log with no apps
running, but this could well be symptoms localised to my machine.
This has "worsened" over the past few releases, in the sense that before
it was only the CSP acting out, now it seems Lift doesn't get loaded at all.
The fix locally was super simple, use Jetty, and everything worked just as
addSbtPlugin("com.earldouglas" % "xsbt-web-plugin" % "4.0.2")
--
--
Lift, the simply functional web framework: http://liftweb.net
Code: http://github.com/lift
Discussion: http://groups.google.com/group/liftweb
https://www.assembla.com/wiki/show/liftweb/Posting_example_code
---
You received this message because you are subscribed to the Google Groups "Lift" group.
To unsubscribe from this group and stop receiving emails from it, send an
For more options, visit https://groups.google.com/d/optout.
--
--
Lift, the simply functional web framework: http://liftweb.net
Code: http://github.com/lift
Discussion: http://groups.google.com/group/liftweb
Stuck? Help us help you: https://www.assembla.com/wiki/show/liftweb/Posting_example_code

---
You received this message because you are subscribed to the Google Groups "Lift" group.
To unsubscribe from this group and stop receiving emails from it, send an email to liftweb+***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Matt Farmer
2018-09-23 21:56:16 UTC
Permalink
Hey folks,

I’d love to know what versions of Lige y’all are both using- especially if
it’s the same one! :)

Lift not getting invoked sounds like an issue finding web.xml in the WAR in
absence of any other errors. We haven’t made any changes to the core
request handler in awhile. Anything interesting about how your WAR is built?

AFAIK - We do not have any kind of integration test around “jetty and
tomcat can boot a sample app,” but I would wholeheartedly welcome one.

Re: switching to netty - that is certainly worth some consideration.
Post by Juan Jose Olivera
Thats odd, i am runing currently a couple of lift apps on aws elástica
bean stalk with out problemas, maybe a full log file Will be useful to
track the issue.
Post by Flavian Alexandru
Hi, this is more of a casual notice, but there appear to have been
divergences between the latest Lift and Tomcat, somehow in the core Servlet
API things have been made incompatible to the point which Lift can no
longer load. Boot.scala is never called, and even a topline println
statement wouldn't get triggered, in spite of no errors.
The major use case I can think of is native webapp deployment support
from Amazon EC2, which we have been running in prod for years. Two
interesting avenues could potentially diverge.
1. Is there any possibility to run Lift on top of Netty? Are there any
such ongoing efforts? They may well provide a welcome increase in the
adoption curve of Lift, so people who appreciate its beauty are not
confined to use a low quality half Java piece of software like Play. There
are many many things Lift does a lot better, but of course the enterprise
adoption curve of Play has definitely helped with supportability.
2. Is there any scope to include Tomcat testing in Lift releases by
default? Anyone running AWS EC2 Java/Tomcat will be left with a non working
app. There are no meaningful error logs, what I think is happening is
pretty bland, namely the init sequence in Tomcat has somehow changed to the
point where Lift is never triggered. You get a blank error log with no apps
running, but this could well be symptoms localised to my machine.
This has "worsened" over the past few releases, in the sense that before
it was only the CSP acting out, now it seems Lift doesn't get loaded at all.
The fix locally was super simple, use Jetty, and everything worked just
addSbtPlugin("com.earldouglas" % "xsbt-web-plugin" % "4.0.2")
--
--
Lift, the simply functional web framework: http://liftweb.net
Code: http://github.com/lift
Discussion: http://groups.google.com/group/liftweb
https://www.assembla.com/wiki/show/liftweb/Posting_example_code
---
You received this message because you are subscribed to the Google Groups "Lift" group.
To unsubscribe from this group and stop receiving emails from it, send an
For more options, visit https://groups.google.com/d/optout.
--
--
Lift, the simply functional web framework: http://liftweb.net
Code: http://github.com/lift
Discussion: http://groups.google.com/group/liftweb
https://www.assembla.com/wiki/show/liftweb/Posting_example_code
---
You received this message because you are subscribed to the Google Groups "Lift" group.
To unsubscribe from this group and stop receiving emails from it, send an
For more options, visit https://groups.google.com/d/optout.
--
--
Lift, the simply functional web framework: http://liftweb.net
Code: http://github.com/lift
Discussion: http://groups.google.com/group/liftweb
Stuck? Help us help you: https://www.assembla.com/wiki/show/liftweb/Posting_example_code

---
You received this message because you are subscribed to the Google Groups "Lift" group.
To unsubscribe from this group and stop receiving emails from it, send an email to liftweb+***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Flavian Alexandru
2018-09-27 13:30:57 UTC
Permalink
I'll try to find the bandwidth to include some container tests via the web
plugin, though I have never contributed to Lift before which may make it a
slow learning curve of where everything is.

It could probably be extremely meaningful to do that, since right now as
far as I know you need a servlet container to deploy your Lift app, making
it a fundamental requirement in the test suite of the framework. I think
this is also Tomcat version related, since it worked better in previous
versions, and Amazon upgraded their infrastructure causing it to start
breaking.

The Netty change is a big one, but it could be a great way to go fully
async by default on core HTTP functionality, and deploy fat jars in
containers. I feel this selling point could add some marketing prowess to
Lift, as it's been notoriously difficult at least on my part to convince
clients and teams to get on board in a diverging deployment model.
Post by Matt Farmer
Hey folks,
I’d love to know what versions of Lige y’all are both using- especially if
it’s the same one! :)
Lift not getting invoked sounds like an issue finding web.xml in the WAR
in absence of any other errors. We haven’t made any changes to the core
request handler in awhile. Anything interesting about how your WAR is built?
AFAIK - We do not have any kind of integration test around “jetty and
tomcat can boot a sample app,” but I would wholeheartedly welcome one.
Re: switching to netty - that is certainly worth some consideration.
Post by Juan Jose Olivera
Thats odd, i am runing currently a couple of lift apps on aws elástica
bean stalk with out problemas, maybe a full log file Will be useful to
track the issue.
Post by Flavian Alexandru
Hi, this is more of a casual notice, but there appear to have been
divergences between the latest Lift and Tomcat, somehow in the core Servlet
API things have been made incompatible to the point which Lift can no
longer load. Boot.scala is never called, and even a topline println
statement wouldn't get triggered, in spite of no errors.
The major use case I can think of is native webapp deployment support
from Amazon EC2, which we have been running in prod for years. Two
interesting avenues could potentially diverge.
1. Is there any possibility to run Lift on top of Netty? Are there any
such ongoing efforts? They may well provide a welcome increase in the
adoption curve of Lift, so people who appreciate its beauty are not
confined to use a low quality half Java piece of software like Play. There
are many many things Lift does a lot better, but of course the enterprise
adoption curve of Play has definitely helped with supportability.
2. Is there any scope to include Tomcat testing in Lift releases by
default? Anyone running AWS EC2 Java/Tomcat will be left with a non working
app. There are no meaningful error logs, what I think is happening is
pretty bland, namely the init sequence in Tomcat has somehow changed to the
point where Lift is never triggered. You get a blank error log with no apps
running, but this could well be symptoms localised to my machine.
This has "worsened" over the past few releases, in the sense that before
it was only the CSP acting out, now it seems Lift doesn't get loaded at all.
The fix locally was super simple, use Jetty, and everything worked just
addSbtPlugin("com.earldouglas" % "xsbt-web-plugin" % "4.0.2")
--
--
Lift, the simply functional web framework: http://liftweb.net
Code: http://github.com/lift
Discussion: http://groups.google.com/group/liftweb
https://www.assembla.com/wiki/show/liftweb/Posting_example_code
---
You received this message because you are subscribed to the Google Groups "Lift" group.
To unsubscribe from this group and stop receiving emails from it, send
For more options, visit https://groups.google.com/d/optout.
--
--
Lift, the simply functional web framework: http://liftweb.net
Code: http://github.com/lift
Discussion: http://groups.google.com/group/liftweb
https://www.assembla.com/wiki/show/liftweb/Posting_example_code
---
You received this message because you are subscribed to the Google Groups "Lift" group.
To unsubscribe from this group and stop receiving emails from it, send an
For more options, visit https://groups.google.com/d/optout.
--
--
Lift, the simply functional web framework: http://liftweb.net
Code: http://github.com/lift
Discussion: http://groups.google.com/group/liftweb
Stuck? Help us help you: https://www.assembla.com/wiki/show/liftweb/Posting_example_code

---
You received this message because you are subscribed to the Google Groups "Lift" group.
To unsubscribe from this group and stop receiving emails from it, send an email to liftweb+***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Loading...