You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by bu...@apache.org on 2014/11/11 12:51:47 UTC

[Bug 57199] New: tomcat-embed-core requires tomcat-embed-logging-juli but dependency is optional in its pom

https://issues.apache.org/bugzilla/show_bug.cgi?id=57199

            Bug ID: 57199
           Summary: tomcat-embed-core requires tomcat-embed-logging-juli
                    but dependency is optional in its pom
           Product: Tomcat 8
           Version: trunk
          Hardware: PC
            Status: NEW
          Severity: regression
          Priority: P2
         Component: Catalina
          Assignee: dev@tomcat.apache.org
          Reporter: awilkinson@pivotal.io

The fix for 43682 updated WebappClassLoaderBase to implement WebappProperties.
WebappProperties is provided by tomcat-embed-logging-juli but
tomcat-embed-core's dependency on tomcat-embed-logging-juli is optional. This
lead to compilation failures when upgrading to Tomcat 8.0.15 (from 8.0.14) in a
project that subclasses WebappClassLoader. I believe it'll also lead to
failures at runtime for projects that aren't affected at compile time.

I've marked the version as "trunk" as 8.0.15 wasn't an available choice.

-- 
You are receiving this mail because:
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


[Bug 57199] tomcat-embed-core requires tomcat-embed-logging-juli but dependency is optional in its pom

Posted by bu...@apache.org.
https://issues.apache.org/bugzilla/show_bug.cgi?id=57199

Mark Thomas <ma...@apache.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 OS|                            |All

--- Comment #1 from Mark Thomas <ma...@apache.org> ---
tomcat-embed-core requires exactly one of either tomcat-embed-logging-juli or
tomcat-embed-logging-log4j. This was true before the change to add
WebappProperties.

The change to add WebappProperties has triggered failures at compile time if no
logging dependency is present but there always would have been failures at
runtime (unless a very strange sub-set of functionality was used).

Given that we can't express the dependency we want to express in the pom, the
aim has been to identify the least worst work-around. Given that we need Jasper
and WebSocket to depend on core and to remain optional, I don't see a better
solution right now.

Possibilities I've considered:

1. Create core+juli and core+log4j
Just moves the problem to which should Jasper/WebSocket depend on?
Creates a new issue for folks that want to use their own JULI impl hard-coded
to their favourite logging framework.

2. Create X+noJuli, X+Juli, X+log4j for each of core, jasper, websocket with
appropriate dependencies between them.
Fixes the issue but doubles the number of packages and raises a number of
questions about how to package them for download. My feeling is that this would
create more problems than it solves.

Absent a better idea I'm leaning towards resolving this as WONTFIX.

-- 
You are receiving this mail because:
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


[Bug 57199] tomcat-embed-core requires tomcat-embed-logging-juli but dependency is optional in its pom

Posted by bu...@apache.org.
https://issues.apache.org/bugzilla/show_bug.cgi?id=57199

Mark Thomas <ma...@apache.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |WONTFIX

--- Comment #3 from Mark Thomas <ma...@apache.org> ---
OK. I was hoping you might have had a better solution in mind.

-- 
You are receiving this mail because:
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


[Bug 57199] tomcat-embed-core requires tomcat-embed-logging-juli but dependency is optional in its pom

Posted by bu...@apache.org.
https://issues.apache.org/bugzilla/show_bug.cgi?id=57199

--- Comment #2 from Andy Wilkinson <aw...@pivotal.io> ---
Thanks, Mark. In our case in the project with the compile problem when using
8.0.15 we had a test dependency on tomcat-embed-logging-juli so we weren't
seeing a problem with 8.0.14. Furthermore, in another project that consumes
embedded Tomcat for use at runtime we were also pulling in
tomcat-embed-logging-juli.

Given your either/or requirement, I can't think of a better solution than what
you're currently doing.

-- 
You are receiving this mail because:
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org