Re: cvs commit: jakarta-tomcat-connectors/util/java/org/apache/tomcat/util/netURL.java
Bill Barker wrote: billbarker2002/06/13 22:34:23 Modified:util/java/org/apache/tomcat/util/net URL.java Log: Teach URL how to parse userInfo. This allows URL to parse a string of the form: ftp://user:[EMAIL PROTECTED]/ This actually doesn't fix any Tomcat problems (assuming that the string is correct to start with), and this class is only used by TC33. I just sleep easier if the URL is parsed correctly. I have no objection to applying this to o.a.c.u.URL (this is just a re-packaged version of that class). However, with Remy doing so many releases, I thought I should ask before hacking the 4.x files. ;-) Like Why's that ? Costin doesn't ask (and I don't complain about it) ;-) with 3.3 it seems that 4.x ignores the resulting (in the current code) MalformedURLException (from the ':'), and passes on the original URL string. As such (like in 3.3) it doesn't fix anything functionally. A bug was filed related to that (bug 9846). It does appear to work in 4.1.x. I didn't try to look into why it was working though ;-) Remy -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
Re: What's up with Tyrex?
Remy Maucherat wrote: The Tyrex code currently uses 0.9.7. Migrating to 1.0 should happen soon, but may be slightly tricky. Yep, looks like that is true. If you have ideas/patches, feel free to send them to the list. Well, regarding the TyrexDataSourceFactory class, it looks like it can be removed. The tyrex.resource.jdbc.xa.EnabledDataSource (formerly tyrex.jdbc.xa.EnabledDataSource, which TyrexDataSourceFactory creates) implements javax.spi.ObjectFactory, so it can create these objects itself. It looks like tyrex.jdbc.ServerDataSource is gone, so no problem there. And then regarding the TyrexTransactionFactory... I am not sure of what direction or how migration to 1.0 was going to happen -- if anyone is currently working on this I'd like to know what is going to happen. If not, if I could get an idea of what is wanted/needed to happen, I could cook up a patch, as I'd like to see Tyrex 1.0 working with Tomcat (older versions aren't even available for download from tyrex.exolab.org). Tyrex now has the idea of a TransactionDomain, which is created from an XML config file, and manages transactions, data sources, etc. Creating an ObjectFactory for this new TransactionDomain shouldn't be a big deal, or even updating TyrexTransactionFactory to get the UserTransactions from this new class, to provide a bit of backward compatiability (although the new transaction domain xml file still has to be loaded somehow). My apologies for being confused or causing confusion -- both can happen when I post this late at night :-) David Remy -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED] -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
JNI Performance Take 2
Hi, Hope that I've created the valid test environment this time :-) My last test results were (for me, at least) a little bit unclear so I've recreated (very crude) the jk2's Java-C bridge. Conclusion is that direct buffer access has only 5% higher throughput and that's only cause there are two extra JNI calls, or perhaps the ByteBuffer implementation of MsgAjp is faster (didn't done the Java side profiling). IMO the guys from Java team already implemented something like direct buffer for the non-copy byte array case. So, there is no need to switch to the new io unless we need that 5%. On the other hand MsgAjp reimplements some of ByteBuffer functionality, and IMO using it would be much cleaner solution, but conditional compilation etc... If someone can spare (waste ?) couple of hours I would be glad to get the results from some nix platform. MT. graph.gif Description: GIF image Dim WshShell, oExec, stdOut, cmdLine Dim i, j, k Dim fso, f, ts Set WshShell = CreateObject(WScript.Shell) Set fso = CreateObject(Scripting.FileSystemObject) fso.CreateTextFile testjava.csv Set f = fso.GetFile(testjava.csv) Set ts = f.OpenAsTextStream(2, 0) ' Number of loops j = 5000 ts.Write Test;Handlers;Loops;Transfer Rate;Time + vbCrLf stdOut = For k = 1 To 4 cmdLine = java Main -j j * k For i = 0 To 10 Set oExec = WshShell.Exec(cmdLine) Do While Not oExec.StdOut.AtEndOfStream stdOut = stdOut oExec.StdOut.ReadAll Loop Next Next ts.Write stdOut ts.Close fso.CreateTextFile teststd.csv Set f = fso.GetFile(teststd.csv) Set ts = f.OpenAsTextStream(2, 0) ts.Write Test;Handlers;Loops;Transfer Rate;Time + vbCrLf stdOut = For k = 1 To 4 cmdLine = java Main -s j * k For i = 0 To 10 Set oExec = WshShell.Exec(cmdLine) Do While Not oExec.StdOut.AtEndOfStream stdOut = stdOut oExec.StdOut.ReadAll Loop Next Next ts.Write stdOut ts.Close fso.CreateTextFile testnio.csv Set f = fso.GetFile(testnio.csv) Set ts = f.OpenAsTextStream(2, 0) ts.Write Test;Handlers;Loops;Transfer Rate;Time + vbCrLf stdOut = For k = 1 To 4 cmdLine = java Main -n j * k For i = 0 To 10 Set oExec = WshShell.Exec(cmdLine) Do While Not oExec.StdOut.AtEndOfStream stdOut = stdOut oExec.StdOut.ReadAll Loop Next Next ts.Write stdOut ts.Close #include jni.h #include stdlib.h jint standardSize = 0; jint advancedSize = 0; jbyte *advancedBuffer = NULL; jbyte *standardBuffer = NULL; jbyte *placeHolder; JNIEXPORT jint JNICALL Java_AprImpl_jkInit (JNIEnv *env, jobject o, jlong xEnv, jlong componentP) { placeHolder = (jbyte *)malloc(16384); /* completely dummy function */ if (xEnv == 0 componentP == 1) return 0; else return -1; } JNIEXPORT jint JNICALL Java_AprImpl_jkInitDirectBuffer (JNIEnv *env, jclass c, jlong xEnv, jlong commponentP, jobject directBuffer) { if (directBuffer) { advancedBuffer = (jbyte *)((*env)-GetDirectBufferAddress(env, directBuffer)); } if (directBuffer) { advancedSize = (jint)((*env)-GetDirectBufferCapacity(env, directBuffer)); } if (!advancedBuffer || !advancedSize) return -1; else return 0; } JNIEXPORT jint JNICALL Java_AprImpl_jkInvoke (JNIEnv *env, jclass c, jlong dummy1, jlong dummy2, jlong dummy3, jint dummy4, jbyteArray arrayBuffer, jint dummy5, jint length, jint dummy6) { jbyte *buffer=NULL; jboolean iscopy; jint rv = 0; buffer = (jbyte *)((*env)-GetByteArrayElements(env, arrayBuffer, iscopy)); if (buffer) { standardBuffer = buffer; // memcpy(placeHolder, buffer, length); rv = length; (*env)-ReleaseByteArrayElements(env, arrayBuffer, buffer, 0); } return rv; } JNIEXPORT jint JNICALL Java_AprImpl_jkInvokeDirect (JNIEnv *env, jclass c, jlong dummy1, jlong dummy2, jlong dummy3, jint dummy4, jint dummy5, jint length, jint dummy6) { jint rv = 0; if (advancedBuffer) { // memcpy(placeHolder, advancedBuffer, length); rv = length; } return rv; } import java.nio.*; class AprImpl { byte [] buffer; long e; long c; long p; int jc; int jo; int jl; int jr; public native int jkInit( long xEnv, long componentP ); public static native int jkInitDirectBuffer(long xEnv, long componentP , ByteBuffer byteBuffer); public static native int jkInvoke(long xEnv, long componentP, long endpointP, int code, byte data[], int off, int len, int raw); public static native int jkInvokeDirect(long xEnv, long componentP, long endpointP, int code, int off, int len, int raw); public int jkInvokeJava(long xEnv, long componentP, long endpointP, int code, byte data[], int off, int len, int raw) {
ArrayIndexOutOfBoundsException in WebappClassLoader
I'm unable to reproduce this easily but I was running some tests (using a multithreaded load generator) on a 4 cpu machine and encountered a couple of ArrayIndexOutOfBoundsException @ lines 1747 and 1754 in o.a.c.loaders.WebappClassLoader.java. 737// Register the full path for modification checking 1738 synchronized (paths) { 1739 1740int j; 1741 1742long[] result2 = 1743new long[lastModifiedDates.length + 1]; 1744for (j = 0; j lastModifiedDates.length; j++) { 1745result2[j] = lastModifiedDates[j]; 1746} 1747result2[lastModifiedDates.length] = entry.lastModified; 1748lastModifiedDates = result2; 1749 1750String[] result = new String[paths.length + 1]; 1751for (j = 0; j paths.length; j++) { 1752result[j] = paths[j]; 1753} 1754result[paths.length] = fullPath; 1755paths = result; 1756 1757} Shouldn't line 1738 synchronize on 'this' rather than 'paths' because 'paths' is changed to point to a new array within the synchronized block itself @ line 1755 ? Thanks, Arvind -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
Re: [4.1.5] Milestone available for testing
Sorry, it was a mix-up on my part. Thank You, Anthony Anthony W. Marino wrote: FYI, Index.jsp refers to release refers to 4.1.4. Anthony I don't see how this can happen. The version number written in that page is the same that the one which is in the archive name, and diplayed during the TC startup (I use a filter to set it). I downloaded the .exe distribution to check it and it looks good. Maybe you did update from 4.1.4 and didn't overwrite that file ? Remy -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/loader WebappClassLoader.java
remm2002/06/15 07:42:29 Modified:catalina/src/share/org/apache/catalina/loader WebappClassLoader.java Log: - Tweak the syncing. - This is supposed to fix a rare out of bounds exception (the array on which the sync was done was mutated inside the method body). - Patch submitted by Arvind Srinivasan arvind.srinivasan at sun.com Revision ChangesPath 1.42 +7 -6 jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/loader/WebappClassLoader.java Index: WebappClassLoader.java === RCS file: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/loader/WebappClassLoader.java,v retrieving revision 1.41 retrieving revision 1.42 diff -u -r1.41 -r1.42 --- WebappClassLoader.java9 Jun 2002 01:16:11 - 1.41 +++ WebappClassLoader.java15 Jun 2002 14:42:29 - 1.42 @@ -1735,7 +1735,8 @@ } // Register the full path for modification checking -synchronized (paths) { +// Note: Only syncing on a 'constant' object is needed +synchronized (allPermission) { int j; @@ -1833,7 +1834,7 @@ } // Add the entry in the local resource repository -synchronized (this) { +synchronized (resourceEntries) { // Ensures that all the threads which may be in a race to load // a particular class all end up with the same ResourceEntry // instance -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
JK2 MagAjp in ChannelJni
Hi, I would like to clean some things in native2, so here is something (concept probably) that's itching me. First of all can we agree that we have a well defined communication environment between the connector and the web server? I think we can, cause there are no third party stuff intervening in our communication channel. So my question is what would be the 'real' purpose of the following for example: public void end() { len=pos; int dLen=len-4; buf[0] = (byte)0x41; buf[1] = (byte)0x42; buf[2]= (byte)((dLen8 ) 0xFF ); buf[3] = (byte)(dLen 0xFF); } This is probably ok for the socket channels, but for the jni (shmem perhaps) that is simply not needed and is waste of cpu cycles. For example inside the JniHandler we are calling: (the raw is always 0, from ChannelJni) int status=apr.jkInvoke( xEnv, nativeJkHandlerP, nativeContext, code, msg.getBuffer(), 0, msg.getLen(), raw ); And inside the C part of AprImpl_jkInvoke if( raw == 0 ) { rc=ep-reply-checkHeader( env, ep-reply, ep ); } else { ep-reply-len = len; ep-reply-pos= off; } So we are checking the message length of the direct call with the already defined length (by the call itself). The purpose of this entire tirade is that I would like to write the another MsgAjp for the jni only, that would also give me the needed java module abstractions. If I get some +1 for that I'll dig into it (as soon as I receive my account password). MT. -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
DO NOT REPLY [Bug 7725] - IllegalStateException during forwards to a page that redirects
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT http://nagoya.apache.org/bugzilla/show_bug.cgi?id=7725. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE. http://nagoya.apache.org/bugzilla/show_bug.cgi?id=7725 IllegalStateException during forwards to a page that redirects [EMAIL PROTECTED] changed: What|Removed |Added Status|RESOLVED|REOPENED Resolution|DUPLICATE | --- Additional Comments From [EMAIL PROTECTED] 2002-06-15 15:42 --- Any solution yet? java.lang.IllegalStateException: Current state = FLUSHED, new state = CODING_END at java.nio.charset.CharsetEncoder.throwIllegalStateException (CharsetEncoder.java:933) at java.nio.charset.CharsetEncoder.encode(CharsetEncoder.java:529) at sun.nio.cs.StreamEncoder$CharsetSE.flushLeftoverChar (StreamEncoder.java:356) at sun.nio.cs.StreamEncoder$CharsetSE.implClose(StreamEncoder.java:413) at sun.nio.cs.StreamEncoder.close(StreamEncoder.java:158) at java.io.OutputStreamWriter.close(OutputStreamWriter.java:222) at java.io.PrintWriter.close(PrintWriter.java:137) at org.apache.catalina.connector.ResponseBase.finishResponse (ResponseBase.java:482) at org.apache.catalina.connector.HttpResponseBase.finishResponse (HttpResponseBase.java:237) -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
DO NOT REPLY [Bug 8297] - inetinfo.exe error ; Also no resource found (error 404)
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT http://nagoya.apache.org/bugzilla/show_bug.cgi?id=8297. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE. http://nagoya.apache.org/bugzilla/show_bug.cgi?id=8297 inetinfo.exe error ; Also no resource found (error 404) [EMAIL PROTECTED] changed: What|Removed |Added Status|NEW |RESOLVED Resolution||INVALID --- Additional Comments From [EMAIL PROTECTED] 2002-06-15 15:59 --- This is a problem the IIS install.. -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
DO NOT REPLY [Bug 7725] - IllegalStateException during forwards to a page that redirects
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT http://nagoya.apache.org/bugzilla/show_bug.cgi?id=7725. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE. http://nagoya.apache.org/bugzilla/show_bug.cgi?id=7725 IllegalStateException during forwards to a page that redirects [EMAIL PROTECTED] changed: What|Removed |Added Status|REOPENED|RESOLVED Resolution||WONTFIX --- Additional Comments From [EMAIL PROTECTED] 2002-06-15 16:00 --- The solution is mentioned in the previous comments. -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
DO NOT REPLY [Bug 7725] - IllegalStateException during forwards to a page that redirects
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT http://nagoya.apache.org/bugzilla/show_bug.cgi?id=7725. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE. http://nagoya.apache.org/bugzilla/show_bug.cgi?id=7725 IllegalStateException during forwards to a page that redirects [EMAIL PROTECTED] changed: What|Removed |Added Status|RESOLVED|CLOSED -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
DO NOT REPLY [Bug 5411] - JSP session does not work with IE/IIS5/Tomcat 3.3
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT http://nagoya.apache.org/bugzilla/show_bug.cgi?id=5411. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE. http://nagoya.apache.org/bugzilla/show_bug.cgi?id=5411 JSP session does not work with IE/IIS5/Tomcat 3.3 [EMAIL PROTECTED] changed: What|Removed |Added Status|REOPENED|RESOLVED Resolution||INVALID --- Additional Comments From [EMAIL PROTECTED] 2002-06-15 16:03 --- I'm unable to reproduce this bug in my config, and it's exactly the same IE/IIS5/TC33 concretely a use the NumberGuessExample without any problem, and this example makes use of sessions.. and should be falling from the report.. Add a complete test case to be able to reproduce it.. -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
RE: jk 1.2 freese/snap time in JTC ?
De: Bill Barker [mailto:[EMAIL PROTECTED]] Enviado el: 15 de junio de 2002 5:50 In TC33, there are for i_rdr: 8297 Blo inetinfo.exe error ; Also no resource found (error 404) 5411 NorJSP session does not work with IE/IIS5/Tomcat 3.3 Thanks Bill, lost them, marked as INVALID both.. Saludos , Ignacio J. Ortega -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
Re: Request for a new Apache ID
Account created, password sent. Sorry for the delay on acting on this, but apparently nc.rr.com sat on it for 4 days: Received: from fe6.southeast.rr.com (HELO mail6.nc.rr.com) (24.93.67.53) by daedalus.apache.org with SMTP; 15 Jun 2002 01:55:59 - Received: from mail pickup service by mail6.nc.rr.com with Microsoft SMTPSVC; Fri, 14 Jun 2002 21:53:36 -0400 Received: from us.ibm.com ([66.57.27.66]) by mail6.nc.rr.com with Microsoft SMTPSVC(5.5.1877.757.75); Tue, 11 Jun 2002 20:07:45 -0400 Brian On Tue, 11 Jun 2002, Sam Ruby wrote: Please create the following new Apache ID: id: mturk name: Mladen Turk send password to: [EMAIL PROTECTED] group: apcvs, jakarta Thanks! - Sam Ruby -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
TomcatMonitor
Hi, As a maker of ApacheMonitor I _know_ that the support for the Tomcat's start/stop/monitor would be trivial. The question is can we (Apache2 and Tomcat) agree to coexist, or make two different try buttons. MT. -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
DO NOT REPLY [Bug 4380] - Multiple ISAPI redirectors on single IIS website
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT http://nagoya.apache.org/bugzilla/show_bug.cgi?id=4380. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE. http://nagoya.apache.org/bugzilla/show_bug.cgi?id=4380 Multiple ISAPI redirectors on single IIS website [EMAIL PROTECTED] changed: What|Removed |Added Status|NEW |RESOLVED Resolution||LATER -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
Re: JMX and config of log4j in container env.
At 14:42 14.06.2002 -0700, [EMAIL PROTECTED] wrote: I recently enabled JMX support for jk, and one of the things it's doing is detect if log4j is available and enable the log4j JMX. There are few problems - and this is a deeper problem, that affects the use of log4j as 'main' logger for tomcat. The first problem is conflicts in the generated names for the log4j mbeans. For example, if 2 apps define a 'stdout' appender, both will get the same name and things brake. Yes. That's a known problem. One solution is to separate log4j mbeans by hierarchy. That might require hierarchies to be named entities, which is not the case at the moment. There is a second problem - it seems curently only the root category is visible - if now log categories are defined they are not visible. ( it is possible to use add() and make them visible, but add() is broken and doesn't allow to define new logging categories ). Hmm. That's possible but nonetheless surprising. It is obviously cool to be able to change the logging level on the root category, but that's too coarse - so more granularity is needed. Obviously. The real big problem is in keeping the apps insolated, when log4j is in the main classpath. It seems there are still problems with that. Yes. Another big issue is finding a way to 'hook' the Context.log() into log4j. I dare say that that's a Tomcat problem. I think the best solution for most of those problems would be to allow somehow to use the webapp name ( VHOST:/path ) as a prefix or namespace for the logging categories and appenders ( and the associated JMX names ). We also need a mechansim to merge the global log4j config with local log4j properties specified per webapp. ( and a way to override and control from the central config what the webapps are allowed to do - remember the webapp is not allways trusted ) Opinions? Sugestions ? Let's keep this channel open. I'd like to tackle the logging insulation problem first. Costin -- Ceki SUICIDE BOMBING - A CRIME AGAINST HUMANITY Sign the petition: http://www.petitiononline.com/1234567b I am signatory number 22106. What is your number? -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
Re: TomcatMonitor
On Sat, 15 Jun 2002, Mladen Turk wrote: As a maker of ApacheMonitor I _know_ that the support for the Tomcat's start/stop/monitor would be trivial. The question is can we (Apache2 and Tomcat) agree to coexist, or make two different try buttons. I wouldn't have a problem with that. No sense reinventing the wheel for one or the other of us... +1. --Cliff -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/util URL.java
billbarker2002/06/15 19:52:02 Modified:catalina/src/share/org/apache/catalina/util URL.java Log: Teach URL how to parse userInfo. This allows URL to parse a string of the form: ftp://user:[EMAIL PROTECTED]/ This actually doesn't fix any Tomcat problems (assuming that the string is correct to start with). Revision ChangesPath 1.3 +11 -7 jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/util/URL.java Index: URL.java === RCS file: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/util/URL.java,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- URL.java 5 Sep 2001 17:31:11 - 1.2 +++ URL.java 16 Jun 2002 02:52:02 - 1.3 @@ -698,7 +698,11 @@ start = limit; } if (authority.length() 0) { -int colon = authority.indexOf(':'); + int at = authority.indexOf('@'); + if( at = 0 ) { + userInfo = authority.substring(0,at); + } +int colon = authority.indexOf(':',at+1); if (colon = 0) { try { port = @@ -706,9 +710,9 @@ } catch (NumberFormatException e) { throw new MalformedURLException(e.toString()); } -host = authority.substring(0, colon); +host = authority.substring(at+1, colon); } else { -host = authority; +host = authority.substring(at+1); port = -1; } } -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/util URL.java
billbarker2002/06/15 19:54:03 Modified:catalina/src/share/org/apache/catalina/util URL.java Log: Someday I'll remember to remove tabs before committing. Revision ChangesPath 1.4 +8 -8 jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/util/URL.java Index: URL.java === RCS file: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/util/URL.java,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- URL.java 16 Jun 2002 02:52:02 - 1.3 +++ URL.java 16 Jun 2002 02:54:03 - 1.4 @@ -698,10 +698,10 @@ start = limit; } if (authority.length() 0) { - int at = authority.indexOf('@'); - if( at = 0 ) { - userInfo = authority.substring(0,at); - } +int at = authority.indexOf('@'); +if( at = 0 ) { +userInfo = authority.substring(0,at); +} int colon = authority.indexOf(':',at+1); if (colon = 0) { try { -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]