[OT] LogWatch filter for Tomcat
Has anyone written a Tomcat filter for the LogWatch log analysys tool? http://www2.logwatch.org:81/ - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Changing the JVM
At 11:58 PM 5/25/04 +0200, Jan-Pieter van den Heuvel wrote: I'm trying to change the JVM Tomcat is using to Sun's JVM. I've installed the J2SDK from Sun and have set the environment variable JAVA_HOME to /usr/javaj2sdk1.4.2_04 in /etc/profile. But after restarting Tomcat it is still using the JVM from the Free Software Foundation. How do i change this to use the JVM from Sun? Type env from the command line. If your system is still accessing the old /etc/profile, you may need to restart it. Another possibility is that there are still some variables pointing to the old jdk from another script. It may be a terrible idea, but I've been setting my variables to point to /usr/local/java/JDK. JDK is a link to my current version of the j2sdk. This makes changing very easy as I just have to delete the old link and create a new one. I hope this helps Cindy - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Read of HTTP Request POST parameters failed
I've got an intermittent error that's giving me a real headache. It happens at the first line of my servlet's doPost method (request.getParameter) and returns a java.lang.RuntimeException: Read of HTTP Request POST parameters failed: read content length I've seen this mentioned several times in the archive, but I haven't seen any solutions. I'm thinking that the content length is getting bashed somehow. I'd like to be able to diagnose the problem, but I'm not sure where to look. Any thoughts about how to diagnose or deal with this gracefully would be most appreciated! Cindy Here's the basic info about my system... Tomcat 4.1.24 Apache 1.3.29 mod_jk RedHat Linux All of the errors have occured with IE 6.0, but that may just be a coincidence. Here is the stacktrace... java.lang.RuntimeException: Read of HTTP Request POST parameters failed: read content length at org.apache.catalina.connector.HttpRequestBase.parseParameters(HttpRequestBase.java:685) at org.apache.catalina.connector.HttpRequestBase.getParameter(HttpRequestBase.java:718) at org.apache.catalina.connector.RequestFacade.getParameter(RequestFacade.java:171) at com.ca.balcy01.mpi.servlets.AppControllerServlet.doPost(AppControllerServlet.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 com.ca.balcy01.mpi.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:119) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:213) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:509) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2415) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643) at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:509) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at org.apache.ajp.tomcat4.Ajp13Processor.process(Ajp13Processor.java:466) at org.apache.ajp.tomcat4.Ajp13Processor.run(Ajp13Processor.java:585) at java.lang.Thread.run(Thread.java:534) - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Configure Apache for running Perl(cgi)
This list is for users of the Tomcat servlet container. While it may contain information about how Tomcat interacts with Apache, it is not an Apache web server list. Perhaps you are looking for this... http://httpd.apache.org/lists.html#http-users At 01:01 PM 3/18/04 -0500, Vivek Sivagiri wrote: How would this be incorrect for this message board? It is a question about configuring Apache for CGI scripts. - Original Message - From: Emerson Cargnin [EMAIL PROTECTED] To: Tomcat Users List [EMAIL PROTECTED] Sent: Thursday, March 18, 2004 1:02 PM Subject: Re: Configure Apache for running Perl(cgi) I think you are on the wrong list ;) Vivek Sivagiri wrote: Hi I need to run Perl scripts as CGI on Apache Tomcat. How do I need to configure the server? Thanks Vivek -- Emerson Cargnin Analista de Sistemas Setor de Desenvolvimento de Sistemas - TRE-SC tel : (048) - 251-3700 - Ramal 3181 - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: delaying context reload
At 08:00 PM 3/15/04 -0500, Christopher Schultz wrote: Run Plugin:c:\eudora\attach\Re delaying context reload.ems 0880.0002 Hi Chris, No, I'm not using Ant (yeah, yeah, I know I should...) This is my local development machine where I have WEB-INF/classes set as my output directory when I compile. This has worked fine, but as things have become more complex the server reload has started to beat the compile. I was just hoping to find a way to delay the reload a few seconds. Since none of the responses I recieved offered a solution, I guess I should assume that this is not possible with this version of Tomcat. BTW. I couldn't open your PGP signed message and had to read it in the archive. Cindy - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
delaying context reload
I like Tomcat's ability to reload a context when a change is made to one of my application's classes, but I'm having a problem with it reloading before the class has finished compiling. Is there a way to delay the reloading until all the files are ready? I'm using Tomcat 4.1.24 Thanks Cindy - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
response commit question
I just noticed that when I get the ServletResponse using pageContext.getResponse() in a custom tag, that the response seems to always be already committed. Is this always the case with tags or am I doing something wrong? I couldn't find any documentation that spells out the response-commit process. Could someone point me in the right direction? Thanks! Cindy - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: response commit question
At 09:07 AM 1/23/04 -0800, Cindy Ballreich wrote: I just noticed that when I get the ServletResponse using pageContext.getResponse() in a custom tag, that the response seems to always be already committed. Is this always the case with tags or am I doing something wrong? I couldn't find any documentation that spells out the response-commit process. Could someone point me in the right direction? I managed to answer my own question. The response is committed when something is written to the output page. I KNEW that! Cindy - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: problem with hyphen in hostname
Here's a little more info... The problem is that the hyphenated hostname being given to the browser (www.first-last.com) is being changed by the servlet and the hyphen is being removed (www.firstlast.com). (Of course that's not a real domain name but it illustrates what's happening more clearly.) Both domains are legitimate for this server. Both are recognized by Apache. The actual hostname (from /etc/hosts) is something completely different. All of this is taking place in the servlet. I haven't tested this in a jsp page. When I give response.sendRedirect() a relative url, I notice that the hostname is changing in the browser's location bar. Absolute urls are not a problem. In testing, I noticed that request.getRequestURL() and request.getServerName() also return the hostname without the hyphen. Further testing found that request.getHeader(host) returned the correctly hyphenated hostname given when the servlet was called by the browser. The workaround I'm using is to build an absolute url using the hostname from the header and redirect to that url instead of the relative url I'd been using. Is this expected behavior? It would seem to me that the hostname given in the user's browser's location bar should be being maintained throughout the session unless changed by a redirection. (Which of course is what's happening.) I don't understand why the redirection and the two request methods are dropping the hyphen. Am I doing something wrong? Thanks Cindy At 11:26 PM 3/11/03 -0800, Bill Barker wrote: I just tested this, and it works for me. My first guess would be that the Host tag is setup wrong. This is a bit strange, but it should be easy enough to debug. Try doing: $ telnet my-host.mycompany.com 80 ... GET /myapp/my-page-that-does-a-redirect HTTP/1.0 Host: my-host.mycompany.com Of course, substitute in real information for 'my-host', 'mycompany.com', and the URL. If the response is pointing to a different host, then you've likely got a configuration problem (but it should at least give you hints on where to look). Cindy Ballreich [EMAIL PROTECTED] wrote in message news:[EMAIL PROTECTED] I've recently noticed a problem that occurs when I access my site using a domain name with a hyphen in it. It seems that when I navigate using dispatcher.forward everything works fine. But when I use response.sendRedirect the hyphen is lost. Since we also own the same domain name without the hyphen, the redirection works, but a new session is created requiring the user to be re-authenticated. (The hyphenated domain name is preferred over the non-hyphenated one.) I've printed out request.getRequestURL() and the hyphen is also missing from this value. I've tried several of our other domain names (all legal for this server) and they all work properly. The only one with problems is the hyphenated one. Is this a problem with Tomcat or am I doing something wrong? Tomcat 4.1.18 Apache 1.3.26 mod_jk RedHat Linux 7.3 I'd be happy to provide any other info. Thanks Cindy - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
problem with hyphen in hostname
I've recently noticed a problem that occurs when I access my site using a domain name with a hyphen in it. It seems that when I navigate using dispatcher.forward everything works fine. But when I use response.sendRedirect the hyphen is lost. Since we also own the same domain name without the hyphen, the redirection works, but a new session is created requiring the user to be re-authenticated. (The hyphenated domain name is preferred over the non-hyphenated one.) I've printed out request.getRequestURL() and the hyphen is also missing from this value. I've tried several of our other domain names (all legal for this server) and they all work properly. The only one with problems is the hyphenated one. Is this a problem with Tomcat or am I doing something wrong? Tomcat 4.1.18 Apache 1.3.26 mod_jk RedHat Linux 7.3 I'd be happy to provide any other info. Thanks Cindy - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Special characters
At 03:59 PM 2/19/03 +0100, Carlos Godoy wrote: I have changed Jserv to Tomcat. I'm in trouble with special characters and I dont't know where is the problem. All the special characters that servlet writes to the web page are changed by a '?' character. I add the useUnicode characterEncoding parameters of mm.mysql.Driver. With this solution the resultsets of database selects shows specials characters correctly. But I still havent found the solution for strings that don't come from database and, with db columnames with special characters. Anybody can help me? Carlos, This is just a guess, but check the default encoding that your browser uses. I'll bet it's something other than unicode. My solution to this problem is to check for special characters and substitute the appropriate html entity or code before displaying the text. That way I don't need to worry so much about the user's browser not being able display the encoding. I found this page to be very useful... http://www.webenalysis.com/special-characters.asp I hope this helps. Cindy - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Custom Tag / JavaBean question
I have a custom tag that takes a collection as one of it's parameters. I'd like to be able to give the name of an attribute (a String) as the value and have the tag find the attribute from the pageContext. This doesn't seem like it should be too difficult. I have setters that look like this in my tag... protected Collection accessList; public void setAccessList(String accessList) { Object o = pageContext.findAttribute(accessList); if (o instanceof Collection) { this.accessList = (Collection)o; } } public void setAccessList(Collection accessList) { this.accessList = accessList; } ...and the tag looks like this on the jsp page... jsp:useBean id=accessList scope=request class=java.util.Vector / mpi:accessList id=access accessList=accessList ... ... /mpi:accessList ... but I keep getting errors like this... org.apache.jasper.JasperException: Unable to convert string 'accessList' to class java.util.Collection for attribute accessList: java.lang.IllegalArgumentException: Property Editor not registered with the PropertyEditorManager at org.apache.jasper.runtime.JspRuntimeLibrary.getValueFromPropertyEditorManager(JspRuntimeLibrary.java:749) If I use a run time value in the tag I don't get the error... jsp:useBean id=accessList scope=request class=java.util.Vector / mpi:accessList id=access accessList='%= accessList % ... ... /mpi:accessList So I have a workaround for the problem, but I'd still like to understand why the first example doesn't work when everything I've read says that it should. I'm using Tomcat 4.1.12 on NT 4.0 (development server) with j2sdk1.4.0_01. Thanks Cindy -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
RE: Custom Tag / JavaBean question
This is great! It's exactly the information I needed. Thanks! At 01:57 PM 10/15/02 -0400, Tim Moore wrote: The problem lies in the fact that you've overloaded the setter method for accessList. According to the JavaBeans spec, you can't do that; only one setter per property name is supported. So, first of all, you'll need to give the attributes two different names and make them both optional. For example: public void setAccessList(Collection accessList) { this.accessList = accessList; } public void setAccessListName(String accessListName) {...} But what's more, because of the way tag pooling works, you probably don't want to resolve the name in the setter method as you do below (see http://jakarta.apache.org/taglibs/guidelines.html) so you should have an accessListName field too, and write setAccessListName just like: public void setAccessListName(String accessListName) { this.accessListName = accessListName; } then, in doStartTag: Collection accessList = this.accessList; if (accessList == null) { accessList = (Collection) pageContext.findAttribute(accessListName); } Kind of a pain, but that's the only way to be fully compliant with the spec. -- Tim Moore / Blackboard Inc. / Software Engineer 1899 L Street, NW / 5th Floor / Washington, DC 20036 Phone 202-463-4860 ext. 258 / Fax 202-463-4863 -Original Message- From: Cindy Ballreich [mailto:[EMAIL PROTECTED]] Sent: Tuesday, October 15, 2002 1:13 PM To: [EMAIL PROTECTED] Subject: Custom Tag / JavaBean question I have a custom tag that takes a collection as one of it's parameters. I'd like to be able to give the name of an attribute (a String) as the value and have the tag find the attribute from the pageContext. This doesn't seem like it should be too difficult. I have setters that look like this in my tag... protected Collection accessList; public void setAccessList(String accessList) { Object o = pageContext.findAttribute(accessList); if (o instanceof Collection) { this.accessList = (Collection)o; } } public void setAccessList(Collection accessList) { this.accessList = accessList; } ...and the tag looks like this on the jsp page... jsp:useBean id=accessList scope=request class=java.util.Vector / mpi:accessList id=access accessList=accessList ... ... /mpi:accessList ... but I keep getting errors like this... org.apache.jasper.JasperException: Unable to convert string 'accessList' to class java.util.Collection for attribute accessList: java.lang.IllegalArgumentException: Property Editor not registered with the PropertyEditorManager at org.apache.jasper.runtime.JspRuntimeLibrary.getValueFromProper tyEditorManager(JspRuntimeLibrary.java:749) If I use a run time value in the tag I don't get the error... jsp:useBean id=accessList scope=request class=java.util.Vector / mpi:accessList id=access accessList='%= accessList % ... ... /mpi:accessList So I have a workaround for the problem, but I'd still like to understand why the first example doesn't work when everything I've read says that it should. I'm using Tomcat 4.1.12 on NT 4.0 (development server) with j2sdk1.4.0_01. Thanks Cindy -- To unsubscribe, e-mail: mailto:tomcat-user- [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] -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
Re: AW: Too Many Sessions!
At 08:51 AM 10/10/02 +0200, Ralph Einfeldt wrote: What makes you think that there is no user activity ? Because it's on a development system that is not accessible to other users and... Have you verified this in the access log ? yes, I checked the access log and there is no activity at all. Is it possible that there is a cronjob running that checks the availability of the site ? No. Again, this is a development system that has nothing like that running on it and is not available to things like that from outside. Unfortunately, this is beginning to look like one of those problems that doesn't happen while you're watching and now that I'm sitting on the logs, it isn't doing it. grrr For those that have asked, I am logging the sessionDestroyed messages. That's how I know that they're not being destroyed. Thanks for your input! Cindy -Ursprüngliche Nachricht- Von: Cindy Ballreich [mailto:[EMAIL PROTECTED]] Gesendet: Mittwoch, 9. Oktober 2002 20:29 An: [EMAIL PROTECTED] Betreff: Too Many Sessions! I'm using Tomcat 4.1.12 on a NT 4.0 system. I've been watching my logs and I'm noticing a lot of sessions being created for no apparent reason when there is no user activity on the system and no activity (as far as I can tell) in my servlet. Here's a sample from the logs... -- 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: AW: Too Many Sessions!
At 01:18 PM 10/10/02 -0400, Shapira, Yoav wrote: Hi, Just a curiosity question: does your session listener keep a count of sessions? And if so, how does that count compare to the manager webapp's count? That's an interesting idea. It's pretty easy to see from the logs how many sessions are being created and not destroyed. I don't have the manager webapp running right now, but I may give that a try. I've been thinking that maybe these aren't real sessions (otherwise they'd eventually time out, wouldn't they?) and this might be a good way to verify that. Cindy -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
Iteration tag question
Not directly a Tomcat question, but I hope not too far off topic. Let's say I have a collection of objects that I want to iterate through and display on a JSP page with a custom tag. The body content of the tag on the page formats the output as rows and elements of a table. Now, let's say I want to skip a few of the objects in the middle of the collection. How can I skip those objects without having the tag output the empty html tags from the page? I've tried all of the doAfterBody() return values I can think of with no success. (They either process the empty body content or stop processing altogether.) I assume that I'm going to have to play around with the BodyContent or PageContext, but I can't find any examples that show how to do this and it's not intuitive to me. Any suggestions or examples would be greatly appreciated. Cindy -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
Too Many Sessions!
I'm using Tomcat 4.1.12 on a NT 4.0 system. I've been watching my logs and I'm noticing a lot of sessions being created for no apparent reason when there is no user activity on the system and no activity (as far as I can tell) in my servlet. Here's a sample from the logs... 2002-10-09 11:05:15 SessionListener: sessionCreated('3A797C529EA64DFE2835FC163C808C74') 2002-10-09 11:06:15 SessionListener: sessionCreated('62DB4B6BBFD87BD901CD67925BB7BA95') 2002-10-09 11:07:15 SessionListener: sessionCreated('35769A4EDF71CA68BAA0B14F6B64348B') 2002-10-09 11:08:15 SessionListener: sessionCreated('D6A1C6EC234A30520747F2F5B09DD202') 2002-10-09 11:09:15 SessionListener: sessionCreated('8B0C9B610F981455C3FE6AA2F91E21E7') 2002-10-09 11:10:15 SessionListener: sessionCreated('A1E38AF2FD1205E17D50FF3076AF5321') 2002-10-09 11:11:16 SessionListener: sessionCreated('86F7A09B20EFE4543C616B06CEC466A5') 2002-10-09 11:12:16 SessionListener: sessionCreated('D412A5666498AC7AB6BF399528ECEAE3') 2002-10-09 11:13:16 SessionListener: sessionCreated('C0BE7ED4A39351037FFD3195F2FF') 2002-10-09 11:14:16 SessionListener: sessionCreated('3A0636F5D4D9792046D34A93B73C0ACC') 2002-10-09 11:15:16 SessionListener: sessionCreated('E88FF2298D7B759935645E9C1C42DC12') 2002-10-09 11:16:16 SessionListener: sessionCreated('F7AC12D14074EA64011E68B6F172D11E') 2002-10-09 11:17:16 SessionListener: sessionCreated('E92ECABF368D493D153C47C226FF866F') 2002-10-09 11:18:16 SessionListener: sessionCreated('E9F98E0A3EA854651E1B0D4CCF733FC2') 2002-10-09 11:19:16 SessionListener: sessionCreated('F801FDE7AEEBEE752557FB3643508588') 2002-10-09 11:20:16 SessionListener: sessionCreated('97C59E7E75185C5827FA884FA11F61FC') 2002-10-09 11:21:16 SessionListener: sessionCreated('EF50BAF04FE94D93A24F5CD4520BC613') So you can see that about once per minute a new session is being created. I can't see (from the listeners) that any of these sessions are ever destroyed. Can anyone give me an idea of why this is happening and if it's part of a normal Tomcat process, or might be the result of something stupid I might be doing in my servlet. I'd be happy to provide more info. Thanks Cindy -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
forwarding to a page anchor
I'd like to forward to an anchor a name=anchorName in a jsp page, but I keep getting a 404 error when I try to do it. It works from the browser, but not from the server. Is it possible to forward to a page anchor like this? RequestDispatcher rd = request.getRequestDispatcher(/page.jsp#anchorName); rd.forward(request, response); Thanks Cindy -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
dynamic page building question
I'd like to make a page that will allow users to dynamically add and modify page elements by clicking on form buttons on the page. I'd like these changes to automatically appear on the page. The simplest way to do this would be to use javascript and document.createElement() to apply these changes using the DOM. Unfortunately, this doesn't work with all browsers. I think I can probably duplicate this behavior with servlets, but before I embark on this, I'm wondering if anyone could suggest an existing servlet or jsp solution that might give me a head start? Thanks Cindy -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
Re: Bringing up DBCP pooling again
I had this same problem and would love to hear a solution. (Sorry to post a me too message, but I've seen several versions of this question go unanswered. I guess it's a little off-topic, but there isn't a DBCP-user list. Here's to hoping a DBCP guru is listening.) Cindy At 04:37 PM 9/5/02 -0400, Rick Reumann wrote: Just bringing up a question I had a while ago since I know how lists go and it's easy to miss/delete messages over time (especially as busy a list as this is:) Anyway... Was wondering if anyone had any further input in the apparent problem using DBCP pooling with Tomcat. If for some reason the connections are killed (whether on purpose or if a DB goes down and comes back up), any applications that use the DBCP pool break and give the error: java.sql.SQLException: ORA-01012: not logged on I even made sure to provide a validation query in my ResourceParams. Has anyone else encountered this? Is there a work around or some other pool that this will not happen with? Thanks for any help. -- Rick mailto:[EMAIL PROTECTED] -- 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: going crazy with DBCP
At 11:44 AM 7/10/02 -0700, Clay Graham wrote: this is confusing because first of all I read on the list that needed to create a directory under my webapps called /DBTest (for my example) I don't really see how you are doing you're path to jdbc/Support, did you create a directory? This is what was causing my initial failure (a detail not in the DBCP guide), secondly I was watching the DBTest logs at startup and it complained that there was no web.xml or WEB-INF dir for the context, do you have a web.xml file that you put in this directory? Let me first put in a caveat that I ain't no expert and while I *think* this is true, it may not be. ;-) The Context tag of your application should point to some real directory where your application resides. My application is called Applications. (real original, huh?) Here is my Context tag... Context path=/applications docBase=applications/web debug=99 reloadable=true This is pointing to a directory at $CATALINA_HOME/webapps/application/web which is where all of my jsps live. When I enter the url http://localhost:8080/applications/ this is where it goes. Context path=/DBTest docBase=DBTest debug=5 reloadable=true crossContext=true So the Context tag you have is pointing to the directory $CATALINA_HOME/webapps/DBTest. If that doesn't exist it would explain at least some of your errors. It sounds like your application lives in $CATALINA_HOME/webapps/test so you could try something like this in your server.xml... Context path=/DBTest docBase=test debug=5 reloadable=true crossContext=true The jdbc/Support thing is a mistake on my part. That should read jdbc/devdb. Support is the real name of my MySQL database. I was calling it devdb because I thought it would make more sense and obviously I've just muddied the waters more than they were. Sorry about that. The WEB-INF directory lives under the application path and web.xml lives inside of WEB-INF. So on my system that would be $CATALINA_HOME/webapps/applications/WEB-INF/web.xml. Again, if your context path doesn't exist, those woun't be found either. I hope this is correct and that it helps clarify things for you. Cindy -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
RE: plain MySQL DataSource in Tomcat (i know, damn topic)
Hi Clay, It's a small net. I hope you are well!! I haven't tried using Struts yet, but I've been thinking about checking it out. I did try the JNDI/DBCP method described at the URL you posted and it does work and it seemed to be pooling correctly. However, the connection times out after a while which is a real pain. I haven't had time to figure out what's going on with that and work out fix for it yet. Also, DBCP seems a little immature to me at this point, so I'll probably wait a little while and try that again. I also tried the JNDI/Tyrex setup and was able to get a connection, but I couldn't tell if it was pooling properly and I ran into some bugs with Tyrex so I abandoned that approach. I've been using DbConnectionBroker using a set up similar to that described in Bergsten's Java Server Pages book. The connection is stable and the pooling is working well. I don't know how much of a load this will handle, but for the time being it's allowing me to concentrate on other things. I'd much rather be using JNDI, but I think that this is the most stable approach going right now. I hope this is at least a little bit helpful. Hang in there Cindy (sorry for the top post) At 08:33 AM 7/2/02 -0700, Clay Graham wrote: Are alot of people having problems with the mySql drivers or am I being myopic... i tried to do this with STRUTS datasource pooling and had the following issues... I am asking a question because I am very suprised at an unexepected behaviour and thought that someone may have a hint. I have linux 7.1 tomcat 404 ant struts 102 working and they have been tested, and I am taking the next step by starting to connect to my MySql database, all goodness. So my first step was to add the datasource in my struts-config.xml as follows: data-sources data-source set-property property=autoCommit value=false/ set-property property=description value=The Test Datasource/ set-property property=driverClass value=org.gjt.mm.mysql.Driver/ set-property property=maxCount value=4/ set-property property=minCount value=2/ set-property property=password value=/ set-property property=url value=jdbc:mysql://localhost/test/ set-property property=user value=root/ /data-source /data-sources the next step was to add the mm.mysql-2.0.6.1.jar to my project's WEB-INF/lib directory, the standard approach [clay@meis test]$ jar -tvf test.war|grep mm.mysql 390333 Sun Jun 30 16:20:20 PDT 2002 WEB-INF/lib/mm.mysql-2.0.6.1.jar I am sure this JAR has the mysql driver in it: [clay@meis test]$ jar -tvf web/WEB-INF/lib/mm.mysql-2.0.6.1.jar |grep Driver 15163 Sat Jun 16 09:20:28 PDT 2001 mm.mysql-2.0.6/org/gjt/mm/mysql/Driver.java 5443 Sat Jun 16 09:20:28 PDT 2001 mm.mysql-2.0.6/org/gjt/mm/mysql/Driver.class so when I install the application using ant the following error occurs: - Root Cause - java.sql.SQLException: open: java.lang.ClassNotFoundException: org.gjt.mm.mysql.Driver I have even put mm.mysql-2.0.6.1.jar in tomcat/common/lib and it does not find the driver. I am asking this question on this list because it happens in struts-config.xml so now I am looking into going over to the JNDI approach using the guide at: http://marc.theaimsgroup.com/?l=tomcat-userm=102225547106556w=2 but I am interested if there advantages to the JNDO pool ober the STRUTS pool if I go to all this trouble? this seems like something alot people would care about. Clay -Original Message- From: Marc Logemann [SMTP:[EMAIL PROTECTED]] Sent: Tuesday, July 02, 2002 5:35 AM To:[EMAIL PROTECTED] Subject: plain MySQL DataSource in Tomcat (i know, damn topic) Hi, i am one of the guys trying to get a valid MysqlDataSource reference via JNDI. But i am getting crazy without knowing where the problem is (perhaps the reason is, i cant debug JNDI too good, cause i am no expert in it..) i have the following: server.xml -- context Resource name=jdbc/TestDB auth=Cotainer type=javax.sql.DataSource/ ResourceParams name=jdbc/TestDB parameter namefactory/name valueorg.gjt.mm.mysql.jdbc2.optional.MysqlDataSourceFactory/va lue /parameter parameter nameuser/namevalueroot/value /parameter parameter namepassword/namevalue/value /parameter parameter namedriverClassName/namevalueorg.gjt.mm.mysql.jdbc2.optional.Mysql DataSource/value/parameter parameter namedriverName/namevaluejdbc:mysql://localhost/maxbahr/value /parameter /ResourceParams /context web.xml --- web-app resource-ref descriptionDataSource MySQL/description res-ref-namejdbc/TestDB/res-ref-name res-type javax.sql.DataSource/res-type res-authContainer/res-auth /resource-ref /web-app i placed the mysql mm jar into commons/lib When
Re: Book recommendation
I can't speak to the others, but I really didn't like JSP, Servlets, and Mysql. It reads nicely, but the examples are full of really basic errors. Be sure to check out the reader reviews on Amazon for any book you're interested in. They can be very helpful. At 10:26 AM 6/21/02 -0700, [EMAIL PROTECTED] wrote: Any recommendation for a good book that covers Tomcat and other related open source technologies? More from an application developers point of view as to how various components fit together rather than sysadmin details or exhaustive details about any one particular thing (say JBoss, Servlet etc). Some books that came up on Internet search were... 1) MySQL and JSP Web Applications: Data-Driven Programming Using Tomcat and MySQL By James Turner 2) Apache Jakarta-Tomcat by James Goodwill 3) JSP, Servlets, and Mysql by Dave Harms 4) Professional Java Server Programming (many authors) Any other ones out there and which one would you recommend? das -- 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: Connection pooling doesn't work for me ... Help !!
At 06:53 AM 6/14/02 +0200, Nikola Milutinovic wrote: Yes, and it should work - but it doesn't. For most of us, DataSource is null and nothing apperas in the logs. Question: where is your JDBC driver currently located? I got the same result until I moved it from WEB_INF/lib/ to $CATALINA_HOME/common/lib/ -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
[offtopic] IDE for Tomcat?
I was wondering what kind of IDEs people were using for Tomcat development? Any recomendations for someone who's been developing on linux from a NT desktop via ssh? (vi has it's charms, but there's got to be a better way!) Anything to avoid? Thanks Cindy -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
Re: Connection Pooling Solution
At 03:43 PM 5/30/02 -0400, Rick Fincher wrote: Because the MySql driver is a javax.sql.DataSource and that's what gets passed back by the pool, making the pool transparent (no pun intended). That way you can later change the driver or the pooling details without changing your code (assuming the SQL dialect still works). Rick Thanks for replying Rick, I may have run up against a gap in my java knowledge, but I don't understand your answer. I guess I don't see how javax.sql.DataSource can get (and return) connections from the pool. It doesn't seem like it would have the ability to do that. Isn't BasicDataSource just an implementation of DataSource? Is DBCP pooling DataSources?? Am I completely clueless here? Also, since the driver is being called from the resource factory (using BasicDataSourceFactory), I'm not sure I understand why using BasicDataSource to get connections would affect the driver at all? Thanks again! Cindy -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
Re: Connection Pooling Solution
fillup, At 01:28 PM 5/30/02 -0700, Phillip Morelock wrote: javax.sql.DataSource itself is not returning Connections. DataSource is an interface -- what this means in practice is that some random class (in this case, BasicDataSource) is implementing that interface. You're actually asking that class for a Connection, and you know that you can call any method on it that is defined in javax.sql.DataSource because it implements that interface. So while your code might hypothetically look like (partially pseudo-code): BasicDataSource bds = Somewhere.getDataSourceObject(); Connection conn = bds.getConnection() ; it's far more flexible to do this: DataSource ds = Somewhere.getDataSourceObject(); Connection conn = ds.getConnection(); If you get another database connection pool (say, from MS or Oracle or something) and you want to change the actual class for the DataSource (say, now it's MSSQLServerDataSource or whatever) -- as long as that next class still implements the javax.sql.DataSource interface, you can still work with it without changing any of your code, just the config file that tells Tomcat which DataSource class to use. So all you would do if you have to change databases or driver classes, is change web.xml or server.xml or wherever you have the driver / data source class configured, and all your code can remain using DataSource as the type of the object, no changes from BasicDataSource to MSSQLServerDataSource all over the place. Is this clear? Yes, much more so. Thanks! I was misunderstanding the whole relationship. I spent some time going over the source for BasicDataSource and I think I'm much clearer on the whole thing. Cindy -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
RE: Connection Pooling Solution
What do you guys think of DBCP? Any specific comments on performance or functionality? Do you think it's ready for a production project? Should I use it over DbConnectionBroker (obviously not a JNDI solution, but it works pretty well). I'd love to hear a review from someone who's been using DBCP. Cindy On Sun, 26 May 2002, Jacob Kjome wrote: See... http://marc.theaimsgroup.com/?l=tomcat-userm=102230335008606w=2 and http://marc.theaimsgroup.com/?l=tomcat-userm=102230398708809w=2 which both reference... http://marc.theaimsgroup.com/?l=tomcat-userm=102225547106556w=2 it provides a pretty definitive and working solution for using DBCP Jake At 11:38 AM 5/26/2002 +0100, you wrote: You probably only downloaded the source, try a nightly build http://jakarta.apache.org/builds/jakarta-commons/nightly/commons-dbcp/ And could you keep your mails to the list instead of direct? That way (a) someone else might answer first and (b) the answer will end up in the mail archives. Thanks Les -Original Message- From: Rick Fincher [mailto:[EMAIL PROTECTED]] Sent: 24 May 2002 18:37 To: [EMAIL PROTECTED] Subject: Re: Connection Pooling Solution Thanks a million Les, This is very helpful. Quick question: I didn't see a jar in th DBCP nightly build after I downloaded it, how do you build this thing? Thanks again, Rick - Original Message - Hi all, Having felt the pain in getting connection pooling to work with TC 4.0.3 I've knocked up a simple howto. This is for TC 4.0.3 JDK 1.4, mySQL 4.0 Alpha so YMMV. Enjoy, Les I Downloaded: Tomcat 4.0.3 LE JDK 1.4 Build mySQL4.0.1 alpha mm.mysql 2.0.14 Jakarta-Commons projects DBCP Nightly Build 20020523 collections 2.0 pool1.0 Install mm.mysql, DBCP, collections and pool jars into CATALINA_HOME/common/lib In mySQL, I created a simple DB call javatest with a single table (testdata) and a new user (javauser) with the password javadude. I created a new Context for my test web app, here's the full server.xml entry: Context path=/DBTest docBase=DBTest debug=5 reloadable=true crossContext=true Logger className=org.apache.catalina.logger.FileLogger prefix=localhost_DBTest_log. suffix=.txt timestamp=true/ Resource name=jdbc/TestDB auth=Container type=javax.sql.DataSource/ ResourceParams name=jdbc/TestDB parameter namefactory/name valueorg.apache.commons.dbcp.BasicDataSourceFactory/value /parameter parameternamemaxActive/namevalue100/value/parameter parameternamemaxIdle/namevalue3/value/parameter parameternamemaxWait/namevalue100/value/parameter parameternameusername/namevaluejavauser/value/parameter parameternamepassword/namevaluejavadude/value/parameter parameter namedriverClassName/namevalueorg.gjt.mm.mysql.Driver/value /parameter parameter nameurl/namevaluejdbc:mysql://localhost:3306/javatest/value /parameter /ResourceParams /Context And of course, you'll need this in your web.xml ?xml version=1.0 encoding=ISO-8859-1? !DOCTYPE web-app PUBLIC -//Sun Microsystems, Inc.//DTD Web Application 2.3//EN http://java.sun.com/dtd/web-app_2_3.dtd; web-app descriptionmySQL Test App/description resource-ref descriptionDB Connection/description res-ref-namejdbc/TestDB/res-ref-name res-typejavax.sql.DataSource/res-type res-authContainer/res-auth /resource-ref /web-app And a snippet of Java to use this:- try{ Context ctx = new InitialContext(); if(ctx == null ) throw new Exception(Boom - No Context); DataSource ds = (DataSource)ctx.lookup(java:comp/env/jdbc/TestDB); if (ds != null) { Connection conn = ds.getConnection(); if(conn != null) { foo = Got Connection +conn.toString(); Statement stmt = conn.createStatement(); ResultSet rst = stmt.executeQuery(select id, foo, bar from testdata); if(rst.next()) { foo=rst.getString(2); bar=rst.getInt(3); } conn.close(); } } }catch(Exception e) { e.printStackTrace(); } That's all folks.Hope this is of use to you. -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For
RE: strange shut down problem - solution?
At 05:45 PM 5/21/02 -0700, Subir Sengupta wrote: This is a documented bug. Apparently if there is a non Daemon thread running Tomcat won't shut down cleanly. http://nagoya.apache.org/bugzilla/show_bug.cgi?id=8700 Hmmm. That sure sounds like what's happening on my system. I guess catalina.sh is called as daemon in the init.d script, but it's not starting the threads as deamon. Is this what's happening? At 10:13 AM 5/22/02 +0200, Mats Nyberg wrote: and a guru told me to [tim-mn@spiderman src]$ ps -Af|awk '{ if ($3 == 1) { print ; } }' |grep $JAVA_HOME|awk '{ print $2}' This is basically the solution that I used. I added this line to the start section of my init.d script... ps -Af | awk '{ if ($3 == 1) { print ; } }' | grep tomcat | awk '{ print $2}' /var/run/tomcat4.pid And these lines to the stop section... if [ -s /var/run/tomcat4.pid ] ; then PID=`cat /var/run/tomcat4.pid` kill $PID fi This works, but it seems like a horrible kludge to me. Does anyone have any better solutions? Cindy -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
strange shut down problem
I've got Tomcat 4.0.3 on Redhat 7.1 and when I start it I get the usual batch of 20-50 threads. When I shut tomcat down (using shutdown.sh) there are about a dozen threads that don't go away. Tomcat is definately not running (at least it's not accepting requests), but the threads are still there. I'm not seeing any errors, but I'm not sure where to look. I've done some web searches of the archives and haven't found anything, but I'm hoping that someone will recognize this problem and point me in the right direction. Thanks!! Cindy -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
the ups and downs of JNDI connection pooling
After reading every message I could find in the archives (and marveling at the blood, sweat, and tears shed over this subject) I believe that I've finally got JNDI connection pooling working with the Tyrex software!!! My joy was boundless until I started having problems with Tyrex itself. (For example, NullPointerExceptions when Connection.setAutoCommit() is called.) The development archives seem to confirm this and other problems and talk about DBCP as the pooling software of the future. I found the DBCP pages (at http://jakarta.apache.org/commons/index.html), but it appears to be a log ways from being ready for a production environment. Are there are reliable ways to do connection pooling with JNDI or should I just go back to DbConnectionBroker and be happy with that? Thanks Cindy -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
JNDI: datasource is null
I know there's been a lot of JNDI/database type questions lately, but I hope you guys won't mind one more. I'm trying to set up a configuration similar to the one in the How-To. In my servlet I have the following lines... Context initCtx = new InitialContext(); Context envCtx = (Context) initCtx.lookup(java:comp/env); DataSource ds = (DataSource) envCtx.lookup(jdbc/Support); Connection conn = ds.getConnection(); The problem is that the envCtx.lookup is returning null so ds.getConnection() throws a NullPointerException every time. I'm not getting any other errors. I have been able to access this database with these parameters from a servlet (without JNDI) so I know that it *can* work. I'm sure I'm missing something simple, but I can't figure out what it is. I've searched the archives and have seen this problem described, but no solution. I've tried changing driverName to url as has been suggested, but that made no difference. I'd appreciate any help in getting this working. Please let me know if more info is needed. (Config info is below.) Cindy Here's the Resource from my server.xml. This is inside my applications context... Resource name=jdbc/Support auth=Container type=javax.sql.DataSource/ ResourceParams name=jdbc/Support parameter nameuser/name valuedevuser/value /parameter parameter namepassword/name valuedevpass/value /parameter parameter namedriverClassName/name valueorg.gjt.mm.mysql.Driver/value /parameter parameter namedriverName/name valuejdbc:mysql://localhost/Support/value /parameter /ResourceParams And here's the resource-ref from my application's web.xml... resource-ref res-ref-namejdbc/Support/res-ref-name res-typejavax.sql.DataSource/res-type res-authContainer/res-auth /resource-ref -- To unsubscribe: mailto:[EMAIL PROTECTED] For additional commands: mailto:[EMAIL PROTECTED] Troubles with the list: mailto:[EMAIL PROTECTED]
Re: JNDI: datasource is null - solved
Well, it just goes to show that as soon as you post something to a public forum you'll stumble across the answer. It turned out that I needed to move my mm-mysql driver from my application's WEB-INF/lib to $CATALINA_HOME/common/lib. As soon as I did this (and restarted tomcat) it started working. D'oh! I'm sure I'll have other questions, but for now this one is solved. Thanks Cindy -- To unsubscribe: mailto:[EMAIL PROTECTED] For additional commands: mailto:[EMAIL PROTECTED] Troubles with the list: mailto:[EMAIL PROTECTED]
REPOST: mod_jk.log question
I'm using mod_jk with Tomcat 4.0.1 and Apache 1.3.19 on a Redhat 7.0 system. Looking at my mod_jk.log file, it appears that mod_jk is trying to map every request that comes to my server, regardless of whether it should be handled by Tomcat or Apache. This seems very inefficient to me and I'm wondering if I have a configuration problem somewhere. Otherwise everything seems to be working correctly and all pages (jsp and otherwise) are being served correctly. Perhaps this is normal and I just need to change my log level and ignore it. (log level is currently warn.) I'd appreciate some input. mod_jk.log entry of a request that should be (and is) handled by Apache... [Wed Mar 20 10:07:35 2002] [jk_uri_worker_map.c (351)]: Into jk_uri_worker_map_t::map_uri_to_worker [Wed Mar 20 10:07:35 2002] [jk_uri_worker_map.c (368)]: Attempting to map URI '/images/logo_level2.gif' [Wed Mar 20 10:07:35 2002] [jk_uri_worker_map.c (456)]: jk_uri_worker_map_t::map_uri_to_worker, done without a match Thanks! Cindy -- To unsubscribe: mailto:[EMAIL PROTECTED] For additional commands: mailto:[EMAIL PROTECTED] Troubles with the list: mailto:[EMAIL PROTECTED]
Re: REPOST: mod_jk.log question
Thanks for your reply! Here is my mod_jk.conf which is referenced from httpd.conf... IfModule !mod_jk.c LoadModule jk_module libexec/mod_jk.so /IfModule JkWorkersFile /usr/local/java/catalina/conf/jk/workers.properties JkLogFile /usr/local/java/catalina/logs/mod_jk.log JkLogLevel warn Alias /applications/ /usr/local/java/catalina/webapps/applications JkMount /applications/* ajp13 JkMount /applications/*.jsp ajp13 I do have an access log set up for Tomcat and it only shows requests for stuff inside the applications directory. It's ignoring anything requested from anywhere else. Likewise, Apache's access_log shows the request for the jsp page (which makes sense since it was called on port 80), but nothing else. All this is as I would expect. However, mod_jk.log is showing an entry for every single request that comes to the server, including Nimda probes!! I'm willing to ignore it if everything else is ok, but I'm concerned that I've got some sort of configuration error somewhere that's going to bite me later on. Thanks again! Cindy At 12:25 PM 3/22/02 -0600, Jeff Larsen wrote: It all depends on the relevant Alias and JkMount directives in your Apache configuration. You'll need to post them in order for us to make any useful analysis. Here's an example of my config where Apache serves the static content. The servlet context is /online. # tell Apache where my app files are Alias /online /www/tomcat/webapps/online JkMount /online/*.jsp ajp13 # Tomcat handles all JSP's # mount only URL's SPECIFICALLY mapped to servlet, all # others (like /online/images) are handled by Apache directly JkMount /online/login ajp13 JkMount /online/order ajp13 Also, look at the Tomcat access log (if you have one configured). Compare it to the access log for Apache. If you have things set up right, you will see the static content requests in the Apache log, but not the Tomcat access log. Jeff - Original Message - From: Cindy Ballreich [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Friday, March 22, 2002 11:04 AM Subject: REPOST: mod_jk.log question I'm using mod_jk with Tomcat 4.0.1 and Apache 1.3.19 on a Redhat 7.0 system. Looking at my mod_jk.log file, it appears that mod_jk is trying to map every request that comes to my server, regardless of whether it should be handled by Tomcat or Apache. This seems very inefficient to me and I'm wondering if I have a configuration problem somewhere. Otherwise everything seems to be working correctly and all pages (jsp and otherwise) are being served correctly. Perhaps this is normal and I just need to change my log level and ignore it. (log level is currently warn.) I'd appreciate some input. mod_jk.log entry of a request that should be (and is) handled by Apache... [Wed Mar 20 10:07:35 2002] [jk_uri_worker_map.c (351)]: Into jk_uri_worker_map_t::map_uri_to_worker [Wed Mar 20 10:07:35 2002] [jk_uri_worker_map.c (368)]: Attempting to map URI '/images/logo_level2.gif' [Wed Mar 20 10:07:35 2002] [jk_uri_worker_map.c (456)]: jk_uri_worker_map_t::map_uri_to_worker, done without a match Thanks! Cindy -- To unsubscribe: mailto:[EMAIL PROTECTED] For additional commands: mailto:[EMAIL PROTECTED] Troubles with the list: mailto:[EMAIL PROTECTED] -- To unsubscribe: mailto:[EMAIL PROTECTED] For additional commands: mailto:[EMAIL PROTECTED] Troubles with the list: mailto:[EMAIL PROTECTED] -- To unsubscribe: mailto:[EMAIL PROTECTED] For additional commands: mailto:[EMAIL PROTECTED] Troubles with the list: mailto:[EMAIL PROTECTED]
Re: REPOST: mod_jk.log question
Jeff, As far as I can tell, all requests (servlet or non-servlet) are being served properly. I tried changing the log levels in the configuration. info - nothing is being logged at all as far as I can see. warn - tons of logging, including non-servlet items debug - same as warn with some more spcific detail. I'm starting to wonder if there might be a problem with my mod_jk.so. As I recall, it's from tomcat 3.3 which I compiled from source. (The AJP documentation said that 3.3 was the version to use.) Do you know which version of mod_jk.so you are using? Cindy At 02:11 PM 3/22/02 -0600, Jeff Larsen wrote: I don't see anything in your setup that looks wrong. Just for kicks, I set my test server's log level for mod_jk to warn and I didn't see any messages relating to non-servlet document requests. Something is fishy on your system. Are non-servlet requests being properly returned to the browser? Your mod_jk log certainly makes it seem like '/images/logo_level2.gif' is being mapped into the servlet name space. - Original Message - From: Cindy Ballreich [EMAIL PROTECTED] To: Tomcat Users List [EMAIL PROTECTED] Sent: Friday, March 22, 2002 1:46 PM Subject: Re: REPOST: mod_jk.log question Thanks for your reply! Here is my mod_jk.conf which is referenced from httpd.conf... IfModule !mod_jk.c LoadModule jk_module libexec/mod_jk.so /IfModule JkWorkersFile /usr/local/java/catalina/conf/jk/workers.properties JkLogFile /usr/local/java/catalina/logs/mod_jk.log JkLogLevel warn Alias /applications/ /usr/local/java/catalina/webapps/applications JkMount /applications/* ajp13 JkMount /applications/*.jsp ajp13 I do have an access log set up for Tomcat and it only shows requests for stuff inside the applications directory. It's ignoring anything requested from anywhere else. Likewise, Apache's access_log shows the request for the jsp page (which makes sense since it was called on port 80), but nothing else. All this is as I would expect. However, mod_jk.log is showing an entry for every single request that comes to the server, including Nimda probes!! I'm willing to ignore it if everything else is ok, but I'm concerned that I've got some sort of configuration error somewhere that's going to bite me later on. Thanks again! Cindy At 12:25 PM 3/22/02 -0600, Jeff Larsen wrote: It all depends on the relevant Alias and JkMount directives in your Apache configuration. You'll need to post them in order for us to make any useful analysis. Here's an example of my config where Apache serves the static content. The servlet context is /online. # tell Apache where my app files are Alias /online /www/tomcat/webapps/online JkMount /online/*.jsp ajp13 # Tomcat handles all JSP's # mount only URL's SPECIFICALLY mapped to servlet, all # others (like /online/images) are handled by Apache directly JkMount /online/login ajp13 JkMount /online/order ajp13 Also, look at the Tomcat access log (if you have one configured). Compare it to the access log for Apache. If you have things set up right, you will see the static content requests in the Apache log, but not the Tomcat access log. Jeff - Original Message - From: Cindy Ballreich [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Friday, March 22, 2002 11:04 AM Subject: REPOST: mod_jk.log question I'm using mod_jk with Tomcat 4.0.1 and Apache 1.3.19 on a Redhat 7.0 system. Looking at my mod_jk.log file, it appears that mod_jk is trying to map every request that comes to my server, regardless of whether it should be handled by Tomcat or Apache. This seems very inefficient to me and I'm wondering if I have a configuration problem somewhere. Otherwise everything seems to be working correctly and all pages (jsp and otherwise) are being served correctly. Perhaps this is normal and I just need to change my log level and ignore it. (log level is currently warn.) I'd appreciate some input. mod_jk.log entry of a request that should be (and is) handled by Apache... [Wed Mar 20 10:07:35 2002] [jk_uri_worker_map.c (351)]: Into jk_uri_worker_map_t::map_uri_to_worker [Wed Mar 20 10:07:35 2002] [jk_uri_worker_map.c (368)]: Attempting to map URI '/images/logo_level2.gif' [Wed Mar 20 10:07:35 2002] [jk_uri_worker_map.c (456)]: jk_uri_worker_map_t::map_uri_to_worker, done without a match Thanks! Cindy -- To unsubscribe: mailto:[EMAIL PROTECTED] For additional commands: mailto:[EMAIL PROTECTED] Troubles with the list: mailto:[EMAIL PROTECTED] -- To unsubscribe: mailto:[EMAIL PROTECTED] For additional commands: mailto:[EMAIL PROTECTED] Troubles with the list: mailto:[EMAIL PROTECTED] -- To unsubscribe: mailto:[EMAIL PROTECTED] For additional commands: mailto:[EMAIL PROTECTED] Troubles with the list: mailto:[EMAIL PROTECTED] -- To unsubscribe: mailto:[EMAIL PROTECTED] For additional commands: mailto:[EMAIL PROTECTED] Troubles with the list: mailto
mod_jk.log question
I'm using mod_jk with Tomcat 4.0.1 and Apache 1.3.19 on a Redhat 7.0 system. Looking at my mod_jk.log file, it appears that mod_jk is trying to map every request that comes to my server, regardless of whether it should be handled by Tomcat or Apache. This seems very inefficient to me and I'm wondering if I have a configuration problem somewhere. Otherwise everything seems to be working correctly and all pages (jsp and otherwise) are being served correctly. Perhaps this is normal and I just need to change my log level and ignore it. (log level is currently warn.) I'd appreciate some input. mod_jk.log entry of a request that should be (and is) handled by Apache... [Wed Mar 20 10:07:35 2002] [jk_uri_worker_map.c (351)]: Into jk_uri_worker_map_t::map_uri_to_worker [Wed Mar 20 10:07:35 2002] [jk_uri_worker_map.c (368)]: Attempting to map URI '/images/logo_level2.gif' [Wed Mar 20 10:07:35 2002] [jk_uri_worker_map.c (456)]: jk_uri_worker_map_t::map_uri_to_worker, done without a match Thanks! Cindy -- To unsubscribe: mailto:[EMAIL PROTECTED] For additional commands: mailto:[EMAIL PROTECTED] Troubles with the list: mailto:[EMAIL PROTECTED]
RE: java.util.zip.ZipException: Permission denied
At 02:00 PM 2/18/02 -0500, Delage, Dave wrote: I got this message once when I had two different versions of a jar file in two different locations. It took forever to debug. (The jar file was part of the Informix JDBC driver package.) Once I deleted the wrong version, the ZipException went away. Hope it helps. It certianly did! I dug around and found a duplicate jar file. Removing it stopped the ZipException I was getting in catalina.out. However, I'm still getting the ZipException in my application log (see below). As I mentioned earlier, this doesn't seem to affect the functioning of the application, but it is very strange and I wish I knew why I was getting it. There doesn't seem to be anything wrong with the zip files themselves. Thanks!! Cindy From my application log... 2002-02-15 15:13:08 ContextConfig[/applications]: Scanning web.xml tag libraries 2002-02-15 15:13:08 ContextConfig[/applications]: URI='/mpitaglib', ResourcePath='/WEB-INF/tlds/mpitaglib_1_0.tld' 2002-02-15 15:13:08 ContextConfig[/applications]: tldConfigJar(/WEB-INF/tlds/mpitaglib_1_0.tld): java.util.zip.ZipException: error in opening zip file 2002-02-15 15:13:08 ContextConfig[/applications]: URI='/orataglib', ResourcePath='/WEB-INF/tlds/orataglib_1_0_3.tld' 2002-02-15 15:13:08 ContextConfig[/applications]: tldConfigJar(/WEB-INF/tlds/orataglib_1_0_3.tld): java.util.zip.ZipException: error in opening zip file 2002-02-15 15:13:08 ContextConfig[/applications]: Scanning library JAR files 2002-02-15 15:13:08 ContextConfig[/applications]: tldConfigJar(/WEB-INF/lib/multigen.jar): Processing entry 'META-INF/taglib.tld' 2002-02-15 15:13:08 ContextConfig[/applications]: tldConfigJar(/WEB-INF/lib/orataglib_1_0_3.jar): Processing entry 'META-INF/taglib.tld' -- To unsubscribe: mailto:[EMAIL PROTECTED] For additional commands: mailto:[EMAIL PROTECTED] Troubles with the list: mailto:[EMAIL PROTECTED] -- To unsubscribe: mailto:[EMAIL PROTECTED] For additional commands: mailto:[EMAIL PROTECTED] Troubles with the list: mailto:[EMAIL PROTECTED] -- To unsubscribe: mailto:[EMAIL PROTECTED] For additional commands: mailto:[EMAIL PROTECTED] Troubles with the list: mailto:[EMAIL PROTECTED]
java.util.zip.ZipException: Permission denied
Can anyone tell me why I would be getting a java.util.zip.ZipException: Permission denied error in catalina.out? (The entire error is at the bottom of this e-mail.) This seems to be the last things that happens when tomcat starts. I'm also getting some similar errors in my application's log file that seem to relate to the jar files that contain the classes for the taglibs. However, right after those error messages, there are messages suggesting that the jars have been successully read. These messages have been appearing for some time while the exception in catalina.out is new so there may be no relationship between them. Any thoughts would be greatly appreciated. Cindy (I'm using Tomcat 4.0.1 with Apache 1.3.19 and Blackdown j2sdk1.3.1 on RedHat 7.0) From catalina.out... java.util.zip.ZipException: Permission denied at java.util.zip.ZipFile.open(Native Method) at java.util.zip.ZipFile.init(ZipFile.java:110) at java.util.jar.JarFile.init(JarFile.java:115) at java.util.jar.JarFile.init(JarFile.java:82) at org.apache.catalina.loader.WebappLoader.setRepositories(WebappLoader.java:991) at org.apache.catalina.loader.WebappLoader.start(WebappLoader.java:628) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1100) at org.apache.catalina.core.StandardContext.start(StandardContext.java:3334) at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:785) at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:454) at org.apache.catalina.core.StandardHost.install(StandardHost.java:712) at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:599) at org.apache.catalina.startup.HostConfig.start(HostConfig.java:777) at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:463) at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSuppor t.java:155) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1131) at org.apache.catalina.core.StandardHost.start(StandardHost.java:612) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1123) at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:307) at org.apache.catalina.core.StandardService.start(StandardService.java:388) at org.apache.catalina.core.StandardServer.start(StandardServer.java:505) at org.apache.catalina.startup.Catalina.start(Catalina.java:776) at org.apache.catalina.startup.Catalina.execute(Catalina.java:681) at org.apache.catalina.startup.Catalina.process(Catalina.java:179) at java.lang.reflect.Method.invoke(Native Method) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:243) Starting service Tomcat-Apache Apache Tomcat/4.0.1 From my application log... 2002-02-15 15:13:08 ContextConfig[/applications]: Scanning web.xml tag libraries 2002-02-15 15:13:08 ContextConfig[/applications]: URI='/mpitaglib', ResourcePath='/WEB-INF/tlds/mpitaglib_1_0.tld' 2002-02-15 15:13:08 ContextConfig[/applications]: tldConfigJar(/WEB-INF/tlds/mpitaglib_1_0.tld): java.util.zip.ZipException: error in opening zip file 2002-02-15 15:13:08 ContextConfig[/applications]: URI='/orataglib', ResourcePath='/WEB-INF/tlds/orataglib_1_0_3.tld' 2002-02-15 15:13:08 ContextConfig[/applications]: tldConfigJar(/WEB-INF/tlds/orataglib_1_0_3.tld): java.util.zip.ZipException: error in opening zip file 2002-02-15 15:13:08 ContextConfig[/applications]: Scanning library JAR files 2002-02-15 15:13:08 ContextConfig[/applications]: tldConfigJar(/WEB-INF/lib/multigen.jar): Processing entry 'META-INF/taglib.tld' 2002-02-15 15:13:08 ContextConfig[/applications]: tldConfigJar(/WEB-INF/lib/orataglib_1_0_3.jar): Processing entry 'META-INF/taglib.tld' -- To unsubscribe: mailto:[EMAIL PROTECTED] For additional commands: mailto:[EMAIL PROTECTED] Troubles with the list: mailto:[EMAIL PROTECTED]
Re: java.util.zip.ZipException: Permission denied
At 03:38 PM 2/15/02 -0800, Craig R. McClanahan wrote: Normally, a permission denied message like this would imply that operating system permissions are not set correctly. I've never tried Tomcat with the Blackdown JDK, so there could also be a bug in the way Blackdown implements JAR file reading (which uses ZipFile classes inside). Could you try this with some other JDK to see if the problem goes away? Craig That was my first thought. I recently started using jdk1.3.1_02 from Sun and I was thinking that this change might have been the cause. I changed back to the Blackdown jdk and the results are identical. By the way, these errors don't seem to be interfering with the functionaing of the application I'm working on, if that's of any interest. Thanks Cindy -- To unsubscribe: mailto:[EMAIL PROTECTED] For additional commands: mailto:[EMAIL PROTECTED] Troubles with the list: mailto:[EMAIL PROTECTED]
problem with WebAppConnection at boot time
I've been reading through the archives and I've seen a lot of questions about using mod_webapp. In general, mod_webapp seems to be working pretty well for me. My problem is that it doesn't seem to be able to make a connection when httpd is started at boot time. I'm using RedHat 7.0 and I've written init.d scripts for both Tomcat 4.0.1 and Apache 1.3.19 (both installed manually rather than from RPMs). Tomcat starts before Apache (Tomcat is S80 and Apache is S89). Both seem to be starting correctly and both can be accessed directly from their respective ports. The problem is that the Apache error_log has a string of entries like this... [Thu Feb 7 10:20:24 2002] [error] Connection conn cannot connect [Thu Feb 7 10:20:24 2002] [error] Cannot open connection conn ... and when I try to access a jsp from one of the contexts defined by WebAppDeploy in Apache, I get a WebApp: Error 404 (File: wa_request.c Line: 198) Web-application not yet deployed page, and an entry in the log like this one... [Thu Feb 7 10:20:42 2002] [error] Web-application not yet deployed Interestingly, viewing the source of this error page gives me the html that should be produced by the jsp application I was trying to access!! Restarting my web server seems to correct this problem. The connection is made and my jsp files are accessible as I would expect. This indicates to me that my configuration is essentially correct, but something is preventing the connection from being made at boot time. Could Tomcat not be fully loaded when Apache is trying to start? Should I put more space between the init.d scripts? Are there other daemons that need to be started in order for webapp to deploy? Any suggestions would be greatly appreciated. Cindy By the way, mod_webapp is version 1.0.1 built from source with -DEAPI. -- To unsubscribe: mailto:[EMAIL PROTECTED] For additional commands: mailto:[EMAIL PROTECTED] Troubles with the list: mailto:[EMAIL PROTECTED]
RE: problem with WebAppConnection at boot time
John, Thanks for the info! I wrote a new script loading both Tomcat and Apache with sleep 10 in between and it does work. The other behaviors you describe certainly are strange. I haven't seen them yet, but I've only just upgraded from Tomcat 3.3 a couple of days ago. How do you feel about mod_webapp? Is it stable enough to be used in a production environment? Thanks again! Cindy At 07:47 PM 2/7/02 -, John Wadkin wrote: The error Web-application not yet deployed is a weird and wacky one. It seems to come and go. If you restart rather than stop and start Apache at the command line, it seems to manifest itself. It sometimes disappears of its own accord with no intervention from me! As I understand it, it's caused by Apache starting before TomCat has fully loaded. But this wouldn't explain its weird behaviour. I think it's a known bug that's fixed in TC 4.0.1 My rc script starts both TomCat and Apache (i.e. not separate scripts) with a sleep 10 between the commands. This appears to work but who knows :) I don't think further separating the scripts (i.e. S2 and S99) would make much difference in terms of time. John Quote for the week: Experience is not what happens to a man; it is what a man does with what happens to him. Aldous Huxley, Texts and Pretexts , (1932) p. 5 -- To unsubscribe: mailto:[EMAIL PROTECTED] For additional commands: mailto:[EMAIL PROTECTED] Troubles with the list: mailto:[EMAIL PROTECTED]