Closed GoogleCodeExporter closed 9 years ago
Hello, in fact winstone see all classes under lib directory, but some package
like "org.apache.log4j" and "org.slf4j" are not exposed to webapp (in order to
avoid some issue when an application use his own log framework).
You have to add your log framework under your application folder web-inf/lib
Original comment by jguibert@gmail.com
on 4 Apr 2014 at 3:33
That is what I reported, the jars in the lib directory are not accessible to
the web applications. If this is the intention that's fine and easy to work
around. In that case, though, you may want to enhance the error reporting
during bootstrap startup. This particular servlet was marked to load on start
and caused the class not found situation while the server was being created but
the Bootstrap code swallowed that information and simply aborted with a "NULL"
error. When I started the server directly (not via Bootstrap) I saw the
ClassNotFoundException but not when starting from the bootstrap jar.
Original comment by jere.mcd...@gmail.com
on 4 Apr 2014 at 3:39
That is what I reported, the jars in the lib directory are not accessible
to the web applications. If this is the intention that's fine and easy to
work around. In that case, though, you may want to enhance the error
reporting during bootstrap startup. This particular servlet was marked to
load on start and caused the class not found situation while the server was
being created but the Bootstrap code swallowed that information and simply
aborted with a "NULL" error. When I started the server directly (not via
Bootstrap) I saw the ClassNotFoundException but not when starting from the
bootstrap jar.
Original comment by jere.mcd...@gmail.com
on 4 Apr 2014 at 3:39
Oh ok, I've missed this part of feed back.
I'll see what I can do for that.
In fact, bootstrap & lib folder, was originaly designed for server and
application.
But, because winstone use slf4j, this cause some difficulty if a webapp add his
own slf4j implementation.
So, I've filtered this package that shouldn't not be exposed normaly.
But, I'm not really "happy" with this filtering, because we load two time some
jar and cannot use server class loading facility for our app.
What I see as a best solution, could be:
- add an option "not-share-server-classpath" and apply this filtering if active
- work on error log when we are in your case
Thanks for your reply
Jerome
Original comment by jguibert@gmail.com
on 4 Apr 2014 at 3:54
Added two command line option for now.
I'll test it in case of failure and raise up a good error message.
Original comment by jguibert@gmail.com
on 7 Apr 2014 at 8:41
When filter is active, and we have a classnotfound issue from this filtered
classes,
the error message is:
Caused by: java.lang.ClassNotFoundException: Class not found (filtered):
org.slf4j.LoggerFactory
set option useServerClassPath=false to disable filtering
Original comment by jguibert@gmail.com
on 7 Apr 2014 at 9:30
Original issue reported on code.google.com by
jere.mcd...@gmail.com
on 18 Mar 2014 at 6:48