Re: SharingWebappClassLoader proposal
Dear Mark, Rainer, Konstantin, Sylvain, Thank you for your answers. (and for Tomcat ;-) Regards, R. 2010/8/5 Sylvain Laurent sylvain.laur...@m4x.org I see 2 options for your case : - either use JRebel which allows to reload classes even in jars that would be the common or shared classloaded (I use it all the times, it's fabulous and pays for itself very quickly) - or try JBoss which has a Unified Class Loader, and as far as I understood it, it tries to share classes between applications while allowing reloads (I never used it in this way though) Regards, Sylvain On 5 août 2010, at 12:57, Lohner Roland wrote: Dear Mark, Rainer, Konstantin, Thank you for your fast and detailed answers. You are right, the proposal is erroneous. However my intention was not to give an excellent implementation solving the problem, but to start a conversation about it and to provide a 0th approach, which can be reworked, refined by developers who have detailed insight in the Tomcat system architecture. You suggested the usage of the common or the shared class loader. Putting all interfaces, and _all the classes they need_, into a separate JAR and putting this JAR into ${catalina.base}/lib would really solve the problem. But this solution has a serious disadvantage. The disadvantage appears in development time. The common and the shared class loaders – as far as I know – are not reloadable. This means if any of the classes loaded by them changes the whole Tomcat server and so even all another independent web applications must be restarted for the changes to take effect. The number of shared interfaces and their dependent classes can be remarkable. When these types change, a full restart is needed instead of some web application reloads, which is supported by widely applied development tools like Web Tools Platform (WTP) Project. The full restart means extra overheat increasing the turnaround time of development cycles. An another, only minor problem is that the deployment of the application fallen to pieces must be done manually (increasing turnaround delay again). WTP for example does not support the deployment of jar files in arbitrary folders but only deployment of war files to a ‘webapps like’ folder. Turnaround time of development cycles is a significant factor in the costs of a software solution. Accordingly, the possibility of using shared classes in a reloadable (and by development tools supported) way would be valuable in Tomcat. Regards, Roland 2010/8/3 Konstantin Kolinko knst.koli...@gmail.com 2010/8/3 Lohner Roland loc...@gmail.com: Dear Developers, I am writing about a proposal for a new feature in Tomcat. (...) so the only solution at the moment is to use a J2EE container and deploy an enterprise module which causes unnecessary overheat. I think the following should work: 1. Separate the interfaces, and _all the classes they need_, into a separate JAR. 2. Put the JAR into ${catalina.base}/lib. 3. _Remove_ all those shared classes from web applications! (Because otherwise classes loaded from web applications have priority over the shared ones, as explained in http://tomcat.apache.org/tomcat-6.0-doc/class-loader-howto.html ) 4. If you need some shared service, place it into JNDI (GlobalNamingResources element in server.xml). You can also add a Listener to server.xml to preload some classes or instantiate any static object. 5. Restart Tomcat. A less elaborate, hackish, but basically working implementation of this special web application class loader is attached to this email. The attachment was removed by mailing list software. Maybe if you rename it to *.txt it will be allowed, but it is just a guess. Anyway, if it works how you describe it it seeks for trouble. A web application and be unloaded (stopped, reloaded) at any time. Since that moment any classes loaded by its classloader should not be accesses any more. Thus, no other web applications should keep references to them. Best regards, Konstantin Kolinko - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
DO NOT REPLY [Bug 49234] JMX Descriptor Modifications
https://issues.apache.org/bugzilla/show_bug.cgi?id=49234 --- Comment #76 from Mark Thomas ma...@apache.org 2010-08-11 12:59:22 EDT --- Thanks for the updated patch. I wasn't thinking of explicitly setting startChildren in the addChild() method but it is a good idea and I like it. However, you need to rework your patch to ensure startChildren is always reset, even if an Exception occurs. Also, there is no need to manipulate startChildren in startChild() - at least I can't see one. -- Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email --- You are receiving this mail because: --- You are the assignee for the bug. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
DO NOT REPLY [Bug 49234] JMX Descriptor Modifications
https://issues.apache.org/bugzilla/show_bug.cgi?id=49234 --- Comment #77 from Mark Thomas ma...@apache.org 2010-08-11 13:07:03 EDT --- Just as a reminder remember one of the goals of this work was to be able to start with a 'blank' server object and completely configure a Tomcat instance via JMX. i.e. add a servic, engine, host and contexts. Add one or more connectors and be able to serve content from the contexts. I'll be happy to apply this patch when it can be used to add children to containers via X. -- Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email --- You are receiving this mail because: --- You are the assignee for the bug. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r984495 - in /tomcat/trunk: build.properties.default build.xml
Author: markt Date: Wed Aug 11 17:55:14 2010 New Revision: 984495 URL: http://svn.apache.org/viewvc?rev=984495view=rev Log: Enable off-line building of extrsa - moves commons-logging libs to standard Tomcat lib download process Modified: tomcat/trunk/build.properties.default tomcat/trunk/build.xml Modified: tomcat/trunk/build.properties.default URL: http://svn.apache.org/viewvc/tomcat/trunk/build.properties.default?rev=984495r1=984494r2=984495view=diff == --- tomcat/trunk/build.properties.default (original) +++ tomcat/trunk/build.properties.default Wed Aug 11 17:55:14 2010 @@ -55,14 +55,46 @@ compile.debug=true base-commons.loc=http://archive.apache.org/dist/commons base-tomcat.loc=http://archive.apache.org/dist/tomcat base-sf.loc=http://downloads.sourceforge.net +base-maven1.loc=http://repo1.maven.org/maven # Mirror, was used when there were problems with the main SF downloads site # base-sf.loc=http://sunet.dl.sourceforge.net # - Commons Logging, version 1.1 or later - -commons-logging-version=1.1.1 -commons-logging-src.loc=${base-commons.loc}/logging/source/commons-logging-${commons-logging-version}-src.tar.gz - +# If this version is updated, check the versions required for the deps +# - avalon-framework +# - log4j +# - logkit +# - servletapi +commons-logging.version=1.1.1 +commons-logging.home=${base.path}/commons-logging-${commons-logging.version} +commons-logging-src.loc=${base-commons.loc}/logging/source/commons-logging-${commons-logging.version}-src.tar.gz +commons-logging-src.tar.gz=${commons-logging.home}/commons-logging-${commons-logging.version}-src.tar.gz + +# - Avalon Framework (required by commons logging) - +avalon-framework.vesion=4.1.3 +avalon-framework.home=${base.path}/avalon-framework-${avalon-framework.vesion} +avalon-framework.loc=${base-maven1.loc}/avalon-framework/jars/avalon-framework-${avalon-framework.vesion}.jar +avalon-framework.jar=${avalon-framework.home}/avalon-framework-${avalon-framework.vesion}.jar + +# - log4j (required by commons logging) - +log4j.vesion=1.2.12 +log4j.home=${base.path}/log4j-${log4j.vesion} +log4j.loc=${base-maven1.loc}/log4j/jars/log4j-${log4j.vesion}.jar +log4j.jar=${log4j.home}/log4j-${log4j.vesion}.jar + +# - logkit (required by commons logging) - +logkit.vesion=1.0.1 +logkit.home=${base.path}/logkit-${logkit.vesion} +logkit.loc=${base-maven1.loc}/logkit/jars/logkit-${logkit.vesion}.jar +logkit.jar=${logkit.home}/logkit-${logkit.vesion}.jar + +# - servletapi (required by commons logging) - +servletapi.vesion=2.3 +servletapi.home=${base.path}/servletapi-${servletapi.vesion} +servletapi.loc=${base-maven1.loc}/servletapi/jars/servletapi-${servletapi.vesion}.jar +servletapi.jar=${servletapi.home}/servletapi-${servletapi.vesion}.jar + # - Webservices - JAX RPC - jaxrpc-lib.version=1.1-rc4 jaxrpc-lib.home=${base.path}/jaxrpc-${jaxrpc-lib.version} Modified: tomcat/trunk/build.xml URL: http://svn.apache.org/viewvc/tomcat/trunk/build.xml?rev=984495r1=984494r2=984495view=diff == --- tomcat/trunk/build.xml (original) +++ tomcat/trunk/build.xml Wed Aug 11 17:55:14 2010 @@ -1022,56 +1022,89 @@ mkdir dir=${tomcat.extras.sources}/ mkdir dir=${tomcat.embed}/ mkdir dir=${tomcat.embed.sources}/ +mkdir dir=${tomcat.extras}/logging/ mkdir dir=${tomcat.extras}/webservices/ /target - target name=extras-commons-logging - depends=extras-prepare,compile,build-manifests - description=Build JULI for log4j extras package + target name=extras-commons-logging-prepare + depends=extras-prepare + description=Prepare to build web services extras package antcall target=downloadfile param name=sourcefile value=${commons-logging-src.loc}/ - param name=destfile value=${tomcat.extras}/logging/commons-logging-src.tar.gz/ - param name=destdir value=${tomcat.extras}/logging// + param name=destfile value=${commons-logging-src.tar.gz}/ + param name=destdir value=${commons-logging.home}/ +/antcall + +antcall target=downloadfile + param name=sourcefile value=${avalon-framework.loc}/ + param name=destfile value=${avalon-framework.jar}/ + param name=destdir value=${avalon-framework.home}/ +/antcall + +antcall target=downloadfile + param name=sourcefile value=${log4j.loc}/ + param name=destfile value=${log4j.jar}/ + param name=destdir value=${log4j.home}/ +/antcall + +antcall target=downloadfile + param name=sourcefile value=${logkit.loc}/ + param name=destfile value=${logkit.jar}/ + param name=destdir value=${logkit.home}/ +/antcall + +antcall target=downloadfile + param name=sourcefile value=${servletapi.loc}/ + param name=destfile value=${servletapi.jar}/ + param
DO NOT REPLY [Bug 48701] jsp:getProperty broken for certain cases
https://issues.apache.org/bugzilla/show_bug.cgi?id=48701 kwalk...@cisco.com changed: What|Removed |Added Status|RESOLVED|REOPENED Version|6.0.24 |6.0.29 Resolution|FIXED | --- Comment #12 from kwalk...@cisco.com 2010-08-11 15:44:50 EDT --- Still seeing this after upgrading to 6.0.29... org.apache.jasper.JasperException: jsp:getProperty for bean with name 'auth'. Name was not previously introduced as per JSP.5.3 at org.apache.tools.ant.ProjectHelper.addLocationToBuildException(ProjectHelper.java:574) at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:422) at org.apache.tools.ant.taskdefs.CallTarget.execute(CallTarget.java:144) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:306) at org.apache.tools.ant.Task.perform(Task.java:401) at org.apache.tools.ant.Target.execute(Target.java:338) at org.apache.tools.ant.Target.performTasks(Target.java:365) at org.apache.tools.ant.Project.executeTarget(Project.java:1237) at org.apache.tools.ant.Project.executeTargets(Project.java:1094) at org.apache.tools.ant.Main.runBuild(Main.java:669) at org.apache.tools.ant.Main.startAnt(Main.java:220) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:215) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:90) -- Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email --- You are receiving this mail because: --- You are the assignee for the bug. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
DO NOT REPLY [Bug 49718] Fix for bug 46984 breaks HTTP 0.9 requests
https://issues.apache.org/bugzilla/show_bug.cgi?id=49718 --- Comment #1 from ni...@ieee.org 2010-08-11 17:38:42 EDT --- Tested same scenario with: ./version.sh Using CATALINA_BASE: /localdisk/data/apps/apache-tomcat-6.0.29 Using CATALINA_HOME: /localdisk/data/apps/apache-tomcat-6.0.29 Using CATALINA_TMPDIR: /localdisk/data/apps/apache-tomcat-6.0.29/temp Using JRE_HOME:/localdisk/data/apps/jdk1.6.0_21 Using CLASSPATH: /localdisk/data/apps/apache-tomcat-6.0.29/bin/bootstrap.jar Server version: Apache Tomcat/6.0.29 Server built: July 19 2010 1458 Server number: 6.0.0.29 OS Name:Linux OS Version: 2.6.9-34.ELsmp Architecture: i386 JVM Version:1.6.0_21-b06 JVM Vendor: Sun Microsystems Inc. $ And with: $ $ ./version.sh Using CATALINA_BASE: /localdisk/data/apps/apache-tomcat-6.0.29 Using CATALINA_HOME: /localdisk/data/apps/apache-tomcat-6.0.29 Using CATALINA_TMPDIR: /localdisk/data/apps/apache-tomcat-6.0.29/temp Using JRE_HOME:/localdisk/data/apps/jdk1.5.0_17 Using CLASSPATH: /localdisk/data/apps/apache-tomcat-6.0.29/bin/bootstrap.jar Server version: Apache Tomcat/6.0.29 Server built: July 19 2010 1458 Server number: 6.0.0.29 OS Name:Linux OS Version: 2.6.9-34.ELsmp Architecture: i386 JVM Version:1.5.0_17-b04 JVM Vendor: Sun Microsystems Inc. $ In both cases, the issue is NOT reproducible. Thus, tomcat 6.0.x stream seems unaffected. -- Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email --- You are receiving this mail because: --- You are the assignee for the bug. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
buildbot failure in ASF Buildbot on tomcat-trunk
The Buildbot has detected a new failure of tomcat-trunk on ASF Buildbot. Full details are available at: http://ci.apache.org/builders/tomcat-trunk/builds/373 Buildbot URL: http://ci.apache.org/ Buildslave for this Build: bb-vm_ubuntu Build Reason: Build Source Stamp: [branch tomcat/trunk] 984495 Blamelist: markt BUILD FAILED: failed compile sincerely, -The Buildbot - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
DO NOT REPLY [Bug 48701] jsp:getProperty broken for certain cases
https://issues.apache.org/bugzilla/show_bug.cgi?id=48701 Konstantin Kolinko knst.koli...@gmail.com changed: What|Removed |Added Status|REOPENED|RESOLVED Resolution||FIXED --- Comment #13 from Konstantin Kolinko knst.koli...@gmail.com 2010-08-11 18:04:07 EDT --- (In reply to comment #12) Are you sure, that your jsp page is valid? If you are, please attach a war file with a sample web application that reproduces the issue. Note, that since 5.5.30 and 6.0.27 (as already is mentioned) you can disable the check for conformance with JSP.5.3. by defining a certain system property. http://tomcat.apache.org/tomcat-6.0-doc/config/systemprops.html I am re-closing this as FIXED. -- Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email --- You are receiving this mail because: --- You are the assignee for the bug. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: buildbot failure in ASF Buildbot on tomcat-trunk
2010/8/12 build...@apache.org: The Buildbot has detected a new failure of tomcat-trunk on ASF Buildbot. Full details are available at: http://ci.apache.org/builders/tomcat-trunk/builds/373 (..) BUILD FAILED: failed compile http://ci.apache.org/builders/tomcat-trunk/builds/373/steps/compile/logs/stdio says: BUILD FAILED /home/buildslave3/slave3/tomcat-trunk/build/build.xml:440: Unable to find a javac compiler; com.sun.tools.javac.Main is not on the classpath. Best regards, Konstantin Kolinko - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: buildbot failure in ASF Buildbot on tomcat-trunk
On 12.08.2010 00:11, Konstantin Kolinko wrote: 2010/8/12build...@apache.org: The Buildbot has detected a new failure of tomcat-trunk on ASF Buildbot. Full details are available at: http://ci.apache.org/builders/tomcat-trunk/builds/373 (..) BUILD FAILED: failed compile http://ci.apache.org/builders/tomcat-trunk/builds/373/steps/compile/logs/stdio says: BUILD FAILED /home/buildslave3/slave3/tomcat-trunk/build/build.xml:440: Unable to find a javac compiler; com.sun.tools.javac.Main is not on the classpath. ... and then Perhaps JAVA_HOME does not point to the JDK. It is currently set to /usr/lib/jvm/java-6-sun-1.6.0.20/jre That /jre looks suspicious (but don't know anything about buildbot). And closer to the top: Unable to locate tools.jar. Expected to find it in /usr/lib/jvm/java-6-sun-1.6.0.20/lib/tools.jar So I'd say this shouldn't be related to Mark's latest changes. Unfortunately the path settings for Java are not part of the output. Regards, Rainer - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
DO NOT REPLY [Bug 49234] JMX Descriptor Modifications
https://issues.apache.org/bugzilla/show_bug.cgi?id=49234 --- Comment #78 from chamith buddhika chamibuddh...@gmail.com 2010-08-11 23:09:16 EDT --- (In reply to comment #77) Just as a reminder remember one of the goals of this work was to be able to start with a 'blank' server object and completely configure a Tomcat instance via JMX. i.e. add a servic, engine, host and contexts. Add one or more connectors and be able to serve content from the contexts. I guess above (add a servic, engine, host and contexts. Add one or more connectors and be able to serve content from the contexts) can be done using a combination of addChild and/or MBeanFactory create methods as of now. -- Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email --- You are receiving this mail because: --- You are the assignee for the bug. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
DO NOT REPLY [Bug 49670] org.apache.catalina.authenticator.SingleSignOn valve does not function
https://issues.apache.org/bugzilla/show_bug.cgi?id=49670 --- Comment #2 from chorn...@hotmail.com 2010-08-11 23:14:16 EDT --- Created an attachment (id=25879) -- (https://issues.apache.org/bugzilla/attachment.cgi?id=25879) First participating war file. Please add the jaas.jar file from this project o you tomcat/lib folder as i contains the jaas principal and login module implementation. -- Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email --- You are receiving this mail because: --- You are the assignee for the bug. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
DO NOT REPLY [Bug 49670] org.apache.catalina.authenticator.SingleSignOn valve does not function
https://issues.apache.org/bugzilla/show_bug.cgi?id=49670 --- Comment #3 from chorn...@hotmail.com 2010-08-11 23:14:56 EDT --- Created an attachment (id=25880) -- (https://issues.apache.org/bugzilla/attachment.cgi?id=25880) Second participating web appliaction. -- Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email --- You are receiving this mail because: --- You are the assignee for the bug. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
DO NOT REPLY [Bug 49670] org.apache.catalina.authenticator.SingleSignOn valve does not function
https://issues.apache.org/bugzilla/show_bug.cgi?id=49670 --- Comment #4 from chorn...@hotmail.com 2010-08-11 23:16:18 EDT --- Created an attachment (id=25881) -- (https://issues.apache.org/bugzilla/attachment.cgi?id=25881) The tomcat jaas configuration file used on the test server. -- Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email --- You are receiving this mail because: --- You are the assignee for the bug. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
DO NOT REPLY [Bug 49670] org.apache.catalina.authenticator.SingleSignOn valve does not function
https://issues.apache.org/bugzilla/show_bug.cgi?id=49670 --- Comment #5 from chorn...@hotmail.com 2010-08-11 23:17:43 EDT --- Created an attachment (id=25882) -- (https://issues.apache.org/bugzilla/attachment.cgi?id=25882) server.xml with sso valve enabled. -- Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email --- You are receiving this mail because: --- You are the assignee for the bug. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
DO NOT REPLY [Bug 49670] org.apache.catalina.authenticator.SingleSignOn valve does not function
https://issues.apache.org/bugzilla/show_bug.cgi?id=49670 --- Comment #6 from chorn...@hotmail.com 2010-08-11 23:21:31 EDT --- Created an attachment (id=25883) -- (https://issues.apache.org/bugzilla/attachment.cgi?id=25883) eclipse jaas implementation project zipped. This is the zipped eclipse project for all of the jaas files. Includes the source for the login module and principals. -- Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email --- You are receiving this mail because: --- You are the assignee for the bug. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
DO NOT REPLY [Bug 49670] org.apache.catalina.authenticator.SingleSignOn valve does not function
https://issues.apache.org/bugzilla/show_bug.cgi?id=49670 --- Comment #7 from chorn...@hotmail.com 2010-08-11 23:23:54 EDT --- I have added two war files, he server configuration, jaas configuration and the source code for the jaas implementation I used in this test case. Accessing the first web app requires a log in. Accessing the second app does not require a login. Using this test case in 6.x requires a login when accessing app 1, but not on the subsequent request for app2. -- Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email --- You are receiving this mail because: --- You are the assignee for the bug. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Broken Link on Tomcat 7 dev page
Link located on page: http://tomcat.apache.org/tomcat-7.0-doc/index.html Status http://tomcat.apache.org/tomcat-7.0-doc/status.html - Apache Tomcat development status.