DO NOT REPLY [Bug 4829] - Automatic deployment of war files does not work properly

2001-11-16 Thread bugzilla

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=4829.
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=4829

Automatic deployment of war files does not work properly

[EMAIL PROTECTED] changed:

   What|Removed |Added

 Status|RESOLVED|REOPENED
 Resolution|WORKSFORME  |



--- Additional Comments From [EMAIL PROTECTED]  2001-11-16 00:38 ---
Yeah, it does work ONLY if the webapp is in extracted form under webapp/lexis...

BUT the examples webapp is now NOT distributed as a war-file. It was so 
distributed in earlier Versions. Tomcat 3.2.1 had some war-files: admin, 
examples, ROOT and test. With Catalina these webapps aren't distibuted anymore 
as war-files.

May this be because of this problem, or should we developers avoid using war-
files to distribute our applications/updates?

Please take a closer look to the following:
==
WHEN I DO NOT DEFINE A CONTEXT FOR lexis, BUT A DefaultContext,

  Host name=localhost debug=0 appBase=webapps unpackWARs=true

Valve className=org.apache.catalina.authenticator.SingleSignOn
   debug=0/
Valve className=org.apache.catalina.valves.AccessLogValve
 directory=logs  prefix=localhost_access_log. suffix=.txt
 pattern=common/

Logger className=org.apache.catalina.logger.SystemOutLogger/

DefaultContext reloadable=true
  Manager className=org.apache.catalina.session.PersistentManager
  debug=4
  saveOnRestart=false
  maxActiveSessions=-1
  minIdleSwap=-1
  maxIdleSwap=-1
  maxIdleBackup=-1
Store className=org.apache.catalina.session.FileStore/
  /Manager
/DefaultContext
.

THE WAR FILE webapps/lexis.war WILL BE EXPANDED AND DEPLOYED.
BUT THIS DEFAULT CONTEXT WILL JUST BE IGNORED (saveOnRestart=false).
I AM ALSO NOT ABLE TO DEFINE APPLICATION PARAMETERS:
==
Starting service Tomcat-Standalone
Apache Tomcat/4.0.1
StandardHost[localhost]: Installing web application at context path /lexis from 
URL jar:file:D:\Programme\JBuilder5\tomcat\webapps\lexis.war!/
WebappLoader[/lexis]: Deploying class repositories to work directory 
D:\Programme\JBuilder5\tomcat\work\localhost\lexis
WebappLoader[/lexis]: Deploy JAR /WEB-INF/lib/activation.jar to 
D:\Programme\JBuilder5\tomcat\webapps\lexis\WEB-INF\lib\activation.jar
WebappLoader[/lexis]: Deploy JAR /WEB-INF/lib/crimson.jar to 
D:\Programme\JBuilder5\tomcat\webapps\lexis\WEB-INF\lib\crimson.jar
WebappLoader[/lexis]: Deploy JAR /WEB-INF/lib/jaxp.jar to D:\Programme\JBuilder5
\tomcat\webapps\lexis\WEB-INF\lib\jaxp.jar
WebappLoader[/lexis]: Deploy JAR /WEB-INF/lib/lexis.jar to 
D:\Programme\JBuilder5\tomcat\webapps\lexis\WEB-INF\lib\lexis.jar
WebappLoader[/lexis]: Deploy JAR /WEB-INF/lib/log4j.jar to 
D:\Programme\JBuilder5\tomcat\webapps\lexis\WEB-INF\lib\log4j.jar
WebappLoader[/lexis]: Deploy JAR /WEB-INF/lib/mail.jar to D:\Programme\JBuilder5
\tomcat\webapps\lexis\WEB-INF\lib\mail.jar
WebappLoader[/lexis]: Deploy JAR /WEB-INF/lib/struts.jar to 
D:\Programme\JBuilder5\tomcat\webapps\lexis\WEB-INF\lib\struts.jar
StandardManager[/lexis]: Seeding random number generator class 
java.security.SecureRandom
StandardManager[/lexis]: Seeding of random number generator has been completed
StandardManager[/lexis] IOException while loading persisted sessions: 
java.io.WriteAbortedException: Writing aborted by exception; 
java.io.NotSerializableExce
ion: org.apache.log4j.Category
java.io.WriteAbortedException: Writing aborted by exception; 
java.io.NotSerializableException: org.apache.log4j.Category
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:445)
at java.io.ObjectInputStream.inputClassFields
(ObjectInputStream.java:2263)
at java.io.ObjectInputStream.defaultReadObject
(ObjectInputStream.java:519)
at java.io.ObjectInputStream.inputObject(ObjectInputStream.java:1412)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:386)
at java.io.ObjectInputStream.inputClassFields
(ObjectInputStream.java:2263)
at java.io.ObjectInputStream.defaultReadObject
(ObjectInputStream.java:519)
at java.io.ObjectInputStream.inputObject(ObjectInputStream.java:1412)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:386)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:236)
at org.apache.catalina.session.StandardSession.readObject

DO NOT REPLY [Bug 4910] New: - taglib bug

2001-11-16 Thread bugzilla

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=4910.
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=4910

taglib bug

   Summary: taglib bug
   Product: Tomcat 4
   Version: 4.0.1 Final
  Platform: PC
OS/Version: Linux
Status: UNCONFIRMED
  Severity: Major
  Priority: Other
 Component: Jasper
AssignedTo: [EMAIL PROTECTED]
ReportedBy: [EMAIL PROTECTED]


I' am trying to upgrade from Tomcat 3.2.3/ Apache 1.3.19 to Tomcat
4.0.1/ Apache 1.3.19 on Linux.

All the urls in the jsps of my application are rewritten by a
UrlTag. The UrlTag Class takes the url between the tags and rewrites
it if necessary.

It works with Tomcat 4.0.1 if the url is placed in the jsp file
statically. It works not if the url is get by using the get-method
of a bean.

With Tomcat 3.2.3 it worked fine in both cases. So I think it could by a bug.

Here is an example:

### example.jsp ###

A href=myLib:url%= myBean.getURL() %/myLib:urltext/A


### output Tomcat 3.2.3 (right) ###

A href=http://localhost/target.jsp;text/A


### output Tomcat 4.0.1 (wrong) ###

A href=%= myBean.getURL() %text/A


### example.tld ###

tag
  nameurl/name
  tagclassde.iop.webrun.shared.taglib.UrlTag/tagclass
  bodycontenttagdependent/bodycontent
  inforewrite url/info
/tag


### UrlTag-Code ###

import javax.servlet.http.HttpServletResponse;
import javax.servlet.jsp.tagext.*;
import javax.servlet.jsp.*;
import java.io.IOException;

public class UrlTag extends BodyTagSupport
{
  public int doAfterBody() throws JspException
  {
BodyContent bodyContent = getBodyContent();
String baseURL  = bodyContent.getString();
bodyContent.clearBody();
try
{
  HttpServletResponse response = (HttpServletResponse)
  pageContext.getResponse();
  String encodedURL = response.encodeURL(baseURL);
  this.getPreviousOut().print(encodedURL);
}
catch(IOException e)
{
  throw new JspTagException(I/O exception  + e.getMessage());
}
return SKIP_BODY;
  }
}

--
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 FastHttpDateFormat.java

2001-11-16 Thread remm

remm01/11/16 01:44:55

  Added:   catalina/src/share/org/apache/catalina/util
FastHttpDateFormat.java
  Log:
  - Centralize HTTP date formats generation (because date formatting is a very 
expensive operation),
similar to what FastDateFormat does, but a lot more specialized.
  
  Revision  ChangesPath
  1.1  
jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/util/FastHttpDateFormat.java
  
  Index: FastHttpDateFormat.java
  ===
  /*
   * 
   *
   * The Apache Software License, Version 1.1
   *
   * Copyright (c) 1999 The Apache Software Foundation.  All rights 
   * reserved.
   *
   * Redistribution and use in source and binary forms, with or without
   * modification, are permitted provided that the following conditions
   * are met:
   *
   * 1. Redistributions of source code must retain the above copyright
   *notice, this list of conditions and the following disclaimer. 
   *
   * 2. Redistributions in binary form must reproduce the above copyright
   *notice, this list of conditions and the following disclaimer in
   *the documentation and/or other materials provided with the
   *distribution.
   *
   * 3. The end-user documentation included with the redistribution, if
   *any, must include the following acknowlegement:  
   *   This product includes software developed by the 
   *Apache Software Foundation (http://www.apache.org/).
   *Alternately, this acknowlegement may appear in the software itself,
   *if and wherever such third-party acknowlegements normally appear.
   *
   * 4. The names The Jakarta Project, Tomcat, and Apache Software
   *Foundation must not be used to endorse or promote products derived
   *from this software without prior written permission. For written 
   *permission, please contact [EMAIL PROTECTED]
   *
   * 5. Products derived from this software may not be called Apache
   *nor may Apache appear in their names without prior written
   *permission of the Apache Group.
   *
   * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
   * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
   * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
   * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
   * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
   * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
   * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
   * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
   * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
   * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
   * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   * SUCH DAMAGE.
   * 
   *
   * This software consists of voluntary contributions made by many
   * individuals on behalf of the Apache Software Foundation.  For more
   * information on the Apache Software Foundation, please see
   * http://www.apache.org/.
   *
   * [Additional notices, if required by prior licensing conditions]
   *
   */ 
  
  package org.apache.catalina.util;
  
  import java.util.Date;
  import java.util.HashMap;
  import java.util.Locale;
  import java.util.TimeZone;
  import java.text.SimpleDateFormat;
  
  /**
   * Utility class to generate HTTP dates.
   * 
   * @author Remy Maucherat
   */
  public final class FastHttpDateFormat {
  
  
  // -- Variables
  
  
  /**
   * HTTP date format.
   */
  protected static SimpleDateFormat format = 
  new SimpleDateFormat(EEE, dd MMM  HH:mm:ss zzz, Locale.US);
  
  
  protected final static TimeZone gmtZone = TimeZone.getTimeZone(GMT);
  
  
  /**
   * GMT timezone - all HTTP dates are on GMT
   */
  static {
  format.setTimeZone(gmtZone);
  }
  
  
  /**
   * Instant on which the currentDate object was generated.
   */
  protected static long currentDateGenerated = 0L;
  
  
  /**
   * Current formatted date.
   */
  protected static String currentDate = null;
  
  
  /**
   * Date cache.
   */
  protected static HashMap dateCache = new HashMap();
  
  
  // - Public Methods
  
  
  /**
   * Get the current date in HTTP format.
   */
  public static String getCurrentDate() {
  
  long now = System.currentTimeMillis();
  if ((now - currentDateGenerated)  1000) {
  synchronized (format) {
  if ((now - currentDateGenerated)  1000) {
  

cvs commit: jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/servlets DefaultServlet.java

2001-11-16 Thread remm

remm01/11/16 01:46:53

  Modified:catalina/src/share/org/apache/catalina/connector/http
HttpProcessor.java
   catalina/src/share/org/apache/catalina/servlets
DefaultServlet.java
  Log:
  - Use FHDF instead of SimpleDateFormat.format.
  
  Revision  ChangesPath
  1.40  +8 -7  
jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/connector/http/HttpProcessor.java
  
  Index: HttpProcessor.java
  ===
  RCS file: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/connector/http/HttpProcessor.java,v
  retrieving revision 1.39
  retrieving revision 1.40
  diff -u -r1.39 -r1.40
  --- HttpProcessor.java2001/11/09 19:38:43 1.39
  +++ HttpProcessor.java2001/11/16 09:46:53 1.40
  @@ -1,6 +1,6 @@
  -/* * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/connector/http/HttpProcessor.java,v
 1.39 2001/11/09 19:38:43 remm Exp $
  - * $Revision: 1.39 $
  - * $Date: 2001/11/09 19:38:43 $
  +/* * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/connector/http/HttpProcessor.java,v
 1.40 2001/11/16 09:46:53 remm Exp $
  + * $Revision: 1.40 $
  + * $Date: 2001/11/16 09:46:53 $
*
* 
*
  @@ -91,8 +91,9 @@
   import org.apache.catalina.LifecycleException;
   import org.apache.catalina.LifecycleListener;
   import org.apache.catalina.Logger;
  -import org.apache.catalina.util.RequestUtil;
  +import org.apache.catalina.util.FastHttpDateFormat;
   import org.apache.catalina.util.LifecycleSupport;
  +import org.apache.catalina.util.RequestUtil;
   import org.apache.catalina.util.StringManager;
   import org.apache.catalina.util.StringParser;
   
  @@ -106,7 +107,7 @@
*
* @author Craig R. McClanahan
* @author Remy Maucherat
  - * @version $Revision: 1.39 $ $Date: 2001/11/09 19:38:43 $
  + * @version $Revision: 1.40 $ $Date: 2001/11/16 09:46:53 $
*/
   
   final class HttpProcessor
  @@ -1006,8 +1007,8 @@
   
   // Ask our Container to process this request
   try {
  -((HttpServletResponse) response).addDateHeader
  -(Date, System.currentTimeMillis());
  +((HttpServletResponse) response).setHeader
  +(Date, FastHttpDateFormat.getCurrentDate());
   if (ok) {
   connector.getContainer().invoke(request, response);
   }
  
  
  
  1.43  +10 -22
jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/servlets/DefaultServlet.java
  
  Index: DefaultServlet.java
  ===
  RCS file: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/servlets/DefaultServlet.java,v
  retrieving revision 1.42
  retrieving revision 1.43
  diff -u -r1.42 -r1.43
  --- DefaultServlet.java   2001/10/15 01:11:59 1.42
  +++ DefaultServlet.java   2001/11/16 09:46:53 1.43
  @@ -1,7 +1,7 @@
   /*
  - * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/servlets/DefaultServlet.java,v
 1.42 2001/10/15 01:11:59 remm Exp $
  - * $Revision: 1.42 $
  - * $Date: 2001/10/15 01:11:59 $
  + * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/servlets/DefaultServlet.java,v
 1.43 2001/11/16 09:46:53 remm Exp $
  + * $Revision: 1.43 $
  + * $Date: 2001/11/16 09:46:53 $
*
* 
*
  @@ -111,9 +111,10 @@
   import org.apache.naming.resources.Resource;
   import org.apache.naming.resources.ResourceAttributes;
   import org.apache.catalina.Globals;
  +import org.apache.catalina.util.FastHttpDateFormat;
   import org.apache.catalina.util.MD5Encoder;
  -import org.apache.catalina.util.StringManager;
   import org.apache.catalina.util.RequestUtil;
  +import org.apache.catalina.util.StringManager;
   
   
   /**
  @@ -122,7 +123,7 @@
*
* @author Craig R. McClanahan
* @author Remy Maucherat
  - * @version $Revision: 1.42 $ $Date: 2001/10/15 01:11:59 $
  + * @version $Revision: 1.43 $ $Date: 2001/11/16 09:46:53 $
*/
   
   public class DefaultServlet
  @@ -1128,7 +1129,7 @@
   if (debug  0)
   log(DefaultServlet.serveFile:  lastModified=' +
   (new Timestamp(resourceInfo.date)).toString() + ');
  -response.setDateHeader(Last-Modified, resourceInfo.date);
  +response.setHeader(Last-Modified, resourceInfo.httpDate);
   
   }
   
  @@ -1568,7 +1569,7 @@
   sb.append(/tt/td\r\n);
   
   sb.append(td align=\right\tt);
  -sb.append(renderLastModified(childResourceInfo.date));
  +sb.append(childResourceInfo.httpDate);
   

DO NOT REPLY [Bug 4910] - taglib bug

2001-11-16 Thread bugzilla

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=4910.
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=4910

taglib bug

[EMAIL PROTECTED] changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||FIXED



--- Additional Comments From [EMAIL PROTECTED]  2001-11-16 02:01 ---
Hey I thing it is a bug in tomcat 3.2.x
!

When you declare at tag 
 bodycontenttagdependent/bodycontent the jsp engine
don't interpret the body. The Body is text for your tag handler.

with bodycontentJSP/bodycontent jasper interpreter the body before
your get the content.

I hope with the description change your urltag work
Peter

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




RE: Ajp14 and Ajp13

2001-11-16 Thread GOMEZ Henri

 I'm in favor of this, since the protocol is only being 
extended, not really
 changed.

 However, I think that one of the extensions that should be 
implemented early
 on is a version negotiation so that the newer side can 
gracefully degrade in
 the future without having to rely on the user changing configuration
 settings.

Yes, Henri already implemented this in the login phase - however Ajp13
doesn't support this.

We should be carefull with the login phase.

The distinction between post Ajp14 will be the number of callbacks
supported - and login/negotiation is the essential one to diferentiate
between Ajp13 and Ajp14+.

Yes, but what will happen to a worker using ajp14 trying to connect 
(and so using md5 login phase) to a good old ajp13 server ? 

If the user doesn't set the login callback - we will use 'plain' ajp13.

What do you mean by user setting callback ? in httpd.conf for examples ?

If the user does have a login - it's clear he wants ajp14 ( or 
later ) and
we can detect the number of callbacks supported.

The distinction between ajp13, 14, ... will be in the number 
of callbacks
- each version will have a set of callbacks ( sort of API version
instead of protocol version ).

Regardless of the Ajp version, we should support all previous 
ones up to
13. This will also minimize the amount of pain for 3.2.x users, who are
unlikely to get Ajp14 ported, and also for users of 4.0 - 
again, support
for ajp14 is likely to be available in 4.0.2 or later. They'll still be
able to get most fixes, and we'll have less code to maintain.

Make sense, but making ajp14 a sort of ajp13++, using the same 
port and same headers will put users in trouble. 

I'm in favor of having an ajp13/ajp14 unique Interceptor (java side), 
which will detect the rigth protocol by looking at msg headers. 

ajp13 use 0x1234 as header and 'AB' (0x4142) as trailer and 
I used 0x1235 for both header and trailer for ajp14.

Also having separate headers will help people writing network
disector for network dumper (ie ethereal).

And on native camp, it should be easy since we'll could have an
ajp13 callback and another one for ajp14, may be a protocol init 
callback which could set headers accordingly for future message
sent/received.

The client side should be able also to detect it speak ajp14 on
an ajp13 server and fallback to ajp13 protocol




--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




DO NOT REPLY [Bug 4829] - Automatic deployment of war files does not work properly

2001-11-16 Thread bugzilla

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=4829.
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=4829

Automatic deployment of war files does not work properly





--- Additional Comments From [EMAIL PROTECTED]  2001-11-16 02:08 ---
I have test the DefaultContext with nightly 11/12/2001 build
and it works with Parameter and Env

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




DO NOT REPLY [Bug 4915] New: - Relocation error while loading mod_jk when starting apache.

2001-11-16 Thread bugzilla

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=4915.
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=4915

Relocation error while loading mod_jk when starting apache.

   Summary: Relocation error while loading mod_jk when starting
apache.
   Product: Tomcat 3
   Version: 3.2.3 Final
  Platform: Sun
OS/Version: Solaris
Status: NEW
  Severity: Blocker
  Priority: Other
 Component: Unknown
AssignedTo: [EMAIL PROTECTED]
ReportedBy: [EMAIL PROTECTED]


I first start tomcat 3.2.3 with /path/to/tomcat/bin/startup.sh; second, I try to
start apache 1.3.22 with /path/to/apache/bin/apachectl start. I then get the
following message :

Syntax error on line 8 of /path/to/tomcat/conf/mod_jk.conf-auto:
Cannot load /path/to/apache/libexec/mod_jk.so into server: ld.so.1:
/path/to/apache/bin/httpd: fatal: relocation error: file
/path/to/apache/libexec/mod_jk.so: symbol fdatasync: referenced symbol not found
/path/to/apache/bin/apachectl start: httpd could not be started

My system is Solaris 2.5.
I have built apache in a DSO mode with :
/configure --prefix=/path/to/apache \
  --enable-module=most \
  --enable-shared=max

I have built mod_jk.so from the source distribution jakarta-tomcat-3.2.3-src in
the following way :

cd /path/to/Tomcat/source/distribution/src/native/apache1.3
$APACHE_HOME/bin/apxs -o mod_jk.so -DSOLARIS -I../jk
  -I/path/to/java/include -I/path/to/java/include/solaris -c *.c
../jk/*.c
cp mod_jk.so /path/to/apache/libexec/.

Finally I have put Include /path/to/tomcat/conf/mod_jk.conf-auto at the end of
the 

If I use Tomcat 3.3 instead of 3.2.3 and that I build mod_jk.so in the following
way :

cd /path/to/tomcat//native/mod_jk/apache1.3
sh build-solaris.sh
 and that I put Include /path/to/tomcat/conf/auto/mod_jk.conf t the end of
the /path/to/apache/conf/httpd.conf file, I get the following message :

Syntax error on line 4 of /path/to/tomcat/conf/auto/mod_jk.conf:
Cannot load /path/to/apache/libexec/mod_jk.so into server: ld.so.1:
/path/to/apache2/bin/httpd: fatal: relocation error: file
/path/to/apache/libexec/mod_jk.so: symbol snprintf: referenced symbol not found
/path/to/apache/bin/apachectl start: httpd could not be started

note : apache works perfectly alone without tomcat started (and without
including mod_jk.conf in httpd.conf).

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




DO NOT REPLY [Bug 4910] - taglib bug

2001-11-16 Thread bugzilla

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=4910.
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=4910

taglib bug

[EMAIL PROTECTED] changed:

   What|Removed |Added

 Status|RESOLVED|CLOSED



--- Additional Comments From [EMAIL PROTECTED]  2001-11-16 02:48 ---
Hi Peter,

it works! Thank you.

Thomas

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




Re: Portable SSL Support

2001-11-16 Thread jean-frederic clere

[EMAIL PROTECTED] wrote:
 
 On 14 Nov 2001, Eric Rescorla wrote:
 
  Well, I suppose that since JDK 1.1.x didn't stop you from putting
  classes in java. I could do my own version of
  java.security.cert.X509Certificate. A little gross but perhaps
  the best plan. The alternative is to blatantly violate the spec
  in 1.1 and just deliver something else.
 
 I would say - don't worry about JDK1.1. Support for JDK1.1 is important
 for embeded devices ( but even there, GCJ does have X509Certificate - it
 already supports a large subset of JDK1.2, and that's included ).
 
 You have to use request.getAttribute() in the JSPs/servlets.
Right, but that doesn't mean that we have to expose the SSLSupport
interface. Instead we could break out each individual property
we cared about into it's own attribute.
  
   To be consistant with 2.3 containers, I'd go with individually named
   attributes.
 
  Fine with me. Anyone object to this?
 
 Individual attributes are good, but if possible with lazy evaluation.
 
 The getInfo() callback in BaseInterceptor is supposed to do exactly that -
 allow you to lazy-evaluate expensive request fields, so only servlets that
 ask for the information will pay for it.

In TC3.3:
We have the following in Http10Interceptor.java:

+++
public Object getAttribute(String name) {
if (name.equals(javax.servlet.request.X509Certificate)) {
return(certcompat.getX509Certificates(socket));
}
return(super.getAttribute(name));
}
+++

A note stored via request.setNote(SSLSupport,SSLSupport) somewhere in
retrieved by getNote.
The code ends to be:
+++
public Object getAttribute(String name) {
if (name.equals(javax.servlet.request.X509Certificate)) {
SSLSupport sslsupport = getNote(SSLSupport);
if (sslsupport==null)
  return(null);
return(sslsupport.getX509Certificates(socket));
}
return(super.getAttribute(name));
}
+++
Ideas?

 
 Costin
 
 --
 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]




DO NOT REPLY [Bug 4917] New: - Better build.xml for tomcat application developers guide

2001-11-16 Thread bugzilla

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=4917.
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=4917

Better build.xml for tomcat application developers guide

   Summary: Better build.xml for tomcat application developers guide
   Product: Tomcat 4
   Version: 4.0.1 Final
  Platform: All
OS/Version: Other
Status: NEW
  Severity: Enhancement
  Priority: Other
 Component: Unknown
AssignedTo: [EMAIL PROTECTED]
ReportedBy: [EMAIL PROTECTED]


I've been training up developers using an example project based on the 
build.xml in the tomcat developer's guide and the struts sample application.
I've found that there are some duplication issues in the sample build.xml 
which invite errors and increase maintenance. 

There are a couple of bugs with the stated functionality (e.g. in where 
properties are loaded from) but the main issue is with the separate definition 
of compile.classpath . This requires developers to maintain not only the 
classpath but an identical list of files to be copied into the distribution. 
The (working) build.xml below is a rearrangement of the example in the 
documentation to fix these issues, and to make the build work 'out of 
the box' for more projects. See initialled comments ('BE') in the file for more
details.

!-- A project describes a set of targets that may be requested
 when Ant is executed.  The default attribute defines the
 target which is executed if no specific target is requested,
 and the basedir attribute defines the current working directory
 from which Ant executes the requested task.  This is normally
 set to the current working directory.
--


project name=My Project default=compile basedir=.



!-- = Property Definitions === --

!--

  Each of the following properties are used in the build script.
  Values for these properties are set by the first place they are
  defined, from the following list:
  * Definitions on the ant command line (ant -Dcatalina.home=xyz compile)
  * Definitions from a build.properties file in the top level
source directory
  * Definitions from a build.properties file in the developer's
home directory
  * Default definitions in this build.xml file

  You will note below that property values can be composed based on the
  contents of previously defined properties.  This is a powerful technique
  that helps you minimize the number of changes required when your development
  environment is modified.  Note that property composition is allowed within
  build.properties files as well as in the build.xml script.

--
  !-- BE: added lines below to make the statements above true!! --
  property file=build.properties/
  property file=${user.home}/build.properties/
 


!--  File and Directory Names  --

!--

  These properties generally define file and directory names (or paths) that
  affect where the build process stores its outputs.

  app.name Base name of this application, used to
   construct filenames and directories.
   Defaults to myapp.

  app.version  Version identifier for this application.

  build.home   The directory into which the prepare and
   compile targets will generate their output.
   Defaults to build.

  catalina.homeThe directory in which you have installed
   a binary distribution of Tomcat 4.  This will
   be used by the deploy target.

  deploy.home  The name of the directory into which the
   deployment hierarchy will be created, and into
   which the build directory will be copied.
   Defaults to ${catalina.home}/webapps/${app.name}.

  dist.homeThe name of the base directory in which
   distribution files are created.
   Defaults to dist.

--

  property name=app.name  value=myapp/
  property name=app.version   value=1.0/
  property name=build.homevalue=build/
  !-- BE: set to default path used by tomcat installer. That way it works out 
of the box for some --
  property name=catalina.home value=C:/Program Files/Apache Tomcat 4.0/ 
!-- UPDATE THIS! --
  property name=deploy.home   value=${catalina.home}/webapps/${app.name}/
  property name=dist.home value=dist/



!--   Compilation Control Options  --

!--

  These properties control option settings on the Javac compiler when it
  is invoked using the javac task.

  compile.debugShould compilation include the debug option?

  

DO NOT REPLY [Bug 4918] New: - Jasper barfs on empty tags in start tag-end tag form

2001-11-16 Thread bugzilla

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=4918.
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=4918

Jasper barfs on empty tags in start tag-end tag form

   Summary: Jasper barfs on empty tags in start tag-end tag form
   Product: Tomcat 4
   Version: 4.0.1 Final
  Platform: Other
OS/Version: Other
Status: NEW
  Severity: Normal
  Priority: Other
 Component: Jasper
AssignedTo: [EMAIL PROTECTED]
ReportedBy: [EMAIL PROTECTED]


When custom tag content is supposed to be empty, it should be ok in a JSP 
document to write:
my:custom attr=foo/
OR
my:custom attr=foo/my:custom
as per the XML spec (http://www.w3.org/TR/REC-xml#sec-starttags)

This does not appear to be allowed by Jasper. An example stack trace follows.

A Servlet Exception Has Occurred

org.apache.jasper.compiler.ParseException: /test/templates/umyukp.jsp(14,28) 
Body is supposed to be empty for html:img
at org.apache.jasper.compiler.Parser$Tag.accept(Parser.java:842)
at org.apache.jasper.compiler.Parser.parse(Parser.java:1132)
at org.apache.jasper.compiler.Parser.parse(Parser.java:1091)
at org.apache.jasper.compiler.Parser$Tag.accept(Parser.java:880)
at org.apache.jasper.compiler.Parser.parse(Parser.java:1132)
at org.apache.jasper.compiler.Parser.parse(Parser.java:1091)
at org.apache.jasper.compiler.Parser.parse(Parser.java:1087)
at org.apache.jasper.compiler.ParserController.parse
(ParserController.java:213)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:210)
at org.apache.jasper.servlet.JspServlet.loadJSP(JspServlet.java:543)
at 
org.apache.jasper.servlet.JspServlet$JspServletWrapper.loadIfNecessary
(JspServlet.java:176)
at org.apache.jasper.servlet.JspServlet$JspServletWrapper.service
(JspServlet.java:188)
at org.apache.jasper.servlet.JspServlet.serviceJspFile
(JspServlet.java:381)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:473)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:1264)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter
(ApplicationFilterChain.java:247)
at org.apache.catalina.core.ApplicationFilterChain.doFilter
(ApplicationFilterChain.java:193)
at org.apache.catalina.core.StandardWrapperValve.invoke
(StandardWrapperValve.java:243)
at org.apache.catalina.core.StandardPipeline.invokeNext
(StandardPipeline.java:566)
at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardContextValve.invoke
(StandardContextValve.java:215)
at org.apache.catalina.core.StandardPipeline.invokeNext
(StandardPipeline.java:566)
at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardContext.invoke
(StandardContext.java:2366)
at org.apache.catalina.core.StandardHostValve.invoke
(StandardHostValve.java:164)
at org.apache.catalina.core.StandardPipeline.invokeNext
(StandardPipeline.java:566)
at org.apache.catalina.valves.AccessLogValve.invoke
(AccessLogValve.java:462)
at org.apache.catalina.core.StandardPipeline.invokeNext
(StandardPipeline.java:564)
at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardEngineValve.invoke
(StandardEngineValve.java:163)
at org.apache.catalina.core.StandardPipeline.invokeNext
(StandardPipeline.java:566)
at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.connector.http.HttpProcessor.process
(HttpProcessor.java:1005)
at org.apache.catalina.connector.http.HttpProcessor.run
(HttpProcessor.java:1098)
at java.lang.Thread.run(Unknown Source)

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




DO NOT REPLY [Bug 4919] New: - JSP won't compile when using class attribute (standard HTML4 style sheet attribute)

2001-11-16 Thread bugzilla

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=4919.
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=4919

JSP won't compile when using class attribute (standard HTML4 style sheet attribute)

   Summary: JSP won't compile when using class attribute (standard
HTML4 style sheet attribute)
   Product: Tomcat 3
   Version: 3.3 Final
  Platform: All
OS/Version: All
Status: NEW
  Severity: Blocker
  Priority: Other
 Component: Jasper
AssignedTo: [EMAIL PROTECTED]
ReportedBy: [EMAIL PROTECTED]


I have a custom tag that Tomcat (Jasper) won't compile.

The problem is one of its attributes called class. I want to include this 
attribute so that users of the tag can set the style sheet attribute in the 
same way as for other HTML4 tags.

Corresponding to the class attribute, there is a setClass(String) method. 
There is not a getClass() method as it clashes with the getClass() method of 
the underlying Object class.

I have tried this on Tomcat to 3.3 and it produces the following error message:

- org.apache.jasper.compiler.CompileException:
/usr3/jakarta-tomcat-3.3/webapps/panportalDev/forms/ieformtest.jsp(41,0)
Unable to find setter method for attribute: class
at org.apache.jasper.compiler.TagBeginGenerator.generateSetters

There is public void setClass(String s) in the Tag
but, of course, no property called 'class'.


Using class as an attribute is very natural for page designers so I expect 
there is a workaround.

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




DO NOT REPLY [Bug 4919] - JSP won't compile when using class attribute (standard HTML4 style sheet attribute)

2001-11-16 Thread bugzilla

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=4919.
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=4919

JSP won't compile when using class attribute (standard HTML4 style sheet attribute)





--- Additional Comments From [EMAIL PROTECTED]  2001-11-16 05:00 ---
The source code corresponding to the compile-time exception that is thrown in 
3.2.2 is below:

private final void generateSetters(ServletWriter writer, String parent)
throws JasperException
{
writer.println(thVarName+.setPageContext(pageContext););
writer.println(thVarName+.setParent(+parent+););

if (attributes.length != 0)
for(int i = 0; i  attributes.length; i++) {
String attrValue = (String) attrs.get(attributes[i].getName());
if (attrValue != null) {
String attrName = attributes[i].getName();
Method m = tc.getSetterMethod(attrName);
if (m == null)
throw new CompileException
(start, Constants.getString
 (jsp.error.unable.to_find_method,
  new Object[] { attrName }));
Class c[] = m.getParameterTypes();
// assert(c.length  0)

if (attributes[i].canBeRequestTime()) {
if (JspUtil.isExpression(attrValue))
attrValue = JspUtil.getExpr(attrValue);
else
attrValue = convertString(c[0], attrValue, writer, 
attrName);
} else
attrValue = convertString(c[0], attrValue, writer, 
attrName);
writer.println(thVarName+.+m.getName()
+(+attrValue+););
}
}
}

It fails on the

Method m = tc.getSetterMethod(attrName);

The previous line

String attrName = attributes[i].getName();

returns null because there is no attribute called class


It is, of course, legal to have a

public void setClass(String klass) {...}

although, of course, not legal to have a

public String getClass();

as it can't override the Object getClass() method.

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




DO NOT REPLY [Bug 4919] - JSP won't compile when using class attribute (standard HTML4 style sheet attribute)

2001-11-16 Thread bugzilla

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=4919.
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=4919

JSP won't compile when using class attribute (standard HTML4 style sheet attribute)





--- Additional Comments From [EMAIL PROTECTED]  2001-11-16 05:07 ---
The only workarounds I know of is to either:

(1) do not include a class attribute

(2) call it something else, klass, say :)

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




DO NOT REPLY [Bug 4922] New: - getRealPath().exists() yields security exception

2001-11-16 Thread bugzilla

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=4922.
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=4922

getRealPath().exists() yields security exception

   Summary: getRealPath().exists() yields security exception
   Product: Tomcat 4
   Version: 4.0.1 Final
  Platform: All
OS/Version: Other
Status: NEW
  Severity: Normal
  Priority: Other
 Component: Unknown
AssignedTo: [EMAIL PROTECTED]
ReportedBy: [EMAIL PROTECTED]


When we run Tomcat any version 
(i have tried tomcat 3.2.3, 3.3, 4.0.1)
with security turned on
the following code yeilds exceptions:

%=new File(pageContext.getServletContext().getRealPath(/)).exists()%

%
java.io.File tempDir=
(java.io.File)pageContext.getServletContext(
).getAttribute(javax.servlet.context.tempdir);
%
%=tempDir.exists()%

I beleive this happens because when you grant permissions
of the form 

grant {
  permission java.io.FilePermission ../m/-, read;
};

this does not allow you to check if 

new File(../m).exists()

or do

new File(../m).list()

to do that you need to explicitly do

grant {
  permission java.io.FilePermission ../m/-, read;
  permission java.io.FilePermission ../m, read;
};

The whole issue causes security exceptions when you deploy
Cocoon2 samples, Velocity samples.
They both have code like

File log = new File(..getRealPath(logFile));
File parent = new File( log.getParent() );
if (!parent.exists()) parent.mkdirs();

no surprise this failes.

I beleive that it would be quite reasonable to allow
checking exists() and doing list() on 
..getRealPath(/);
and the temporary working dir.

I'm duplicating this bug report for 3.3 final and 4.0.1 final

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




DO NOT REPLY [Bug 4923] New: - getRealPath().exists() yields security exception

2001-11-16 Thread bugzilla

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=4923.
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=4923

getRealPath().exists() yields security exception

   Summary: getRealPath().exists() yields security exception
   Product: Tomcat 3
   Version: 3.3 Final
  Platform: All
OS/Version: Other
Status: NEW
  Severity: Minor
  Priority: Other
 Component: Unknown
AssignedTo: [EMAIL PROTECTED]
ReportedBy: [EMAIL PROTECTED]


When we run Tomcat any version 
(i have tried tomcat 3.2.3, 3.3, 4.0.1)
with security turned on
the following code yeilds exceptions:

%=new File(pageContext.getServletContext().getRealPath(/)).exists()%

%
java.io.File tempDir=
(java.io.File)pageContext.getServletContext(
).getAttribute(javax.servlet.context.tempdir);
%
%=tempDir.exists()%

I beleive this happens because when you grant permissions
of the form 

grant {
  permission java.io.FilePermission ../m/-, read;
};

this does not allow you to check if 

new File(../m).exists()

or do

new File(../m).list()

to do that you need to explicitly do

grant {
  permission java.io.FilePermission ../m/-, read;
  permission java.io.FilePermission ../m, read;
};

The whole issue causes security exceptions when you deploy
Cocoon2 samples, Velocity samples.
They both have code like

File log = new File(..getRealPath(logFile));
File parent = new File( log.getParent() );
if (!parent.exists()) parent.mkdirs();

no surprise this failes.

I beleive that it would be quite reasonable to allow
checking exists() and doing list() on 
..getRealPath(/);
and the temporary working dir.

This bug (or not bug?) has been reported as #4922 for
Tomcat 4.0.1 final

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




DO NOT REPLY [Bug 4922] - getRealPath().exists() yields security exception

2001-11-16 Thread bugzilla

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=4922.
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=4922

getRealPath().exists() yields security exception





--- Additional Comments From [EMAIL PROTECTED]  2001-11-16 06:04 ---
This bug has been reported as bug #4923 for Tomcat 3.3 final

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




DO NOT REPLY [Bug 4917] - Better build.xml for tomcat application developers guide

2001-11-16 Thread bugzilla

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=4917.
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=4917

Better build.xml for tomcat application developers guide





--- Additional Comments From [EMAIL PROTECTED]  2001-11-16 06:25 ---
Whoops - this line in the compile target:
copy  todir=${build.home}/classes
should of course read:
copy  todir=${build.home}/WEB-INF/classes

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




FW: Thread pool problem in Tomcat 3.3 in Windows NT 4.0

2001-11-16 Thread GOMEZ Henri

Just to finish with my message about Ajp13 and highly loaded
servers 

-
Henri Gomez ___[_]
EMAIL : [EMAIL PROTECTED](. .) 
PGP KEY : 697ECEDD...oOOo..(_)..oOOo...
PGP Fingerprint : 9DF8 1EA8 ED53 2F39 DC9B 904A 364F 80E6 



-Original Message-
From: Larry Isaacs [mailto:[EMAIL PROTECTED]]
Sent: Friday, November 16, 2001 3:29 PM
To: 'Tomcat Users List'
Subject: RE: Thread pool problem in Tomcat 3.3 in Windows NT 4.0


There is a bug in ThreadPool that causes it to overwrite the
settings installed by the Ajp13Connector.  This is fixed in
the nightly version of Tomcat 3.3.1 which can be found at:

http://jakarta.apache.org/builds/jakarta-tomcat/nightly-3.3/

Cheers,
Larry

 -Original Message-
 From: Raymond Lee [mailto:[EMAIL PROTECTED]]
 Sent: Friday, November 16, 2001 2:43 AM
 To: [EMAIL PROTECTED]
 Subject: Thread pool problem in Tomcat 3.3 in Windows NT 4.0
 
 
 Hi,
 
 I have used Tomcat 3.3 with Apache 1.3.12 as my development 
 servlet engine and 
 I have a query about thread pool of Ajp13Connector in Tomcat 3.3.
 
 I define the following setting in server.xml and I expect 
 there should be at least 100
 threads created in startup of tomcat 3.3.
 
 Ajp13Connector address=127.0.0.1 
  port=8009 
  maxThreads=500 
  maxSpareThreads=200 
  minSpareThreads=100 
  pools=true/
 
 However, I found there are only 25 threads instead of 100 
 threads created in the java virtual
 machine used by Tomcat 3.3.  I browsed so many documents 
 about Tomcat 3.3 and even
 many forums but I was unable to find any relevent information 
 about this problem. 
 
 In Tomcat 3.2, the way to define thread pool is different 
 from that of Tomcat 3.3.
 
 Is the following setting valid in Tomcat 3.3?
 
 Connector className=org.apache.tomcat.service.PoolTcpConnector
 Parameter name=handler 
 value=org.apache.tomcat.service.connector.Ajp12ConnectionHandler/
 Parameter name=port value=8007/
Parameter name=max_threads value=150/
 Parameter name=max_spare_threads value=100/
 Parameter name=min_spare_threads value=50/
 /Connector
 
 This setting can make the java virtual machine to create at 
 least 50 threads. (I confirmed this with Task
 Manager)
 
 Does anyone know how to fix this?
 
 Thanks,
 
 Raymond Lee
 

--
To unsubscribe:   mailto:[EMAIL PROTECTED]
For additional commands: mailto:[EMAIL PROTECTED]
Troubles with the list: mailto:[EMAIL PROTECTED]


--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




DO NOT REPLY [Bug 4925] New: - WebApp module doesn't build on GNU/Linux

2001-11-16 Thread bugzilla

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=4925.
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=4925

WebApp module doesn't build on GNU/Linux

   Summary: WebApp module doesn't build on GNU/Linux
   Product: Tomcat 4
   Version: 4.0 Final
  Platform: All
OS/Version: Linux
Status: NEW
  Severity: Normal
  Priority: Other
 Component: Other Connectors
AssignedTo: [EMAIL PROTECTED]
ReportedBy: [EMAIL PROTECTED]


My configuration :
* Linux 2.2.18
* Apache/1.3.9 (Unix) Debian/GNU
* gcc 2.95.2
* libc6 2.1.3 
* java 1.3.1 (build Blackdown-1.3.1-FCS)

The WebApp module doesn't build on GNU/Linux when I procede as follows :
$ ./configure --with-apxs
$ make

make[2]: Entering directory `/usr/local/webapp-module-1.0-tc40/apache-1.3'
{ APXS_LDFLAGS_SHLIB=`/usr/bin/apxs -q LDFLAGS_SHLIB` \
 \
-lm -lcrypt -lnsl -ldl ; \
APXS_LDFLAGS_SHLIB=`/bin/echo ${APXS_LDFLAGS_SHLIB}` ; \
APXS_CFLAGS=`/usr/bin/apxs -q CFLAGS` \
-g -O2 \
-g -O2 \
 \
-DLINUX=2 -D_REENTRANT \
-I/usr/local/webapp-module-1.0-tc40/apr/include \
-I/usr/local/webapp-module-1.0-tc40/include \
 ; \
APXS_CFLAGS=`/bin/echo ${APXS_CFLAGS}` ; \
/usr/bin/apxs \
-S CFLAGS=${APXS_CFLAGS} \
-S LDFLAGS_SHLIB=${APXS_LDFLAGS_SHLIB} \
-o mod_webapp.so \
-c mod_webapp.c \
/usr/local/webapp-module-1.0-tc40/lib/libwebapp.a \
/usr/local/webapp-module-1.0-tc40/lib/libapr.a ; \
}
Bareword found where operator expected at (eval 6) line 1, near -DLINUX=2
-DEAPI -DTARGET=apache
(Missing operator before apache?)
Bareword apache not allowed while strict subs in use at (eval 6) line 1.
String found where operator expected at (eval 6) line 1, near apache
-DUSE_HSREGEX -DUSE_EXPAT -I../lib/expat-lite -g -O2 -g -O2 -DLINUX=2
-D_REENTRANT -I/usr/local/webapp-module-1.0-tc40/apr/include
-I/usr/local/webapp-module-1.0-tc40/include
gcc -DLINUX=2 -DEAPI -DTARGET=apache -DUSE_HSREGEX -DUSE_EXPAT
-I../lib/expat-lite -fpic -DSHARED_MODULE -I/usr/include/apache-1.3  -c mod_webapp.c
mod_webapp.c:70: wa.h: No such file or directory
apxs:Break: Command failed with rc=65536
make[2]: *** [mod_webapp.so] Error 1
make[2]: Leaving directory `/usr/local/webapp-module-1.0-tc40/apache-1.3'
make[1]: Exiting directory apache-1.3
make[1]: *** [template] Error 2
make[1]: Leaving directory `/usr/local/webapp-module-1.0-tc40'
make: *** [apache-1.3-build] Error 2


=

To be able to build the Apache module I have had to modify
apache-1.3/Makefile.in. After the modification the build went to its end without
error and I could use Apache-Tomcat as expected.

So it seems that those 2 include directories were needed:
-I$(APR_INCDIR) \
-I$(SRCDIR)/include \


$(MOD): $(SRCS) $(TGTDIR)/lib/libapr.a $(TGTDIR)/lib/libwebapp.a
{ APXS_LDFLAGS_SHLIB=`$(APXS) -q LDFLAGS_SHLIB` \
$(APR_LDFLAGS) \
$(APR_LIBS) ; \
APXS_LDFLAGS_SHLIB=`$(ECHO) $${APXS_LDFLAGS_SHLIB}` ; \
APXS_CFLAGS=`$(APXS) -q CFLAGS` \
$(CFLAGS) \
$(APR_CFLAGS) \
$(CPPFLAGS) \
$(APR_CPPFLAGS) \
-I$(APR_INCDIR) \
-I$(SRCDIR)/include \
$(APR_INCLUDES) ; \
APXS_CFLAGS=`$(ECHO) $${APXS_CFLAGS}` ; \
$(APXS) \
-S CFLAGS=$${APXS_CFLAGS} \
-I$(APR_INCDIR) \
-I$(SRCDIR)/include \
-S LDFLAGS_SHLIB=$${APXS_LDFLAGS_SHLIB} \
-o $@ \
-c mod_webapp.c \
$(TGTDIR)/lib/libwebapp.a \
$(TGTDIR)/lib/libapr.a ; \
}

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




Re: Off for quite a while...

2001-11-16 Thread Brian P Millett

Pier Fumagalli wrote:

 Fellow Titanium is coming with me anyway

Well at least you have your priorities correct :-)

Many many thanks for the effort and dedication you've shown and put into making
tomcat/apache/jserv/cocoon,etc. useful.  Many people go through life with nothing to 
show for their
efforts, you have shown much and have made a large impact in many lives.

Enjoy yourself.
--
Brian Millett
Enterprise Consulting Group   Shifts in paradigms
(314) 205-9030   often cause nose bleeds.
[EMAIL PROTECTED]   Greg Glenn



--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




DO NOT REPLY [Bug 4930] New: - java.io.StreamCorruptedException: Type code out of range, is 0 with Apache WebApp module

2001-11-16 Thread bugzilla

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=4930.
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=4930

java.io.StreamCorruptedException: Type code out of range, is 0 with Apache WebApp 
module

   Summary: java.io.StreamCorruptedException: Type code out of
range, is 0 with Apache WebApp module
   Product: Tomcat 4
   Version: 4.0 Final
  Platform: PC
OS/Version: Linux
Status: NEW
  Severity: Major
  Priority: Other
 Component: Other Connectors
AssignedTo: [EMAIL PROTECTED]
ReportedBy: [EMAIL PROTECTED]


My configuration :
* Linux 2.2.18
* Apache/1.3.9 (Unix) Debian/GNU
* gcc 2.95.2
* libc6 2.1.3 
* java 1.3.1 (build Blackdown-1.3.1-FCS)

The application I maintained works fine with Apache+Tomcat 3.2.3 (with mod_jk,
using ajp13). I decided to give a try with Apache+Tomcat 4.0.1 (with webapp module).

My application uses lots of communication between applet and servlets. This
communication is done through the use of serialized objects.

It works fine with Tomcat 3.2.3. And with Tomcat 4.0.1 and module WebApp the
servlets can't deserialize anymore the objects they read from the 
HttpServletRequest and a java.io.StreamCorruptedException is thrown :

2006 17:43:26 ERROR [Thread-4] State - de-serialization failure -- Control
information in the stream is inconsistent
java.io.StreamCorruptedException: Type code out of range, is 0
at java.io.ObjectInputStream.peekCode(ObjectInputStream.java:1556)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:292)
at java.io.ObjectInputStream.inputClassFields(ObjectInputStream.java:2263)
at java.io.ObjectInputStream.defaultReadObject(ObjectInputStream.java:519)
at java.io.ObjectInputStream.inputObject(ObjectInputStream.java:1412)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:386)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:236)
at com.mine.server.GlobalServlet.readRequest(GlobalServlet.java:190)
at com.mine.server.GlobalServlet.doPost(GlobalServlet.java:157)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at
org.apache.catalina.servlets.InvokerServlet.serveRequest(InvokerServlet.java:446)
at
org.apache.catalina.servlets.InvokerServlet.doPost(InvokerServlet.java:216)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:243)
at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:201)
at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2344)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164)
at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)
at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:170)
at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:163)
at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at
org.apache.catalina.connector.warp.WarpRequestHandler.handle

Performance of tomcat 3.2.3

2001-11-16 Thread Michael Jennings

Hi everyone,

I'm working on a project for a client that involves a servlet engine component. I 
suggested tomcat
since I am most familiar with it and it seems the most compliant servlet engine around.
My client has mentioned concerns about tomcat's performance and now is insisting on
using IBM websphere 4.0

My suspicion is that tomcat's performance will be fine for this application, but I 
would
like to have some hard numbers to back up my claim. Does anyone know of any kind
of tool or code out there that can measure http and https performance?

Thanks in advance.
-Mike Jennings



DO NOT REPLY [Bug 4922] - getRealPath().exists() yields security exception

2001-11-16 Thread bugzilla

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=4922.
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=4922

getRealPath().exists() yields security exception





--- Additional Comments From [EMAIL PROTECTED]  2001-11-16 09:44 ---
In servlet 2.3 environments, you should also consider using
ServletContext.getResourcePaths() to list the contents of the WAR directory. 
This will work even in servlet containers that do not expand your webapp into an
unpacked directory structure.

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




Re: Performance of tomcat 3.2.3

2001-11-16 Thread Justin Erenkrantz

On Fri, Nov 16, 2001 at 09:16:18AM -0800, Michael Jennings wrote:
 Hi everyone,
 
 I'm working on a project for a client that involves a servlet engine component. I 
suggested tomcat
 since I am most familiar with it and it seems the most compliant servlet engine 
around.
 My client has mentioned concerns about tomcat's performance and now is insisting on
 using IBM websphere 4.0

FWIW, I've heard of nothing but bad experiences with WebSphere.
 
 My suspicion is that tomcat's performance will be fine for this application, but I 
would
 like to have some hard numbers to back up my claim. Does anyone know of any kind
 of tool or code out there that can measure http and https performance?

http://httpd.apache.org/test/flood/

If you enable the HotSpot Server VM, you'll get about as good as
you can with any Java application.  -- justin


--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




DO NOT REPLY [Bug 4806] - include HTML page encoding problem

2001-11-16 Thread bugzilla

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=4806.
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=4806

include HTML page encoding problem

[EMAIL PROTECTED] changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||WONTFIX



--- Additional Comments From [EMAIL PROTECTED]  2001-11-16 10:07 ---
When you use RequestDispatcher.include() or jsp:include, it is the
responsibility of the included resource (not the servlet container) to return
exactly what you want.  In the case of static resources served by
DefaultServlet, that would require the addition of a non-standard way to
indicate the desired character set (perhaps by adding a request parameter on the
include) -- and this would be Tomcat-specific because there is no such mechanism
defined in the servlet API, so your application would not be portable to any
other server.

An alternative approach would be to define your own servlet that served out
static content, but *did* take a request parameter to define the character set
requested.  This would be pretty simple logic:
* Determine the path of the desired resource via request.getPathInfo()
* Call ServletContext.getResourceAsStream() to get an
  InputStream to the resource
* Determine which character encoding is required from a request parameter
* Build an InputStreamReader (with the desired character encoding)
  around the InputStream acquired earlier
* Copy the characters from the InputStreamReader to the response writer
  for this response.

In this way, you would be insulating your application from relying on a platform
specific feature.

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




Re: Performance of tomcat 3.2.3

2001-11-16 Thread Ryan Lubke

http://jakarta.apache.org/jmeter/index.html

On Fri, 2001-11-16 at 12:16, Michael Jennings wrote:
 Hi everyone,
 
 I'm working on a project for a client that involves a servlet engine component. I 
suggested tomcat
 since I am most familiar with it and it seems the most compliant servlet engine 
around.
 My client has mentioned concerns about tomcat's performance and now is insisting on
 using IBM websphere 4.0
 
 My suspicion is that tomcat's performance will be fine for this application, but I 
would
 like to have some hard numbers to back up my claim. Does anyone know of any kind
 of tool or code out there that can measure http and https performance?
 
 Thanks in advance.
 -Mike Jennings



--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




DO NOT REPLY [Bug 4922] - getRealPath().exists() yields security exception

2001-11-16 Thread bugzilla

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=4922.
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=4922

getRealPath().exists() yields security exception

[EMAIL PROTECTED] changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED



--- Additional Comments From [EMAIL PROTECTED]  2001-11-16 10:28 ---
I'm quite sure I fixed that problem in the HEAD branch (try one of the latest 
nightly builds), by:
- Canonicalizing all URLs used in permissions or in the class loader
- Adding back some permissions

The patches have been ported to the 4.0 branch, but it's a post-4.0.1 fix.

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




FW: small contribution

2001-11-16 Thread Erik Stenflo



-Original Message-
From: Shawn Bayern [mailto:[EMAIL PROTECTED]] 
Sent: Thursday, November 15, 2001 9:02 PM
To: Erik Stenflo
Subject: Re: small contribution


Hi Erik -

I'm involved in Jakarta, but not directly with Tomcat.  The best thing
to do is to forward your message to [EMAIL PROTECTED]  Best
wishes!

Shawn

On Thu, 15 Nov 2001, Erik Stenflo wrote:

 shawn, you are receiving this because you are
 the first listed committer for tomcat.
 Attached is a file with two minor changes to the documentation, a 
 small typo fix and an xml syntax fix. Thanks for the good work. Viva 
 jakarta! -eRiK
 
 P.S. - Changes were applied to todays's nightly
 build, to avoid any merging issues. The changes
 are rather minor, so I hope it is not a waste of your
 time.




correction2005.zip
Description: correction2005.zip

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]


Error: null cert chain

2001-11-16 Thread Hai Wang

Hello everybody,

   I am working on SSL communication now, I have set up Tomcat to
support SSL, but I got an error when I tried to make a connection to
Tomcat-SSL server. My procedures are as follows: (by the way my server
and client are sitting in the same Linux PC  (Lisbon))


   1. create the key pair for server and client
2. request the certificates from thawte from both of them
   3. import the reply certifcates to server and client keystores
   4 export the server and client certficates and import them as the

trusted certficates

Detailed procedures, please see the end of the mail

when I desable clientAuth, everything is fine, but when I turn on the
clientAuth, the following erros come up.


In server side:


SecureServer is listening on port 8444.
Accepted connection to 192.168.0.60 (192.168.0.60) on port 40342.
IOException occurred when processing request.
javax.net.ssl.SSLException: null cert chain
 at com.sun.net.ssl.internal.ssl.SSLSocketImpl.a([DashoPro-V1.2-120198])

 at
com.sun.net.ssl.internal.ssl.ServerHandshaker.a([DashoPro-V1.2-120198])
 at
com.sun.net.ssl.internal.ssl.ServerHandshaker.processMessage([DashoPro-V1.2-120198])

 at
com.sun.net.ssl.internal.ssl.Handshaker.process_record([DashoPro-V1.2-120198])

 at com.sun.net.ssl.internal.ssl.SSLSocketImpl.a([DashoPro-V1.2-120198])

 at com.sun.net.ssl.internal.ssl.SSLSocketImpl.a([DashoPro-V1.2-120198])

 at
com.sun.net.ssl.internal.ssl.AppInputStream.read([DashoPro-V1.2-120198])

 at java.io.FilterInputStream.read(FilterInputStream.java:69)
 at HTTPInputStream.readLine(HTTPServer.java:150)
 at HTTPInputStream.getRequest(HTTPServer.java:167)
 at HTTPServerThread.run(HTTPServer.java:71)




in client side:

[write] MD5 and SHA1 hashes:  len = 16
: 14 00 00 0C D5 E8 10 77   94 5F 1A 5C 3E 6F 94 DF
...w._.\o..
Plaintext before ENCRYPTION:  len = 36
: 14 00 00 0C D5 E8 10 77   94 5F 1A 5C 3E 6F 94 DF
...w._.\o..
0010: E8 04 1B 46 74 29 F0 17   FF A8 B2 D3 28 FA 7B E7
...Ft)..(...
0020: A1 01 87 D4
main, WRITE:  SSL v3.1 Handshake, length = 36
Exception in thread main java.io.IOException: Broken pipe
 at java.net.SocketOutputStream.socketWrite(Native Method)
 at java.net.SocketOutputStream.write(SocketOutputStream.java:83)
 at com.sun.net.ssl.internal.ssl.OutputRecord.a([DashoPro-V1.2-120198])
 at com.sun.net.ssl.internal.ssl.SSLSocketImpl.a([DashoPro-V1.2-120198])

 at
com.sun.net.ssl.internal.ssl.HandshakeOutStream.flush([DashoPro-V1.2-120198])

 at
com.sun.net.ssl.internal.ssl.Handshaker.sendChangeCipherSpec([DashoPro-V1.2-120198])

 at
com.sun.net.ssl.internal.ssl.ClientHandshaker.e([DashoPro-V1.2-120198])
 at
com.sun.net.ssl.internal.ssl.ClientHandshaker.a([DashoPro-V1.2-120198])
 at
com.sun.net.ssl.internal.ssl.ClientHandshaker.processMessage([DashoPro-V1.2-120198])

 at
com.sun.net.ssl.internal.ssl.Handshaker.process_record([DashoPro-V1.2-120198])

 at com.sun.net.ssl.internal.ssl.SSLSocketImpl.a([DashoPro-V1.2-120198])

 at com.sun.net.ssl.internal.ssl.SSLSocketImpl.a([DashoPro-V1.2-120198])

 at
com.sun.net.ssl.internal.ssl.AppOutputStream.write([DashoPro-V1.2-120198])

 at java.io.OutputStream.write(OutputStream.java:61)
 at
com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake([DashoPro-V1.2-120198])

 at
com.sun.net.ssl.internal.www.protocol.https.HttpsClient.doConnect([DashoPro-V1.2-120198])

 at
com.sun.net.ssl.internal.www.protocol.https.NetworkClient.openServer([DashoPro-V1.2-120198])

 at
com.sun.net.ssl.internal.www.protocol.https.HttpClient.l([DashoPro-V1.2-120198])

 at
com.sun.net.ssl.internal.www.protocol.https.HttpClient.init([DashoPro-V1.2-120198])

 at
com.sun.net.ssl.internal.www.protocol.https.HttpsClient.init([DashoPro-V1.2-120198])

 at
com.sun.net.ssl.internal.www.protocol.https.HttpsClient.a([DashoPro-V1.2-120198])

 at
com.sun.net.ssl.internal.www.protocol.https.HttpsClient.a([DashoPro-V1.2-120198])

 at
com.sun.net.ssl.internal.www.protocol.https.HttpsURLConnection.connect([DashoPro-V1.2-120198])

 at
com.sun.net.ssl.internal.www.protocol.https.HttpsURLConnection.getInputStream([DashoPro-V1.2-120198])

 at Browser.run(Browser.java:36)



Any help is appreciated!!

thanks
Hai





Key generation procedures shown as follows:



Step1 : generate key pairs for server and clients:

  1.   keytool -genkey -v -alias tomcat -keyalg RSA -keysize 1024 -
 sigalg MD5withRSA -keypass changeit -storepass changeit -storetype
 jks -keystore server.keystore

What is your first and last name?
  [Unknown]:  lisbon.invisiblehand.net
What is the name of your organizational unit?
  [Unknown]:  IHN
What is the name of your organization?
  [Unknown]:  IHN
What is the name of your City or Locality?
  [Unknown]:  New York
What is the name of your State or Province?
  [Unknown]:  NY
What is the two-letter country code for this unit?
  [Unknown]:  US
Is CN=lisbon.invisiblehand.net, OU=IHN, O=IHN, L=New York, ST=NY, C=US

correct?
  [no]: 

cvs commit: jakarta-tomcat-4.0/webapps/tomcat-docs manager-howto.xml

2001-11-16 Thread remm

remm01/11/16 11:04:06

  Modified:webapps/tomcat-docs manager-howto.xml
  Log:
  - Small corrections to the manager-howto.
Patch submitted by Erik Stenflo.
  
  Revision  ChangesPath
  1.6   +2 -2  jakarta-tomcat-4.0/webapps/tomcat-docs/manager-howto.xml
  
  Index: manager-howto.xml
  ===
  RCS file: /home/cvs/jakarta-tomcat-4.0/webapps/tomcat-docs/manager-howto.xml,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- manager-howto.xml 2001/11/12 21:03:49 1.5
  +++ manager-howto.xml 2001/11/16 19:04:06 1.6
  @@ -93,7 +93,7 @@
   codelt;usergt;/code for each individual user, which might
   look something like this:
   source
  -lt;user name=craigmcc password=secret roles=standard,managergt;
  +lt;user name=craigmcc password=secret roles=standard,manager /gt;
   /source
   which defines the username and password used by this individual to
   log on, and the role names he or she is associated with.  You can
  @@ -113,7 +113,7 @@
   /ul
   
   pThe first time you attempt to issue one of the Manager commands
  -described in the next section, you will be challenged to logn on, using
  +described in the next section, you will be challenged to log on using
   BASIC authentication.  The username and password you enter do not matter,
   as long as they identify a valid user in the users database who possesses
   the role strongmanager/strong./p
  
  
  

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




cvs commit: jakarta-tomcat-4.0/webapps/tomcat-docs manager-howto.xml

2001-11-16 Thread remm

remm01/11/16 11:09:09

  Modified:webapps/tomcat-docs Tag: tomcat_40_branch manager-howto.xml
  Log:
  - Fix CRLF ?
  - Small corrections to the manager-howto.
Patch submitted by Erik Stenflo.
  
  Revision  ChangesPath
  No   revision
  
  
  No   revision
  
  
  1.4.2.1   +466 -466  jakarta-tomcat-4.0/webapps/tomcat-docs/manager-howto.xml
  
  Index: manager-howto.xml
  ===
  RCS file: /home/cvs/jakarta-tomcat-4.0/webapps/tomcat-docs/manager-howto.xml,v
  retrieving revision 1.4
  retrieving revision 1.4.2.1
  diff -u -r1.4 -r1.4.2.1
  --- manager-howto.xml 2001/09/14 20:08:01 1.4
  +++ manager-howto.xml 2001/11/16 19:09:09 1.4.2.1
  @@ -1,466 +1,466 @@
  -?xml version=1.0?
  -!DOCTYPE document [
  -  !ENTITY project SYSTEM project.xml
  -]
  -document
  -
  -project;
  -
  -properties
  -author email=[EMAIL PROTECTED]Craig R. McClanahan/author
  -titleManager App HOW-TO/title
  -/properties
  -
  -body
  -
  -
  -section name=Introduction
  -
  -pIn many production environments, it is very useful to have the capability
  -to deploy a new web application, or undeploy an existing one, without having
  -to shut down and restart the entire container.  In addition, you can request
  -an existing application to reload itself, even if you have not declared it
  -to be codereloadable/code in the Tomcat 4 server
  -configuration file./p
  -
  -pTo support these capabilities, Tomcat 4 includes a web application
  -(installed by default on context path code/manager/code) that supports
  -the following functions:/p
  -ul
  -liDeploy a new web application, on a specified context path, from a
  -specified directory or WAR file pathname./li
  -liList the currently deployed web applications, as well as the
  -sessions that are currently active for those web apps./li
  -liCause an existing application to be reloaded./li
  -liUndeploy an existing web application./li
  -liStop an existing application (so that it becomes unavailable), but
  -do not undeploy it./li
  -liStart a stopped application (thus making it available again)./li
  -/ul
  -
  -pSince codeManager/code is itself a web application, it interacts with
  -you using standard HTTP requests and responses.  However, it's user interface
  -is minimal, because it is intended to be accessed from scripts set up by the
  -system administrator.  For this reason, commands are given as part of the
  -request URI, and responses are in the form of simple text that can be easily
  -parsed and processed./p
  -
  -pFuture versions of Tomcat 4 will include administrative functionality that
  -is presented in (at least) the following forms:/p
  -ul
  -liAs web services, so that Tomcat administration can be easily integrated
  -into remote and/or non-Java mnagement environments./li
  -liAs a web application with a nice user interface (built on top of the
  -web services processing layer) for easy Tomcat administration via a
  -web browser./li
  -/ul
  -
  -/section
  -
  -section name=Configuring Manager Application Access
  -
  -blockquoteem
  -pThe description below uses the variable name $CATALINA_HOME
  -to refer to the directory into which you have installed Tomcat 4,
  -and is the base directory against which most relative paths are
  -resolved.  However, if you have configured Tomcat 4 for multiple
  -instances by setting a CATALINA_BASE directory, you should use
  -$CATALINA_BASE instead of $CATALINA_HOME for each of these
  -references./p
  -/em/blockquote
  -
  -pIt would be quite unsafe to ship Tomcat with default settings that allowed
  -anyone on the Internet to execute the Manager application on your server.
  -Therefore, the Manager application is shipped with the requirement that anyone
  -who attempts to use it must authenticate themselves, using a username and
  -password that have the role strongmanager/strong associated with them.
  -Further, there is no username in the default users file
  -(conf$CATALINA_HOME/conf/tomcat-users.xml/conf) that is assigned this
  -role.  Therefore, access to the Manager application is completely disabled
  -by default./p
  -
  -pTo enable access to the Manager web application, you must either create
  -a new username/password combination and associate the role name
  -strongmanager/strong with it, or add the strongmanager/strong role
  -to some existing username/password combination.  Exactly where this is done
  -depends on which codeRealm/code implementation you are using:/p
  -ul
  -liemMemoryRealm/em - If you have not customized your
  -code$CATALINA_HOME/conf/server.xml/code to select a different one,
  -Tomcat 4 defaults to an XML-format file stored at
  -code$CATALINA_HOME/conf/tomcat-users.xml/code, which 

Re: Portable SSL Support

2001-11-16 Thread William Barker

I was thinking of moving it to Http10Interceptor.getInfo, but otherwise that
was more or less what I was thinking.
- Original Message -
From: jean-frederic clere [EMAIL PROTECTED]
To: Tomcat Developers List [EMAIL PROTECTED]
Sent: Friday, November 16, 2001 3:10 AM
Subject: Re: Portable SSL Support


 [EMAIL PROTECTED] wrote:
 
  On 14 Nov 2001, Eric Rescorla wrote:
 
   Well, I suppose that since JDK 1.1.x didn't stop you from putting
   classes in java. I could do my own version of
   java.security.cert.X509Certificate. A little gross but perhaps
   the best plan. The alternative is to blatantly violate the spec
   in 1.1 and just deliver something else.
 
  I would say - don't worry about JDK1.1. Support for JDK1.1 is important
  for embeded devices ( but even there, GCJ does have X509Certificate - it
  already supports a large subset of JDK1.2, and that's included ).
 
  You have to use request.getAttribute() in the JSPs/servlets.
 Right, but that doesn't mean that we have to expose the SSLSupport
 interface. Instead we could break out each individual property
 we cared about into it's own attribute.
   
To be consistant with 2.3 containers, I'd go with individually named
attributes.
 
   Fine with me. Anyone object to this?
 
  Individual attributes are good, but if possible with lazy evaluation.
 
  The getInfo() callback in BaseInterceptor is supposed to do exactly
that -
  allow you to lazy-evaluate expensive request fields, so only servlets
that
  ask for the information will pay for it.

 In TC3.3:
 We have the following in Http10Interceptor.java:

 +++
 public Object getAttribute(String name) {
 if (name.equals(javax.servlet.request.X509Certificate)) {
 return(certcompat.getX509Certificates(socket));
 }
 return(super.getAttribute(name));
 }
 +++

 A note stored via request.setNote(SSLSupport,SSLSupport) somewhere in
 retrieved by getNote.
 The code ends to be:
 +++
 public Object getAttribute(String name) {
 if (name.equals(javax.servlet.request.X509Certificate)) {
 SSLSupport sslsupport = getNote(SSLSupport);
 if (sslsupport==null)
   return(null);
 return(sslsupport.getX509Certificates(socket));
 }
 return(super.getAttribute(name));
 }
 +++
 Ideas?

 
  Costin
 
  --
  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]




**

This message is intended only for the use of the person(s) listed above 
as the intended recipient(s), and may contain information that is 
PRIVILEGED and CONFIDENTIAL.  If you are not an intended recipient, 
you may not read, copy, or distribute this message or any attachment.  
If you received this communication in error, please notify us immediately 
by e-mail and then delete all copies of this message and any attachments.


In addition you should be aware that ordinary (unencrypted) e-mail sent 
through the Internet is not secure. Do not send confidential or sensitive 
information, such as social security numbers, account numbers, personal 
identification numbers and passwords, to us via ordinary (unencrypted) 
e-mail. 

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




Re: Portable SSL Support

2001-11-16 Thread Eric Rescorla

William Barker [EMAIL PROTECTED] writes:

 I was thinking of moving it to Http10Interceptor.getInfo, but otherwise that
 was more or less what I was thinking.
Actually, ISTM that eventually this belongs in Request.getInfo(), since
that allows the use of SSLSupport with Ajp as well. For the moment,
though, I agree that it belongs in Http10Interceptor.


-Ekr
-- 
[Eric Rescorla   [EMAIL PROTECTED]]
http://www.rtfm.com/

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




cvs commit: jakarta-tomcat-connectors/jk/native build.xml

2001-11-16 Thread mmanders

mmanders01/11/16 13:32:03

  Modified:jk/native build.xml
  Log:
  Added alternate targets (since NLM names are limited to 8.3).
  
  Revision  ChangesPath
  1.15  +5 -0  jakarta-tomcat-connectors/jk/native/build.xml
  
  Index: build.xml
  ===
  RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native/build.xml,v
  retrieving revision 1.14
  retrieving revision 1.15
  diff -u -r1.14 -r1.15
  --- build.xml 2001/11/15 19:38:02 1.14
  +++ build.xml 2001/11/16 21:32:03 1.15
  @@ -68,6 +68,8 @@
 /depends
 
 !-- Platform-specific tags --
  +  altSoFile value=jni_conn if=netware /
  +  
 def name=N_PLAT_NLM if=netware
   info=Building for NetWare platform /
 def name=NETWARE if=netware
  @@ -272,6 +274,7 @@
include name=${java.home}/../include /
   
   !-- Platform specific includes --
  +
include name=${novellndk.dir}/include/nlm if=netware /
include name=${novellndk.dir}/include if=netware /
   include name=${java.home}/../include/netware if=netware /
  @@ -285,6 +288,8 @@
 /depends
   
 !-- Platform-specific tags --
  +  altSoFile value=nsapi_rd if=netware /
  +  
 def name=N_PLAT_NLM if=netware
   info=Building for NetWare platform /
 def name=NETWARE if=netware
  
  
  

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




cvs commit: jakarta-tomcat-connectors/jk/jkant/java/org/apache/jk/ant SoTask.java

2001-11-16 Thread mmanders

mmanders01/11/16 13:32:16

  Modified:jk/jkant/java/org/apache/jk/ant SoTask.java
  Log:
  Added alternate targets (since NLM names are limited to 8.3).
  
  Revision  ChangesPath
  1.20  +12 -0 
jakarta-tomcat-connectors/jk/jkant/java/org/apache/jk/ant/SoTask.java
  
  Index: SoTask.java
  ===
  RCS file: 
/home/cvs/jakarta-tomcat-connectors/jk/jkant/java/org/apache/jk/ant/SoTask.java,v
  retrieving revision 1.19
  retrieving revision 1.20
  diff -u -r1.19 -r1.20
  --- SoTask.java   2001/11/12 23:34:47 1.19
  +++ SoTask.java   2001/11/16 21:32:16 1.20
  @@ -122,6 +122,7 @@
   protected Vector exports= new Vector(); // used by the NetWare, win32 
linkers
   protected Vector modules= new Vector(); // used by the NetWare linker
   protected Vector linkOpts   = new Vector(); // used by the NetWare, win32 
linkers
  +protected Vector altSoFiles = new Vector(); // used by the NetWare linker
   
   // Computed fields 
   protected Vector compileList; // [Source]
  @@ -164,6 +165,7 @@
so.compileList=compileList;
so.compiler=compiler;
so.co_mapper=co_mapper;
  + so.altSoFiles=altSoFiles;
   }
   
   /**  @deprecated use setTarget
  @@ -242,6 +244,16 @@
   public void addNLMModule(JkData module) {
module.setProject( project );
   modules.add(module);
  +}
  +
  +/**
  + * Add an alternate target since some platforms (NetWare) have file name
  + * limitations.
  + * 
  + */
  +public void addAltSoFile(JkData altSo) {
  + altSo.setProject( project );
  +altSoFiles.add(altSo);
   }
   
   /** Set the target for this compilation. Don't include any
  
  
  

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




cvs commit: jakarta-tomcat-connectors/jk/jkant/java/org/apache/jk/ant/compilers MwldLinker.java

2001-11-16 Thread mmanders

mmanders01/11/16 13:32:24

  Modified:jk/jkant/java/org/apache/jk/ant/compilers MwldLinker.java
  Log:
  Added alternate targets (since NLM names are limited to 8.3).
  
  Revision  ChangesPath
  1.5   +15 -0 
jakarta-tomcat-connectors/jk/jkant/java/org/apache/jk/ant/compilers/MwldLinker.java
  
  Index: MwldLinker.java
  ===
  RCS file: 
/home/cvs/jakarta-tomcat-connectors/jk/jkant/java/org/apache/jk/ant/compilers/MwldLinker.java,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- MwldLinker.java   2001/11/12 23:31:58 1.4
  +++ MwldLinker.java   2001/11/16 21:32:24 1.5
  @@ -81,6 +81,21 @@
   so.setExtension(.nlm);
   so.duplicateTo( this );
   project.setProperty(netware, true);
  +
  +Enumeration e=altSoFiles.elements();
  +while (e.hasMoreElements())
  +{
  +JkData data = (JkData) e.nextElement();
  +String altSo = data.getValue();
  +if (altSo == null) 
  +continue;
  +else
  +{
  +so.setTarget(altSo);// set it on the master copy
  +setTarget(altSo);   // set it on ourself
  +break;
  +}
  +}
   }
   
   public void execute() throws BuildException {
  
  
  

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




Tomcat 4.0 on IIS

2001-11-16 Thread Rajan Gupta

I managed to run Tomcat 4.0 with IIS using the ISAPI module provided for
Tomcat 3.3 for AJPV13. I had to use the workers.properties 
uriworkers.properties to make it work from Tomcat 3.3. If the Tomcat
Developer Community does not know of any known issue with using Tomcat 3.3
ISAPI Module for Tomcat 4.0, I will be happy to provide an Installation
Guide  sample files to be put as a part of Tomcat 4.0.

I say this because I have seen repeated request by Tomcat 4.0 Users for
IIS support.

Craig, can u take a minute to advise. 

Thanks,
Rajan Gupta



__
Do You Yahoo!?
Find the one for you at Yahoo! Personals
http://personals.yahoo.com

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




Re: Error: null cert chain

2001-11-16 Thread Eric Rescorla

Hai Wang [EMAIL PROTECTED] writes:
I am working on SSL communication now, I have set up Tomcat to
 support SSL, but I got an error when I tried to make a connection to
 Tomcat-SSL server. My procedures are as follows: (by the way my server
 and client are sitting in the same Linux PC  (Lisbon))
 
 
1. create the key pair for server and client
 2. request the certificates from thawte from both of them
3. import the reply certifcates to server and client keystores
4 export the server and client certficates and import them as the
 
 trusted certficates
 
 Detailed procedures, please see the end of the mail
 
 when I desable clientAuth, everything is fine, but when I turn on the
 clientAuth, the following erros come up.
Let's start by finding out whether the client is actually performing
client auth. Can you get an ssldump trace of the connection?
(you can get ssldump from http://www.rtfm.com/ssldump). You'll
want to use the -A and -N flags.

Once we know what's happening we can try to figure out why.

-Ekr

-- 
[Eric Rescorla   [EMAIL PROTECTED]]
Author of SSL and TLS: Designing and Building Secure Systems
  http://www.rtfm.com/
  

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




Re: Portable SSL Support

2001-11-16 Thread costinm

On 16 Nov 2001, Eric Rescorla wrote:

 William Barker [EMAIL PROTECTED] writes:

  I was thinking of moving it to Http10Interceptor.getInfo, but otherwise that
  was more or less what I was thinking.
 Actually, ISTM that eventually this belongs in Request.getInfo(), since
 that allows the use of SSLSupport with Ajp as well. For the moment,
 though, I agree that it belongs in Http10Interceptor.

Or even better, in SSLInterceptor. No need to change Request or the core -
if it can be done in a module, it's better to do it this way.

Costin





--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




Re: Asking Tomcat 4.x to accept a different JNDI initial factory

2001-11-16 Thread Han Ming Ong

Hi Remy,
   I know that you are busy but may I know when we will see this change? 
I just checked the CVS repository about 1 hour ago and it's not there 
yet. Will it make it into the next release? We are trying to debate when 
we should move to Tomcat 4 as we are currently on Tomcat 3.

thanks a lot!!!

On Monday, November 5, 2001, at 03:53  PM, Remy Maucherat wrote:

 Hi folks,

Tomcat 4.x has its own JNDI server. But I would like it to use a
 different initial factory. One of the ways is to pass the value
 -Djava.naming.factory.initial=com.mycompany.rmi.jndi.CtxFactory

But Catalina.java has hard coded
 org.apache.naming.java.javaURLContextFactory as its factory,
 completely ignoring the System property. I added the codes to
 Catalina.java (see diff below). Is my analysis correct? If not, what
 should I do?

 Thanks, hanming

 % cd jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/startup
 % diff Catalina.java Catalina.java.org
 452,455d451
  value =
 System.getProperty(javax.naming.Context.INITIAL_CONTEXT_FACTORY);
  if (value == null) {
  value = 
 org.apache.naming.java.javaURLContextFactory;
  }
 457c453
 value);
 ---

 org.apache.naming.java.javaURLContextFactory);

 Yes, doing that may be more reasonable. I'll apply the patch.

 Remy



--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




Re: Asking Tomcat 4.x to accept a different JNDI initial factory

2001-11-16 Thread Han Ming Ong

Oops, that was meant to be a private message. My deepest apologies!

On Friday, November 16, 2001, at 01:56  PM, Han Ming Ong wrote:

 Hi Remy,
   I know that you are busy but may I know when we will see this change? 
 I just checked the CVS repository about 1 hour ago and it's not there 
 yet. Will it make it into the next release? We are trying to debate 
 when we should move to Tomcat 4 as we are currently on Tomcat 3.

 thanks a lot!!!

 On Monday, November 5, 2001, at 03:53  PM, Remy Maucherat wrote:

 Hi folks,

Tomcat 4.x has its own JNDI server. But I would like it to use a
 different initial factory. One of the ways is to pass the value
 -Djava.naming.factory.initial=com.mycompany.rmi.jndi.CtxFactory

But Catalina.java has hard coded
 org.apache.naming.java.javaURLContextFactory as its factory,
 completely ignoring the System property. I added the codes to
 Catalina.java (see diff below). Is my analysis correct? If not, what
 should I do?

 Thanks, hanming

 % cd jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/startup
 % diff Catalina.java Catalina.java.org
 452,455d451
  value =
 System.getProperty(javax.naming.Context.INITIAL_CONTEXT_FACTORY);
  if (value == null) {
  value = 
 org.apache.naming.java.javaURLContextFactory;
  }
 457c453
 value);
 ---

 org.apache.naming.java.javaURLContextFactory);

 Yes, doing that may be more reasonable. I'll apply the patch.

 Remy




--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




cvs commit: jakarta-tomcat-connectors/jk/jkant/java/org/apache/jk/ant SoTask.java

2001-11-16 Thread costin

costin  01/11/16 14:18:50

  Modified:jk/jkant/java/org/apache/jk/ant SoTask.java
  Log:
  SoTask will delegate to the CompilerAdapter the detection of files to
  be compiled.
  
  This simplifies things a bit and gives CompileAdapter a way to contol all
  files.
  
  Revision  ChangesPath
  1.21  +19 -97
jakarta-tomcat-connectors/jk/jkant/java/org/apache/jk/ant/SoTask.java
  
  Index: SoTask.java
  ===
  RCS file: 
/home/cvs/jakarta-tomcat-connectors/jk/jkant/java/org/apache/jk/ant/SoTask.java,v
  retrieving revision 1.20
  retrieving revision 1.21
  diff -u -r1.20 -r1.21
  --- SoTask.java   2001/11/16 21:32:16 1.20
  +++ SoTask.java   2001/11/16 22:18:50 1.21
  @@ -125,10 +125,10 @@
   protected Vector altSoFiles = new Vector(); // used by the NetWare linker
   
   // Computed fields 
  -protected Vector compileList; // [Source]
  +//protected Vector compileList; // [Source]
   protected Vector srcList=new Vector();
   protected CompilerAdapter compiler;
  -protected GlobPatternMapper co_mapper;
  +//protected GlobPatternMapper co_mapper;
   
   public SoTask() {};
   
  @@ -162,9 +162,9 @@
so.modules=modules;
so.linkOpts=linkOpts;
so.srcList=srcList;
  - so.compileList=compileList;
  +//   so.compileList=compileList;
so.compiler=compiler;
  - so.co_mapper=co_mapper;
  +//   so.co_mapper=co_mapper;
so.altSoFiles=altSoFiles;
   }
   
  @@ -353,7 +353,7 @@
   // clean, libtool should be just a fallback.
   public void execute() throws BuildException {
compiler=findCompilerAdapter();
  - co_mapper=compiler.getOMapper();
  +//   co_mapper=compiler.getOMapper();
LinkerAdapter linker=findLinkerAdapter();
   
if( soFile==null )
  @@ -363,16 +363,20 @@
   
// XXX makedepend-type dependencies - how ??
// We could generate a dummy Makefile and parse the content...
  - findCompileList();
  +findSourceFiles();
   
  - compiler.compile( compileList );
  - 
  +// Copy all settings into compiler
  +this.duplicateTo(compiler);
  + compiler.compile( srcList );
  +
  +// XXX move this checking to linker
File soTarget=new File( buildDir, soFile + soExt );
  - if( compileList.size() == 0  soTarget.exists()) {
  + if( compiler.getCompiledFiles().size() == 0  soTarget.exists()) {
// No dependency, no need to relink
return;
}
   
  +this.duplicateTo(linker);
linker.link(srcList);
   }
   
  @@ -442,7 +446,8 @@
return linkerAdapter;
  }
   
  -
  +/** Find all source files declared with src elements
  + */
   public void findSourceFiles() {
if (buildDir == null) buildDir = project.getBaseDir();
   
  @@ -459,93 +464,10 @@
}
   }

  -public void findCompileList() throws BuildException {
  - findSourceFiles();
  - compileList=new Vector();
  -
  -for (int i = 0; i  srcList.size(); i++) {
  - Source source=(Source)srcList.elementAt(i);
  - File srcFile=source.getFile();
  -
  -if (!srcFile.exists()) {
  -throw new BuildException(Source \ + srcFile.getPath() +
  - \ does not exist!, location);
  -}
  -
  - // Check the dependency
  - if( needCompile( source ) ) 
  - compileList.addElement( source );
  - }
  -
  - if( checkDepend() ) {
  - log(Dependency expired, removing .o files and doing a full build );
  - removeOFiles();
  - compileList=new Vector();
  - for(int i=0; isrcList.size(); i++ ) {
  - Source source=(Source)srcList.elementAt(i);
  - File srcFile = source.getFile();
  - compileList.addElement( source );
  - }
  - }
  -}
  -
  -long oldestO=System.currentTimeMillis();
  -File oldestOFile=null;
  -
  -/** Verify if a .c file needs compilation.
  - *   As with javac, we assume a fixed build structure, where all .o
  - *   files are in a separate directory from the sources ( no mess ).
  - *
  - *  XXX Hack makedepend somehow into this.
  - */
  -public boolean needCompile( Source source ) {
  - // For each .c file we'll have a .o file in the build dir,
  - // with the same name.
  - File srcF = source.getFile();
  - if( !srcF.exists() )
  - return false;
  -
  - String targetName=source.getTargetFile( co_mapper );
  - if( targetName==null )
  - return true; // strange, probably different extension ?
  - File target=new File( buildDir, targetName );
  - //  System.out.println(XXX  + target );
  - if( ! target.exists() )
  - 

cvs commit: jakarta-tomcat-connectors/jk/jkant/java/org/apache/jk/ant/compilers CompilerAdapter.java

2001-11-16 Thread costin

costin  01/11/16 14:21:03

  Modified:jk/jkant/java/org/apache/jk/ant/compilers
CompilerAdapter.java
  Log:
  Moved functionality from SoCompiler. Easier interfacing with the implementations.
  
  Use packages in compilation of the .c files ( using the 'base dir' on the src path
   to determine the package, same as in javac )
  
  Add a message with the number of files to be compiled.
  
  Revision  ChangesPath
  1.6   +135 -6
jakarta-tomcat-connectors/jk/jkant/java/org/apache/jk/ant/compilers/CompilerAdapter.java
  
  Index: CompilerAdapter.java
  ===
  RCS file: 
/home/cvs/jakarta-tomcat-connectors/jk/jkant/java/org/apache/jk/ant/compilers/CompilerAdapter.java,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- CompilerAdapter.java  2001/11/11 01:09:59 1.5
  +++ CompilerAdapter.java  2001/11/16 22:21:03 1.6
  @@ -84,6 +84,7 @@
*/
   public abstract class CompilerAdapter extends SoTask {
   SoTask so;
  +Vector compileList;
   
   public CompilerAdapter() {
so=this;
  @@ -94,17 +95,145 @@
so.duplicateTo( this );
   }
   
  -public GlobPatternMapper getOMapper() {
  -return null;
  -}
  +// /** @deprecated
  +//  */
  +// public GlobPatternMapper getOMapper() {
  +// return null;
  +// }
  +
  +/** Return the files that depend on a src file.
  + *  The first item should be the .o file used for linking.
  + */
  +public abstract String[] getTargetFiles( Source src );
   
   public void execute() throws BuildException {
  - super.findCompileList();
  +super.findSourceFiles();
  +Vector compileList=findCompileList(srcList);
compile( compileList );
   }
  +
  +/** Verify if a .c file needs compilation.
  + *   As with javac, we assume a fixed build structure, where all .o
  + *   files are in a separate directory from the sources ( no mess ).
  + *
  + *  XXX Hack makedepend somehow into this.
  + */
  +public boolean needCompile( Source source ) {
  + // For each .c file we'll have a .o file in the build dir,
  + // with the same name.
  + File srcF = source.getFile();
  + if( !srcF.exists() ) {
  +if( debug  0 )
  +log(No source file  + srcF ); 
  +return false;
  +}
  +
  + String targetNames[]= getTargetFiles( source );
  + if( targetNames==null || targetNames.length==0 ) {
  +if( debug  0 )
  +log(No target files  + srcF ); 
  + return true; // strange, probably different extension ?
  +}
  +String targetName=targetNames[0];
  +
  +String targetDir=source.getPackage();
  +File f1=new File( buildDir, targetDir );
  +File target=new File( f1, targetName );
  + //  System.out.println(XXX  + target );
  + if( ! target.exists() ) {
  +if( debug  0 )
  +log(Target doesn't exist  + target ); 
  + return true;
  +}
  + if( oldestO  target.lastModified() ) {
  + oldestO=target.lastModified();
  + oldestOFile=target;
  + }
  + if( srcF.lastModified()  target.lastModified() ) 
  + return true;
  +
  + if( debug  0 )
  + log(No need to compile  + srcF +  target  + target ); 
  + return false;
  +}
  +
  +/** Remove all generated files, cleanup
  + */
  +public void removeOFiles( Vector srcList ) {
  +for (int i = 0; i  srcList.size(); i++) {
  +//log( Checking  + (Source)srcList.elementAt(i));
  +Source source=(Source)srcList.elementAt(i);
  + String targetNA[]=getTargetFiles(source);
  + if( targetNA==null )
  + continue;
  +String targetDir=source.getPackage();
  +File f1=new File( buildDir, targetDir );
  +for( int j=0; jtargetNA.length; j++ ) {
  +File target=new File( f1, targetNA[j] );
  +// Check the dependency
  +if( target.exists() ) {
  +// Remove it - we'll do a full build
  +target.delete();
  +log(Removing  + target );
  +}
  +}
  +}
  +}
  +
  +// XXX modified as side-effect of checking files with needCompile()
  +long oldestO=System.currentTimeMillis();
  +File oldestOFile=null;
  +
  +/** Find the subset of the source list that needs compilation.
  + */
  +protected Vector findCompileList(Vector srcList) throws BuildException {
  +Vector compileList=new Vector();
  +
  +for (int i = 0; i  srcList.size(); i++) {
  + Source source=(Source)srcList.elementAt(i);
  + File srcFile=source.getFile();
  +
  +

cvs commit: jakarta-tomcat-connectors/jk/jkant/java/org/apache/jk/ant/compilers LinkerAdapter.java

2001-11-16 Thread costin

costin  01/11/16 14:21:53

  Modified:jk/jkant/java/org/apache/jk/ant/compilers LinkerAdapter.java
  Log:
  Same changes as in CompilerAdapter - use abstract class, base functionality.
  
  Revision  ChangesPath
  1.4   +13 -3 
jakarta-tomcat-connectors/jk/jkant/java/org/apache/jk/ant/compilers/LinkerAdapter.java
  
  Index: LinkerAdapter.java
  ===
  RCS file: 
/home/cvs/jakarta-tomcat-connectors/jk/jkant/java/org/apache/jk/ant/compilers/LinkerAdapter.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- LinkerAdapter.java2001/11/10 16:51:32 1.3
  +++ LinkerAdapter.java2001/11/16 22:21:53 1.4
  @@ -75,18 +75,28 @@
* reflection)./p
*
* @author Jay Dickon Glanville a 
href=mailto:[EMAIL PROTECTED];[EMAIL PROTECTED]/a
  + * @author Costin Manolache
*/
  -public interface LinkerAdapter {
  +public abstract class LinkerAdapter extends SoTask {
  +protected SoTask so;
   
   /**
* Sets the compiler attributes, which are stored in the Javac task.
*/
  -void setSoTask( SoTask attributes );
  +public void setSoTask(SoTask so ) {
  + this.so=so;
  +}
   
  +public void execute() throws BuildException {
  + findSourceFiles();
  + link(this.srcList);
  +}
  +
  +
   /**
* Executes the task.
*
* @return has the compilation been successful
*/
  -boolean link(Vector files) throws BuildException;
  +public abstract boolean link(Vector srcFiles) throws BuildException;
   }
  
  
  

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




cvs commit: jakarta-tomcat-connectors/jk/jkant/java/org/apache/jk/ant/compilers CcCompiler.java LibtoolLinker.java MsvcCompiler.java MsvcLinker.java MwldLinker.java

2001-11-16 Thread costin

costin  01/11/16 14:23:22

  Modified:jk/jkant/java/org/apache/jk/ant/compilers CcCompiler.java
LibtoolLinker.java MsvcCompiler.java
MsvcLinker.java MwldLinker.java
  Log:
  Changes in the implementation, reflecting api changes.
  
  Revision  ChangesPath
  1.6   +8 -6  
jakarta-tomcat-connectors/jk/jkant/java/org/apache/jk/ant/compilers/CcCompiler.java
  
  Index: CcCompiler.java
  ===
  RCS file: 
/home/cvs/jakarta-tomcat-connectors/jk/jkant/java/org/apache/jk/ant/compilers/CcCompiler.java,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- CcCompiler.java   2001/11/11 01:09:59 1.5
  +++ CcCompiler.java   2001/11/16 22:23:22 1.6
  @@ -70,17 +70,19 @@
* @author Costin Manolache
*/
   public class CcCompiler extends CompilerAdapter {
  -
  +GlobPatternMapper co_mapper=new GlobPatternMapper();
  +
   public CcCompiler() {
super();
  -};
  -
  -public GlobPatternMapper getOMapper() {
  - GlobPatternMapper co_mapper=new GlobPatternMapper();
co_mapper.setFrom(*.c);
co_mapper.setTo(*.o);
  +}
   
  - return co_mapper;
  +public String[] getTargetFiles( Source src ) {
  +File srcFile = src.getFile();
  +String name=srcFile.getName();
  +
  +return co_mapper.mapFileName( name );
   }
   
   /** Compile  using 'standard' gcc flags. This assume a 'current' gcc on
  
  
  
  1.5   +4 -15 
jakarta-tomcat-connectors/jk/jkant/java/org/apache/jk/ant/compilers/LibtoolLinker.java
  
  Index: LibtoolLinker.java
  ===
  RCS file: 
/home/cvs/jakarta-tomcat-connectors/jk/jkant/java/org/apache/jk/ant/compilers/LibtoolLinker.java,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- LibtoolLinker.java2001/11/10 16:51:06 1.4
  +++ LibtoolLinker.java2001/11/16 22:23:22 1.5
  @@ -69,24 +69,13 @@
* 
* @author Costin Manolache
*/
  -public class LibtoolLinker extends SoTask implements LinkerAdapter {
  +public class LibtoolLinker extends LinkerAdapter {
   SoTask so;
  -protected static GlobPatternMapper lo_mapper=new GlobPatternMapper();
  -static {
  - lo_mapper.setFrom(*.c);
  - lo_mapper.setTo(*.lo);
  -}
  +GlobPatternMapper lo_mapper=new GlobPatternMapper();
   public LibtoolLinker() {
so=this;
  -};
  -
  -public void setSoTask(SoTask so ) {
  - this.so=so;
  -}
  -
  -public void execute() throws BuildException {
  - findSourceFiles();
  - link(this.srcList);
  + lo_mapper.setFrom(*.c);
  + lo_mapper.setTo(*.lo);
   }
   
   /** Link using libtool.
  
  
  
  1.3   +9 -10 
jakarta-tomcat-connectors/jk/jkant/java/org/apache/jk/ant/compilers/MsvcCompiler.java
  
  Index: MsvcCompiler.java
  ===
  RCS file: 
/home/cvs/jakarta-tomcat-connectors/jk/jkant/java/org/apache/jk/ant/compilers/MsvcCompiler.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- MsvcCompiler.java 2001/11/12 23:33:48 1.2
  +++ MsvcCompiler.java 2001/11/16 22:23:22 1.3
  @@ -69,21 +69,20 @@
* @author Ignacio J. Ortega
*/
   public class MsvcCompiler extends CompilerAdapter {
  -
  -static GlobPatternMapper co_mapperS=new GlobPatternMapper();
  -static {
  - co_mapperS.setFrom(*.c);
  - co_mapperS.setTo(*.obj);
  -}
  +GlobPatternMapper co_mapperS=new GlobPatternMapper();
   
   public MsvcCompiler() {
   super();
  -};
  -
  -public GlobPatternMapper getOMapper() {
  - return co_mapperS;
  + co_mapperS.setFrom(*.c);
  + co_mapperS.setTo(*.obj);
   }
   
  +public String[] getTargetFiles( Source src ) {
  +File srcFile = src.getFile();
  +String name=srcFile.getName();
  +
  +return co_mapperS.mapFileName( name );
  +}
   
   public void setSoTask(SoTask so ) {
   this.so=so;
  
  
  
  1.3   +6 -3  
jakarta-tomcat-connectors/jk/jkant/java/org/apache/jk/ant/compilers/MsvcLinker.java
  
  Index: MsvcLinker.java
  ===
  RCS file: 
/home/cvs/jakarta-tomcat-connectors/jk/jkant/java/org/apache/jk/ant/compilers/MsvcLinker.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- MsvcLinker.java   2001/11/12 23:32:45 1.2
  +++ MsvcLinker.java   2001/11/16 22:23:22 1.3
  @@ -69,12 +69,15 @@
*
* @author Ignacio J. Ortega
*/
  -public class MsvcLinker extends SoTask implements LinkerAdapter {
  +public class MsvcLinker extends LinkerAdapter {
   SoTask so;
  -
  +GlobPatternMapper co_mapper=new GlobPatternMapper();
  +  

cvs commit: jakarta-tomcat-connectors/jk/jkant/java/org/apache/jk/ant/compilers GcjCompiler.java GcjLinker.java

2001-11-16 Thread costin

costin  01/11/16 14:26:50

  Modified:jk/jkant/java/org/apache/jk/ant/compilers GcjCompiler.java
GcjLinker.java
  Log:
  Important change - allow the compilation of static files ( .properties, .dtd, etc ).
  
  GCJ can 'compile' those resources to .o files that are linked in the .so, in
  order to have a self-contained executable. ( it's the same with including them in
  a .jar file, for non-native compilation )
  
  Added an experimental option to build .a file ( not yet completed - I'm still
  not sure how this work )
  
  Revision  ChangesPath
  1.5   +32 -14
jakarta-tomcat-connectors/jk/jkant/java/org/apache/jk/ant/compilers/GcjCompiler.java
  
  Index: GcjCompiler.java
  ===
  RCS file: 
/home/cvs/jakarta-tomcat-connectors/jk/jkant/java/org/apache/jk/ant/compilers/GcjCompiler.java,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- GcjCompiler.java  2001/11/11 01:09:59 1.4
  +++ GcjCompiler.java  2001/11/16 22:26:50 1.5
  @@ -69,20 +69,25 @@
* @author Costin Manolache
*/
   public class GcjCompiler extends CcCompiler {
  -static GlobPatternMapper co_mapperS=new GlobPatternMapper();
  -static {
  - co_mapperS.setFrom(*.java);
  - co_mapperS.setTo(*.o);
  -}
   
   public GcjCompiler() {
super();
  + co_mapper.setFrom(*.java);
  + co_mapper.setTo(*.o);
   }
   
  -public GlobPatternMapper getOMapper() {
  - return co_mapperS;
  +public String[] getTargetFiles( Source src ) {
  +File srcFile = src.getFile();
  +String name=srcFile.getName();
  +if( name.endsWith( .java ) ) {
  +return co_mapper.mapFileName( name );
  +} else {
  +return new String[]
  +{ name + .o };
  +}
   }
   
  +
   /** Compile using libtool.
*/
   public void compileSingleFile(Source sourceObj) throws BuildException {
  @@ -95,26 +100,39 @@
cmd.createArgument().setValue(-c );

if( optG ) {
  - cmd.createArgument().setValue(-g );
  +//   cmd.createArgument().setValue(-g );
  +cmd.createArgument().setValue(-ggdb3 );
  +//cmd.createArgument().setValue(-save-temps );
//  cmd.createArgument().setValue(-Wall);
}
addOptimize( cmd );
addExtraFlags( cmd );
cmd.createArgument().setValue(-fPIC );
addIncludes( cmd );
  -
  - cmd.createArgument().setValue( -o );
  - File ff=new File( buildDir, sourceObj.getTargetFile(co_mapperS));
  - cmd.createArgument().setValue( ff.toString() );
  +String targetDir=sourceObj.getPackage();
try {
  - String targetDir=sourceObj.getPackage();
File f1=new File( buildDir, targetDir );
f1.mkdirs();
  +cmd.createArgument().setValue( -o );
  +String targetO[]=getTargetFiles( sourceObj );
  +if( targetO==null ) {
  +log(no target for  + sourceObj.getFile() );
  +return;
  +}
  +File ff=new File( f1, targetO[0]);
  +cmd.createArgument().setValue( ff.toString() );
} catch( Exception ex ) {
ex.printStackTrace();
}

  - cmd.createArgument().setValue( source );
  +if( ! source.endsWith(.java) ) {
  +cmd.createArgument().setValue(-R );
  +cmd.createArgument().setValue( targetDir + / + f.getName() );
  +//System.out.println(XXX resource  + targetDir + / + f.getName() );
  +} else {
  +//cmd.createArgument().setValue(-fno-bounds-check );
  +}
  +cmd.createArgument().setValue( source );
project.log( Compiling  + source);
   
if( debug  0 )
  
  
  
  1.2   +30 -8 
jakarta-tomcat-connectors/jk/jkant/java/org/apache/jk/ant/compilers/GcjLinker.java
  
  Index: GcjLinker.java
  ===
  RCS file: 
/home/cvs/jakarta-tomcat-connectors/jk/jkant/java/org/apache/jk/ant/compilers/GcjLinker.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- GcjLinker.java2001/11/10 16:48:38 1.1
  +++ GcjLinker.java2001/11/16 22:26:50 1.2
  @@ -69,17 +69,29 @@
* 
* @author Costin Manolache
*/
  -public class GcjLinker extends SoTask implements LinkerAdapter {
  +public class GcjLinker extends LinkerAdapter {
   SoTask so;
  -protected static GlobPatternMapper lo_mapper=new GlobPatternMapper();
  +protected static GlobPatternMapper co_mapper=new GlobPatternMapper();
   static {
  - lo_mapper.setFrom(*.java);
  - lo_mapper.setTo(*.o);
  + co_mapper.setFrom(*.java);
  + co_mapper.setTo(*.o);
   }
   public GcjLinker() {

cvs commit: jakarta-tomcat-connectors/jk/jkant buildJakarta.xml

2001-11-16 Thread costin

costin  01/11/16 14:33:30

  Added:   jk/jkant buildJakarta.xml
  Log:
  Added a sample on how to use gcj task ( don't try to use it, it'll not work with
  the released gcc ). Gcj support is extremely experimental in jkant - it's just
  an example of a compiler using complex options that can be plugged without too
  much effort into jkant.
  
  ( of course, that's nothing compared with what Henri is trying to do with
  his exotic compilers )
  
  Revision  ChangesPath
  1.1  jakarta-tomcat-connectors/jk/jkant/buildJakarta.xml
  
  Index: buildJakarta.xml
  ===
  ?xml version=1.0 ?
  !-- EXPERIMENTAL - JUST AN EXAMPLE ON HOW TO USE GCJ TASK --
  !-- MAY REQUIRE SMALL/TRIVIAL MODIFICATION IN SOURCES --
  !-- REQUIRES GCJ FROM CVS - 3.0.1 DOESN'T WORK --
  project name=tomcat_gcj default=main basedir=.
  
descriptionNative build for tomcat/description

property file=${user.home}/.ant.properties /
property file=${user.home}/build.properties /
property file=build.properties /
  
property name=LIB value=/opt/java /
property name=tomcat.src value=/ws/33 /
property name=ant.src value=/ws/jakarta/jakarta-ant /
property name=crimson.src value=/ws/jakarta/xml-crimson /
property name=xmlcommons.src value=/ws/jakarta/xml-commons /
property name=servletapi.src value=/ws/jakarta/jakarta-servletapi /
path id=jkant 
  pathelement location=build/jkant.jar/
/path
  
property name=native.dir location=. /
  
property name=so.debug value=true /
property name=so.optimize value=true /
property name=so.profile value=false /

!--  Targets  --
  
target name=main depends=all
/target

target name=init 
  taskdef resource=META-INF/ant.tasks 
 classpathref=jkant /
  mkdir dir=build/
  mkdir dir=build/obj/
/target
  
target name=all 
depends=init,org-apache-crimson,javax-servlet,javax-xml,org-apache-tomcat,examples,link
 /  
  
target name=link 
  exec dir=build/obj executable=gcj
arg value=--main=org.apache.tomcat.startup.EmbededTomcat/
arg value=-Dtomcat.home=./
arg 
value=-Djavax.xml.parsers.SAXParserFactory=org.apache.crimson.jaxp.SAXParserFactoryImpl
 /
arg value=-g/
arg value=-o/
arg value=tomcat/
arg value=lib-org-apache-tomcat.so/
arg value=lib-javax-servlet.so/
arg value=lib-org-apache-crimson.so/
arg value=lib-javax-xml.so/
arg value=lib-examples.so/
  /exec
/target
  
target name=org-apache-tomcat depends=init
  property name=build.compiler.cc value=gcj /
  so sofile=lib-org-apache-tomcat 
buildDir=build/obj 
optimize=${so.optimize}
debug=${so.debug}
profile=${so.profile}
taskDebug=0

src dir=${tomcat.src}/src/share
include name=**/*.java /
include name=**/*.properties /
include name=**/*.dtd /
exclude name=org/apache/tomcat/util/compat/JSSECertCompat.java /
exclude name=org/apache/tomcat/util/net/SSLSocketFactory.java /
exclude name=org/apache/tomcat/util/test/**/*.java /
exclude name=org/apache/tomcat/modules/server/JNI*.java /
exclude name=org/apache/jasper/**/*.java / 
exclude name=org/apache/jasper/compiler/CommandLineCompiler.java /
exclude name=org/apache/jasper/compiler/SunJavaCompiler.java /
/src
src dir=${tomcat.src}/src/facade22
include name=**/*.java /
exclude name=org/apache/tomcat/facade/JspInterceptor.java /
exclude name=org/apache/tomcat/facade/TagPoolManagerInterceptor.java /
/src
includes
  include name=${LIB}/crimson-1.1.3/crimson.jar /
  include name=${tomcat.src}/src/share /
  include name=${tomcat.src}/src/facade22 /
  include name=${LIB}/jakarta-servletapi-22/lib/servlet.jar /
/includes
  /so
/target
  
target name=ant depends=init
  property name=build.compiler.cc value=gcj /
  so sofile=lib-org-apache-tools-ant 
buildDir=build/obj 
optimize=${so.optimize}
debug=${so.debug}
profile=${so.profile}
taskDebug=0

src dir=${ant.src}/src/main
include name=**/*.java /
include name=**/*.properties /
include name=**/*.txt /
include name=**/*.dtd /
exclude name=org/apache/tools/ant/taskdefs/optional/** /
exclude name=org/apache/tools/ant/types/optional/** /
exclude name=org/apache/tools/ant/util/depend/** /
exclude name=org/apache/tools/ant/util/regexp/JakartaOroMatcher.java /
exclude name=org/apache/tools/ant/util/regexp/JakartaRegexpMatcher.java /
exclude name=org/apache/tools/ant/util/regexp/Jdk14RegexpMatcher.java /
exclude 

Re: Portable SSL Support

2001-11-16 Thread Bill Barker

In j-t-c I could see putting in RequestBase.  However, since connector
development (with the possible exception of Http10Interceptor, which isn't
in j-t-c) is frozen in 3.3, I can't really see modifying Request.
- Original Message -
From: Eric Rescorla [EMAIL PROTECTED]
To: Tomcat Developers List [EMAIL PROTECTED]
Sent: Friday, November 16, 2001 1:42 PM
Subject: Re: Portable SSL Support


 William Barker [EMAIL PROTECTED] writes:

  I was thinking of moving it to Http10Interceptor.getInfo, but otherwise
that
  was more or less what I was thinking.
 Actually, ISTM that eventually this belongs in Request.getInfo(), since
 that allows the use of SSLSupport with Ajp as well. For the moment,
 though, I agree that it belongs in Http10Interceptor.


 -Ekr
 --
 [Eric Rescorla   [EMAIL PROTECTED]]
 http://www.rtfm.com/

 --
 To unsubscribe, e-mail:
mailto:[EMAIL PROTECTED]
 For additional commands, e-mail:
mailto:[EMAIL PROTECTED]




**

This message is intended only for the use of the person(s) listed above 
as the intended recipient(s), and may contain information that is 
PRIVILEGED and CONFIDENTIAL.  If you are not an intended recipient, 
you may not read, copy, or distribute this message or any attachment.  
If you received this communication in error, please notify us immediately 
by e-mail and then delete all copies of this message and any attachments.


In addition you should be aware that ordinary (unencrypted) e-mail sent 
through the Internet is not secure. Do not send confidential or sensitive 
information, such as social security numbers, account numbers, personal 
identification numbers and passwords, to us via ordinary (unencrypted) 
e-mail. 

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




cvs commit: jakarta-tomcat-connectors/jk/native/common jk_uri_worker_map.c jk_uri_worker_map.h

2001-11-16 Thread costin

costin  01/11/16 14:37:13

  Modified:jk/native/common jk_uri_worker_map.c jk_uri_worker_map.h
  Log:
  Get the number of mappings in uri_worker_map, quick exit if none.
  
  ( it is possible to configure mod_jk using setHandler, we don't want extra overhead )
  
  Revision  ChangesPath
  1.11  +10 -1 jakarta-tomcat-connectors/jk/native/common/jk_uri_worker_map.c
  
  Index: jk_uri_worker_map.c
  ===
  RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native/common/jk_uri_worker_map.c,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- jk_uri_worker_map.c   2001/11/07 21:54:45 1.10
  +++ jk_uri_worker_map.c   2001/11/16 22:37:13 1.11
  @@ -67,7 +67,7 @@
* servlet container.  *
* *
* Author:  Gal Shachor [EMAIL PROTECTED]   *
  - * Version: $Revision: 1.10 $   *
  + * Version: $Revision: 1.11 $   *
***/
   
   #include jk_pool.h
  @@ -118,7 +118,13 @@
   unsignedcapacity;
   };
   
  +int uri_worker_map_size(jk_uri_worker_map_t *uw_map ) {
  +if( uw_map == NULL ) 
  + return 0;
  +return uw_map-size;
  +} 
   
  +
   /*
* We are now in a security nightmare, it maybe that somebody sent 
* us a uri that looks like /top-secret.jsp. and the web server will 
  @@ -444,6 +450,9 @@
   const char *uri,
   jk_logger_t *l)
   {
  +if( uri_worker_map_size( uw_map ) = 0 )
  + return NULL;
  +
   jk_log(l, JK_LOG_DEBUG, 
  Into jk_uri_worker_map_t::map_uri_to_worker\n);
   
  
  
  
  1.4   +4 -1  jakarta-tomcat-connectors/jk/native/common/jk_uri_worker_map.h
  
  Index: jk_uri_worker_map.h
  ===
  RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native/common/jk_uri_worker_map.h,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- jk_uri_worker_map.h   2001/07/02 21:13:00 1.3
  +++ jk_uri_worker_map.h   2001/11/16 22:37:13 1.4
  @@ -58,7 +58,7 @@
   /***
* Description: URI to worker mapper header file   *
* Author:  Gal Shachor [EMAIL PROTECTED]   *
  - * Version: $Revision: 1.3 $   *
  + * Version: $Revision: 1.4 $   *
***/
   
   #ifndef JK_URI_WORKER_MAP_H
  @@ -91,6 +91,9 @@
  char *puri,
  char *pworker,
  jk_logger_t *l);
  +
  +int uri_worker_map_size(jk_uri_worker_map_t *uw_map );
  +
   
   int uri_worker_map_close(jk_uri_worker_map_t *uw_map,
jk_logger_t *l);
  
  
  

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




Re: Portable SSL Support

2001-11-16 Thread Bill Barker

+1
- Original Message -
From: [EMAIL PROTECTED]
To: Tomcat Developers List [EMAIL PROTECTED]; EKR
[EMAIL PROTECTED]
Sent: Friday, November 16, 2001 1:53 PM
Subject: Re: Portable SSL Support


 On 16 Nov 2001, Eric Rescorla wrote:

  William Barker [EMAIL PROTECTED] writes:
 
   I was thinking of moving it to Http10Interceptor.getInfo, but
otherwise that
   was more or less what I was thinking.
  Actually, ISTM that eventually this belongs in Request.getInfo(), since
  that allows the use of SSLSupport with Ajp as well. For the moment,
  though, I agree that it belongs in Http10Interceptor.

 Or even better, in SSLInterceptor. No need to change Request or the core -
 if it can be done in a module, it's better to do it this way.

 Costin





 --
 To unsubscribe, e-mail:
mailto:[EMAIL PROTECTED]
 For additional commands, e-mail:
mailto:[EMAIL PROTECTED]




**

This message is intended only for the use of the person(s) listed above 
as the intended recipient(s), and may contain information that is 
PRIVILEGED and CONFIDENTIAL.  If you are not an intended recipient, 
you may not read, copy, or distribute this message or any attachment.  
If you received this communication in error, please notify us immediately 
by e-mail and then delete all copies of this message and any attachments.


In addition you should be aware that ordinary (unencrypted) e-mail sent 
through the Internet is not secure. Do not send confidential or sensitive 
information, such as social security numbers, account numbers, personal 
identification numbers and passwords, to us via ordinary (unencrypted) 
e-mail. 

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




cvs commit: jakarta-tomcat-connectors/jk/native/common jk_service.h

2001-11-16 Thread costin

costin  01/11/16 14:43:18

  Modified:jk/native/common jk_service.h
  Log:
  Added 2 fields in jk_endpoint_t to support jk_channel.
  
  Note that use of a channel ( as an abstraction that replace socket calls ) is
  optional - will be ifdef-ed until we make sure everything works fine.
  
  Revision  ChangesPath
  1.10  +13 -1 jakarta-tomcat-connectors/jk/native/common/jk_service.h
  
  Index: jk_service.h
  ===
  RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native/common/jk_service.h,v
  retrieving revision 1.9
  retrieving revision 1.10
  diff -u -r1.9 -r1.10
  --- jk_service.h  2001/10/13 17:36:36 1.9
  +++ jk_service.h  2001/11/16 22:43:18 1.10
  @@ -63,7 +63,7 @@
* Author:  Gal Shachor [EMAIL PROTECTED]   *
* Author:  Dan Milstein [EMAIL PROTECTED]*
* Author:  Henri Gomez [EMAIL PROTECTED]   *
  - * Version: $Revision: 1.9 $   *
  + * Version: $Revision: 1.10 $   *
***/
   
   #ifndef JK_SERVICE_H
  @@ -104,6 +104,7 @@
   struct jk_ws_service;
   struct jk_endpoint;
   struct jk_worker;
  +struct jk_channel;
   typedef struct jk_ws_service jk_ws_service_t;
   typedef struct jk_endpoint   jk_endpoint_t;
   typedef struct jk_worker jk_worker_t;
  @@ -302,6 +303,10 @@
*/
   void *endpoint_private;
   
  +/** Data specific to a channel connection
  + */
  +void *channelData;
  +
   /*
* Forward a request to the servlet engine.  The request is described
* by the jk_ws_service_t object.  I'm not sure exactly how
  @@ -373,6 +378,13 @@
* (e.g. ajp12 or ajp13 or ajp14).  
*/
   void *worker_private;
  +
  +/* XXX Add name and all other common properties !!! 
  + */
  +
  +/** Communication channle used by the worker 
  + */
  +struct jk_channel *channel;
   
   /*
* For all of the below (except destroy), the first argument is
  
  
  

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




cvs commit: jakarta-tomcat-connectors/jk/native/common jk_channel.h

2001-11-16 Thread costin

costin  01/11/16 14:45:20

  Modified:jk/native/common jk_channel.h
  Log:
  Few changes in jk_channel, based on what was required in implementing it.
  
  Revision  ChangesPath
  1.4   +66 -46jakarta-tomcat-connectors/jk/native/common/jk_channel.h
  
  Index: jk_channel.h
  ===
  RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native/common/jk_channel.h,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- jk_channel.h  2001/11/07 21:39:35 1.3
  +++ jk_channel.h  2001/11/16 22:45:19 1.4
  @@ -58,17 +58,19 @@
   #ifndef JK_CHANNEL_H
   #define JK_CHANNEL_H
   
  -
  -#ifdef __cplusplus
  -extern C {
  -#endif /* __cplusplus */
  -
   #include jk_global.h
   #include jk_logger.h
   #include jk_pool.h
   #include jk_msg_buff.h
   
  +#ifdef __cplusplus
  +extern C {
  +#endif /* __cplusplus */
  +
  +struct jk_worker;
  +struct jk_endpoint;
   struct jk_channel;
  +
   typedef struct jk_channel jk_channel_t;
   
   /**
  @@ -95,52 +97,70 @@
* @author Costin Manolache
*/
   struct jk_channel {
  -  /** Pool for the channel 
  -   */
  -  jk_pool_t *pool;
  -  jk_logger_t *logger;
  -
  -  char *name;
  +char *name;
   
  -  /** Prepare the channel, check the properties. This 
  -   * will resolve the host and do all the validations.
  -   * ( needed to remove the dependencies on sockets in ajp)
  -   */
  -  int (JK_METHOD *init)(jk_channel_t *_this );
  -  
  -  /** Open the communication channel
  -   */
  -  int (JK_METHOD *open)(jk_channel_t *_this );
  -  
  -  /** Close the communication channel
  -   */
  -  int (JK_METHOD *close)(jk_channel_t *_this );
  -
  +/** List of properties this channel 'knows'. 
  + *  This will permit admin code to 'query' each channel
  + *  and the setting code can better report errors.
  + */
  +char **supportedProperties;
  +
  +struct jk_worker *worker; /* XXX Do we need it ? */
  +jk_logger_t *logger;
  +jk_map_t *properties;
  +jk_pool_t *pool; /* XXX Do we need it ? */
  +
  +
  +/** Prepare the channel, check the properties. This 
  + * will resolve the host and do all the validations.
  + * ( needed to remove the dependencies on sockets in ajp)
  + * 
  + * The channel may save or use data from the worker ( like cache
  + *  the inet addr, etc )
  + *  XXX revisit this - we may pass too much that is not needed
  + */
  +int (JK_METHOD *init)(jk_channel_t *_this,
  +   jk_map_t *properties,
  +   char *worker_name,
  +   struct jk_worker *worker, 
  +   jk_logger_t *l );
  +
  +/** Open the communication channel
  + */
  +int (JK_METHOD *open)(jk_channel_t *_this, 
  +   struct jk_endpoint *endpoint );
  +
  +/** Close the communication channel
  + */
  +int (JK_METHOD *close)(jk_channel_t *_this, 
  +struct jk_endpoint *endpoint );
  +
 /** Send a packet
  -   */
  -  int (JK_METHOD *send)(jk_channel_t *_this,
  - jk_msg_buf_t *b );
  -
  -  /** Receive a packet
  */
  -  int (JK_METHOD *recv)(jk_channel_t *_this,
  - jk_msg_buf_t *b );
  -
  -  /** Set a channel property. Properties are used to configure the 
  -   * communication channel ( example: port, host, file, shmem_name, etc).
  -   */
  -  int (JK_METHOD *setProperty)(jk_channel_t *_this, 
  -char *name, char *value);
  -
  -  /** Get a channel property 
  -   */
  -  int (JK_METHOD *getProperty)(jk_channel_t *_this, 
  +int (JK_METHOD *send)(jk_channel_t *_this,
  +   struct jk_endpoint *endpoint,
  +   char *b, int len );
  +
  +/** Receive a packet
  + */
  +int (JK_METHOD *recv)(jk_channel_t *_this,
  +   struct jk_endpoint *endpoint,
  +   char *b, int len );
  +
  +/** Set a channel property. Properties are used to configure the 
  + * communication channel ( example: port, host, file, shmem_name, etc).
  + */
  +int (JK_METHOD *setProperty)(jk_channel_t *_this, 
  +  char *name, char *value);
  +
  +/** Get a channel property 
  + */
  +int (JK_METHOD *getProperty)(jk_channel_t *_this, 
   char *name, char **value);
  -
  -  void *_privatePtr;
  -  int _privateInt;
  +
  +void *_privatePtr;
   };
  -
  +
   #ifdef __cplusplus
   }
   #endif /* __cplusplus */
  
  
  

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




cvs commit: jakarta-tomcat-connectors/jk/native/common jk_channel_socket.c

2001-11-16 Thread costin

costin  01/11/16 14:48:55

  Modified:jk/native/common jk_channel_socket.c
  Log:
  Working impl. for a socket channel, using cutpaste from jk_connect.c.
  
  The code is almost identical.
  
  I just changed a bit the if()s, as I'm just a confused java programmer -
  I'll probably continue to change to java-style if( foo != NULL ) and
  move the function calls before the if - sorry, but my C is not that good,
  it takes me some time to read C-style ifs...
  
  Revision  ChangesPath
  1.2   +312 -38   jakarta-tomcat-connectors/jk/native/common/jk_channel_socket.c
  
  Index: jk_channel_socket.c
  ===
  RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native/common/jk_channel_socket.c,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- jk_channel_socket.c   2001/11/07 21:38:39 1.1
  +++ jk_channel_socket.c   2001/11/16 22:48:55 1.2
  @@ -56,7 +56,8 @@
* = */
   
   /**
  - * Channel using 'plain' TCP sockets. Based on jk_sockbuf.
  + * Channel using 'plain' TCP sockets. Based on jk_sockbuf. Will be replaced by
  + * an APR-based mechanism.
* 
* Properties:
*  - host
  @@ -73,7 +74,29 @@
   #include jk_channel.h
   #include jk_global.h
   
  +#include string.h
   
  +#ifndef WIN32
  + #define closesocket close
  +#endif
  +
  +/** Information specific for the socket channel
  + */
  +struct jk_channel_socket_private {
  +int ndelay;
  +struct sockaddr_in addr;
  +char *host;
  +short port;
  +};
  +
  +/** Informations for each connection
  + */
  +typedef struct jk_channel_socket_data {
  +int sock;
  +} jk_channel_socket_data_t;
  +
  +typedef struct jk_channel_socket_private jk_channel_socket_private_t;
  +
   /*
 We use the _privateInt field directly. Long term we can define our own
 jk_channel_socket_t structure and use the _private field, etc - but we 
  @@ -84,7 +107,231 @@
   
   int JK_METHOD jk_channel_socket_factory(jk_env_t *env, void **result,
char *type, char *name);
  +static int jk_channel_socket_resolve(char *host, short port,
  +  struct sockaddr_in *rc);
  +
  +static int jk_channel_socket_getProperty(jk_channel_t *_this, 
  +  char *name, char **value)
  +{
  +return JK_FALSE;
  +}
  +
  +static int jk_channel_socket_setProperty(jk_channel_t *_this, 
  +  char *name, char *value)
  +{
  +jk_channel_socket_private_t *socketInfo=
  + (jk_channel_socket_private_t *)(_this-_privatePtr);
  +
  +if( strcmp( host, name ) != 0 ) {
  + socketInfo-host=value;
  +} else if( strcmp( defaultPort, name ) != 0 ) {
  +} else if( strcmp( port, name ) != 0 ) {
  +} else {
  + return JK_FALSE;
  +}
  +return JK_TRUE;
  +}
  +
  +/** resolve the host IP ( jk_resolve ) and initialize the channel.
  + */
  +static int jk_channel_socket_init(jk_channel_t *_this, 
  +   jk_map_t *props,
  +   char *worker_name, 
  +   jk_worker_t *worker, 
  +   jk_logger_t *l )
  +{
  +int err=jk_log(l, JK_LOG_DEBUG, Into jk_channel_socket_init\n);
  +jk_channel_socket_private_t *socketInfo=
  + (jk_channel_socket_private_t *)(_this-_privatePtr);
  +
  +char *host=socketInfo-host;
  +short port=socketInfo-port;
  +struct sockaddr_in *rc=socketInfo-addr;
  +
  +port = jk_get_worker_port(props, worker_name, port);
  +host = jk_get_worker_host(props, worker_name, host);
  +
  +_this-worker=worker;
  +_this-logger=l;
  +_this-properties=props;
  +
  +err=jk_channel_socket_resolve( host, port, rc );
  +if( err!= JK_TRUE ) {
  + jk_log(l, JK_LOG_ERROR, jk_channel_socket_init: 
  +can't resolve %s:%d errno=%d\n, host, port, errno );
  +}
  +jk_log(l, JK_LOG_DEBUG, jk_channel_socket_init: ok 
  + %s:%d\n, host, port );
  +
  +return err;
  +}
  +
  +/** private: resolve the address on init
  + */
  +static int jk_channel_socket_resolve(char *host, short port,
  +  struct sockaddr_in *rc)
  +{
  +int x;
  +u_long laddr;
  +
  +rc-sin_port   = htons((short)port);
  +rc-sin_family = AF_INET;
  +
  +/* Check if we only have digits in the string */
  +for(x = 0 ; '\0' != host[x] ; x++) {
  +if(!isdigit(host[x])  host[x] != '.') {
  +break;
  +}
  +}
   
  +if(host[x] != '\0') {
  +/* If we found also characters we use gethostbyname()*/
  +struct hostent *hoste = gethostbyname(host);
  +if(!hoste) {
  +return JK_FALSE;
  +}
  +
  +laddr = 

cvs commit: jakarta-tomcat-connectors/jk/native build.xml

2001-11-16 Thread costin

costin  01/11/16 14:52:43

  Modified:jk/native build.xml
  Log:
  Use a separate dir for .obj files ( again, for java people who are used with
  classes/ style )
  
  Revision  ChangesPath
  1.16  +9 -3  jakarta-tomcat-connectors/jk/native/build.xml
  
  Index: build.xml
  ===
  RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native/build.xml,v
  retrieving revision 1.15
  retrieving revision 1.16
  diff -u -r1.15 -r1.16
  --- build.xml 2001/11/16 21:32:03 1.15
  +++ build.xml 2001/11/16 22:52:43 1.16
  @@ -37,8 +37,9 @@
 /target
   
 target name=jni depends=init
  +mkdir dir=jni/obj /
   so sofile=jni_connect 
  - buildDir=jni 
  + buildDir=jni/obj 
optimize=${so.optimize}
debug=${so.debug}
profile=${so.profile}
  @@ -100,11 +101,15 @@
 /target
   
 target name=apache20 depends=init
  +mkdir dir=apache-2.0/obj /
   so sofile=mod_jk 
  - buildDir=apache-2.0
  + buildDir=apache-2.0/obj
optimize=${so.optimize}
debug=${so.debug}
  + taskDebug=0
profile=${so.profile} 
  +  def name=_REENTRANT /
  +  def name=CHANNEL /
 def name=CHUNK_SIZE value=4096 
   info=Read/Write buffer size /
 def name=REUSE_WORKER 
  @@ -131,8 +136,9 @@
 
   
 target name=apache13 depends=init
  +mkdir dir=apache-1.3/obj /
   so sofile=mod_jk 
  - buildDir=apache-1.3
  + buildDir=apache-1.3/obj
optimize=${so.optimize}
debug=${so.debug}
profile=${so.profile}
  
  
  

--
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/servlets DefaultServlet.java

2001-11-16 Thread patrickl

patrickl01/11/16 14:53:01

  Modified:catalina/src/share/org/apache/catalina/servlets
DefaultServlet.java
  Log:
  Use the request's URI in error pages instead of just the path with the current 
context. This behavior was in Tomcat 4.0.1 but was lost recently. This change only 
restores the old error messages.
  
  Revision  ChangesPath
  1.44  +8 -8  
jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/servlets/DefaultServlet.java
  
  Index: DefaultServlet.java
  ===
  RCS file: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/servlets/DefaultServlet.java,v
  retrieving revision 1.43
  retrieving revision 1.44
  diff -u -r1.43 -r1.44
  --- DefaultServlet.java   2001/11/16 09:46:53 1.43
  +++ DefaultServlet.java   2001/11/16 22:53:01 1.44
  @@ -1,7 +1,7 @@
   /*
  - * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/servlets/DefaultServlet.java,v
 1.43 2001/11/16 09:46:53 remm Exp $
  - * $Revision: 1.43 $
  - * $Date: 2001/11/16 09:46:53 $
  + * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/servlets/DefaultServlet.java,v
 1.44 2001/11/16 22:53:01 patrickl Exp $
  + * $Revision: 1.44 $
  + * $Date: 2001/11/16 22:53:01 $
*
* 
*
  @@ -123,7 +123,7 @@
*
* @author Craig R. McClanahan
* @author Remy Maucherat
  - * @version $Revision: 1.43 $ $Date: 2001/11/16 09:46:53 $
  + * @version $Revision: 1.44 $ $Date: 2001/11/16 22:53:01 $
*/
   
   public class DefaultServlet
  @@ -1045,7 +1045,7 @@
   if ((path == null) ||
   path.toUpperCase().startsWith(/WEB-INF) ||
   path.toUpperCase().startsWith(/META-INF)) {
  -response.sendError(HttpServletResponse.SC_NOT_FOUND, path);
  +response.sendError(HttpServletResponse.SC_NOT_FOUND, 
request.getRequestURI());
   return;
   }
   
  @@ -1054,7 +1054,7 @@
   ResourceInfo resourceInfo = new ResourceInfo(path, resources);
   
   if (!resourceInfo.exists) {
  -response.sendError(HttpServletResponse.SC_NOT_FOUND, path);
  +response.sendError(HttpServletResponse.SC_NOT_FOUND, 
request.getRequestURI());
   return;
   }
   
  @@ -1062,7 +1062,7 @@
   // ends with / or \, return NOT FOUND
   if (!resourceInfo.collection) {
   if (path.endsWith(/) || (path.endsWith(\\))) {
  -response.sendError(HttpServletResponse.SC_NOT_FOUND, path);
  +response.sendError(HttpServletResponse.SC_NOT_FOUND, 
request.getRequestURI());
   return;
   }
   }
  @@ -,7 +,7 @@
   // suppress them
   if (!listings) {
   response.sendError(HttpServletResponse.SC_NOT_FOUND,
  -   resourceInfo.path);
  +   request.getRequestURI());
   return;
   }
   contentType = text/html;charset=UTF-8;
  
  
  

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




cvs commit: jakarta-tomcat-connectors/jk/native/apache-2.0 mod_jk.c

2001-11-16 Thread costin

costin  01/11/16 14:55:34

  Modified:jk/native/apache-2.0 mod_jk.c
  Log:
  A bit more debugging, a bit cleaner ifs, don't try to read workers.properties
  if none is set up.
  
  ( the settings in worker.properties can be done in httpd.conf - it's easier for
  testing/debugging to edit a single file )
  
  Revision  ChangesPath
  1.36  +12 -6 jakarta-tomcat-connectors/jk/native/apache-2.0/mod_jk.c
  
  Index: mod_jk.c
  ===
  RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native/apache-2.0/mod_jk.c,v
  retrieving revision 1.35
  retrieving revision 1.36
  diff -u -r1.35 -r1.36
  --- mod_jk.c  2001/11/06 00:13:01 1.35
  +++ mod_jk.c  2001/11/16 22:55:34 1.36
  @@ -60,7 +60,7 @@
* Description: Apache 2 plugin for Jakarta/Tomcat *
* Author:  Gal Shachor [EMAIL PROTECTED]   *
* Henri Gomez [EMAIL PROTECTED]   *
  - * Version: $Revision: 1.35 $   *
  + * Version: $Revision: 1.36 $   *
***/
   
   /*
  @@ -1181,7 +1181,7 @@
   
   if(strcmp(r-handler,JK_HANDLER))/* not for me, try next handler */
 return DECLINED;
  -
  +
   conf = (jk_server_conf_t *)ap_get_module_config(r-server-module_config, 
jk_module);
   worker_name = apr_table_get(r-notes, JK_WORKER_ID);
  @@ -1189,7 +1189,7 @@
   
   /* Set up r-read_chunked flags for chunked encoding, if present */
   if(rc = ap_setup_client_block(r, REQUEST_CHUNKED_DECHUNK)) {
  -return rc;
  +return rc;
   }
   
   if( worker_name == NULL ) {
  @@ -1204,7 +1204,7 @@
 explicitely give control to us. */
 worker_name=  worker_env.first_worker;
 jk_log(xl, JK_LOG_DEBUG, 
  - Manual configuration for %s %s %d\n,
  + Manual configuration for %s (%s) %d\n,
r-uri, worker_env.first_worker, worker_env.num_of_workers); 
 } else {
 worker_name = map_uri_to_worker(conf-uw_map, r-uri, xl);
  @@ -1273,6 +1273,7 @@
   apr_pool_t *tpool= apr_pool_get_parent( parent_pool );
   
   apr_pool_userdata_get( end, jk_thread_endpoint, tpool );
  +jk_log(xl, JK_LOG_DEBUG, Using per-thread worker %lx\n , end );
   if(end==NULL ) {
   worker-get_endpoint(worker, end, xl);
   apr_pool_userdata_set( end , jk_thread_endpoint, 
  @@ -1478,7 +1479,6 @@
   stuff )
   */
   static void init_jk( apr_pool_t *pconf, jk_server_conf_t *conf, server_rec *s ) {
  -/* jk_map_t *init_map = NULL; */
   jk_map_t *init_map = conf-worker_properties;
   
  if(conf-log_file  conf-log_level = 0) {
  @@ -1496,7 +1496,11 @@
   }
   
   /* if(map_alloc(init_map)) { */
  -if( ! map_read_properties(init_map, conf-worker_file)) {
  +jk_log(conf-log, JK_LOG_DEBUG, 
  +   Reading map %s %d\n, conf-worker_file, map_size( init_map ) );
  +
  +if( (conf-worker_file != NULL ) 
  +! map_read_properties(init_map, conf-worker_file)) {
   if( map_size( init_map ) == 0 ) {
   jk_error_exit(APLOG_MARK, APLOG_EMERG, s, 
 pconf, No worker file and no worker options in 
httpd.conf \n
  @@ -1504,6 +1508,8 @@
   return;
   }
   }
  +jk_log(conf-log, JK_LOG_DEBUG, 
  +   Read map %s %d\n, conf-worker_file, map_size( init_map ) );
   
   /* we add the URI-WORKER MAP since workers using AJP14
  will feed it */
  
  
  

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




cvs commit: jakarta-tomcat-connectors/jk/native/common jk_worker.c jk_registry.c jk_ajp14_worker.c jk_ajp13_worker.c

2001-11-16 Thread costin

costin  01/11/16 14:59:06

  Modified:jk/native/common jk_worker.c jk_registry.c jk_ajp14_worker.c
jk_ajp13_worker.c
  Log:
  Minor changes ( remove unused imports, add socket channel to the registry )
  
  Revision  ChangesPath
  1.9   +2 -2  jakarta-tomcat-connectors/jk/native/common/jk_worker.c
  
  Index: jk_worker.c
  ===
  RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native/common/jk_worker.c,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- jk_worker.c   2001/11/05 23:22:05 1.8
  +++ jk_worker.c   2001/11/16 22:59:06 1.9
  @@ -60,7 +60,7 @@
* Description: Workers controller *
* Author:  Gal Shachor [EMAIL PROTECTED]   *
* Author:  Henri Gomez [EMAIL PROTECTED]   *
  - * Version: $Revision: 1.8 $   *
  + * Version: $Revision: 1.9 $   *
***/
   
   /* #define _PLACE_WORKER_LIST_HERE */
  @@ -113,7 +113,7 @@
   
   we-num_of_workers=num_of_workers;
   we-first_worker=worker_list[0];
  -jk_log(l, JK_LOG_DEBUG, wc_open, done %d\n, num_of_workers); 
  +jk_log(l, JK_LOG_DEBUG, wc_open, done %d %s\n, num_of_workers, 
worker_list[0]); 
   return JK_TRUE;
   }
   
  
  
  
  1.5   +11 -1 jakarta-tomcat-connectors/jk/native/common/jk_registry.c
  
  Index: jk_registry.c
  ===
  RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native/common/jk_registry.c,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- jk_registry.c 2001/11/11 01:17:43 1.4
  +++ jk_registry.c 2001/11/16 22:59:06 1.5
  @@ -62,7 +62,7 @@
   
   /***
* Description: Worker list*
  - * Version: $Revision: 1.4 $   *
  + * Version: $Revision: 1.5 $   *
***/
   
   /** Static declarations for all 'hardcoded' modules. This is a hack, 
  @@ -102,6 +102,13 @@
jk_logger_t *l);
   #endif
   
  +/* Factories for 'new' types. We use the new factory interface,
  + *  workers will be updated later 
  + */
  +int JK_METHOD jk_channel_socket_factory(jk_env_t *env, void **result,
  + char *type, char *name);
  +
  +
   /**
*   Init the components that we compile in by default. 
*   In future we should have a more flexible mechanism that would allow 
  @@ -122,6 +129,9 @@
   #ifdef HAVE_JNI
 env-registerFactory( env, worker, jni,   (void *)jni_worker_factory );
   #endif
  +
  +  env-registerFactory( env, channel, socket,   
  + (void *)jk_channel_socket_factory );
   
 /*
 env-registerFactory( env, channel, socket,   jk_channel_socket_factory );
  
  
  
  1.13  +1 -2  jakarta-tomcat-connectors/jk/native/common/jk_ajp14_worker.c
  
  Index: jk_ajp14_worker.c
  ===
  RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native/common/jk_ajp14_worker.c,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -r1.12 -r1.13
  --- jk_ajp14_worker.c 2001/11/07 21:50:53 1.12
  +++ jk_ajp14_worker.c 2001/11/16 22:59:06 1.13
  @@ -58,12 +58,11 @@
   /***
* Description: AJP14 next generation Bi-directional protocol. *
* Author:  Henri Gomez [EMAIL PROTECTED]   *
  - * Version: $Revision: 1.12 $   *
  + * Version: $Revision: 1.13 $   *
***/
   
   #include jk_context.h
   #include jk_pool.h
  -#include jk_connect.h
   #include jk_util.h
   #include jk_msg_buff.h
   #include jk_ajp13.h
  
  
  
  1.8   +1 -2  jakarta-tomcat-connectors/jk/native/common/jk_ajp13_worker.c
  
  Index: jk_ajp13_worker.c
  ===
  RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native/common/jk_ajp13_worker.c,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- jk_ajp13_worker.c 2001/11/07 21:50:53 1.7
  +++ jk_ajp13_worker.c 2001/11/16 22:59:06 1.8
  @@ -60,11 +60,10 @@
* Author:  Costin [EMAIL PROTECTED]  *
* Author:  Gal 

Re: Performance of tomcat 3.2.3

2001-11-16 Thread Jeff Kilbride

Also:

http://www.webperformanceinc.com/

Great program and very easy to set up fairly complex tests. I only wish it
was open source!  :(

(they do have a free trial period, though)

Thanks,
--jeff

- Original Message -
From: Ryan Lubke [EMAIL PROTECTED]
To: Tomcat Developers List [EMAIL PROTECTED]
Sent: Friday, November 16, 2001 9:46 AM
Subject: Re: Performance of tomcat 3.2.3


 http://jakarta.apache.org/jmeter/index.html

 On Fri, 2001-11-16 at 12:16, Michael Jennings wrote:
  Hi everyone,
 
  I'm working on a project for a client that involves a servlet engine
component. I suggested tomcat
  since I am most familiar with it and it seems the most compliant servlet
engine around.
  My client has mentioned concerns about tomcat's performance and now is
insisting on
  using IBM websphere 4.0
 
  My suspicion is that tomcat's performance will be fine for this
application, but I would
  like to have some hard numbers to back up my claim. Does anyone know of
any kind
  of tool or code out there that can measure http and https performance?
 
  Thanks in advance.
  -Mike Jennings



 --
 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]




Re: cvs commit: jakarta-tomcat-connectors/jk/native build.xml

2001-11-16 Thread costinm

On 16 Nov 2001 [EMAIL PROTECTED] wrote:

   Modified:jk/native build.xml
   Log:
   Added alternate targets (since NLM names are limited to 8.3).

What about using 8.3 names in the first place ?

jk_jni
jk_nsapi
jk_isapi
mod_jk

Costin




  !-- Platform-specific tags --
   +  altSoFile value=jni_conn if=netware /
   +
  def name=N_PLAT_NLM if=netware
  info=Building for NetWare platform /
  def name=NETWARE if=netware
   @@ -272,6 +274,7 @@
   include name=${java.home}/../include /

!-- Platform specific includes --
   +
   include name=${novellndk.dir}/include/nlm if=netware /
   include name=${novellndk.dir}/include if=netware /
include name=${java.home}/../include/netware if=netware /
   @@ -285,6 +288,8 @@
  /depends

  !-- Platform-specific tags --
   +  altSoFile value=nsapi_rd if=netware /
   +
  def name=N_PLAT_NLM if=netware
  info=Building for NetWare platform /
  def name=NETWARE if=netware




 --
 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]




Re: Tomcat 4.0 on IIS

2001-11-16 Thread Craig R. McClanahan



On Fri, 16 Nov 2001, Rajan Gupta wrote:

 Date: Fri, 16 Nov 2001 13:49:56 -0800 (PST)
 From: Rajan Gupta [EMAIL PROTECTED]
 Reply-To: Tomcat Developers List [EMAIL PROTECTED]
 To: Tomcat Developers List [EMAIL PROTECTED],
  EKR [EMAIL PROTECTED]
 Subject: Tomcat 4.0 on IIS

 I managed to run Tomcat 4.0 with IIS using the ISAPI module provided for
 Tomcat 3.3 for AJPV13. I had to use the workers.properties 
 uriworkers.properties to make it work from Tomcat 3.3. If the Tomcat
 Developer Community does not know of any known issue with using Tomcat 3.3
 ISAPI Module for Tomcat 4.0, I will be happy to provide an Installation
 Guide  sample files to be put as a part of Tomcat 4.0.


That would be quite useful.

 I say this because I have seen repeated request by Tomcat 4.0 Users for
 IIS support.

 Craig, can u take a minute to advise.

The best way to integrate documentation into the Tomcat 4 bundle would be
to write them using the XML formats used for all the other docs -- they
are in webapps/tomcat-docs in the source repository.  Second best would
be to provide raw text (or HTML) versions of the docs that someone else
could convert into the same style.

To actually propose the new docs, you would send them as an attachment to
the Tomca-Dev list, in accordance with the guidelines on the Jakarta web
site, starting at:

  http://jakarta.apache.org/site/getinvolved.html


 Thanks,
 Rajan Gupta


Craig


--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




[PATCH] Status-Code not set for Error pages when Exception is thrown

2001-11-16 Thread Ryan Lubke

Hi,

Say a user has a custom error page for status codes of 500
when an uncaught exception occurs.  The request parameter,
javax.servlet.error.status_code, is not set, so if the
error page tries to access this req. parameter, null will
be returned. 

Attached is a patch that I've tested in my env and seems
to do the trick.

-rl






Index: ErrorDispatcherValve.java
===
RCS file: 
/home/cvspublic/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/valves/ErrorDispatcherValve.java,v
retrieving revision 1.6
diff -u -r1.6 ErrorDispatcherValve.java
--- ErrorDispatcherValve.java   2001/11/13 00:42:24 1.6
+++ ErrorDispatcherValve.java   2001/11/16 23:56:55
@@ -229,6 +229,8 @@
 response.setAppCommitted(false);
 ServletRequest sreq = request.getRequest();
 ServletResponse sresp = response.getResponse();
+sreq.setAttribute(Globals.STATUS_CODE_ATTR,
+  new 
+Integer(HttpServletResponse.SC_INTERNAL_SERVER_ERROR));
 sreq.setAttribute(Globals.ERROR_MESSAGE_ATTR,
   throwable.getMessage());
 sreq.setAttribute(Globals.EXCEPTION_ATTR,



--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]


[FAQ] jGuru FAQ Update

2001-11-16 Thread Alex Chaffee

jGuru maintains FAQs and Forums on Servlets, JSP, and Tomcat (as well as
many other Java topics).  Here is an automated update on recent postings to
Tomcat-related FAQs.  Please direct flames and feedback to [EMAIL PROTECTED] .

 - Alex


SPONSORED BY developerWorks

need it? get it. tools, code and tutorials for open-standards based development.

Stay informed with dW's weekly email newsletter
http://www.jguru.com/misc/register_devworks.jsp?src=notify
-

Hi.  You asked to be notified weekly when certain jGuru.com items get new entries.

You can shut email notification off at the FAQ home
page(s) or:

  http://www.jguru.com/guru/notifyprefs.jsp


++ Servlets FAQ: http://www.jguru.com/faq/Servlets

Is there any way to change/set owner of a file that is uploaded, before it's saved to 
the filesystem?
http://www.jguru.com/misc/faqtrampoline.jsp?src=notifyEID=543979

++ Tomcat FAQ: http://www.jguru.com/faq/Tomcat

Is commercial support available for Tomcat?
My company is interested in purchasing technical support (24x7) for Tomcat (on 
Solaris). Does anybody know of any organisation able to offer a support service? 
(please post reply here and also email to me [EMAIL PROTECTED])
http://www.jguru.com/misc/faqtrampoline.jsp?src=notifyEID=544502

Tomcat and WebDav Security
p
I am attempting to configure Tomcat's WebDav application 
(http://localhost:8080/webdav) to allow everyone to view the directory.  However I 
need authorized users to be able to edit the content of the directory.  
p
http://www.jguru.com/misc/faqtrampoline.jsp?src=notifyEID=544213



--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




TC 3.3, Production Quality

2001-11-16 Thread Bojan Smojver

I've noticed that on the main TC page of Jakarta site, TC 3.2.x is 
still listed as production quality release, although we all know that 
3.3 is far superior in almost any respect. That's for Servlet API 2.2 
and JSP 1.1, of course.

Any objections if I change this?

Bojan



--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]


Re: TC 3.3, Production Quality

2001-11-16 Thread Bill Barker

No objection here.
- Original Message -
From: Bojan Smojver [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
Sent: Friday, November 16, 2001 6:44 PM
Subject: TC 3.3, Production Quality


 I've noticed that on the main TC page of Jakarta site, TC 3.2.x is
 still listed as production quality release, although we all know that
 3.3 is far superior in almost any respect. That's for Servlet API 2.2
 and JSP 1.1, of course.

 Any objections if I change this?

 Bojan








 --
 To unsubscribe, e-mail:
mailto:[EMAIL PROTECTED]
 For additional commands, e-mail:
mailto:[EMAIL PROTECTED]


**

This message is intended only for the use of the person(s) listed above 
as the intended recipient(s), and may contain information that is 
PRIVILEGED and CONFIDENTIAL.  If you are not an intended recipient, 
you may not read, copy, or distribute this message or any attachment.  
If you received this communication in error, please notify us immediately 
by e-mail and then delete all copies of this message and any attachments.


In addition you should be aware that ordinary (unencrypted) e-mail sent 
through the Internet is not secure. Do not send confidential or sensitive 
information, such as social security numbers, account numbers, personal 
identification numbers and passwords, to us via ordinary (unencrypted) 
e-mail. 

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




cvs commit: jakarta-tomcat-connectors/jk/native/common jk_ajp_common.c

2001-11-16 Thread costin

costin  01/11/16 22:08:20

  Modified:jk/native/common jk_ajp_common.c
  Log:
  The big commit - plugin in the new socket code.
  
  All is #ifdef-ed by now - the old code is compiled by default, unmodified
  ( except some ifs that I reversed to be able to read and minor indentations).
  
  Probably this will remain this way until we are comfortable with the new
  abstraction - then we can remove the old code and the ifdefs. So far I can run it 
without
  problems.
  
  One big issue is the code that recycles the connection - I'm very comfused, it
  seems that besides recycling the endpoint we have some code that is doing
  some tricks with the sockets. From the comments it seems to be dealing with
  lb - but the lb worker has it's own mechanism to get another endpoint
  if one fails.
  
  I've also got a core on high load ( but very hard to reproduce ) and it happens
  in the reuse_connection - I added a check, but not sure why the worker would be null
  in the endpoint. What's more important is finding if we need this extra attempt to 
reuse
  ( or recover from endpoint errors ), closing the socket and reopening again could
  be a better solution ( if tomcat was restarted, all sockets will be invalid, so
  reuse_connection couldn't help in any way ).
  
  Revision  ChangesPath
  1.19  +328 -210  jakarta-tomcat-connectors/jk/native/common/jk_ajp_common.c
  
  Index: jk_ajp_common.c
  ===
  RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native/common/jk_ajp_common.c,v
  retrieving revision 1.18
  retrieving revision 1.19
  diff -u -r1.18 -r1.19
  --- jk_ajp_common.c   2001/11/06 00:15:07 1.18
  +++ jk_ajp_common.c   2001/11/17 06:08:20 1.19
  @@ -59,7 +59,7 @@
* Description: common stuff for bi-directional protocols ajp13/ajp14. *
* Author:  Gal Shachor [EMAIL PROTECTED]   *
* Author:  Henri Gomez [EMAIL PROTECTED]   *
  - * Version: $Revision: 1.18 $   *
  + * Version: $Revision: 1.19 $   *
***/
   
   
  @@ -69,6 +69,8 @@
   #include jk_ajp14.h
   #include jk_ajp_common.h
   #include jk_connect.h
  +#include jk_channel.h
  +#include jk_env.h
   
   
   const char *response_trans_headers[] = {
  @@ -524,30 +526,38 @@
   void ajp_close_endpoint(ajp_endpoint_t *ae,
   jk_logger_t*l)
   {
  - jk_log(l, JK_LOG_DEBUG, In jk_endpoint_t::ajp_close_endpoint\n);
  +jk_log(l, JK_LOG_DEBUG, In jk_endpoint_t::ajp_close_endpoint\n);
   
   ajp_reset_endpoint(ae);
   jk_close_pool((ae-pool));
   
  +#ifdef CHANNEL
  +{
  + jk_channel_t *channel=ae-worker-worker.channel;
  + int err=channel-close( channel, ae-endpoint );
  +}
  +#else
   if (ae-sd  0) { 
  -jk_close_socket(ae-sd);
  - jk_log(l, JK_LOG_DEBUG, In jk_endpoint_t::ajp_close_endpoint, closed 
sd = %d\n, ae-sd);
  - ae-sd = -1; /* just to avoid twice close */
  - }
  + jk_close_socket(ae-sd);
  + jk_log(l, JK_LOG_DEBUG, In jk_endpoint_t::ajp_close_endpoint, closed sd = 
%d\n, ae-sd);
  + ae-sd = -1; /* just to avoid twice close */
  +}
  +#endif
   
   free(ae);
   }
  -
   
  +#ifndef CHANNEL
   /*
* Try to reuse a previous connection
*/
  -
   static void ajp_reuse_connection(ajp_endpoint_t *ae,
jk_logger_t*l)
   {
   ajp_worker_t *aw = ae-worker;
  -
  +
  +if (aw==NULL ) 
  +return;
   if (aw-ep_cache_sz) {
   int rc;
   JK_ENTER_CS(aw-cs, rc);
  @@ -567,6 +577,7 @@
   }
   }
   }
  +#endif
   
   
   int ajp_connect_to_endpoint(ajp_endpoint_t *ae,
  @@ -575,20 +586,26 @@
   unsigned attempt;
   
   for(attempt = 0 ; attempt  ae-worker-connect_retry_attempts ; attempt++) {
  +#ifdef CHANNEL
  + jk_channel_t *channel=ae-worker-worker.channel;
  +int err=channel-open( channel, ae-endpoint );
  + jk_log(l, JK_LOG_DEBUG, ajp_connect_to_endpoint: connected %lx\n, 
ae-endpoint );
  + if( err == JK_TRUE ) {
  +#else
   ae-sd = jk_open_socket(ae-worker-worker_inet_addr, JK_TRUE, l);
   if(ae-sd = 0) {
   jk_log(l, JK_LOG_DEBUG, In jk_endpoint_t::ajp_connect_to_endpoint, 
connected sd = %d\n, ae-sd);
  -
  - /* Check if we must execute a logon after the physical connect 
*/
  - if (ae-worker-logon != NULL)
  - return (ae-worker-logon(ae, l));
  -
  - return JK_TRUE;
  +#endif
  + /* Check if we must execute a logon after the physical connect */
  + if (ae-worker-logon != NULL)
  + return (ae-worker-logon(ae, l));
  + 
  + return JK_TRUE;
  

cvs commit: jakarta-tomcat-connectors/jk/native/common jk_jni_worker.c jk_lb_worker.c jk_msg_buff.c

2001-11-16 Thread costin

costin  01/11/16 22:00:24

  Modified:jk/native build.xml
   jk/native/common jk_jni_worker.c jk_lb_worker.c
jk_msg_buff.c
  Log:
  Few fixes for the previous commits.
  
  Revision  ChangesPath
  1.17  +2 -1  jakarta-tomcat-connectors/jk/native/build.xml
  
  Index: build.xml
  ===
  RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native/build.xml,v
  retrieving revision 1.16
  retrieving revision 1.17
  diff -u -r1.16 -r1.17
  --- build.xml 2001/11/16 22:52:43 1.16
  +++ build.xml 2001/11/17 06:00:24 1.17
  @@ -109,7 +109,8 @@
taskDebug=0
profile=${so.profile} 
 def name=_REENTRANT /
  -  def name=CHANNEL /
  +  def name=CHANNEL 
  +   if=use.channel/
 def name=CHUNK_SIZE value=4096 
   info=Read/Write buffer size /
 def name=REUSE_WORKER 
  
  
  
  1.6   +3 -2  jakarta-tomcat-connectors/jk/native/common/jk_jni_worker.c
  
  Index: jk_jni_worker.c
  ===
  RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native/common/jk_jni_worker.c,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- jk_jni_worker.c   2001/11/07 21:50:53 1.5
  +++ jk_jni_worker.c   2001/11/17 06:00:24 1.6
  @@ -59,7 +59,7 @@
* Description: In process JNI worker  *
* Author:  Gal Shachor [EMAIL PROTECTED]   *
* Based on:   *
  - * Version: $Revision: 1.5 $   *
  + * Version: $Revision: 1.6 $   *
***/
   
   #if !defined(WIN32)  !defined(NETWARE)
  @@ -557,12 +557,13 @@
   }
   
   if(p) {
  -p-attached = JK_FALSE;
  + p-attached = JK_FALSE;
   p-env = NULL;
   p-worker = pThis-worker_private;
   p-endpoint.endpoint_private = p;
   p-endpoint.service = service;
   p-endpoint.done = done;
  + p-endpoint.channelData = NULL;
   *pend = p-endpoint;

   return JK_TRUE;
  
  
  
  1.6   +2 -1  jakarta-tomcat-connectors/jk/native/common/jk_lb_worker.c
  
  Index: jk_lb_worker.c
  ===
  RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native/common/jk_lb_worker.c,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- jk_lb_worker.c2001/11/07 21:50:53 1.5
  +++ jk_lb_worker.c2001/11/17 06:00:24 1.6
  @@ -60,7 +60,7 @@
*  several workers.   *
* Author:  Gal Shachor [EMAIL PROTECTED]   *
* Based on:   *
  - * Version: $Revision: 1.5 $   *
  + * Version: $Revision: 1.6 $   *
***/
   
   #include jk_pool.h
  @@ -496,6 +496,7 @@
   p-endpoint.endpoint_private = p;
   p-endpoint.service = service;
   p-endpoint.done = done;
  + p-endpoint.channelData = NULL;
   *pend = p-endpoint;
   
   return JK_TRUE;
  
  
  
  1.9   +1 -2  jakarta-tomcat-connectors/jk/native/common/jk_msg_buff.c
  
  Index: jk_msg_buff.c
  ===
  RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native/common/jk_msg_buff.c,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- jk_msg_buff.c 2001/11/07 21:40:59 1.8
  +++ jk_msg_buff.c 2001/11/17 06:00:24 1.9
  @@ -60,11 +60,10 @@
* Author:  Costin [EMAIL PROTECTED]  *
* Author:  Gal Shachor [EMAIL PROTECTED]   *
* Author:  Henri Gomez [EMAIL PROTECTED]   *
  - * Version: $Revision: 1.8 $   *
  + * Version: $Revision: 1.9 $   *
***/
   
   #include jk_pool.h
  -#include jk_connect.h
   #include jk_util.h
   #include jk_msg_buff.h
   #include jk_logger.h
  
  
  

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




cvs commit: jakarta-tomcat RELEASE-NOTES-3.3.1.txt

2001-11-16 Thread billbarker

billbarker01/11/16 22:34:08

  Modified:.RELEASE-NOTES-3.3.1.txt
  Log:
  Update to include change to o.a.t.facade.HttpServletResponseFacade.
  
  Revision  ChangesPath
  1.3   +3 -1  jakarta-tomcat/RELEASE-NOTES-3.3.1.txt
  
  Index: RELEASE-NOTES-3.3.1.txt
  ===
  RCS file: /home/cvs/jakarta-tomcat/RELEASE-NOTES-3.3.1.txt,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- RELEASE-NOTES-3.3.1.txt   2001/11/14 03:02:24 1.2
  +++ RELEASE-NOTES-3.3.1.txt   2001/11/17 06:34:08 1.3
  @@ -3,7 +3,7 @@
Release Notes
=
   
  -$Id: RELEASE-NOTES-3.3.1.txt,v 1.2 2001/11/14 03:02:24 larryi Exp $
  +$Id: RELEASE-NOTES-3.3.1.txt,v 1.3 2001/11/17 06:34:08 billbarker Exp $
   
   
   This document describes the changes that have been made since the
  @@ -32,6 +32,8 @@
if you have Apache forwarding SSL requests to a Tomcat that doesn't
have JSSE installed.
   
  +  Fixed logic for response.encodeURL() so that it will work correctly 
  +  if the input URL includes an anchor tag.
   
   Server:
   
  
  
  

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




salon.com uses Tomcat + Cocoon for some experimental services

2001-11-16 Thread Paulo Gaspar

Take a look at this article:
http://www.webtechniques.com/archives/2001/12/rosenberg/

From that article:
We also have experimental services running under the Apache 
Project's Cocoon and Tomcat application servers that render 
Salon's content in XML, applying XSLT and XSP for form and 
functional purposes respectively. In the short term, this 
provides us with additional flexibility in working with 
content distribution and syndication partners. It also 
poises us for a future evolutionary transition to a dynamic, 
XML-based, content delivery model.


Have fun,
Paulo Gaspar

http://www.krankikom.de
http://www.ruhronline.de

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




[PATCH] [Catalina] StandardContext::addParameter() JavaDoc

2001-11-16 Thread Daniel Rall

addParameter() instance method actually throws an
IllegalArgumentException if a duplicate name is used.

I came across this while attempting to setup Catalina behind Apache +
mod_webapp -- AFAICT, my setup is currently giving me the joy of
multiple initializations of Catalina.

Index: StandardContext.java
===
RCS file: 
/home/cvspublic/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/core/StandardContext.java,v
retrieving revision 1.87
diff -u -u -r1.87 StandardContext.java
--- StandardContext.java2001/11/10 00:01:54 1.87
+++ StandardContext.java2001/11/17 02:18:47
@@ -1506,8 +1506,7 @@
 
 
 /**
- * Add a new context initialization parameter, replacing any existing
- * value for the specified name.
+ * Add a new context initialization parameter.
  *
  * @param name Name of the new parameter
  * @param value Value of the new  parameter

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]