[g...@vmgump]: Project tomcat-trunk-validate (in module tomcat-trunk) failed
To whom it may engage... This is an automated request, but not an unsolicited one. For more information please visit http://gump.apache.org/nagged.html, and/or contact the folk at gene...@gump.apache.org. Project tomcat-trunk-validate has an issue affecting its community integration. This issue affects 1 projects, and has been outstanding for 9 runs. The current state of this project is 'Failed', with reason 'Build Failed'. For reference only, the following projects are affected by this: - tomcat-trunk-validate : Java Servlet 3.0, Java Server Pages 2.2 & Expression Languag... Full details are available at: http://vmgump.apache.org/gump/public/tomcat-trunk/tomcat-trunk-validate/index.html That said, some information snippets are provided here. The following annotations (debug/informational/warning/error messages) were provided: -INFO- Failed with reason build failed The following work was performed: http://vmgump.apache.org/gump/public/tomcat-trunk/tomcat-trunk-validate/gump_work/build_tomcat-trunk_tomcat-trunk-validate.html Work Name: build_tomcat-trunk_tomcat-trunk-validate (Type: Build) Work ended in a state of : Failed Elapsed: 31 secs Command Line: /usr/lib/jvm/java-6-sun/bin/java -Djava.awt.headless=true org.apache.tools.ant.Main -Dgump.merge=/srv/gump/public/gump/work/merge.xml -Dbuild.sysclasspath=only -Dcheckstyle.jar=/srv/gump/public/workspace/checkstyle/target/dist/checkstyle-05082010/checkstyle-all-05082010.jar -Dexecute.validate=true validate [Working Directory: /srv/gump/public/workspace/tomcat-trunk] CLASSPATH: /usr/lib/jvm/java-6-sun/lib/tools.jar:/srv/gump/public/workspace/ant/dist/lib/ant.jar:/srv/gump/public/workspace/ant/dist/lib/ant-launcher.jar:/srv/gump/public/workspace/ant/dist/lib/ant-jmf.jar:/srv/gump/public/workspace/ant/dist/lib/ant-junit.jar:/srv/gump/public/workspace/ant/dist/lib/ant-swing.jar:/srv/gump/public/workspace/ant/dist/lib/ant-apache-resolver.jar:/srv/gump/public/workspace/ant/dist/lib/ant-apache-xalan2.jar:/srv/gump/packages/junit3.8.1/junit.jar:/srv/gump/public/workspace/xml-commons/java/build/resolver.jar:/srv/gump/packages/javamail-1.4/mail.jar:/srv/gump/packages/javamail-1.4/lib/mailapi.jar:/srv/gump/packages/jaf-1.1ea/activation.jar:/srv/gump/public/workspace/checkstyle/target/dist/checkstyle-05082010/checkstyle-all-05082010.jar - Buildfile: /srv/gump/public/workspace/tomcat-trunk/build.xml download-validate: proxyflags: setproxy: testexist: [echo] Testing for /srv/gump/public/workspace/checkstyle/target/dist/checkstyle-05082010/checkstyle-all-05082010.jar downloadzip: validate: [checkstyle] Running Checkstyle 05082010 on 2018 files [checkstyle] /srv/gump/public/workspace/tomcat-trunk/tomcat-deps/src/java/org/apache/tomcat/dbcp/pool/impl/CursorableLinkedList.java:811:62: ';' is followed by whitespace. [checkstyle] /srv/gump/public/workspace/tomcat-trunk/tomcat-deps/src/java/org/apache/tomcat/dbcp/pool/impl/CursorableLinkedList.java:826:62: ';' is followed by whitespace. BUILD FAILED /srv/gump/public/workspace/tomcat-trunk/build.xml:416: Got 2 errors and 0 warnings. Total time: 31 seconds - To subscribe to this information via syndicated feeds: - RSS: http://vmgump.apache.org/gump/public/tomcat-trunk/tomcat-trunk-validate/rss.xml - Atom: http://vmgump.apache.org/gump/public/tomcat-trunk/tomcat-trunk-validate/atom.xml == Gump Tracking Only === Produced by Gump version 2.3. Gump Run 1205082010, vmgump:vmgump-public:1205082010 Gump E-mail Identifier (unique within run) #17. -- Apache Gump http://gump.apache.org/ [Instance: vmgump] - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r982525 - /tomcat/trunk/build.xml
Author: markt Date: Thu Aug 5 09:51:41 2010 New Revision: 982525 URL: http://svn.apache.org/viewvc?rev=982525&view=rev Log: Skip repackaged DBCP in validate target (Gump was running it). Any build where the deps are downloaded inside the svn checkout would fail in a similar manner Modified: tomcat/trunk/build.xml Modified: tomcat/trunk/build.xml URL: http://svn.apache.org/viewvc/tomcat/trunk/build.xml?rev=982525&r1=982524&r2=982525&view=diff == --- tomcat/trunk/build.xml (original) +++ tomcat/trunk/build.xml Thu Aug 5 09:51:41 2010 @@ -420,6 +420,8 @@ + + - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: svn commit: r982525 - /tomcat/trunk/build.xml
On 05.08.2010 11:51, ma...@apache.org wrote: Author: markt Date: Thu Aug 5 09:51:41 2010 New Revision: 982525 URL: http://svn.apache.org/viewvc?rev=982525&view=rev Log: Skip repackaged DBCP in validate target (Gump was running it). Any build where the deps are downloaded inside the svn checkout would fail in a similar manner Modified: tomcat/trunk/build.xml Modified: tomcat/trunk/build.xml URL: http://svn.apache.org/viewvc/tomcat/trunk/build.xml?rev=982525&r1=982524&r2=982525&view=diff == --- tomcat/trunk/build.xml (original) +++ tomcat/trunk/build.xml Thu Aug 5 09:51:41 2010 @@ -420,6 +420,8 @@ + + I ran into this also yesterday, because I had temporary garbage files in the workspace and suddenly checkstyle checked 4.000 files instead of 2.000. Do you think it would make more sense to use an include list? E.g. bin conf java res test webapps I know you also fixed the top level individual files, but maybe those are not that important for checkstyle. Regards, Rainer - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: svn commit: r982525 - /tomcat/trunk/build.xml
On 05/08/2010 11:12, Rainer Jung wrote: > On 05.08.2010 11:51, ma...@apache.org wrote: >> Author: markt >> Date: Thu Aug 5 09:51:41 2010 >> New Revision: 982525 >> >> URL: http://svn.apache.org/viewvc?rev=982525&view=rev >> Log: >> Skip repackaged DBCP in validate target (Gump was running it). Any >> build where the deps are downloaded inside the svn checkout would fail >> in a similar manner >> > > I ran into this also yesterday, because I had temporary garbage files in > the workspace and suddenly checkstyle checked 4.000 files instead of > 2.000. Do you think it would make more sense to use an include list? I have a slight preference for the current approach but I'm not going to object if you want change it. Mark - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: Again JarScanner and jarsToSkip
On 04.08.2010 22:47, Mark Thomas wrote: I'm happy to see all of this configuration completely re-written if that is what is required. That said, this is just a start-up optimisation. I think we need three groups: a) never scan (JAR or TLD) b) default jarsToSkip c) default noTldJar I'd suggest all three being set in catalina.properties with b)& c) over-ridable per context. Users can over-ride the defaults in catalina.properties if they wish. OK, let's focus on this. Using full paths or not can be discussed later. Concerning the per context config: jarsToSkip and noTldJar are both consumed by the JarScanner. But since the JarScanner is very generic, I hesitate a bit adding separate setters for noTldJar and jarsToSkip to the JarScanner. So options are: 1) We can go with only one setting used for both use cases. 2) Forget about the abstract value of the JarScanner and simply add both setters there. 2a) Keep posibility to override the setting by the exsting argument in scan method (called by ContextConfig, TldConfig or TldLocationsCache) 2b) Remove posibility to override the value scan method (called by ContextConfig, TldConfig or TldLocationsCache) 3) Add only jarsToSkip setter to JarScanner (used for the web fragments scanning) and assume/make noTldJar configurable at TldConfig and/or TldLocationsCache (I don't know yet the mechanics of those two). 4) Make jarsToSkip and noTldJars configurable outside the JarScanner and always passed in via the scan method. jarsToSkip possibly as part of the top level context config, noTldJars yet unknown to me. I tend for 2) and maybe 2b but don't know enough about possible use cases of 2a). Another thing: still time to make the two names more consistent? Like "skipTldJars" and "skipWebFragmentJars" (and "skipAlwaysJars"). Regards, Rainer - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: svn commit: r982525 - /tomcat/trunk/build.xml
On 05.08.2010 12:19, Mark Thomas wrote: On 05/08/2010 11:12, Rainer Jung wrote: On 05.08.2010 11:51, ma...@apache.org wrote: Author: markt Date: Thu Aug 5 09:51:41 2010 New Revision: 982525 URL: http://svn.apache.org/viewvc?rev=982525&view=rev Log: Skip repackaged DBCP in validate target (Gump was running it). Any build where the deps are downloaded inside the svn checkout would fail in a similar manner I ran into this also yesterday, because I had temporary garbage files in the workspace and suddenly checkstyle checked 4.000 files instead of 2.000. Do you think it would make more sense to use an include list? I have a slight preference for the current approach but I'm not going to object if you want change it. OK, put into state "wait whether more trouble occurs" :) The include list of course won't solve the "exclude some packages" demand. Regards, Rainer - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: SharingWebappClassLoader proposal
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 > 2010/8/3 Lohner Roland : > > 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 > >
svn commit: r982589 - in /tomcat/trunk/java/org/apache/tomcat/util/net/jsse: JSSEFactory.java JSSEImplementation.java JSSEKeyManager.java JSSESupport.java NioX509KeyManager.java
Author: markt Date: Thu Aug 5 12:55:15 2010 New Revision: 982589 URL: http://svn.apache.org/viewvc?rev=982589&view=rev Log: Code clean up in o.a.t.until.net.jsse - @Override - import order - unused code - unnecessary code Modified: tomcat/trunk/java/org/apache/tomcat/util/net/jsse/JSSEFactory.java tomcat/trunk/java/org/apache/tomcat/util/net/jsse/JSSEImplementation.java tomcat/trunk/java/org/apache/tomcat/util/net/jsse/JSSEKeyManager.java tomcat/trunk/java/org/apache/tomcat/util/net/jsse/JSSESupport.java tomcat/trunk/java/org/apache/tomcat/util/net/jsse/NioX509KeyManager.java Modified: tomcat/trunk/java/org/apache/tomcat/util/net/jsse/JSSEFactory.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/net/jsse/JSSEFactory.java?rev=982589&r1=982588&r2=982589&view=diff == --- tomcat/trunk/java/org/apache/tomcat/util/net/jsse/JSSEFactory.java (original) +++ tomcat/trunk/java/org/apache/tomcat/util/net/jsse/JSSEFactory.java Thu Aug 5 12:55:15 2010 @@ -19,11 +19,11 @@ package org.apache.tomcat.util.net.jsse; import java.net.Socket; +import javax.net.ssl.SSLSession; import javax.net.ssl.SSLSocket; import org.apache.tomcat.util.net.SSLSupport; import org.apache.tomcat.util.net.ServerSocketFactory; -import javax.net.ssl.SSLSession; /** * Factory interface to construct components based on the JSSE version Modified: tomcat/trunk/java/org/apache/tomcat/util/net/jsse/JSSEImplementation.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/net/jsse/JSSEImplementation.java?rev=982589&r1=982588&r2=982589&view=diff == --- tomcat/trunk/java/org/apache/tomcat/util/net/jsse/JSSEImplementation.java (original) +++ tomcat/trunk/java/org/apache/tomcat/util/net/jsse/JSSEImplementation.java Thu Aug 5 12:55:15 2010 @@ -19,10 +19,11 @@ package org.apache.tomcat.util.net.jsse; import java.net.Socket; +import javax.net.ssl.SSLSession; + import org.apache.tomcat.util.net.SSLImplementation; import org.apache.tomcat.util.net.SSLSupport; import org.apache.tomcat.util.net.ServerSocketFactory; -import javax.net.ssl.SSLSession; /* JSSEImplementation: Modified: tomcat/trunk/java/org/apache/tomcat/util/net/jsse/JSSEKeyManager.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/net/jsse/JSSEKeyManager.java?rev=982589&r1=982588&r2=982589&view=diff == --- tomcat/trunk/java/org/apache/tomcat/util/net/jsse/JSSEKeyManager.java (original) +++ tomcat/trunk/java/org/apache/tomcat/util/net/jsse/JSSEKeyManager.java Thu Aug 5 12:55:15 2010 @@ -21,6 +21,7 @@ import java.net.Socket; import java.security.Principal; import java.security.PrivateKey; import java.security.cert.X509Certificate; + import javax.net.ssl.X509KeyManager; /** @@ -63,6 +64,7 @@ public final class JSSEKeyManager implem * @return The alias name for the desired key, or null if there are no * matches */ +@Override public String chooseClientAlias(String[] keyType, Principal[] issuers, Socket socket) { return delegate.chooseClientAlias(keyType, issuers, socket); @@ -81,6 +83,7 @@ public final class JSSEKeyManager implem * * @return Alias name for the desired key */ +@Override public String chooseServerAlias(String keyType, Principal[] issuers, Socket socket) { return serverKeyAlias; @@ -95,6 +98,7 @@ public final class JSSEKeyManager implem * and the root certificate authority last), or null if the alias can't be * found */ +@Override public X509Certificate[] getCertificateChain(String alias) { return delegate.getCertificateChain(alias); } @@ -111,6 +115,7 @@ public final class JSSEKeyManager implem * @return Array of the matching alias names, or null if there were no * matches */ +@Override public String[] getClientAliases(String keyType, Principal[] issuers) { return delegate.getClientAliases(keyType, issuers); } @@ -127,6 +132,7 @@ public final class JSSEKeyManager implem * @return Array of the matching alias names, or null if there were no * matches */ +@Override public String[] getServerAliases(String keyType, Principal[] issuers) { return delegate.getServerAliases(keyType, issuers); } @@ -138,6 +144,7 @@ public final class JSSEKeyManager implem * * @return The requested key, or null if the alias can't be found */ +@Override public PrivateKey getPrivateKey(String alias) { return delegate.getPrivateKey(alias); } Modified: tomcat/trunk/java/org/apache/tomcat/util/net/jsse/JSSESupport.java URL: http://svn.
svn commit: r982669 - in /tomcat/trunk: java/org/apache/tomcat/util/net/jsse/JSSESocketFactory.java java/org/apache/tomcat/util/net/jsse/res/LocalStrings.properties webapps/docs/changelog.xml webapps/
Author: markt Date: Thu Aug 5 15:50:50 2010 New Revision: 982669 URL: http://svn.apache.org/viewvc?rev=982669&view=rev Log: Extend fix for https://issues.apache.org/bugzilla/show_bug.cgi?id=48545 to aid back-port to 6.0.x by better aligning behaviours Modified: tomcat/trunk/java/org/apache/tomcat/util/net/jsse/JSSESocketFactory.java tomcat/trunk/java/org/apache/tomcat/util/net/jsse/res/LocalStrings.properties tomcat/trunk/webapps/docs/changelog.xml tomcat/trunk/webapps/docs/config/http.xml Modified: tomcat/trunk/java/org/apache/tomcat/util/net/jsse/JSSESocketFactory.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/net/jsse/JSSESocketFactory.java?rev=982669&r1=982668&r2=982669&view=diff == --- tomcat/trunk/java/org/apache/tomcat/util/net/jsse/JSSESocketFactory.java (original) +++ tomcat/trunk/java/org/apache/tomcat/util/net/jsse/JSSESocketFactory.java Thu Aug 5 15:50:50 2010 @@ -28,6 +28,7 @@ import java.net.Socket; import java.net.SocketException; import java.security.KeyStore; import java.security.SecureRandom; +import java.security.UnrecoverableKeyException; import java.security.cert.CRL; import java.security.cert.CRLException; import java.security.cert.CertPathParameters; @@ -60,18 +61,12 @@ import javax.net.ssl.X509KeyManager; import org.apache.tomcat.util.net.AbstractEndpoint; import org.apache.tomcat.util.res.StringManager; -/* - 1. Make the JSSE's jars available, either as an installed - extension (copy them into jre/lib/ext) or by adding - them to the Tomcat classpath. - 2. keytool -genkey -alias tomcat -keyalg RSA - Use "changeit" as password ( this is the default we use ) - */ - /** - * SSL server socket factory. It _requires_ a valid RSA key and - * JSSE. - * + * SSL server socket factory. It requires a valid RSA key and + * JSSE. + * keytool -genkey -alias tomcat -keyalg RSA + * Use "changeit" as password (this is the default we use). + * * @author Harish Prabandham * @author Costin Manolache * @author Stefan Freyr Stefansson @@ -342,8 +337,23 @@ public class JSSESocketFactory } if (truststoreFile != null){ -trustStore = getStore(truststoreType, truststoreProvider, -truststoreFile, truststorePassword); +try { +trustStore = getStore(truststoreType, truststoreProvider, +truststoreFile, truststorePassword); +} catch (IOException ioe) { +Throwable cause = ioe.getCause(); +if (cause instanceof UnrecoverableKeyException) { +// Log a warning we had a password issue +log.warn(sm.getString("jsse.invalid_truststore_password"), +cause); +// Re-try +trustStore = getStore(truststoreType, truststoreProvider, +truststoreFile, null); +} else { +// Something else went wrong - re-throw +throw ioe; +} +} } return trustStore; @@ -374,7 +384,7 @@ public class JSSESocketFactory } char[] storePass = null; -if (pass != null) { +if (pass != null && !"".equals(pass)) { storePass = pass.toCharArray(); } ks.load(istream, storePass); @@ -383,9 +393,9 @@ public class JSSESocketFactory fnfe.getMessage()), fnfe); throw fnfe; } catch (IOException ioe) { -log.error(sm.getString("jsse.keystore_load_failed", type, path, -ioe.getMessage()), ioe); -throw ioe; +// May be expected when working with a trust store +// Re-throw. Caller will catch and log as required +throw ioe; } catch(Exception ex) { String msg = sm.getString("jsse.keystore_load_failed", type, path, ex.getMessage()); Modified: tomcat/trunk/java/org/apache/tomcat/util/net/jsse/res/LocalStrings.properties URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/net/jsse/res/LocalStrings.properties?rev=982669&r1=982668&r2=982669&view=diff == --- tomcat/trunk/java/org/apache/tomcat/util/net/jsse/res/LocalStrings.properties (original) +++ tomcat/trunk/java/org/apache/tomcat/util/net/jsse/res/LocalStrings.properties Thu Aug 5 15:50:50 2010 @@ -15,4 +15,5 @@ jsse.alias_no_key_entry=Alias name {0} does not identify a key entry jsse.keystore_load_failed=Failed to load keystore type {0} with path {1} due to {2} -jsse.invalid_ssl_conf=SSL configuration is invalid due to {0} +jsse.invalid_ssl_conf=SSL configuration is invalid due to {0} +jsse.invalid_trust
DO NOT REPLY [Bug 48545] truststorePass used in JSSESocketFactory should be optional (nillable)
https://issues.apache.org/bugzilla/show_bug.cgi?id=48545 Mark Thomas changed: What|Removed |Added Attachment #24845|0 |1 is obsolete|| --- Comment #2 from Mark Thomas 2010-08-05 12:49:56 EDT --- Created an attachment (id=25848) --> (https://issues.apache.org/bugzilla/attachment.cgi?id=25848) Patch that provides better backwards compatibility -- 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: r982686 - /tomcat/tc6.0.x/trunk/STATUS.txt
Author: markt Date: Thu Aug 5 16:50:29 2010 New Revision: 982686 URL: http://svn.apache.org/viewvc?rev=982686&view=rev Log: Propose new patch Modified: tomcat/tc6.0.x/trunk/STATUS.txt Modified: tomcat/tc6.0.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=982686&r1=982685&r2=982686&view=diff == --- tomcat/tc6.0.x/trunk/STATUS.txt (original) +++ tomcat/tc6.0.x/trunk/STATUS.txt Thu Aug 5 16:50:29 2010 @@ -49,9 +49,11 @@ PATCHES PROPOSED TO BACKPORT: * Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=48545 Truststores don't have to have passwords Based on a patch by 'smmwpf54' - http://svn.apache.org/viewvc?view=revision&revision=910266 + https://issues.apache.org/bugzilla/attachment.cgi?id=25848 +1: markt - -1: jfclere: Doc says it should use keystorePass (http://tomcat.apache.org/tomcat-6.0-doc/config/http.html). + -1: + Comments on previous patch +jfclere: Doc says it should use keystorePass (http://tomcat.apache.org/tomcat-6.0-doc/config/http.html). so that would break existing configurations. markt: It shouldn't break existing configs. JSSE allows trust stores to be read without providing the password - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
DO NOT REPLY [Bug 48817] Skip validation query and use JDBC API for validation
https://issues.apache.org/bugzilla/show_bug.cgi?id=48817 Matt Passell changed: What|Removed |Added Attachment #25439|0 |1 is obsolete|| --- Comment #11 from Matt Passell 2010-08-05 14:23:22 EDT --- Created an attachment (id=25849) --> (https://issues.apache.org/bugzilla/attachment.cgi?id=25849) Add Validator interface and allow users to configure a Validator class name Good suggestion. Sorry it took me so long to get to it. I've attached a patch relative to revision 948073 that uses Validator class names rather than instances in the configuration. Let me know if it needs any further changes before you consider it ready to apply. -- 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 48817] Skip validation query and use JDBC API for validation
https://issues.apache.org/bugzilla/show_bug.cgi?id=48817 Matt Passell changed: What|Removed |Added Attachment #25398|0 |1 is obsolete|| -- 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: SharingWebappClassLoader proposal
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 > >> 2010/8/3 Lohner Roland : >>> 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
svn commit: r982757 - in /tomcat/tc5.5.x/trunk/container/webapps/docs: changelog.xml setup.xml
Author: markt Date: Thu Aug 5 20:09:06 2010 New Revision: 982757 URL: http://svn.apache.org/viewvc?rev=982757&view=rev Log: Docs only CTR Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=49585 Update for changes in Commons Daemon packaging Modified: tomcat/tc5.5.x/trunk/container/webapps/docs/changelog.xml tomcat/tc5.5.x/trunk/container/webapps/docs/setup.xml Modified: tomcat/tc5.5.x/trunk/container/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/tc5.5.x/trunk/container/webapps/docs/changelog.xml?rev=982757&r1=982756&r2=982757&view=diff == --- tomcat/tc5.5.x/trunk/container/webapps/docs/changelog.xml (original) +++ tomcat/tc5.5.x/trunk/container/webapps/docs/changelog.xml Thu Aug 5 20:09:06 2010 @@ -47,6 +47,14 @@ + + + +49585: Update JSVC documentation to reflect new packaging +of Commons Daemon. (markt) + + + Modified: tomcat/tc5.5.x/trunk/container/webapps/docs/setup.xml URL: http://svn.apache.org/viewvc/tomcat/tc5.5.x/trunk/container/webapps/docs/setup.xml?rev=982757&r1=982756&r2=982757&view=diff == --- tomcat/tc5.5.x/trunk/container/webapps/docs/setup.xml (original) +++ tomcat/tc5.5.x/trunk/container/webapps/docs/setup.xml Thu Aug 5 20:09:06 2010 @@ -111,13 +111,13 @@ cd $CATALINA_HOME/bin -tar xvfz jsvc.tar.gz -cd jsvc-src +tar xvfz commons-deamon-native.tar.gz +cd commons-daemon-1.0.x-native-src/unix autoconf ./configure make -cp jsvc .. -cd .. +cp jsvc ../.. +cd ../.. Tomcat can then be run as a daemon using the following commands. @@ -137,17 +137,17 @@ information. In particular, the -debug option is useful to debug issues running jsvc. -The file $CATALINA_HOME/bin/jsvc/native/tomcat.sh can be - used as a template for starting Tomcat automatically at boot time from - /etc/init.d. The file is currently setup for running - Tomcat 4.1.x, so it is necessary to edit it and change the classname - from BootstrapService to Bootstrap. +The file + $CATALINA_HOME/bin/commons-daemon-1.0.x-native-src/unix/native/Tomcat5.sh +can be used as a template for starting Tomcat automatically at + boot time from /etc/init.d. Note that the Commons-Daemon JAR file must be on your runtime classpath - to run Tomcat in this manner. The Commons-Daemon JAR file is in the Class-Path - entry of the bootstrap.jar manifest, but if you get a ClassNotFoundException - or a NoClassDefFoundError for a Commons-Daemon class, add the Commons-Daemon - JAR to the -cp argument when launching jsvc. + to run Tomcat in this manner. The Commons-Daemon JAR file is in the + Class-Path entry of the bootstrap.jar manifest, but if you get a + ClassNotFoundException or a NoClassDefFoundError for a Commons-Daemon + class, add the Commons-Daemon JAR to the -cp argument when launching + jsvc. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r982768 - in /tomcat/tc6.0.x/trunk/webapps/docs: changelog.xml setup.xml
Author: markt Date: Thu Aug 5 20:37:46 2010 New Revision: 982768 URL: http://svn.apache.org/viewvc?rev=982768&view=rev Log: Docs only CTR Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=49585 Update for changes in Commons Daemon packaging Modified: tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml tomcat/tc6.0.x/trunk/webapps/docs/setup.xml Modified: tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml?rev=982768&r1=982767&r2=982768&view=diff == --- tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml (original) +++ tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml Thu Aug 5 20:37:46 2010 @@ -57,6 +57,14 @@ + + + +49585: Update JSVC documentation to reflect new packaging +of Commons Daemon. (markt) + + + Modified: tomcat/tc6.0.x/trunk/webapps/docs/setup.xml URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/webapps/docs/setup.xml?rev=982768&r1=982767&r2=982768&view=diff == --- tomcat/tc6.0.x/trunk/webapps/docs/setup.xml (original) +++ tomcat/tc6.0.x/trunk/webapps/docs/setup.xml Thu Aug 5 20:37:46 2010 @@ -107,13 +107,13 @@ cd $CATALINA_HOME/bin -tar xvfz jsvc.tar.gz -cd jsvc-src +tar xvfz commons-deamon-native.tar.gz +cd commons-daemon-1.0.x-native-src/unix autoconf ./configure make -cp jsvc .. -cd .. +cp jsvc ../.. +cd ../.. Tomcat can then be run as a daemon using the following commands. @@ -133,17 +133,18 @@ information. In particular, the -debug option is useful to debug issues running jsvc. -The file $CATALINA_HOME/bin/jsvc/native/tomcat.sh can be - used as a template for starting Tomcat automatically at boot time from - /etc/init.d. The file is currently setup for running - Tomcat 4.1.x, so it is necessary to edit it and change the classname - from BootstrapService to Bootstrap. +The file + $CATALINA_HOME/bin/commons-daemon-1.0.x-native-src/unix/native/Tomcat5.sh +can be used as a template for starting Tomcat automatically at + boot time from /etc/init.d. The file is currently setup for + running Tomcat 5.5.x, so it will be necessary to edit it a little. Note that the Commons-Daemon JAR file must be on your runtime classpath - to run Tomcat in this manner. The Commons-Daemon JAR file is in the Class-Path - entry of the bootstrap.jar manifest, but if you get a ClassNotFoundException - or a NoClassDefFoundError for a Commons-Daemon class, add the Commons-Daemon - JAR to the -cp argument when launching jsvc. + to run Tomcat in this manner. The Commons-Daemon JAR file is in the + Class-Path entry of the bootstrap.jar manifest, but if you get a + ClassNotFoundException or a NoClassDefFoundError for a Commons-Daemon + class, add the Commons-Daemon JAR to the -cp argument when launching + jsvc. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r982770 - in /tomcat/trunk/webapps/docs: changelog.xml setup.xml
Author: markt Date: Thu Aug 5 20:38:03 2010 New Revision: 982770 URL: http://svn.apache.org/viewvc?rev=982770&view=rev Log: Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=49585 Update for changes in Commons Daemon packaging Modified: tomcat/trunk/webapps/docs/changelog.xml tomcat/trunk/webapps/docs/setup.xml Modified: tomcat/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=982770&r1=982769&r2=982770&view=diff == --- tomcat/trunk/webapps/docs/changelog.xml (original) +++ tomcat/trunk/webapps/docs/changelog.xml Thu Aug 5 20:38:03 2010 @@ -67,6 +67,10 @@ Correct the class name of the default JAR scanner in the documentaiton web application. (rjung) + +49585: Update JSVC documentation to reflect new packaging +of Commons Daemon. (markt) + Modified: tomcat/trunk/webapps/docs/setup.xml URL: http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/setup.xml?rev=982770&r1=982769&r2=982770&view=diff == --- tomcat/trunk/webapps/docs/setup.xml (original) +++ tomcat/trunk/webapps/docs/setup.xml Thu Aug 5 20:38:03 2010 @@ -107,13 +107,13 @@ cd $CATALINA_HOME/bin -tar xvfz jsvc.tar.gz -cd jsvc-src +tar xvfz commons-deamon-native.tar.gz +cd commons-daemon-1.0.x-native-src/unix autoconf ./configure make -cp jsvc .. -cd .. +cp jsvc ../.. +cd ../.. Tomcat can then be run as a daemon using the following commands. @@ -133,17 +133,18 @@ information. In particular, the -debug option is useful to debug issues running jsvc. -The file $CATALINA_HOME/bin/jsvc/native/tomcat.sh can be - used as a template for starting Tomcat automatically at boot time from - /etc/init.d. The file is currently setup for running - Tomcat 4.1.x, so it is necessary to edit it and change the classname - from BootstrapService to Bootstrap. +The file + $CATALINA_HOME/bin/commons-daemon-1.0.x-native-src/unix/native/Tomcat5.sh +can be used as a template for starting Tomcat automatically at + boot time from /etc/init.d. The file is currently setup for + running Tomcat 5.5.x, so it will be necessary to edit it a little. Note that the Commons-Daemon JAR file must be on your runtime classpath - to run Tomcat in this manner. The Commons-Daemon JAR file is in the Class-Path - entry of the bootstrap.jar manifest, but if you get a ClassNotFoundException - or a NoClassDefFoundError for a Commons-Daemon class, add the Commons-Daemon - JAR to the -cp argument when launching jsvc. + to run Tomcat in this manner. The Commons-Daemon JAR file is in the + Class-Path entry of the bootstrap.jar manifest, but if you get a + ClassNotFoundException or a NoClassDefFoundError for a Commons-Daemon + class, add the Commons-Daemon JAR to the -cp argument when launching + jsvc. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
DO NOT REPLY [Bug 49585] jsvc.tar.gz no longer in $CATALINA_HOME/bin
https://issues.apache.org/bugzilla/show_bug.cgi?id=49585 Mark Thomas changed: What|Removed |Added Status|NEW |RESOLVED Resolution||FIXED --- Comment #2 from Mark Thomas 2010-08-05 16:39:44 EDT --- Fixed in Tomcat 5.5.x, 6.0.x and 7.0.x and will be included in the next release of each. -- 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 49711] New: HttpServletRequest#getParts() does not work in a Filter
https://issues.apache.org/bugzilla/show_bug.cgi?id=49711 Summary: HttpServletRequest#getParts() does not work in a Filter Product: Tomcat 7 Version: 7.0.0 Platform: PC OS/Version: Windows XP Status: NEW Severity: normal Priority: P2 Component: Servlet & JSP API AssignedTo: dev@tomcat.apache.org ReportedBy: bal...@gmail.com In order to have the ability to process multipart/form-data transparently with help of the new Servlet 3.0 HttpServletRequest#getParts(), a Filter is the most suitable place for this. This works fine in Glassfish v3. However, in Tomcat the getParts() returns null and it works only inside a servlet with @MultipartConfig annotation. This is too strict. This makes it hard if not impossible to process multipart/form-data requests transparently with help of a Filter (i.e. creating a new parametermap and replacing the original one in HttpServletRequest). It is true that the Servlet 3.0 spec tells nothing about the use of this method inside a Filter, but this is in my opinion an oversight. There is no other way to obtain the parts than parsing the stream yourself with good 'ol Apache Commons FileUpload. Since it works fine in Glassfish v3, I'd suggest to make Tomcat 7 that lenient as well. -- 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 49711] HttpServletRequest#getParts() does not work in a Filter
https://issues.apache.org/bugzilla/show_bug.cgi?id=49711 --- Comment #1 from Mark Thomas 2010-08-05 16:51:57 EDT --- I've just read the spec and my reading of the spec is that this is expected to work. A quick look at the code suggests it should work. If you want to dig into this yourself, start at line 2499 of o.a.catalina.connector.Request -- 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: [VOTE] Release Apache Tomcat 7.0.2
Hi all! [X] Beta - go ahead and release as 7.0.2 Beta > It seems very close to stable, to me. One thing I noticed while testing 7.0.2 is that the WebModule MBean ObjectNames differ slightly from those of Tomcat 6. Example: Tomcat 7.0.2, ObjectName for the context "/": Catalina:j2eeType=WebModule,name=localhost/,J2EEApplication=none,J2EEServer=none Tomcat 6.0.x, ObjectName for the context "/": Catalina:j2eeType=WebModule,name=//localhost/,J2EEApplication=none,J2EEServer=none The diff is the two slashes in front of the hostname. I'm not sure why the two slashes were there in the first place (I don't see it anywhere in JSR 77), nor if they served a purpose. Here's the code in Tomcat 6's StandardContext (easy to find!) that built the string: String name= "//" + ((hostName==null)? "DEFAULT" : hostName) + (("".equals(pathName))?"/":pathName ); In Tomcat 7 it's in StandardWrapper (a little harder to find): private String getWebModuleKeyProperties() { StringBuilder keyProperties = new StringBuilder(",WebModule="); String hostName = getParent().getParent().getName(); if (hostName == null) { keyProperties.append("DEFAULT"); } else { keyProperties.append(hostName); } ... I guess my question is: even if the slashes didn't serve any purpose, do we want Tomcat 7's values to be consistent with those of Tomcat 6 for JMX API compatibility reasons? This was just one small inconsistency I noticed, versus Tomcat 6. I have not checked other object name values nor attribute values versus those of Tomcat 6. Thanks. -- Jason
DO NOT REPLY [Bug 49711] HttpServletRequest#getParts() does not work in a Filter
https://issues.apache.org/bugzilla/show_bug.cgi?id=49711 --- Comment #2 from balusc 2010-08-05 17:11:24 EDT --- Correction: it didn't return null, it returned an empty collection. I will dig in the source. -- 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 #70 from Mark Thomas 2010-08-05 17:52:54 EDT --- (In reply to comment #69) "May require some work"? It sure does. The following needs to be supported: - Start Tomcat - Via JMX, select the host - Create a new context - Configure it to serve content (e.g. from an external directory) - Start it - Check the content is accessible Hint: It will be a lot easier if you modify your addChild() method to also specify the name of the child. -- 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 49711] HttpServletRequest#getParts() does not work in a Filter
https://issues.apache.org/bugzilla/show_bug.cgi?id=49711 --- Comment #3 from balusc 2010-08-05 17:57:50 EDT --- Well, the getWrapper().getMultipartConfigElement() at line 2493 always returns null and thus an empty collection will be returned. Only when I call getParts() inside a Servlet with @MultipartConfig, it works. But the intent is to call getParts() inside a Filter. The getWrapper() always returns the target JSP/Servlet associated with the request which in my case does not necessarily have the @MultipartConfig annotation (or cannot have one because it's a 3rd party one out of your control, e.g. FacesServlet). -- 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: Again JarScanner and jarsToSkip
On 05/08/2010 11:38, Rainer Jung wrote: > On 04.08.2010 22:47, Mark Thomas wrote: >> I'm happy to see all of this configuration completely re-written if that >> is what is required. That said, this is just a start-up optimisation. >> >> I think we need three groups: >> a) never scan (JAR or TLD) >> b) default jarsToSkip >> c) default noTldJar >> >> I'd suggest all three being set in catalina.properties with b)& c) >> over-ridable per context. Users can over-ride the defaults in >> catalina.properties if they wish. > > OK, let's focus on this. Using full paths or not can be discussed later. > > Concerning the per context config: > > jarsToSkip and noTldJar are both consumed by the JarScanner. But since > the JarScanner is very generic, I hesitate a bit adding separate setters > for noTldJar and jarsToSkip to the JarScanner. > > So options are: > > 1) We can go with only one setting used for both use cases. > > 2) Forget about the abstract value of the JarScanner and simply add both > setters there. > >2a) Keep posibility to override the setting by the exsting argument > in scan method (called by ContextConfig, TldConfig or TldLocationsCache) > >2b) Remove posibility to override the value scan method (called by > ContextConfig, TldConfig or TldLocationsCache) > > 3) Add only jarsToSkip setter to JarScanner (used for the web fragments > scanning) and assume/make noTldJar configurable at TldConfig and/or > TldLocationsCache (I don't know yet the mechanics of those two). > > 4) Make jarsToSkip and noTldJars configurable outside the JarScanner and > always passed in via the scan method. jarsToSkip possibly as part of the > top level context config, noTldJars yet unknown to me. > > I tend for 2) and maybe 2b but don't know enough about possible use > cases of 2a). I'd lean toward 4 with both skipTldJars & skipWebFragmentJars configured on the Context and passed to the components that need it. > Another thing: still time to make the two names more consistent? Like > "skipTldJars" and "skipWebFragmentJars" (and "skipAlwaysJars"). +1 - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r982811 - in /tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool: DataSourceFactory.java DataSourceProxy.java PoolConfiguration.java PoolProperties.java PooledConnection.java
Author: markt Date: Thu Aug 5 22:27:53 2010 New Revision: 982811 URL: http://svn.apache.org/viewvc?rev=982811&view=rev Log: Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=48817 Add Validator interface and allow users to configure a Validator class name Added: tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/Validator.java (with props) Modified: tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/DataSourceFactory.java tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/DataSourceProxy.java tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/PoolConfiguration.java tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/PoolProperties.java tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/PooledConnection.java tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/jmx/ConnectionPool.java Modified: tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/DataSourceFactory.java URL: http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/DataSourceFactory.java?rev=982811&r1=982810&r2=982811&view=diff == --- tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/DataSourceFactory.java (original) +++ tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/DataSourceFactory.java Thu Aug 5 22:27:53 2010 @@ -81,6 +81,7 @@ public class DataSourceFactory implement protected final static String PROP_TESTWHILEIDLE = "testWhileIdle"; protected final static String PROP_TESTONCONNECT = "testOnConnect"; protected final static String PROP_VALIDATIONQUERY = "validationQuery"; +protected final static String PROP_VALIDATOR_CLASS_NAME = "validatorClassName"; protected final static String PROP_TIMEBETWEENEVICTIONRUNSMILLIS = "timeBetweenEvictionRunsMillis"; protected final static String PROP_NUMTESTSPEREVICTIONRUN = "numTestsPerEvictionRun"; @@ -347,6 +348,11 @@ public class DataSourceFactory implement if (value != null) { poolProperties.setValidationQuery(value); } + +value = properties.getProperty(PROP_VALIDATOR_CLASS_NAME); +if (value != null) { +poolProperties.setValidatorClassName(value); +} value = properties.getProperty(PROP_VALIDATIONINTERVAL); if (value != null) { Modified: tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/DataSourceProxy.java URL: http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/DataSourceProxy.java?rev=982811&r1=982810&r2=982811&view=diff == --- tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/DataSourceProxy.java (original) +++ tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/DataSourceProxy.java Thu Aug 5 22:27:53 2010 @@ -390,6 +390,14 @@ public class DataSourceProxy implements this.poolProperties.setValidationQuery(validationQuery); } +/** + * {...@inheritdoc} + */ +@Override +public void setValidatorClassName(String className) { +this.poolProperties.setValidatorClassName(className); +} + /** * {...@inheritdoc} */ @@ -818,6 +826,22 @@ public class DataSourceProxy implements return getPoolProperties().getValidationQuery(); } +/** + * {...@inheritdoc} + */ +@Override +public String getValidatorClassName() { +return getPoolProperties().getValidatorClassName(); +} + +/** + * {...@inheritdoc} + */ +@Override +public Validator getValidator() { +return getPoolProperties().getValidator(); +} + /** * {...@inheritdoc} */ Modified: tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/PoolConfiguration.java URL: http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/PoolConfiguration.java?rev=982811&r1=982810&r2=982811&view=diff == --- tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/PoolConfiguration.java (original) +++ tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/PoolConfiguration.java Thu Aug 5 22:27:53 2010 @@ -522,9 +522,28 @@ public interface PoolConfiguration { * @param validationQuery the query used for validation or null if no validation is performed */ public void setValidationQuery(String validationQuery); - /** + * Return the name of the optional validator class - may be null. + * + * @return the name of the optional validator class - may be null + */ +public String getValidatorClassName(); + +/** + * Set the name for an optional validator
DO NOT REPLY [Bug 48817] Skip validation query and use JDBC API for validation
https://issues.apache.org/bugzilla/show_bug.cgi?id=48817 --- Comment #12 from Mark Thomas 2010-08-05 18:31:28 EDT --- Looks good to me. Patch applied. Many thanks. Any chance of a patch for the docs? -- 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 49714] New: The annotation process of Jar should not impact distributable of web.xml.
https://issues.apache.org/bugzilla/show_bug.cgi?id=49714 Summary: The annotation process of Jar should not impact distributable of web.xml. Product: Tomcat 7 Version: trunk Platform: All OS/Version: All Status: NEW Severity: normal Priority: P2 Component: Catalina AssignedTo: dev@tomcat.apache.org ReportedBy: kfuj...@apache.org Even if < distributable/> is set to web.xml(servlet3.0), distributable is changed from true to false by the annotation process of JAR. ContextConfig#processAnnotations is as follows. ===ContextConfig#processAnnotations protected void processAnnotations(Set fragments) { for(WebXml fragment : fragments) { if (!fragment.isMetadataComplete()) { WebXml annotations = new WebXml(); URL url = fragment.getURL(); processAnnotationsUrl(url, annotations); Set set = new HashSet(); set.add(annotations); // Merge annotations into fragment - fragment takes priority fragment.merge(set); } } } === distributable of "annotations" created by new WebXml() is false (default). If "annotations" is merged with "fragment", distributable of "fragment" becomes false. Because "fragment" is merged with web.xml of the web application, even if < distributable/> is set to web.xml, distributable is changed from true to false. The following are necessary. annotations.setDistributable(true); Best regards. -- 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: r982850 - in /tomcat/trunk: java/org/apache/catalina/startup/ContextConfig.java webapps/docs/changelog.xml
Author: kfujino Date: Fri Aug 6 02:19:28 2010 New Revision: 982850 URL: http://svn.apache.org/viewvc?rev=982850&view=rev Log: Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=49714 The annotation process of Jar doesn't influence distributable element of web.xml. Modified: tomcat/trunk/java/org/apache/catalina/startup/ContextConfig.java tomcat/trunk/webapps/docs/changelog.xml Modified: tomcat/trunk/java/org/apache/catalina/startup/ContextConfig.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/startup/ContextConfig.java?rev=982850&r1=982849&r2=982850&view=diff == --- tomcat/trunk/java/org/apache/catalina/startup/ContextConfig.java (original) +++ tomcat/trunk/java/org/apache/catalina/startup/ContextConfig.java Fri Aug 6 02:19:28 2010 @@ -1674,6 +1674,8 @@ public class ContextConfig for(WebXml fragment : fragments) { if (!fragment.isMetadataComplete()) { WebXml annotations = new WebXml(); +// no impact on distributable +annotations.setDistributable(true); URL url = fragment.getURL(); processAnnotationsUrl(url, annotations); Set set = new HashSet(); Modified: tomcat/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=982850&r1=982849&r2=982850&view=diff == --- tomcat/trunk/webapps/docs/changelog.xml (original) +++ tomcat/trunk/webapps/docs/changelog.xml Fri Aug 6 02:19:28 2010 @@ -42,6 +42,10 @@ Allow glob patterns in the jarsToSkip configuration and add some debug logging to the jar scanner. (rjung) + +49714: The annotation process of Jar doesn't influence +distributable element of web.xml. (kfujino) + - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
DO NOT REPLY [Bug 49714] The annotation process of Jar should not impact distributable of web.xml.
https://issues.apache.org/bugzilla/show_bug.cgi?id=49714 Keiichi Fujino changed: What|Removed |Added Status|NEW |RESOLVED Resolution||FIXED --- Comment #1 from Keiichi Fujino 2010-08-05 22:23:16 EDT --- Fixed in trunk. This fix applied to 7.0, will be in 7.0.3 onwards. -- 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: r982875 - /tomcat/tc6.0.x/trunk/STATUS.txt
Author: kfujino Date: Fri Aug 6 05:21:59 2010 New Revision: 982875 URL: http://svn.apache.org/viewvc?rev=982875&view=rev Log: my votes Modified: tomcat/tc6.0.x/trunk/STATUS.txt Modified: tomcat/tc6.0.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=982875&r1=982874&r2=982875&view=diff == --- tomcat/tc6.0.x/trunk/STATUS.txt (original) +++ tomcat/tc6.0.x/trunk/STATUS.txt Fri Aug 6 05:21:59 2010 @@ -143,18 +143,18 @@ PATCHES PROPOSED TO BACKPORT: and #init() methods. - Add support for "maxPort" attribute on a element as a synonym for channelSocket.maxPort - +1: kkolinko, markt + +1: kkolinko, markt, kfujino -1: * Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=49613 Improve performance for multiple calls to Request.getAttributeNames() when using SSL. Patch provided by Sampo Savolainen. http://svn.apache.org/viewvc?rev=966692&view=rev - +1: markt + +1: markt, kfujino -1: * Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=49674 Upgrade to Commons Daemon 1.0.3 http://svn.apache.org/viewvc?rev=981815&view=rev - +1: markt + +1: markt, kfujino -1: - 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 #71 from chamith buddhika 2010-08-06 01:50:32 EDT --- (In reply to comment #70) > (In reply to comment #69) I am little bit confused here. > - Start Tomcat I was under the impression Tomcat should have been already started for MBean Server to be up and running and to do any work with JMX. > - Via JMX, select the host > - Create a new context > - Configure it to serve content (e.g. from an external directory) > - Start it These can be done in one method or using a series of JMX method invocations. But I guess we can provide the flexibility for both ways. The issue I am having in order to incorporate these into addChild() is the fact that this method is common to Engine, Host and Context. But the above steps seem to be specified towards adding a child (a Context) to a given host. To accommodate that within addChild we may have to conditionally check for each type of the child (whether it is a Host or a Context etc.) and take suitable actions (if new Context above steps or if new Host something else) according to that. It is possible but one issue that may crop up is different types of children needing different types of configuration parameters. (e.g: for Context workDir, for Host appBase). May be we can provide this using a extended MBean classes for different types of children which overload addChild method with different parameters. WDYT? > - Check the content is accessible -- 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: r982877 - in /tomcat/trunk: java/org/apache/catalina/ha/session/DeltaManager.java webapps/docs/changelog.xml
Author: kfujino Date: Fri Aug 6 05:56:21 2010 New Revision: 982877 URL: http://svn.apache.org/viewvc?rev=982877&view=rev Log: Add Null check when CHANGE_SESSION_ID message received. Modified: tomcat/trunk/java/org/apache/catalina/ha/session/DeltaManager.java tomcat/trunk/webapps/docs/changelog.xml Modified: tomcat/trunk/java/org/apache/catalina/ha/session/DeltaManager.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ha/session/DeltaManager.java?rev=982877&r1=982876&r2=982877&view=diff == --- tomcat/trunk/java/org/apache/catalina/ha/session/DeltaManager.java (original) +++ tomcat/trunk/java/org/apache/catalina/ha/session/DeltaManager.java Fri Aug 6 05:56:21 2010 @@ -1436,13 +1436,15 @@ public class DeltaManager extends Cluste protected void handleCHANGE_SESSION_ID(SessionMessage msg,Member sender) throws IOException { counterReceive_EVT_CHANGE_SESSION_ID++; DeltaSession session = (DeltaSession) findSession(msg.getSessionID()); -String newSessionID = deserializeSessionId(msg.getSession()); -session.setPrimarySession(false); -if(notifySessionListenersOnReplication) { -session.setId(newSessionID); -} else { -session.setIdInternal(newSessionID); -add(session); +if (session != null) { +String newSessionID = deserializeSessionId(msg.getSession()); +session.setPrimarySession(false); +if (notifySessionListenersOnReplication) { +session.setId(newSessionID); +} else { +session.setIdInternal(newSessionID); +add(session); +} } } Modified: tomcat/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=982877&r1=982876&r2=982877&view=diff == --- tomcat/trunk/webapps/docs/changelog.xml (original) +++ tomcat/trunk/webapps/docs/changelog.xml Fri Aug 6 05:56:21 2010 @@ -63,6 +63,9 @@ If you send session to only same domain, use DomainFilterInterceptor. (kfujino) + +Add Null check when CHANGE_SESSION_ID message received. (kfujino) + - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r982878 - /tomcat/tc6.0.x/trunk/STATUS.txt
Author: kfujino Date: Fri Aug 6 06:02:37 2010 New Revision: 982878 URL: http://svn.apache.org/viewvc?rev=982878&view=rev Log: proposal Modified: tomcat/tc6.0.x/trunk/STATUS.txt Modified: tomcat/tc6.0.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=982878&r1=982877&r2=982878&view=diff == --- tomcat/tc6.0.x/trunk/STATUS.txt (original) +++ tomcat/tc6.0.x/trunk/STATUS.txt Fri Aug 6 06:02:37 2010 @@ -158,3 +158,8 @@ PATCHES PROPOSED TO BACKPORT: http://svn.apache.org/viewvc?rev=981815&view=rev +1: markt, kfujino -1: + +* Add Null check when CHANGE_SESSION_ID message received. + http://svn.apache.org/viewvc?rev=982877&view=rev + +1: kfujino + -1: - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r982879 - /tomcat/tc5.5.x/trunk/STATUS.txt
Author: kfujino Date: Fri Aug 6 06:03:38 2010 New Revision: 982879 URL: http://svn.apache.org/viewvc?rev=982879&view=rev Log: proposal Modified: tomcat/tc5.5.x/trunk/STATUS.txt Modified: tomcat/tc5.5.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc5.5.x/trunk/STATUS.txt?rev=982879&r1=982878&r2=982879&view=diff == --- tomcat/tc5.5.x/trunk/STATUS.txt (original) +++ tomcat/tc5.5.x/trunk/STATUS.txt Fri Aug 6 06:03:38 2010 @@ -66,3 +66,9 @@ PATCHES PROPOSED TO BACKPORT: http://people.apache.org/~kkolinko/patches/2010-07-22_tc55_getURLs.patch +1: kkolinko, markt, rjung -1: + +* Add Null check when CHANGE_SESSION_ID message received. + http://svn.apache.org/viewvc?rev=982877&view=rev + +1: kfujino + -1: + - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: svn commit: r982757 - in /tomcat/tc5.5.x/trunk/container/webapps/docs: changelog.xml setup.xml
On 08/05/2010 10:09 PM, ma...@apache.org wrote: Author: markt -tar xvfz jsvc.tar.gz -cd jsvc-src +tar xvfz commons-deamon-native.tar.gz +cd commons-daemon-1.0.x-native-src/unix autoconf Note that 'autoconf' is not needed src package already contains generated configure, so it's just a ./configure Regards -- ^TM - 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 #72 from Mark Thomas 2010-08-06 02:46:42 EDT --- (In reply to comment #71) > (In reply to comment #70) > > (In reply to comment #69) > > I am little bit confused here. > > - Start Tomcat > > I was under the impression Tomcat should have been already started for MBean > Server to be up and running and to do any work with JMX. Those steps are a series of actions the user should be able to perform. > These can be done in one method or using a series of JMX method invocations. Neither. These are user actions. But, the JMX methods need to be there to support them once Tomcat has been started. > But I guess we can provide the flexibility for both ways. Not necessary. > WDYT? I think you missed the point. addChild() needs to make sure that the child is visible in JMX so it can be configured (again via JMX) before it is started. Note my previous comment about using startChildren attribute of the parent to ensure the child isn't started until it has been configured. -- 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