questions on documentation for configuring AJP connector
We are currently using - Tomcat - 5.5.25 JDK 1.5 IIS 6 Windows XP 64bit and 32bit machines We are trying to upgrade to the latest connector. While going through the worker properties variables to set we have few questions regarding the following - 1) connection_pool_size - Usually this is the same as the number of threads per web server process. (cut-paste from the description for connection_pool_size) I am not familiar with IIS - so how do you determine the above? You should measure how many connections you need during peak activity without performance problems, and then add some percentage depending on your growth rate. How do you determine what is a good percentage? Also does this property have any correlation with the attribute MaxThreads in the Connector tag of server.xml? How do you determine what value should you put for MaxThreads? 2) connection_pool_timeout - The server.xml - the default value if not specified explicitly is 6(60 secs). I see in our server.xml AJP connector tag - its not specified - which means I do need to specify this property connection_pool_timeout in our worker.properties as 60? The documentation says the default for connection_pool_timeout is 0, shouldn't it be 60 if this has to be in synch with server.xml? 3) The worker.loadbalancer.method property - currently not set - but we are thinking of doing as B instead of default R. What do you use in general? Is there a disadvantage to switching from Request to Busyness? 4) Question on server.xml - maxSpareThreads maxThreads minSpareThreads What are the criteria to select appropriate values? For production servers - how do you determine the values to set? Is there a correlation between the values for above(maxSpareThreads, maxThreads, minSpareThreads) - for example - does the maxSpareThreads have to be certain % of maxThreads? Thank you for reading the question. Regard, Rumpa Giri
connector configuration values - need help to review
We are currently using - Tomcat - 5.5.25 on Windows XP 64bit and 32bit machines JDK 1.5 IIS 6 Trying to upgrade to latest connector, after changing according to the documentation I am able to browse our application behind IIS. Locally the application is behaving fine with the following configuration. So far I have modified the files as follows - for production environment do the values look appropriate? Is there any attribute/properties missing which is crucial for production ready environment? Thank you for reviewing. Worker.properties ps=\ # ps=/ worker.list=loadbalancer worker.template.type=ajp13 worker.template.lbfactor=1 worker.template.socket_keepalive=True worker.template.socket_timeout=300 worker.template.connection_pool_timeout=600 worker.template.connection_pool_size=200 worker.template.connect_timeout=6 worker.server1.port=8009 worker.server1.host=192.168.100.119 worker.server1.reference=worker.template worker.server2.port=8009 worker.server2.host=192.168.100.120 worker.server2.reference=worker.template worker.loadbalancer.type=lb worker.loadbalancer.balance_workers=server1,server2 worker.loadbalancer.method=B --- uriworkermap.properties --- /myjsps/*=loadbalancer - Server.xml AJP connector tag - !-- Define an AJP 1.3 Connector on port 8009 -- Connector port=8009 enableLookups=false redirectPort=8443 protocol=AJP/1.3 maxThreads=450 connectionTimeout=60 / To the default I have just added two more attributes - [maxThreads =450 connectionTimeout=60] - what other attributes are essential for production environment? Regards, Rumpa Giri
RE: questions on documentation for configuring AJP connector
Needed also : the version of the isapi_redirector you are using (try using the most recent one). Not sure I changed the log_level to debug and info - the version did not print in the logs. We inherited it as a legacy setup - originally timestamped 2004 so must be really old version. We are upgrading to 1.2.30. Thank you for all the detailed information. Regards, Rumpa Giri -Original Message- From: André Warnier [mailto:a...@ice-sa.com] Sent: Monday, June 28, 2010 3:04 PM To: Tomcat Users List Subject: Re: questions on documentation for configuring AJP connector Rumpa Giri wrote: We are currently using - Tomcat - 5.5.25 JDK 1.5 IIS 6 Windows XP 64bit and 32bit machines Needed also : the version of the isapi_redirector you are using (try using the most recent one). We are trying to upgrade to the latest connector. While going through the worker properties variables to set we have few questions regarding the following - 1) connection_pool_size - Usually this is the same as the number of threads per web server process. (cut-paste from the description for connection_pool_size) I am not familiar with IIS - so how do you determine the above? Also cut-paste from the online documentation : We strongly recommend adjusting this value for IIS and the Netscape/Sun to the number of requests one web server process should be able to send to a backend in parallel. You should measure how many connections you need during peak activity without performance problems, and then add some percentage depending on your growth rate. Finally you should check, whether your web server processes are able to use at least as many threads, as you configured as the pool size. You should measure how many connections you need during peak activity without performance problems, and then add some percentage depending on your growth rate. How do you determine what is a good percentage? Intuitively, it means : - today you want to be able to serve 100 requests in parallel, so you configure connection_pool_size to 100 as a basic number. - you want to review this in 30 days - during these 30 days, you expect the number of parallel requests to grow by 10%, so at the end of the 30 days you expect to have to handle 100 + 10% = 110 requests. So set connection_pool_size now to 110, and review this in 30 days. (Adapt for growth rate and review time). Also does this property have any correlation with the attribute MaxThreads in the Connector tag of server.xml? How do you determine what value should you put for MaxThreads? Yes, it has a correlation, but not direct, and it depends on many factors, and it is quite hard to explain exhaustively, which is why the documentation gives you hints rather than a definitive formula. But let me try : connection_pool_size determines how many TCP connections the front-end IIS isapi_redirector is going to establish, as a maximum, with the back-end Tomcat to pass requests to Tomcat. The redirector, once it has opened such a connection, is going to try to keep it open for a while, to minimise the overhead of having to re-create new connections all the time. (If a connection is not being used, after connection_pool_timeout, the redirector will close it). MaxThreads basically determines how many threads maximum Tomcat will start to serve requests in parallel. When Tomcat receives a request, it starts a thread to handle this request and produce a response. Once the response is produced and entirely sent back over the connection to the front-end, this thread exits. So how long one thread takes to exit, is proportional to the time it takes to service the request. If more requests come it at once, than the number of allowed threads can handle, the request has to wait. The Connector has a queue in which such requests can wait for a thread to become available to service it. This queue has a maximum size. If it is full, and no threads are available, the request will be rejected. (see the backlog attribute at http://tomcat.apache.org/tomcat-6.0-doc/config/ajp.html) How high in the absolute you can set MaxThreads, depends on the resources available to Tomcat (or to the JVM that runs Tomcat). Each thread will use some resources, to a point also depending on the characteristics of the request and of the application which this thread will run to service it. Other attributes of the Connector (such as keepAliveTimeout) play a role too. All these things are linked, and the optimum for each depends mostly on a number of characteristics of your situation. There is no universal formula. Make an educated guess, try it out, monitor, and rectify if needed, one parameter and a little bit at a time. 2) connection_pool_timeout - The server.xml - the default value if not specified explicitly is 6(60 secs). I see in our server.xml AJP connector tag - its not specified - which means I do need
OCI vs THIN
For production environment it has been recommended that we use OCI driver. Based on the oracle JDBC guide, with oracle 10g there is not much difference in the two drivers in terms of capability. We would like to know is there any documentation/links/whitepapers on the above? Is there any data proving that OCI performs better than THIN driver? What are you using for your production JDBC driver? Have you had a chance to compare the two before making the decision? Thanks, Rumpa Giri - Be a better friend, newshound, and know-it-all with Yahoo! Mobile. Try it now.
Re: Tomcat Service and OCI
Thanks a lot, speaking of OCI, is there any evidence that OCI will perform better than the THIN driver? We are being encouraged to use OCI on production environment since everybody says so, but our development team isn't convinced of the same. We are using oracle 10g and based on their documentation there isn't much difference between OCI and THIN, the 10g THIN driver now supports what OCI used to have advantage over. Thanks again, Rumpa Tim Funk [EMAIL PROTECTED] wrote: When run as a service - the PATH used by SYSTEM is not the same as when you are logged in. (So you need to add the dll's somewhere in your path as SYSTEM user - I can't recall how this is done but this is a very common problem google can help you with) The type 4 jdbc driver from oracle has been very stable for the last (lot of) years. There really isn't much reason top use the OCI driver. -Tim Rumpa Giri wrote: Hello, I am trying to run the tomcat as NT Service, but does not seem to work with OCI, if I run the same tomcat instance not as a service but via startup.bat, the OCI JDBC driver works fine. Can anybody help me locate how to fix the service installation script to avoid the exception. Local setup followed - 1) I have installed tomcat 5.5.25. 2) Installed oracle client installation to use JDBC OCI Driver. a) Installed the oracle client installation at location - C:\oracle\product\10.2.0\client_1 b) PATH is updated to reflect the above location for the dlls. c) copied the ojdbc14.ar to the %CATALINA_HOME%/commo/lib/ folder. 3) the context.xml has the OCI URL properly - type=javax.sql.DataSource driverClassName=oracle.jdbc.driver.OracleDriver url=jdbc:oracle:oci:@//:1521/orcl username=UN password=PWD maxActive=20 maxIdle=10 maxWait=-1 removeAbandoned=true removeAbandonedTimeout=60 logAbandoned=true / If i run the %CATALINA_HOME%/bin/startup.bat - the application works fine and the JDBC code excutes properly. To install the tomcat as a service I ran the following script - NOTE - We did specify the -Djava.library.path in the script. _ SET CATALINA_HOME=C:\tools\apache-tomcat-5.5.25 SET CATALINA_BASE=C:\tools\apache-tomcat-5.5.25 @echo off echo CATALINA_HOME: %CATALINA_HOME% echo CATALINA_BASE: %CATALINA_BASE% echo JAVA_HOME: %JAVA_HOME% pause set BASEDIR=%CATALINA_HOME% call %CATALINA_HOME%\bin\setclasspath.bat set args=%args% --Description=TOMCAT1 set args=%args% --DisplayName=TOMCAT1 set args=%args% --Startup=auto set args=%args% --LogPath=%CATALINA_BASE%\logs set args=%args% --LogLevel=DEBUG set args=%args% --StdError=%CATALINA_BASE%\logs\tomcat1_err.log set args=%args% --StdOutput=%CATALINA_BASE%\logs\tomcat1_out.log set args=%args% --Classpath=%CLASSPATH%;%CATALINA_HOME%\bin\bootstrap.jar set args=%args% --JavaHome=%JAVA_HOME% set args=%args% --Jvm=%JAVA_HOME%\jre\bin\server\jvm.dll set args=%args% --JvmOptions=-Xms128m;-Xmx512m;-Djava.library.path=C:\oracle\product\10.2.0\client_1;-Dcatalina.base=%CATALINA_BASE%;-Dcatalina.home=%CATALINA_HOME%;-Djava.endorsed.dirs=%CATALINA_HOME%\common\endorsed set args=%args% --StartMode=jvm set args=%args% --StartClass=org.apache.catalina.startup.Bootstrap set args=%args% --StartParams=start rem set args=%args% --StartImage=%CATALINA_HOME%\bin\tomcat5.exe rem set args=%args% --StartPath=%CATALINA_HOME%\bin; set args=%args% --StopMode=jvm set args=%args% --StopClass=org.apache.catalina.startup.Bootstrap set args=%args% --StopParams=stop rem set args=%args% --StopImage=%CATALINA_HOME%\bin\tomcat5.exe rem set args=%args% --StopPath=%CATALINA_HOME%\bin %CATALINA_HOME%\bin\tomcat5.exe //IS//TomcatTest %args% set args= set BASEDIR= _ Now when we run the service and start the application - we get the following exception - java.lang.UnsatisfiedLinkError: C:\oracle\product\10.2.0\client_1\ocijdbc10.dll: Can't find dependent libraries - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - Be a better pen pal. Text or chat with friends inside Yahoo! Mail. See how.
Tomcat Service and OCI
Hello, I am trying to run the tomcat as NT Service, but does not seem to work with OCI, if I run the same tomcat instance not as a service but via startup.bat, the OCI JDBC driver works fine. Can anybody help me locate how to fix the service installation script to avoid the exception. Local setup followed - 1) I have installed tomcat 5.5.25. 2) Installed oracle client installation to use JDBC OCI Driver. a) Installed the oracle client installation at location - C:\oracle\product\10.2.0\client_1 b) PATH is updated to reflect the above location for the dlls. c) copied the ojdbc14.ar to the %CATALINA_HOME%/commo/lib/ folder. 3) the context.xml has the OCI URL properly - Resource name=jdbc/provider auth=Container type=javax.sql.DataSource driverClassName=oracle.jdbc.driver.OracleDriver url=jdbc:oracle:oci:@//IP:1521/orcl username=UN password=PWD maxActive=20 maxIdle=10 maxWait=-1 removeAbandoned=true removeAbandonedTimeout=60 logAbandoned=true / If i run the %CATALINA_HOME%/bin/startup.bat - the application works fine and the JDBC code excutes properly. To install the tomcat as a service I ran the following script - NOTE - We did specify the -Djava.library.path in the script. _ SET CATALINA_HOME=C:\tools\apache-tomcat-5.5.25 SET CATALINA_BASE=C:\tools\apache-tomcat-5.5.25 @echo off echo CATALINA_HOME: %CATALINA_HOME% echo CATALINA_BASE: %CATALINA_BASE% echo JAVA_HOME: %JAVA_HOME% pause set BASEDIR=%CATALINA_HOME% call %CATALINA_HOME%\bin\setclasspath.bat set args=%args% --Description=TOMCAT1 set args=%args% --DisplayName=TOMCAT1 set args=%args% --Startup=auto set args=%args% --LogPath=%CATALINA_BASE%\logs set args=%args% --LogLevel=DEBUG set args=%args% --StdError=%CATALINA_BASE%\logs\tomcat1_err.log set args=%args% --StdOutput=%CATALINA_BASE%\logs\tomcat1_out.log set args=%args% --Classpath=%CLASSPATH%;%CATALINA_HOME%\bin\bootstrap.jar set args=%args% --JavaHome=%JAVA_HOME% set args=%args% --Jvm=%JAVA_HOME%\jre\bin\server\jvm.dll set args=%args% --JvmOptions=-Xms128m;-Xmx512m;-Djava.library.path=C:\oracle\product\10.2.0\client_1;-Dcatalina.base=%CATALINA_BASE%;-Dcatalina.home=%CATALINA_HOME%;-Djava.endorsed.dirs=%CATALINA_HOME%\common\endorsed set args=%args% --StartMode=jvm set args=%args% --StartClass=org.apache.catalina.startup.Bootstrap set args=%args% --StartParams=start rem set args=%args% --StartImage=%CATALINA_HOME%\bin\tomcat5.exe rem set args=%args% --StartPath=%CATALINA_HOME%\bin; set args=%args% --StopMode=jvm set args=%args% --StopClass=org.apache.catalina.startup.Bootstrap set args=%args% --StopParams=stop rem set args=%args% --StopImage=%CATALINA_HOME%\bin\tomcat5.exe rem set args=%args% --StopPath=%CATALINA_HOME%\bin %CATALINA_HOME%\bin\tomcat5.exe //IS//TomcatTest %args% set args= set BASEDIR= _ Now when we run the service and start the application - we get the following exception - java.lang.UnsatisfiedLinkError: C:\oracle\product\10.2.0\client_1\ocijdbc10.dll: Can't find dependent libraries at java.lang.ClassLoader$NativeLibrary.load(Native Method) at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1751) at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1676) at java.lang.Runtime.loadLibrary0(Runtime.java:822) at java.lang.System.loadLibrary(System.java:992) at oracle.jdbc.driver.T2CConnection$1.run(T2CConnection.java:3135) at java.security.AccessController.doPrivileged(Native Method) at oracle.jdbc.driver.T2CConnection.loadNativeLibrary(T2CConnection.java:3131) at oracle.jdbc.driver.T2CConnection.logon(T2CConnection.java:221) at oracle.jdbc.driver.PhysicalConnection.init(PhysicalConnection.java:414) at oracle.jdbc.driver.T2CConnection.init(T2CConnection.java:132) at oracle.jdbc.driver.T2CDriverExtension.getConnection(T2CDriverExtension.java:78) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at org.apache.tomcat.dbcp.dbcp.DriverConnectionFactory.createConnection(DriverConnectionFactory.java:38) at org.apache.tomcat.dbcp.dbcp.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:294) at org.apache.tomcat.dbcp.dbcp.BasicDataSource.validateConnectionFactory(BasicDataSource.java:1247) at org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1221) at org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSource.java:880) snipped Can anybody please help me locate how to fix the service installation script to avoid the exception. I am assuming since the regular command prompt way of starting tomcat works fine with the driver, its the service installation script which is missing something. Thanks, Rumpa Giri - Be a better pen pal. Text
session not maintained struts/tomcat 5.0.25
We have a struts application on tomcat 5.0.25 jdk1.4, which does not seem to maintain session, when the request lands up on a particular tomcat. We have two struts application, say app1, app2. tomcat 1 to 4 hosts app1. tomcat 6 to 8 hosts both app1 and app2. The problem happens for app1 when the request lands up on tomcat 6 to 8 hosting both the applications. While going through some of the previous post, I saw that 5.5 has a parameter emptySessionPath=true Is there anything similar for 5.0.25? I saw the sessionid changes between requests when the request lands up on tomcat 6 to 8. Why its happening for struts application on tomcat only? Our other applications not using struts works fine. I checked the session is obtained via the method request.getSession(false); Also if only tomcat 6 is running out of all the tomcats we never face the problem, the moment we put another tomcat into the mix the session is no longer maintained. Anybody had similar experience? Any help will be much appreciated, Thanks for reading. Rumpa Giri __ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com
Re: session not maintained struts/tomcat 5.0.25
It was not tomcat, we found the problem. We have been looking in the wrong place all along. It was the IIS JK worker.properties file that had a typo. In the wroker.properties file the jvmRoute name was wrong for these tomcats 6 to 8. As a result, the request was never sent to the same server again by iis after the first request, neither the session was maintained. Thanks, Rumpa Rumpa Giri [EMAIL PROTECTED] wrote: We have a struts application on tomcat 5.0.25 jdk1.4, which does not seem to maintain session, when the request lands up on a particular tomcat. We have two struts application, say app1, app2. tomcat 1 to 4 hosts app1. tomcat 6 to 8 hosts both app1 and app2. The problem happens for app1 when the request lands up on tomcat 6 to 8 hosting both the applications. While going through some of the previous post, I saw that 5.5 has a parameter emptySessionPath=true Is there anything similar for 5.0.25? I saw the sessionid changes between requests when the request lands up on tomcat 6 to 8. Why its happening for struts application on tomcat only? Our other applications not using struts works fine. I checked the session is obtained via the method request.getSession(false); Also if only tomcat 6 is running out of all the tomcats we never face the problem, the moment we put another tomcat into the mix the session is no longer maintained. Anybody had similar experience? Any help will be much appreciated, Thanks for reading. Rumpa Giri __ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com __ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com
Re: tomcat 5.0.28 with JDK 1.5?
Yes, it works. We have it currently on production. Thanks, Rumpa Giri Sunitha Kumar (sunithak) [EMAIL PROTECTED] wrote: Hi, Wanted to check if tomcat 5.0.28 would work with JDK 1.5? thnx -sunitha - Yahoo! Groups gets better. Check out the new email design. Plus theres much more to come.
System.setProperty question
Why the system properties are not being set programmatically? When I say does not take affect it happens only when we do things in a certain order. For example we need to connect to URL_CACERTS and URL_KS. URL_KS connection needs the keystore properties. For URL_CACERTS we just imported their public key to cacerts. Case 1: If we connect to URL_CACERTS first and then to URL_KS, connection to URL_KS is not successful. Somehow the setting keystore properties does not take affect. We have the following lines of code before doing the HttpURLConnection: System.setProperty(javax.net.ssl.keyStorePassword, _storePwd); System.setProperty(javax.net.ssl.keyStore, _keystorePath); Case 2: If we connect to URL_KS first, and then URL_CACERTS, this sequence always works, somehow the keystore properties are set for the entire length. So to overcome this conflict, we added the properties to the tomcat service: If we start the tomcat service(or adding to catalina.bat) with the following parameters: -Djavax.net.ssl.keyStorePassword=changeit -Djavax.net.ssl.keyStore=C:\certificates\pntKS These system properties setting takes affect, and order of conneting to URL_CACERTS or URL_KS does not matter. My question in how is connecting to URL_CACERTS first affecting the keystore properties? Without the above and doing the following only, its dependent on the order of connection. why? when we do the same thing by doing this it does not take affect System.setProperty(javax.net.ssl.keyStorePassword, _storePwd); System.setProperty(javax.net.ssl.keyStore, _keystorePath); Connecting to URL_CACERTS does not have any special code, we do plain HttpURLConnection and write and read from the http connection. What is happening behind the scene? Why does order matter? Thanks for reading. Rumpa Giri __ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com
RE: Tomcat /JSSE help needed
) at com.sun.net.ssl.internal.ssl.X509TrustManagerImpl.checkServerTrusted( X509TrustManagerImpl.java:172) at com.sun.net.ssl.internal.ssl.JsseX509TrustManager.checkServerTrusted( SSLContextImpl.java:320) at com.sun.net.ssl.internal.ssl.ClientHandshaker.serverCertificate(Clien tHandshaker.java:836) ... 12 more Caused by: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target at sun.security.provider.certpath.SunCertPathBuilder.engineBuild(SunCert PathBuilder.java:236) at java.security.cert.CertPathBuilder.build(CertPathBuilder.java:194) at sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:216) ... 17 more Thanks for the reading, Rumpa Giri Tim Lucia [EMAIL PROTECTED] wrote: v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#default#VML);} w\:* {behavior:url(#default#VML);} .shape {behavior:url(#default#VML);} To answer your most-recent question below, accessing the outside URL should not involve IIS on your local box (the http client). Its not clear to me from your original post which is the client and which is the server. Sounds like you have a client and two servers where one is your local copy of the vendors production server? What Ive read (three times now) is that When we put the IIS back in mixture, it does not work anymore This statement was the basis for my original reply. Tim - From: Rumpa Giri [mailto:[EMAIL PROTECTED] Sent: Tuesday, June 06, 2006 1:01 AM To: Tim Lucia; 'Tomcat Users List' Subject: RE: Tomcat /JSSE help needed On our QA machine, we have the IIS and tomcat both on the same box, IIS has the redirector also. Now on this box we did not install the certificate but its still working. When we do the httpsurlconnection via the java code to the outside URL, is IIS involved at all? Thanks, Rumpa Tim Lucia [EMAIL PROTECTED] wrote: Wouldn't you need IIS to have the certificate, rather then Tomcat? Just a guess, as I read this. It *appears* that IIS would be making the SSL connection (https) outbound while speaking AJP over 8009 to Tomcat. Tim -Original Message- From: Rumpa Giri [mailto:[EMAIL PROTECTED] Sent: Monday, June 05, 2006 10:47 PM To: Tomcat UserGroup Subject: Tomcat /JSSE help needed Tomcat Version 5.0.25 JDK Version 1.5 One of our vendor required client authentication to retrieve data. So, we got a Thwate Freemail Certificate, send the vendor our serial number. Our vendor added that serial number to their application to allow us to contact their .aspx url. We got the certificate .pfx file with the certificate chain. For our java code to interact successfully with their URL, we had to import the certificate with the private key in a keystore. We created a Keystore by extracting the private key from the .pfx file. So every time we connect using the httpsurl connection, we put the keystore as follows: System.setProperty(java.protocol.handler.pkgs, com.sun.net.ssl.internal.www.protocol); System.setProperty(javax.net.ssl.keyStorePassword, _storePwd); System.setProperty(javax.net.ssl.keyStore, _keystorePath); URL urlToConnect = new URL(_url); HttpURLConnection conn = (HttpURLConnection) urlToConnect.openConnection(); conn.setRequestMethod(POST); conn.setDoOutput(true); OutputStreamWriter wr; wr = new OutputStreamWriter(conn.getOutputStream()); wr.write(_parameter); wr.flush(); wr.close(); This works fine, when we are connecting through the code, no tomcat any standalone application works fine. Even on our development machine tomcat works fine in exchanging data with the vendor. On our development machine we do not have IIS forwarding the request via redirector. On our production its not working, somehow when we are sending the https request, its not taking affect that the keystore is mentioned. Everytime instead of the expected result we get an error page from them as follows: Secure Channel Client Authentication Required This Virtual Directory requires a browser that supports the configured encryption options. On the production servers, if we directly connect to tomcat via the http port mentioned in the server.xml, bypassing the IIS, it works fine. http://localhost:9001/ to test the connectivity to vendor. When we put the IIS back in mixture, it does not work anymore. When the http request comes from IIS to tomcat, and tomcat initiates the httpsurlconnection to the URL specified, in this roundtrip to the vendor URL no IIS is involved right? The IIS will forward any request meant for tomcat, and the HTML generated by tomcat is forwarded back to IIS, is that the only link between IIS and tomcat or they interact more? When the java code executes, it only looks at the keystore specified right? Does having the .pfx file imported with the cert chain in the personal store matter to JAVA code?(On local
RE: Tomcat /JSSE help needed(Resolved)
But I read that these lines of code is no longer needed as of JDK 1.4 right, if we place the public key in the %JAVA_HOME%/jre/lib/security/cacerts file. Is this true? We changed the implementation by removing those line of code and importing the public key into the cacerts, it worked fine. One more change was instead of the casting it to a HttpsURLConnection, we cast it to java.net.HttpURLConnection. Thanks, Rumpa Giri Rumpa Giri [EMAIL PROTECTED] wrote: I apologise for the confusion, but I was trying to figure out where the problem lies, so I was jotting down any differences I see between whats working and whats not.. I think I found out why it stops working when IIS is put back in the mixture, Its not IIS its the JAVA code itself. We have multiple connection code doing HttpsURLConnection, but the javax.net.ssl properties that being set are different for the two piece of code. And one setting is affecting the other. 1) When doing the httpsurlconnection for another vendor( say vendor A), we have some code which is as follows: cacerts_path is not cacerts file, we imported the public key for VENDOR A in a separate truststore. System.setProperty(java.protocol.handler.pkgs, com.sun.net.ssl.internal.www.protocol); System.setProperty(javax.net.ssl.trustStore, cacerts_path); System.setProperty(javax.net.ssl.keyStorePassword, cacerts_pwd); com.sun.net.ssl.HttpsURLConnection.setDefaultHostnameVerifier(new HostnameVerifier() { public boolean verify(String urlHost, String certHost) { return true; } }); // setup the JSSE handler for the connection Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider()); But I read that these lines of code is no longer needed as of JDK 1.4 right, if we place the public key in the %JAVA_HOME%/jre/lib/security/cacerts file. Is this true? This piece of code is conflicting with the settings for the following code. 2) The following piece of code executes for VENDOR B whose requirement is client authentication. Hence we created this keystore with the private key in it. System.setProperty(java.protocol.handler.pkgs, com.sun.net.ssl.internal.www.protocol); System.setProperty(javax.net.ssl.keyStorePassword, _storePwd); System.setProperty(javax.net.ssl.keyStore, _keystorePath); URL urlToConnect = new URL(_url); HttpURLConnection conn = (HttpURLConnection) urlToConnect.openConnection(); conn.setRequestMethod(POST); conn.setDoOutput(true); OutputStreamWriter wr; wr = new OutputStreamWriter(conn.getOutputStream()); wr.write(_parameter); wr.flush(); wr.close(); Once you run the code for VENDOR A, VENDOR B code stops working, i.e, VENDOR B does not get the private key in the keystore. VENDOR A works all the time. Refer to (1) code snippet But I read that this is no longer needed as of JDK 1.4 right, if we place the public key in the %JAVA_HOME%/jre/lib/security/cacerts file. Is this true? This piece of code is conflicting with the settings for the following code. After reading this, I imported the public key for VENDOR A into the %JAVA_HOME%/jre/lib/security/cacerts but I am getting the following exception when I execute VENDOR A code. javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderExce ption: unable to find valid certification path to requested target at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:150) at com.sun.net.ssl.internal.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1 476) at com.sun.net.ssl.internal.ssl.Handshaker.fatalSE(Handshaker.java:174) at com.sun.net.ssl.internal.ssl.Handshaker.fatalSE(Handshaker.java:168) at com.sun.net.ssl.internal.ssl.ClientHandshaker.serverCertificate(Clien tHandshaker.java:843) at com.sun.net.ssl.internal.ssl.ClientHandshaker.processMessage(ClientHa ndshaker.java:106) at com.sun.net.ssl.internal.ssl.Handshaker.processLoop(Handshaker.java:4 95) at com.sun.net.ssl.internal.ssl.Handshaker.process_record(Handshaker.jav a:433) at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.j ava:815) at com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(SS LSocketImpl.java:1025) at com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(SSLSocketIm pl.java:1038) at sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java: 405) at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect (AbstractDelegateHttpsURLConnection.java:170) at sun.net.www.protocol.http.HttpURLConnection.getOutputStream(HttpURLCo nnection.java:828) at sun.net.www.protocol.https.HttpsURLConnectionImpl.getOutputStream(Htt psURLConnectionImpl.java:230) at com.hh.ecs.ComObject.UploadFiles(Unknown Source) at com.hh.ecs.ComObject.main(Unknown Source) Caused by: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find vali d certification path to requested target
Tomcat /JSSE help needed
Tomcat Version 5.0.25 JDK Version 1.5 One of our vendor required client authentication to retrieve data. So, we got a Thwate Freemail Certificate, send the vendor our serial number. Our vendor added that serial number to their application to allow us to contact their .aspx url. We got the certificate .pfx file with the certificate chain. For our java code to interact successfully with their URL, we had to import the certificate with the private key in a keystore. We created a Keystore by extracting the private key from the .pfx file. So every time we connect using the httpsurl connection, we put the keystore as follows: System.setProperty(java.protocol.handler.pkgs, com.sun.net.ssl.internal.www.protocol); System.setProperty(javax.net.ssl.keyStorePassword, _storePwd); System.setProperty(javax.net.ssl.keyStore, _keystorePath); URL urlToConnect = new URL(_url); HttpURLConnection conn = (HttpURLConnection) urlToConnect.openConnection(); conn.setRequestMethod(POST); conn.setDoOutput(true); OutputStreamWriter wr; wr = new OutputStreamWriter(conn.getOutputStream()); wr.write(_parameter); wr.flush(); wr.close(); This works fine, when we are connecting through the code, no tomcat any standalone application works fine. Even on our development machine tomcat works fine in exchanging data with the vendor. On our development machine we do not have IIS forwarding the request via redirector. On our production its not working, somehow when we are sending the https request, its not taking affect that the keystore is mentioned. Everytime instead of the expected result we get an error page from them as follows: htmlheadtitleError/title/headbodyheadtitleSecure Channel Client Authentication Required/title/headbodyh1Secure Channel Client Authentication Required/h1This Virtual Directory requires a browser that supports the configured encryption options./body/body/html On the production servers, if we directly connect to tomcat via the http port mentioned in the server.xml, bypassing the IIS, it works fine. http://localhost:9001/url to test the connectivity to vendor. When we put the IIS back in mixture, it does not work anymore. When the http request comes from IIS to tomcat, and tomcat initiates the httpsurlconnection to the URL specified, in this roundtrip to the vendor URL no IIS is involved right? The IIS will forward any request meant for tomcat, and the HTML generated by tomcat is forwarded back to IIS, is that the only link between IIS and tomcat or they interact more? When the java code executes, it only looks at the keystore specified right? Does having the .pfx file imported with the cert chain in the personal store matter to JAVA code?(On local machine I did delete the certificate imported in the personal store and the java code still worked fine.) Thanks a lot for reading, Rumpa Giri - Feel free to call! Free PC-to-PC calls. Low rates on PC-to-Phone. Get Yahoo! Messenger with Voice
tomcat service/JDK question
We installed the tomcat service using the following script. We had a question regarding what JAVA_HOME the tomcat use once you create the service? Does it depend on the system property defined %JAVA_HOME% or does the path present in the following batch file (if hard coded) takes precedence? The following script does use the JAVA_HOME property, I wanted to know if it was hard coded what would have happened. = SET CATALINA_HOME=C:\tomcatGroup\NewTomcat_S7 SET CATALINA_BASE=C:\tomcatGroup\NewTomcat_S7 @echo off echo CATALINA_HOME: %CATALINA_HOME% echo CATALINA_BASE: %CATALINA_BASE% echo JAVA_HOME: %JAVA_HOME% pause set BASEDIR=%CATALINA_HOME% call %CATALINA_HOME%\bin\setclasspath.bat set args=%args% --Description=TOMCATNEWS7 set args=%args% --DisplayName=TOMCATNEWS7 set args=%args% --Startup=auto set args=%args% --LogPath=%CATALINA_BASE%\logs set args=%args% --LogLevel=DEBUG set args=%args% --StdError==%CATALINA_BASE%\logs\TOMCAT_S7_err.log set args=%args% --StdOutput=%CATALINA_BASE%\logs\TOMCAT_S7_out.log set args=%args% --Classpath=%CLASSPATH%;%CATALINA_HOME%\bin\bootstrap.jar set args=%args% --JavaHome=%JAVA_HOME% set args=%args% --Jvm=%JAVA_HOME%\jre\bin\server\jvm.dll set args=%args% --JvmOptions=-Xms128m;-Xmx512m;-Dcatalina.base=%CATALINA_BASE%;-Dcatalina.home=%CATALINA_HOME%;-Djava.endorsed.dirs=%CATALINA_HOME%\common\endorsed set args=%args% --StartMode=jvm set args=%args% --StartClass=org.apache.catalina.startup.Bootstrap set args=%args% --StartParams=start rem set args=%args% --StartImage=%CATALINA_HOME%\bin\tomcat5.exe rem set args=%args% --StartPath=%CATALINA_HOME%\bin set args=%args% --StopMode=jvm set args=%args% --StopClass=org.apache.catalina.startup.Bootstrap set args=%args% --StopParams=stop rem set args=%args% --StopImage=%CATALINA_HOME%\bin\tomcat5.exe rem set args=%args% --StopPath=%CATALINA_HOME%\bin %CATALINA_HOME%\bin\tomcat5.exe //IS//TOMCATNEWS7 %args% set args= set BASEDIR= = We have tomcat services configured from past, we are trying to upgrade to JDK 1.5.0, tomcat version 5.0.25. We changed the JAVA_HOME properties and modified the PATH. But after starting existing tomcat services we are getting the following exception: java.lang.UnsupportedClassVersionError: className (Unsupported major.minor version 49.0) --- For new tomcat service installation using the above script, we do not have the exception, the proper JDK seems to be used while executing. The new tomcat installation is nothing but a copy of existing tomcat instance with changed server.xml port numbers. What can be different in the old tomcat services? Can the way the service was installed make a difference as described above? Thanks for reading, Rumpa Giri - Yahoo! Messenger with Voice. PC-to-Phone calls for ridiculously low rates.
Re: tomcat service/JDK question
Thanks a lot Sreeni. Yes it is pointing to JDK 1.4. Thanks again, Rumpa Giri Sreenivasulu R Gaddam [EMAIL PROTECTED] wrote: Tomcat takes the jvm path from the registry parameters. you can look at the jvm paramter at \HKEY_LOCAL_MACHINE\SOFTWARE\Apache sotware foundation\procrun2.0\tomcat5\paramters\java under registry entries. You can change these values by editing registry or by running tomcat5w.exe under /bin. -Sreeni. --- Rumpa Giri wrote: We installed the tomcat service using the following script. We had a question regarding what JAVA_HOME the tomcat use once you create the service? Does it depend on the system property defined %JAVA_HOME% or does the path present in the following batch file (if hard coded) takes precedence? The following script does use the JAVA_HOME property, I wanted to know if it was hard coded what would have happened. = SET CATALINA_HOME=C:\tomcatGroup\NewTomcat_S7 SET CATALINA_BASE=C:\tomcatGroup\NewTomcat_S7 @echo off echo CATALINA_HOME: %CATALINA_HOME% echo CATALINA_BASE: %CATALINA_BASE% echo JAVA_HOME: %JAVA_HOME% pause set BASEDIR=%CATALINA_HOME% call %CATALINA_HOME%\bin\setclasspath.bat set args=%args% --Description=TOMCATNEWS7 set args=%args% --DisplayName=TOMCATNEWS7 set args=%args% --Startup=auto set args=%args% --LogPath=%CATALINA_BASE%\logs set args=%args% --LogLevel=DEBUG set args=%args% --StdError==%CATALINA_BASE%\logs\TOMCAT_S7_err.log set args=%args% --StdOutput=%CATALINA_BASE%\logs\TOMCAT_S7_out.log set args=%args% --Classpath=%CLASSPATH%;%CATALINA_HOME%\bin\bootstrap.jar set args=%args% --JavaHome=%JAVA_HOME% set args=%args% --Jvm=%JAVA_HOME%\jre\bin\server\jvm.dll set args=%args% --JvmOptions=-Xms128m;-Xmx512m;-Dcatalina.base=%CATALINA_BASE%;-Dcatalina.home=%CATALINA_HOME%;-Djava.endorsed.dirs=%CATALINA_HOME%\common\endorsed set args=%args% --StartMode=jvm set args=%args% --StartClass=org.apache.catalina.startup.Bootstrap set args=%args% --StartParams=start rem set args=%args% --StartImage=%CATALINA_HOME%\bin\tomcat5.exe rem set args=%args% --StartPath=%CATALINA_HOME%\bin set args=%args% --StopMode=jvm set args=%args% --StopClass=org.apache.catalina.startup.Bootstrap set args=%args% --StopParams=stop rem set args=%args% --StopImage=%CATALINA_HOME%\bin\tomcat5.exe rem set args=%args% --StopPath=%CATALINA_HOME%\bin %CATALINA_HOME%\bin\tomcat5.exe //IS//TOMCATNEWS7 %args% set args= set BASEDIR= = We have tomcat services configured from past, we are trying to upgrade to JDK 1.5.0, tomcat version 5.0.25. We changed the JAVA_HOME properties and modified the PATH. But after starting existing tomcat services we are getting the following exception: java.lang.UnsupportedClassVersionError: (Unsupported major.minor version 49.0) --- For new tomcat service installation using the above script, we do not have the exception, the proper JDK seems to be used while executing. The new tomcat installation is nothing but a copy of existing tomcat instance with changed server.xml port numbers. What can be different in the old tomcat services? Can the way the service was installed make a difference as described above? Thanks for reading, Rumpa Giri - Yahoo! Messenger with Voice. PC-to-Phone calls for ridiculously low rates. __ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - Yahoo! Mail goes everywhere you do. Get it on your phone.
memory footprint question (5.0.28)
I had a question on individual memory footprint of a tomcat instance and increasing the number of instances: Is this assumption correct that increasing the number of instances of tomcat on a machine and modifying the IIS worker properties to have more worker instances in the balanced_worker property will reduce individual tomcat memory foot print? For example, currently we have one machine has 3 tomcat instances running, the IIS worker properties, balanced_worker property points to the 3 tomcats and each worker lb_factor is 1. Current snapshot of memory usage is approx 175MB. If we add more tomcat instance and add them to the balanced_worker also, will the memory usage reduce for individual tomcat instance; now that the IIS will spread the new requests evenly among the tomcats? Thanks, Rumpa Giri - New Yahoo! Messenger with Voice. Call regular phones from your PC and save big.
Re: connector maxProcessor attribute question
We are currently using 5.0.28 tomcat version. We were referring to docs for version 5.0. Thanks, Rumpa Giri Bill Barker [EMAIL PROTECTED] wrote: Rumpa Giri wrote in message news:[EMAIL PROTECTED] I had 2 questions regarding tomcat configuration: 1) We are currently trying to reconfigure our IIS to point to the tomcats as follows: We will have 4 web servers. And 3 app servers each running 4 tomcat instance each configured to only have AJP connectors. In total 12 tomcat instance running in total. And each web server is going to point to all the 12 tomcats for failover at the web server layer. Is there any downside to such a configuration? Earlier we had one web server point to only one app server running 4 instances. 2) In the enableLookups=false redirectPort=8443 debug=0 protocol=AJP/1.3 / I can define one more attribute named maxProcessors. A maxProcessors value of zero (0) signifies thatthe number of processors is unlimited. If not specified, this atttribute defaults to 20. In the documentation it mentions for the [maxProcessors] This should be set to a value that is greater than or equal to the maximum number of concurrent connections the remote web server can open to Tomcat simultaneously. In the configuration described above(1), since all the webservers are going to point to all the tomcat instances, we are thinking of putting [maxProcessors value of zero (0) ] in the AJP connector. Is there any disadvantage to that? The main disadvantage is that the docs are wrong ;-). If you are using the APR Connector, then you need maxProcessors=-1 to achieve this. If you are using the Java Connector, then 0 gets changed to 200. Thanks, Rumpa Giri - Blab-away for as little as 1�/min. Make PC-to-Phone Calls using Yahoo! Messenger with Voice. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - Talk is cheap. Use Yahoo! Messenger to make PC-to-Phone calls. Great rates starting at 1cent;/min.
question on jvmRoute parameter (tomcat version 5.0.28)
According to the 5.0 docs, the jvmRoute description says the following: Identifier which must be used in load balancing scenarios to enable session affinity. The indetifier, which must be unique across all Tomcat 5 servers which participate in the cluster, will be appended to the generated session identifier, therefore allowing the front end proxy to always forward a particular session to the same Tomcat 5 instance. In the worker.properties(5.0) the worker_name correspond to the jvmRoute. we specify the worker names who participate in the loadbalancing. such as worker.loadbalancer.type=lb worker.loadbalancer.balanced_workers=server1, server2, server3, server4, server5, server6, server7, server8, server9, server10, server11, server12 worker.loadbalancer.sticky_session=1 worker.loadbalancer.local_worker_only=1 when you say which must be unique across all Tomcat 5 servers which participate in the cluster do you mean the all the worker names hence the jvmRoute should be unique? Currently we have: server1 through server4 is on one machine having 4 tomcat instances. server5 through server8 is on one machine having 4 tomcat instances. server9 through server12 is on one machine having 4 tomcat instances. Thanks, Rumpa Giri - New Yahoo! Messenger with Voice. Call regular phones from your PC and save big.
server.xml question on Connector Tag
Hello, While configuring tomcat can I do the following in the server.xml? In the current server.xml the following is present : snipped from server.xml !-- Define a non-SSL Coyote HTTP/1.1 Connector on the port specified during installation -- Connector port=5004 maxThreads=150 minSpareThreads=25 maxSpareThreads=75 enableLookups=false redirectPort=8443 acceptCount=100 debug=0 connectionTimeout=2 disableUploadTimeout=true / !-- Define a Coyote/JK2 AJP 1.3 Connector on port 8009 -- Connector port=8009 enableLookups=false redirectPort=8443 debug=0 protocol=AJP/1.3 / end snippet Can I merge them together in one Connector tag like following? Connector port=5004 maxThreads=150 protocol=AJP/1.3 minSpareThreads=25 maxSpareThreads=75 enableLookups=false redirectPort=8443 acceptCount=100 debug=0 connectionTimeout=2 disableUploadTimeout=true / We are using tomcat version 5.0.28 Thanks, Rumpa Giri - Celebrate Earth Day everyday! Discover 10 things you can do to help slow climate change. Yahoo! Earth Day
multiple service tags in server.xml
I am going through the the documentation on configuring tomcat, and it mentions that in the server.xml I can have multiple service tags with different connectors. Under what kind of circumstances, is this kind of configuration useful? having multiple service each with different connector port conifgured? Thanks, Rumpa - How low will we go? Check out Yahoo! Messengers low PC-to-Phone call rates.
Re: server.xml question on Connector Tag
I am trying to understand our existing configuration. On our production servers, we use IIS as webserver, and I think we disabled the http connector by putting the extra protocol attribute right in the http connector tag. Thats why so many attributes. I believe the intention was to create only the AJP connector, so doing the following should suffice right? !-- Define a Coyote/JK2 AJP 1.3 Connector on port 8009 -- Connector port=9005 enableLookups=false redirectPort=8443 debug=0 protocol=AJP/1.3 / When we have the http connector configured, we could do something like http://localhost:9005/someapp/index.jsp Now that we have only AJP connector the only way to get to tomcat is via the IIS? http://myserver.com/someapp/index.jsp? Thanks a lot, Rumpa Giri Mark Thomas [EMAIL PROTECTED] wrote: Rumpa Giri wrote: Hello, While configuring tomcat can I do the following in the server.xml? Probably not. What are you trying to achieve? What you have done is to create a AJP connector with a bunch of attributes it doesn't understand and will therefore ignore. Mark - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - Celebrate Earth Day everyday! Discover 10 things you can do to help slow climate change. Yahoo! Earth Day
connector maxProcessor attribute question
I had 2 questions regarding tomcat configuration: 1) We are currently trying to reconfigure our IIS to point to the tomcats as follows: We will have 4 web servers. And 3 app servers each running 4 tomcat instance each configured to only have AJP connectors. In total 12 tomcat instance running in total. And each web server is going to point to all the 12 tomcats for failover at the web server layer. Is there any downside to such a configuration? Earlier we had one web server point to only one app server running 4 instances. 2) In the !-- Define a Coyote/JK2 AJP 1.3 Connector on port 8009 -- Connector port=8009 enableLookups=false redirectPort=8443 debug=0 protocol=AJP/1.3 / I can define one more attribute named maxProcessors. A maxProcessors value of zero (0) signifies thatthe number of processors is unlimited. If not specified, this atttribute defaults to 20. In the documentation it mentions for the [maxProcessors] This should be set to a value that is greater than or equal to the maximum number of concurrent connections the remote web server can open to Tomcat simultaneously. In the configuration described above(1), since all the webservers are going to point to all the tomcat instances, we are thinking of putting [maxProcessors value of zero (0) ] in the AJP connector. Is there any disadvantage to that? Thanks, Rumpa Giri - Blab-away for as little as 1¢/min. Make PC-to-Phone Calls using Yahoo! Messenger with Voice.
Re: multiple service tags in server.xml
I am new to this forum, it won't happen again. Thanks for reminding me. Thanks again, Rumpa Giri Mark Thomas [EMAIL PROTECTED] wrote: When starting a new thread (ie sending a message to the list about a new topic) please do not reply to an existing message and change the subject line. To many of the list archiving services and mail clients used by list subscribers this makes your new message appear as part of the old thread. This makes it harder for other users to find relevant information when searching the lists. This is known as thread hijacking and is behavior that is frowned upon on this list. Frequent offenders will be removed from the list. It should also be noted that many list subscribers automatically ignore any messages that hijack another thread. The correct procedure is to create a new message with a new subject. This will start a new thread. Mark tomcat-user-owner - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - How low will we go? Check out Yahoo! Messengers low PC-to-Phone call rates.
multiple service tags in server.xml
I am going through the the documentation on configuring tomcat, and it mentions that in the server.xml I can have multiple service tags with different connectors. Under what kind of circumstances, is this kind of configuration useful? having multiple service each with different connector port conifgured? Thanks, Rumpa Giri - How low will we go? Check out Yahoo! Messengers low PC-to-Phone call rates.
Re: server.xml question on Connector Tag (ignore the question)
Ignore the question, found the answer reading docs. Our tomcat instances did not open the http port only uses the Coyote/JK2 AJP 1.3 Connector. Thanks, Rumpa Giri Rumpa Giri [EMAIL PROTECTED] wrote: Hello, While configuring tomcat can I do the following in the server.xml? In the current server.xml the following is present : snipped from server.xml during installation -- port=5004 maxThreads=150 minSpareThreads=25 maxSpareThreads=75 enableLookups=false redirectPort=8443 acceptCount=100 debug=0 connectionTimeout=2 disableUploadTimeout=true / enableLookups=false redirectPort=8443 debug=0 protocol=AJP/1.3 / end snippet Can I merge them together in one Connector tag like following? maxSpareThreads=75 enableLookups=false redirectPort=8443 acceptCount=100 debug=0 connectionTimeout=2 disableUploadTimeout=true / We are using tomcat version 5.0.28 Thanks, Rumpa Giri - Celebrate Earth Day everyday! Discover 10 things you can do to help slow climate change. Yahoo! Earth Day - How low will we go? Check out Yahoo! Messengers low PC-to-Phone call rates.