Re: Configuring Apache Web Server with Tomcat
I am using Tomcat6 but i could not find any thing to put in Connector configuration of tomcat file. Can you please help? - When i said "working fine" .. i meant that JSP pages are viewable if i browse at 8009 (the path i mentioned earlier) but if i don't mention the port then it's not working (jsp pages). - What happens when i start both things. - when i go to site http://localhost/ (it dispalys its works) - If i browse to any site at 8009 .. its works - but if i try to browse to any jsp/servlet at port 80 .. it doesn't work .. (that's the problem). PLEASE tell me which properties should i fix so that i may get tomcat and apache working. ..alee http://techboard.wordpress.com On Tue, Jul 14, 2009 at 9:54 PM, Christopher Schultz < ch...@christopherschultz.net> wrote: > -BEGIN PGP SIGNED MESSAGE- > Hash: SHA1 > > Alee, > > On 7/14/2009 10:44 AM, alee amin wrote: > > I am trying to configuring apache webserver with tomcat using AJP but i > am > > not sure am i doing it right or not. > > [snip] > > > > > ProxyPass / ajp://localhost:8009/ > > ProxyPassMatch ^(/photos/.*\.jpg)$! > > > > [snip] > > > - Added the worker.properties file to Catalina_home/conf directory with > > follwoing properties > > You don't need worker.properties if you are using mod_proxy_ajp. > worker.properties is only for using mod_jk (an alternative to > mod_proxy_ajp in httpd 2.2, and the only viable game in town for AJP in > pre-2.2 versions of Apache httpd). > > Just get rid of the worker.properties file. > > >> className="org.apache.ajp.tomcat4.Ajp13Connector" > > port="8009" > > Wow. What version of Tomcat are you attempting to use? This > configuration looks seriously old. If you are just starting out, try > using Tomcat 6. > > > Now i am trying to test to browse some JSP file at the following location > " > > http://localhost:8009/examples/jsp/jsp2/el/basic-arithmetic.jsp"; which > is > > working fine. > > Really? Making an HTTP request on port 8009 isn't going to work: that > port is serving AJP13 requests. What do you mean it "is working fine" > when you "test to browse some JSP" files? > > > but i want to browse this file at > > http://localhost/examples/jsp/jsp2/el/basic-arithmetic.jsp. > > So, you want to use port 80? That's what Apache httpd should be doing > for you: proxying port 80 traffic through AJP (port 8009) to Tomcat. > > > Have i done it right or there is something else that i can do? > > What happens when you start everything up and actually try it? If it > works as expected, I'd say that you have done at least most of it > correctly. > > - -chris > -BEGIN PGP SIGNATURE- > Version: GnuPG v1.4.9 (MingW32) > Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ > > iEYEARECAAYFAkpcqkkACgkQ9CaO5/Lv0PAjwQCfV7tKpQ1skPjvhFnkdHbXz1S+ > rOcAoL8+5qpawK6Va7EyhYmEMtXKIOHo > =+xyG > -END PGP SIGNATURE- > > - > To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org > For additional commands, e-mail: users-h...@tomcat.apache.org > >
Remapping datasources
Hi guys, In my webap I am using a library that depends on datasources being mapped to: java:MyDS and not java:comp/env/jdbc/MyDS When I define datasources in Tomcat, they end in java:comp/env. What can I do to remap the datasources - make them available as java:MyDS? One of the strategies would be to have a servlet that initializes before the rest of the system and do additional binding that would hopefully be available to later loaded servlets. Another one is to change the implementation of Context that new InitialContext() returns, however I am not aware how and where to implement this. Can anyone suggest a solution? Kind regards: al_shopov - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
MapListener update
Hi , When I update my code for embedding tomcat 5.x to embedding 6.x, a null pointer exception blocks me . I dug the code , I found it cause by the org.apache.catalina.connector.MapperListener difference : Tomcat5.x --- /** * Register host. */ private void registerHost(ObjectName objectName) throws Exception { String name=objectName.getKeyProperty("host"); if( name != null ) { String[] aliases = (String[]) mBeanServer.invoke(objectName, "findAliases", null, null); mapper.addHost(name, aliases, objectName); if(log.isDebugEnabled()) log.debug(sm.getString ("mapperListener.registerHost", name, domain)); } } Tomcat6.x - /** * Register host. */ private void registerHost(ObjectName objectName) throws Exception { String name=objectName.getKeyProperty("host"); if( name != null ) { Host host = (Host) ServerFactory.getServer().findService( domain).getContainer().findChild(name); String[] aliases = host.findAliases(); mapper.addHost(name, aliases, objectName); host.addContainerListener(this); if(log.isDebugEnabled()) log.debug(sm.getString ("mapperListener.registerHost", name, domain)); } } Is this change to fix an issue ? Or Tomcat6.x totally change the host name looking up mechanism . Could you also point to me where can I find the Tomcat6.x document about difference with Tomcat5.x if there is ? for example architecture , execution etc. Thanks in advance . Jim Ma
Re: Tomcat processes running on system, understanding what they are
Thanks for the info turns out one instance belonged to the other when shown in parent/child relationship. fyi I am going to post my findings in the thread called "Logging of memory / thread activity" instead of keeping two around :) lucas On Mon, Jul 13, 2009 at 3:14 PM, Christopher Schultz < ch...@christopherschultz.net> wrote: > -BEGIN PGP SIGNED MESSAGE- > Hash: SHA1 > > Lucas, > > On 7/13/2009 2:37 PM, Lucas Vickers wrote: > > I see two jsvc instances of Tomcat that are identical. > > > > Why would there be two identical instances of Tomcat running via jsvc? > Is > > this correct? > > What happens if you look at the processes as a tree (where you can see > parent/child relationships)? > > Try reading the "How jsvc works" section on this page: > http://commons.apache.org/daemon/jsvc.html > > - -chris > -BEGIN PGP SIGNATURE- > Version: GnuPG v1.4.9 (MingW32) > Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ > > iEYEARECAAYFAkpbh7EACgkQ9CaO5/Lv0PA3hACeMRc34KQVmfbZ00yLYd3NoxfW > 1BcAniAo7mXf4pHJCKo3ouNFubkp2kQj > =kXl4 > -END PGP SIGNATURE- > > - > To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org > For additional commands, e-mail: users-h...@tomcat.apache.org > >
RE: Include directories outside WEB-INF/ in CLASSPATH?
> From: uma...@comcast.net [mailto:uma...@comcast.net] > Subject: Include directories outside WEB-INF/ in CLASSPATH? > > I am using Tomcat 6.0.14. > > Is there a way to include a directory outside WEB-INF/ into > the classpath of the WebappClassLoader? I just realized you been asking the same question for over a year and a half - and we keep giving you the same answer. - Chuck THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers.
RE: Include directories outside WEB-INF/ in CLASSPATH?
> From: uma...@comcast.net [mailto:uma...@comcast.net] > Subject: Include directories outside WEB-INF/ in CLASSPATH? > > I am using Tomcat 6.0.14. You should move up, just on general principles - as well as for the bunch of fixes that have gone in over the last two years. > Is there a way to include a directory outside WEB-INF/ into > the classpath of the WebappClassLoader? Yes, but it's not documented, so test it carefully. You can nest a element inside your that specifies an alternate classloader: http://tomcat.apache.org/tomcat-6.0-doc/config/loader.html Set the value of the className attribute to "org.apache.catalina.loader.VirtualWebappLoader". Use the virtualClasspath attribute to specify a semicolon-separated list of the additional files or directories you want added to the WebappClassLoader classpath. See this message for slightly more detail: http://marc.info/?l=tomcat-user&m=119515455807928&w=2 - Chuck THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers.
Re: reply timeout, connect_timeout and preprost_timeout values
Thanks a lot. This is very useful information. I will soon post my complete config. Thanks, Madhuri --- On Tue, 7/14/09, Rainer Jung wrote: > From: Rainer Jung > Subject: Re: reply timeout, connect_timeout and preprost_timeout values > To: "Tomcat Users List" > Date: Tuesday, July 14, 2009, 3:28 PM > On 14.07.2009 10:41, Madhuri > Patwardhan wrote: > > As I was reading the timeout howto once again, one > question came to > > my mind. What is the difference between socket_timeout > and > > socket_connect_timeout? socket_timeout is used for TCP > send/receive > > timeouts. Does socket_connect_timeout indicate failure > to establish > > socket connection? > > The socket connect timeout is only used during > establishment of a new > connection to Tomcat. If there were no timeout, you could > run into long > tcp retransmits in some network problem situations. > > After a connection is established, you can use a general > socket timeout. > Some platforms do not support them though (e.g. Solaris) > and mod_jk > silently drops that timeout if it is not supported. I'm not > a fan of a > general socket timeout , because once such a timeout fires, > the > connection cannot be used any more. I do like more the > various ping > timeouts and if applicable to the app a reply timeout. > > > One question regardig recovery. Every maintainence > period it tries to > > recover worker in ERR state. I see the state being > changed to > > ERR/REC. What does it exactly do during recovery? > > REC means: this worker is now allowed for future requests. > The first > request, which could be balanced to it, will go there (and > set the > status to PRB for probing). During the execution of this > request the > worker will be not available for further request, until > that ne either > returns successfully (then the worker goes into OK), or it > returns with > an error, so the worker goes back to ERR. > > > Are the real new > > requests sent to the worker in ERR/REC state? > > Yes, at the moment we can only probe with real requests. > > > At present, we have > > recorvey option, reply_timeout set to default. > ping_mode is not set. > > > If it does try a real new request with a worker during > ERR/REC state > > and if request doesn't succeed then the request is > sent to a good > > worker? > > It depends on where the request fails. If it fails early: > yes. If it is > a huge POST request and the data has already been sent to > the worker and > it fails during response generation, we will no longer have > the huge > request body at hand to send to some other worker. > > But in moist situations the failure will be detectable > either during TCP > connect or the following ping test. So both are very > important to activate! > > > We have mod_jk load balancer running in production. We > are using load > > balancer with 19 mod_jk workers. We noticed that even > though 10 out > > of 19 tomcat workers are in good state, some times web > site is > > unresponsive for few minutes. Thats why, I was > wondering if somehow > > the requests are still being sent to 9 workers which > are in bad > > state.Perhaps, this is happening during the transition > when a worker > > goes bad but it takes time for the load balancer to > detect that. This > > was setup by somebody else and prepost_timeout, > ping_mode, > > reply_timeout and recovery_options are not set. I am > hoping that > > after setting these timeout values we will not see > these issue. I > > will be setting these timeout values in production > system, so are > > there anythings I should be careful about? > > You can post your complete new config for check. Most of > the timeouts > are off by default in order to make newer jk versions > behave compatible > with older ones, even if that behaviour wasn't optimal. So > activate the > timeouts (and use version 1.2.28). > > Finally add %D to your Apache LogFormat. It's the response > time in > microseconds and lets you fid out, when and for what > requests things > start to go wrong. Also add a couple of the log notes > mentioned in > > http://tomcat.apache.org/connectors-doc/reference/apache.html > > (like e.g. JK_LB_FIRST_NAME, JK_LB_LAST_NAME, > JK_LB_LAST_ERRORS, > JK_LB_LAST_BUSY, JK_LB_LAST_ACCESSED). > > Regards, > > Rainer > > > --- On Tue, 7/14/09, Rainer Jung > wrote: > > > >> From: Rainer Jung > Subject: Re: reply > >> timeout, connect_timeout and preprost_timeout > values To: "Tomcat > >> Users List" > Date: Tuesday, July 14, 2009, > >> 2:14 AM On 14.07.2009 04:34, Madhuri Patwardhan > wrote: > >> > >> Did you read the docs page about timeouts: > >> > >> http://tomcat.apache.org/connectors-doc/generic_howto/timeouts.html > >> > >> > >> > If you are very concerned about timeouts, use version > >> 1.2.28, because it has an additional > socket_connect_timeout. > >> > >>> connect_timeout and preprost_timeout what > would be the > >> typical > >>> values? something like "5000" or less/more? > >> I wouldn't c
Re: Symlinks inside WEB-INF/classes not working for me
> Again, wrong. allowLinking applies to any web-app resources. Only internal > Tomcat file access (bin, lib, logs etc) goes directly to the file system. And for what it's worth, allowLinking appears to have fixed it :) It manifested itself really silently and I didn't see anything about it in WebAppClassLoader.java so it never occurred to me it was possibly configurable. Now I can see the DirContext object that's used in there and everything makes sense. Thanks! John - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
RE: Tomcat6+ISAPI+IIS+Integrated Authentication+Large User
Hello have you found any solution for this problem, because we are facing exactly with the same problem? For every user with small group membership the redirector works fine but for heavy users not. We got http 413 in IIS log. If we use Jakarta 2.x then we step a little bit further because we got an authentication window but any username/pwd pair is failing, said Permission denied. Another issue, running browser on the server machine locally everything is fine, the problem appears only through network access. Another issue, using IP address instead of the server FQDN in the url everything is fine. -- View this message in context: http://www.nabble.com/Tomcat6%2BISAPI%2BIIS%2BIntegrated-Authentication%2BLarge-User-tp20049325p24489418.html Sent from the Tomcat - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Include directories outside WEB-INF/ in CLASSPATH?
I am using Tomcat 6.0.14. Is there a way to include a directory outside WEB-INF/ into the classpath of the WebappClassLoader? Specifically, I am trying to load a certain resource which is located outside WEB-INF/ via WebappClassLoader. Is it possible to accomplish this using symlinks? Tx, /U
Re: Symlinks inside WEB-INF/classes not working for me
Christopher Schultz wrote: > Konstantin, > > On 7/13/2009 10:06 PM, Konstantin Kolinko wrote: >> See how allowLinking and caseSensitive options are implemented in >> StandardContext. > > They are not implemented in StandardContext: they are implemented in > FileDirContext and therefore should only affect content being served by > the web server, not JAR files being loaded from the CLASSPATH. It doesn't matter. *All* web-app resources are accessed via a DirContext, including those loaded from WEB-INF/classes and WEB-INF/lib. > So, from looking at this code, it appears that Java does not "know" the > difference between a symbolic link and a hard link: it just lets the > filesystem reveal the canonical path to the file (which is almost > certainly different from a symbolic link) and compares the original name > with the canonical name. If they are different, a symlink is implied and > therefore rejected. Correct. > Again, this appears to be only for static content loaded by code like > DefaultServlet, not a policy enforced by Tomcat across all file accesses. Again, wrong. allowLinking applies to any web-app resources. Only internal Tomcat file access (bin, lib, logs etc) goes directly to the file system. Mark - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: Tomcat 5.5.23 keeps starting threads until OS runs out of memory
I found the cause of the issue. A call was being made to a jsp that opened a connection to another application sitting on the same server (via orbd.exe). This jsp is being called approx 10 times a second (as it is a monitor jsp) and the majority of requests are being served but on occasion it would seem that the request is not being served and a connection is left dangling. So I guess it was not Tomcats fault in the end! I found some error messages in the catalina log alluding to a connection problem related to a jsp that is not actually part of the webapp - hence why I didn't think of it until I saw the stack trace. To prove it was this jsp, I took out the code that creates a connection and found the windows threads just stood at the same thread count. Gonna have to have a word with the TA about this... - Original Message From: "Caldarale, Charles R" To: Tomcat Users List Sent: Tuesday, 14 July, 2009 13:00:53 Subject: RE: Tomcat 5.5.23 keeps starting threads until OS runs out of memory > From: Rahman Akhlaqur [mailto:aki...@yahoo.co.uk] > Subject: Re: Tomcat 5.5.23 keeps starting threads until OS runs out of > memory > > I have some more info about the issue that I think is related. I found > our Tomcat executable is also establishing a lot of TCP connections. Tomcat isn't, your webapp is. Don't blame Tomcat for your misbehaving code. > Is this some sort of tomcat ping? No, it's your webapp opening up some sort of connection - likely RMI, judging from your stack trace. > Our tomcat connectors are set up to limit the max http threads as below That's irrelevant, since it's your webapp starting the extra threads. > The only timeouts are for the http requests, are there any other > timeouts I can configure that could potentially stop all those selector > threads from persisting? Whatever you can configure in your webapp - this is a problem with your code, not with Tomcat. - Chuck THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers. - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
RE: [ERROR] Cannot create JDBC driver of class '' for connect URL 'null'
Christopher Schultz wrote: > -BEGIN PGP SIGNED MESSAGE- > Hash: SHA1 > > Neil, > > Just a few comments on your connection acquisition code: > > On 7/14/2009 12:45 PM, Neil Youngman wrote: >> private static final String CONTEXT_NAME = "java:/comp/env"; >> private static final String DB_NAME = "jdbc/AppDatabase"; > > If you have the same class in two applications (except for these two > constants), why not use the same class plus a configuration file? It's not the same class, but they share the code that connects to the database. It might be advantageous to factor it out, but they are currently small self contained apps. >> private static Connection getConnection () >> throws Exception, SQLException >> { >> if( DATA_SOURCE == null ) > > Hmm... a DataSource object is not guaranteed to be threadsafe. I would > not bother to cache the DataSource object in your class: at least not in > a static field. OK, I'm happy to drop that. > The "performance hit" you experience from performing repeated JNDI > lookups is negligible, and your code has the benefit of always getting > the "current" DataSource from the directory. > >> // Get the data source (from context.xml) >> try >> { >> Class.forName("oracle.jdbc.OracleDriver"); > > This line of code is not necessary at all, for several reasons: > > 1. The connection pool will already make sure this class is loaded > > 2. Standard JDBC practice is to call Class.forName(driver).newInstance() > to make sure that the driver is, in fact, registered with the DriverManager. > > 3. A driver used with a DataSource does not bother to register itself > with the DriverManager (see javadoc for javax.sql.DataSource). > > This is all you need: > >> Context initContext = new InitialContext(); >> Context envContext = (Context) >> initContext.lookup(CONTEXT_NAME); >> DATA_SOURCE = (DataSource)envContext.lookup(DB_NAME); > > That's it. > >> catch (Exception ex) >> { >> System.err.println( ex ); >> ex.printStackTrace(); >> throw ex; >> } > > > This exception handler doesn't add much: the caller has the opportunity > to catch this exception, so why log it at this level? I prefer not to rely on the caller logging exceptions. I want to be sure that I get a full stack trace and I can't always rely on the caller to provide it. > If I were you, I'd try these steps to resolve your problem: > > 1. Remove the 'factory' attribute from your declaration > 2. Remove commons-dbcp-*.jar from WEB-INF/lib I've already done both of these. > This has a fair chance of working. Any particular reason you want to use > a webapp-provided connection pool factory? I think that was a hangover from tomcat 5. I've removed that, to no obvious effect. Thanks for the pointers. I've still got a long way to go before I'm an expert and all the feedback helps. Neil Youngman - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: reply timeout, connect_timeout and preprost_timeout values
On 14.07.2009 10:41, Madhuri Patwardhan wrote: > As I was reading the timeout howto once again, one question came to > my mind. What is the difference between socket_timeout and > socket_connect_timeout? socket_timeout is used for TCP send/receive > timeouts. Does socket_connect_timeout indicate failure to establish > socket connection? The socket connect timeout is only used during establishment of a new connection to Tomcat. If there were no timeout, you could run into long tcp retransmits in some network problem situations. After a connection is established, you can use a general socket timeout. Some platforms do not support them though (e.g. Solaris) and mod_jk silently drops that timeout if it is not supported. I'm not a fan of a general socket timeout , because once such a timeout fires, the connection cannot be used any more. I do like more the various ping timeouts and if applicable to the app a reply timeout. > One question regardig recovery. Every maintainence period it tries to > recover worker in ERR state. I see the state being changed to > ERR/REC. What does it exactly do during recovery? REC means: this worker is now allowed for future requests. The first request, which could be balanced to it, will go there (and set the status to PRB for probing). During the execution of this request the worker will be not available for further request, until that ne either returns successfully (then the worker goes into OK), or it returns with an error, so the worker goes back to ERR. > Are the real new > requests sent to the worker in ERR/REC state? Yes, at the moment we can only probe with real requests. > At present, we have > recorvey option, reply_timeout set to default. ping_mode is not set. > If it does try a real new request with a worker during ERR/REC state > and if request doesn't succeed then the request is sent to a good > worker? It depends on where the request fails. If it fails early: yes. If it is a huge POST request and the data has already been sent to the worker and it fails during response generation, we will no longer have the huge request body at hand to send to some other worker. But in moist situations the failure will be detectable either during TCP connect or the following ping test. So both are very important to activate! > We have mod_jk load balancer running in production. We are using load > balancer with 19 mod_jk workers. We noticed that even though 10 out > of 19 tomcat workers are in good state, some times web site is > unresponsive for few minutes. Thats why, I was wondering if somehow > the requests are still being sent to 9 workers which are in bad > state.Perhaps, this is happening during the transition when a worker > goes bad but it takes time for the load balancer to detect that. This > was setup by somebody else and prepost_timeout, ping_mode, > reply_timeout and recovery_options are not set. I am hoping that > after setting these timeout values we will not see these issue. I > will be setting these timeout values in production system, so are > there anythings I should be careful about? You can post your complete new config for check. Most of the timeouts are off by default in order to make newer jk versions behave compatible with older ones, even if that behaviour wasn't optimal. So activate the timeouts (and use version 1.2.28). Finally add %D to your Apache LogFormat. It's the response time in microseconds and lets you fid out, when and for what requests things start to go wrong. Also add a couple of the log notes mentioned in http://tomcat.apache.org/connectors-doc/reference/apache.html (like e.g. JK_LB_FIRST_NAME, JK_LB_LAST_NAME, JK_LB_LAST_ERRORS, JK_LB_LAST_BUSY, JK_LB_LAST_ACCESSED). Regards, Rainer > --- On Tue, 7/14/09, Rainer Jung wrote: > >> From: Rainer Jung Subject: Re: reply >> timeout, connect_timeout and preprost_timeout values To: "Tomcat >> Users List" Date: Tuesday, July 14, 2009, >> 2:14 AM On 14.07.2009 04:34, Madhuri Patwardhan wrote: >> >> Did you read the docs page about timeouts: >> >> http://tomcat.apache.org/connectors-doc/generic_howto/timeouts.html >> >> >> If you are very concerned about timeouts, use version >> 1.2.28, because it has an additional socket_connect_timeout. >> >>> connect_timeout and preprost_timeout what would be the >> typical >>> values? something like "5000" or less/more? >> I wouldn't choose less. The ping timeout usually shouldn't fire. >> By going to extremes, very small problems might lead to an >> unacceptable big reaction (taking a worker out of balancing, only >> because a ping took a second or so). >> >> Note, that in 1.2.28 there is an alternative unified way of setting >> the ping_timeout. >> >>> I also wonder if I specify prepost_timeout then it >> would mean now >>> each request would take that much additional >> time?Before serving >>> each request cping/cpong would be tried with timeout >> value of >>> prepost_timeout so that adds little delay to serving >> the request??
Re: Manipulate other session
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Yves, On 7/14/2009 2:33 PM, Yves Glodt wrote: > The reason I wanted to manipulate one HttpSession from another is > since in this case, I have an external entity (and thus in another > HttpSession) making a POST request to my servlet, posting information > about a transaction made in another user-HttpSession. > > Manipulating the user-HttpSession from the external request would > have been a way to feed the information from the external entity to > the user-session which is concerned. > > Although I cannot consider this behaviour really beautiful, it's > also not that ugly... > > Or do you (now "you" as "one") disagree or know a nicer way? :-) I'm not sure I really understand what you're doing. You want to accept a POST request from a separately-authenticated user and then publish some data directly into the session of another authenticated user? I'm afraid I can't understand a use case where that makes sense. What if the target session doesn't exist? Is the POSTed information lost? Why not put this kind of information in a database where it can be retrieved by whomever wants it? Or, better yet, build a small pub/sub infrastructure where users (or sessions) register themselves as consumers of POST events. When a POST event arrives, you simply publish it to the group, and those interested in hearing the message will get it and then do whatever they want (such as setting an attribute in the session). - -chris -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.9 (MingW32) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAkpc0ioACgkQ9CaO5/Lv0PDa5wCgwrtUmdNxDkpXPiTNjojAVCUZ wrAAoJiR+7varN8AM5UqnSHPaDvIEdo1 =nvTd -END PGP SIGNATURE- - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: [ERROR] Cannot create JDBC driver of class '' for connect URL 'null'
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Neil, Just a few comments on your connection acquisition code: On 7/14/2009 12:45 PM, Neil Youngman wrote: > private static final String CONTEXT_NAME = "java:/comp/env"; > private static final String DB_NAME = "jdbc/AppDatabase"; If you have the same class in two applications (except for these two constants), why not use the same class plus a configuration file? > private static Connection getConnection () > throws Exception, SQLException > { > if( DATA_SOURCE == null ) Hmm... a DataSource object is not guaranteed to be threadsafe. I would not bother to cache the DataSource object in your class: at least not in a static field. The "performance hit" you experience from performing repeated JNDI lookups is negligible, and your code has the benefit of always getting the "current" DataSource from the directory. > // Get the data source (from context.xml) > try > { > Class.forName("oracle.jdbc.OracleDriver"); This line of code is not necessary at all, for several reasons: 1. The connection pool will already make sure this class is loaded 2. Standard JDBC practice is to call Class.forName(driver).newInstance() to make sure that the driver is, in fact, registered with the DriverManager. 3. A driver used with a DataSource does not bother to register itself with the DriverManager (see javadoc for javax.sql.DataSource). This is all you need: > Context initContext = new InitialContext(); > Context envContext = (Context) > initContext.lookup(CONTEXT_NAME); > DATA_SOURCE = (DataSource)envContext.lookup(DB_NAME); That's it. > catch (Exception ex) > { > System.err.println( ex ); > ex.printStackTrace(); > throw ex; > } This exception handler doesn't add much: the caller has the opportunity to catch this exception, so why log it at this level? If I were you, I'd try these steps to resolve your problem: 1. Remove the 'factory' attribute from your declaration 2. Remove commons-dbcp-*.jar from WEB-INF/lib This has a fair chance of working. Any particular reason you want to use a webapp-provided connection pool factory? - -chris -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.9 (MingW32) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAkpc0SgACgkQ9CaO5/Lv0PD2WACghKVp2vvrk2F9m78R2lwcFGNp JMcAn0g1W2O2C6h9dcRihYdClENiXIv1 =u5uA -END PGP SIGNATURE- - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: Manipulate other session
2009/7/13 Christopher Schultz : > -BEGIN PGP SIGNED MESSAGE- > Hash: SHA1 > > Daniel, > > On 7/13/2009 12:16 PM, Daniel Henrique Alves Lima wrote: >> I don't know if you can/should change other HttpSession directly. > > You might be able to on an older servlet container, but this portion of > the API has been deprecated and will cause modern containers to throw > exceptions. I'm not sure if a webapp specifies an old version of the > spec, whether this API will be supported or not (by a new container > which will enforce this prohibition on newer webapps). > >> As >> Mikolaj Rydzewski said, you could perform a HTTP request using a >> different JSESSIONID cookie or a ;jsessionid URL rewriting. > > This is possible. > > It's also possible to use a SessionListener to maintain your own list of > sessions and then you can do whatever you want. > > The real question is why you want to do this in the first place. After reading the other replies, I take the "you" for me for this reply ;-) The reason I wanted to manipulate one HttpSession from another is since in this case, I have an external entity (and thus in another HttpSession) making a POST request to my servlet, posting information about a transaction made in another user-HttpSession. Manipulating the user-HttpSession from the external request would have been a way to feed the information from the external entity to the user-session which is concerned. Although I cannot consider this behaviour really beautiful, it's also not that ugly... Or do you (now "you" as "one") disagree or know a nicer way? :-) > - -chris > -BEGIN PGP SIGNATURE- > Version: GnuPG v1.4.9 (MingW32) > Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ > > iEYEARECAAYFAkpbaBsACgkQ9CaO5/Lv0PC+RgCfUEoAJwWB+/4jgDCzJgK/4eDb > YhsAnA8DXWpTkOQdg7vMursGAg5dWfPx > =g3Tk > -END PGP SIGNATURE- - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: Http Session Null issue
On 14/7/09 16:59, Achal Patel wrote: Thanks for the inputs. We hv traced this problem to a bug with Tomcat server. Have you filed a bug report? I'd be curious to see both the bug and your solution. You can file a patch along with the bug. https://issues.apache.org/bugzilla/ p Basically the tomcat server is sending the response before the context/session is set. Since it is open source, we modified the code and that change has resolved this 500 error. The change we hv made is not the best possible solution and we are evaluating changes on the codes. (Changed jasper.jar JSPServletWrapper.java) Can you analyze what would be code changes on application side in this case? On Sat, Jul 4, 2009 at 2:52 PM, Pid wrote: On 4/7/09 00:22, Konstantin Kolinko wrote: HttpSession session = request.getSession(); Is the request a legit one (that is, the one that is being served by Tomcat now)? Requests are recycled immediately after their processing is done, and it can result in null being returned by that method (though throwing an IllegalStateException would be better). (See partial stacktrace below.) The Settings object looks like it is the source of the NullPointerException and it looks like it is being statically initialised. I don't know what that object is, so I asked for more info - the OP is yet to respond, unless I missed that message? How it is being initialised, it seems to me, is the source of the problem. Does the initialisation depend on an HttpSession object or on some other parameters? p *root cause* java.lang.NullPointerException com.teradata.x2.context.Settings.getSettings(Settings.java:102) com.teradata.x2.context.ServletProcessContext.getSettings(ServletProcessContext.java:38) It's probably not that random. What is at Settings.java, line 102? p - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
RE: [ERROR] Cannot create JDBC driver of class '' for connect URL 'null'
Caldarale, Charles R wrote: >> From: Neil Youngman [mailto:neil.young...@wirefast.com] >> Subject: RE: [ERROR] Cannot create JDBC driver of class '' for connect >> URL 'null' >> >> private static final String DB_NAME = "jdbc/InterceptDatabase"; > > But your has: > > - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
RE: [ERROR] Cannot create JDBC driver of class '' for connect URL 'null'
> From: Neil Youngman [mailto:neil.young...@wirefast.com] > Subject: RE: [ERROR] Cannot create JDBC driver of class '' for connect > URL 'null' > > private static final String DB_NAME = "jdbc/InterceptDatabase"; But your has:
RE: [ERROR] Cannot create JDBC driver of class '' for connect URL 'null'
Christopher Schultz wrote: >> Either way, it's >> typically a disconnect between the and it's use in the >> jsp/servlet code. > > He didn't post his code. It would be good to see what is on line 208 in > com.wirefast.wsam.service.WMSSubmissionService.getConnection. Oops. I meant to include that. private static final String CONTEXT_NAME = "java:/comp/env"; private static final String DB_NAME = "jdbc/InterceptDatabase"; ... private static Connection getConnection () throws Exception, SQLException { if( DATA_SOURCE == null ) { // Get the data source (from context.xml) try { Class.forName("oracle.jdbc.OracleDriver"); Context initContext = new InitialContext(); Context envContext = (Context) initContext.lookup(CONTEXT_NAME); DATA_SOURCE = (DataSource)envContext.lookup(DB_NAME); } catch (Exception ex) { System.err.println( ex ); ex.printStackTrace(); throw ex; } } return DATA_SOURCE.getConnection(); // line 208 } Neil Youngman - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: Http Session Null issue
Thanks for the inputs. We hv traced this problem to a bug with Tomcat server. Basically the tomcat server is sending the response before the context/session is set. Since it is open source, we modified the code and that change has resolved this 500 error. The change we hv made is not the best possible solution and we are evaluating changes on the codes. (Changed jasper.jar JSPServletWrapper.java) Can you analyze what would be code changes on application side in this case? On Sat, Jul 4, 2009 at 2:52 PM, Pid wrote: > On 4/7/09 00:22, Konstantin Kolinko wrote: > >> HttpSession session = request.getSession(); >>> >> >> Is the request a legit one (that is, the one that is being served by >> Tomcat now)? >> >> Requests are recycled immediately after their processing is done, >> and it can result in null being returned by that method (though throwing >> an IllegalStateException would be better). >> > > (See partial stacktrace below.) > > The Settings object looks like it is the source of the NullPointerException > and it looks like it is being statically initialised. > > I don't know what that object is, so I asked for more info - the OP is yet > to respond, unless I missed that message? > > How it is being initialised, it seems to me, is the source of the problem. > Does the initialisation depend on an HttpSession object or on some other > parameters? > > p > > > > > > > *root cause* > > java.lang.NullPointerException >com.teradata.x2.context.Settings.getSettings(Settings.java:102) > > > > com.teradata.x2.context.ServletProcessContext.getSettings(ServletProcessContext.java:38) > > It's probably not that random. What is at Settings.java, line 102? p >>> > - > To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org > For additional commands, e-mail: users-h...@tomcat.apache.org > > -- Regards, Achal Patel.
Re: chunked encoding
charliehnabble wrote: Maybe it is connection:close that makes Tomcat not send a chunk length. I don't know why Tomcat doesn't put a content-length header in that case. Now that I believe is normal. As I recall the HTTP RFC (2616?), that is the only case where the server does not have to send a content length : when it closes the connection at the end of the response anyway. The point is, the client must have a non-ambiguous way of knowing when the response content ends. So there is either : - a persistent connection with a content-length header - a persistent connection with chunked encoding (where each chunk indicates a length, and there is a last chunk of 0 length) - or a connection closing at the end of the response body, with or without a content-length header (kind of, without is in that case tolerated) Where this all leaves your problem, I don't know. You could, in your webapp, force a content-length header to be output no matter what. (Assuming you know in advance what this length is going to be, before you write the first byte of it to the response output stream) It seems to me that you should find out precisely what your "device" or "router" does not like : maybe it just does not like a non-chunked answer /without/ a content-length header (which should technically be ok, but maybe it is a bit picky). - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: [ERROR] Cannot create JDBC driver of class '' for connect URL 'null'
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 David, On 7/14/2009 11:29 AM, David Smith wrote: > In the past, it's typically been caused by some misspell of the JNDI > name between the element and the > ... in the WEB-INF/web.xml. I've never had to use a element in web.xml for a defined in META-INF/context.xml. I've even created incorrect elements in web.xml and not had a problem. I /do/ have them in there, though, just in case :) > I'd have to go > back to the original post to tell if that's the case here or not. Tsk, tsk. It was only a few hours ago: META-INF/context.xml: > > DB Connection > jdbc/AppDatabase > javax.sql.DataSource > Container > Looks good to me. > Either that or the resource was declared as a global resource without > the requisite in the context. Nope, it was done in the recommended way (from the Tomcat docs, and checked multiple times according to the OP). > Either way, it's > typically a disconnect between the and it's use in the > jsp/servlet code. He didn't post his code. It would be good to see what is on line 208 in com.wirefast.wsam.service.WMSSubmissionService.getConnection. - -chris -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.9 (MingW32) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAkpcqD0ACgkQ9CaO5/Lv0PBSBACaA3d45tyyA7K62NtHS4NWZ7FA 9KcAn0xqAVHruti85qkheBztd25N/n0d =N63Z -END PGP SIGNATURE- - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
RE: Problems with data sources - solved1
Sigh, Actually - there was no problem. The line boolean exist = (null == ds); should have been boolean exist = (null != ds); Silly me. Sorry guys. Kind regards: al_shopov - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: Configuring Apache Web Server with Tomcat
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Alee, On 7/14/2009 10:44 AM, alee amin wrote: > I am trying to configuring apache webserver with tomcat using AJP but i am > not sure am i doing it right or not. [snip] > > ProxyPass / ajp://localhost:8009/ > ProxyPassMatch ^(/photos/.*\.jpg)$! > [snip] > - Added the worker.properties file to Catalina_home/conf directory with > follwoing properties You don't need worker.properties if you are using mod_proxy_ajp. worker.properties is only for using mod_jk (an alternative to mod_proxy_ajp in httpd 2.2, and the only viable game in town for AJP in pre-2.2 versions of Apache httpd). Just get rid of the worker.properties file. >className="org.apache.ajp.tomcat4.Ajp13Connector" > port="8009" Wow. What version of Tomcat are you attempting to use? This configuration looks seriously old. If you are just starting out, try using Tomcat 6. > Now i am trying to test to browse some JSP file at the following location " > http://localhost:8009/examples/jsp/jsp2/el/basic-arithmetic.jsp"; which is > working fine. Really? Making an HTTP request on port 8009 isn't going to work: that port is serving AJP13 requests. What do you mean it "is working fine" when you "test to browse some JSP" files? > but i want to browse this file at > http://localhost/examples/jsp/jsp2/el/basic-arithmetic.jsp. So, you want to use port 80? That's what Apache httpd should be doing for you: proxying port 80 traffic through AJP (port 8009) to Tomcat. > Have i done it right or there is something else that i can do? What happens when you start everything up and actually try it? If it works as expected, I'd say that you have done at least most of it correctly. - -chris -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.9 (MingW32) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAkpcqkkACgkQ9CaO5/Lv0PAjwQCfV7tKpQ1skPjvhFnkdHbXz1S+ rOcAoL8+5qpawK6Va7EyhYmEMtXKIOHo =+xyG -END PGP SIGNATURE- - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
RE: chunked encoding
Caldarale, Charles R wrote: > >> From: charliehnabble [mailto:nab...@hand-family.org] >> Subject: Re: chunked encoding >> >> Excuse me, by "packet" I meant IP datagram. > > Just a terminology nit: "datagram" normally refers to a UDP packet, and > we're using TCP here. > > http://en.wikipedia.org/wiki/Packet_(information_technology)#Packets_vs._datagrams It's on the Internet, it must be true. :-) -- View this message in context: http://www.nabble.com/chunked-encoding-tp23986311p24482248.html Sent from the Tomcat - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: chunked encoding
awarnier wrote: > > Caldarale, Charles R wrote: >>> From: charliehnabble [mailto:nab...@hand-family.org] >>> Subject: Re: chunked encoding >>> >>> Excuse me, by "packet" I meant IP datagram. >> >> Just a terminology nit: "datagram" normally refers to a UDP packet, and >> we're using TCP here. >> > I'll add another nit: if the "router" is smart enough to split the > request into headers and content, and in addition to insert an extra > HTTP header, then it's not a simple router. It's probably a HTTP proxy. > And it doesn't like persistent connections..mm. > Does it by any chance also downgrade the request to HTTP/1.0 ? > No, 1.1. Here's my original header: POST /BlackBoxServer/VR350 HTTP/1.1 Host: Content-Type:text/xml;charset=utf8 Content-Length:263 And the modified header: POST /BlackBoxServer/VR350 HTTP/1.1 Host: Content-Type:text/xml;charset=utf8 Connection:Close Content-Length:263 Looks like I should be sending connection:close anyway, since I'm through with the connection after I get the response. Maybe it is connection:close that makes Tomcat not send a chunk length. I don't know why Tomcat doesn't put a content-length header in that case. Here's Tomcats response to the request with the content:close: HTTP/1.1 200 OK Server: Apache-Coyote/1.1 Content-Type: text/xml;charset=utf-8 Date: Mon, 13 Jul 2009 20:09:31 GMT Connection: close http://www.nabble.com/chunked-encoding-tp23986311p24481908.html Sent from the Tomcat - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: [ERROR] Cannot create JDBC driver of class '' for connect URL 'null'
In the past, it's typically been caused by some misspell of the JNDI name between the element and the ... in the WEB-INF/web.xml. I'd have to go back to the original post to tell if that's the case here or not. Either that or the resource was declared as a global resource without the requisite in the context. Either way, it's typically a disconnect between the and it's use in the jsp/servlet code. Having said all that, I'm certain there are a few cases that blow what I just wrote out of the water. :-) --David Christopher Schultz wrote: > Chuck, > > On 7/14/2009 8:31 AM, Caldarale, Charles R wrote: > > The fact that the JDBC-ODBC bridge shows up in the stack trace says > > that your published config is not the one being used. > > Actually, I think it's the driver registration that's failing. Since the > DriverManager is being asked to get an appropriate driver for a > particular URL, all available drivers will be queried, including the > JdbcOdbcDriver. It's presence in the stack trace is misleading, but not > particularly troubling. > > What /is/ interesting is that this is the /first time ever/ I've seen a > complete stack trace including all the "Caused by" elements from someone > getting this error. I'll quote it because I think it's important: > > Caused by: org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create > JDBC driver of class '' for connect URL 'null' > at > org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1150) > at > org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSourcejava:880) > at > com.wirefast.wsam.service.WMSSubmissionService.getConnection(WMSSubmissionService.java:208) > at > com.wirefast.wsam.service.WMSSubmissionService.submitMessage(WMSSubmissionService.java:570) > ... 25 more > Caused by: java.lang.NullPointerException > at > sun.jdbc.odbc.JdbcOdbcDriver.getProtocol(JdbcOdbcDriver.java:507) > at sun.jdbc.odbc.JdbcOdbcDriver.knownURL(JdbcOdbcDriver.java:476) > at > sun.jdbc.odbc.JdbcOdbcDriver.acceptsURL(JdbcOdbcDriver.java:307) > at java.sql.DriverManager.getDriver(DriverManager.java:253) > at > org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1143) > ... 28 more > > > The root cause is a NullPointerException within the > JdbcOdbcDriver.acceptsURL call: basically, this driver is not properly > checking its arguments for null (it's probably doing something like > if(url.startsWith("jdbc:odbc:")) which means it'll blow up if the URL is > null. > > The URL may or may not be null, in spite of this error message. I wonder > if the message itself is inaccurate. I haven't traced through the code, > but it would be nice to know what's going on. > > This error has come up over and over on this list and the solution > usually ends up being that you just have to throw out your configuration > and start over again, and everything seems to work out just fine. It > would be nice to know what the real problem is. > > -chris - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: [OT] java.security.NoSuchAlgorithmException: No implementation for AES/CBC/NoPad
It is still working sometime and sometime not. Today itself out of 10 instance it worked in 7 instances when I run application on Tomcat. This is not possible currently to upgrade to 1.5 Christopher Schultz-2 wrote: > > -BEGIN PGP SIGNED MESSAGE- > Hash: SHA1 > > To whom it may concern, > > On 7/14/2009 3:15 AM, nitingautam wrote: >> I ran the program that Chris shown above following is the output: >> Provider: SUN version 1.42 > > I don't see anything about supported modes or padding. I have a 1.4.2 > JVM lying around and I also don't see those options shown by the > existing providers. > > Is it possible for you to upgrade to a newer JVM? By using my 1.5 or 1.6 > JVMs, I see all the options I showed in my previous message. > > My question now would be: how does this ever work for you>? > > - -chris > -BEGIN PGP SIGNATURE- > Version: GnuPG v1.4.9 (MingW32) > Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ > > iEYEARECAAYFAkpcnWoACgkQ9CaO5/Lv0PBw3gCgjPAm2IU7wrR0KSKxcG02lKaS > 0XcAn1/g5+iQjJF3ZzXbZl2odes+y3zr > =LTGb > -END PGP SIGNATURE- > > - > To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org > For additional commands, e-mail: users-h...@tomcat.apache.org > > > -- View this message in context: http://www.nabble.com/java.security.NoSuchAlgorithmException%3A-No-implementation-for-AES-CBC-NoPad-tp24410804p24481744.html Sent from the Tomcat - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: [ERROR] Cannot create JDBC driver of class '' for connect URL 'null'
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Chuck, On 7/14/2009 8:31 AM, Caldarale, Charles R wrote: > The fact that the JDBC-ODBC bridge shows up in the stack trace says > that your published config is not the one being used. Actually, I think it's the driver registration that's failing. Since the DriverManager is being asked to get an appropriate driver for a particular URL, all available drivers will be queried, including the JdbcOdbcDriver. It's presence in the stack trace is misleading, but not particularly troubling. What /is/ interesting is that this is the /first time ever/ I've seen a complete stack trace including all the "Caused by" elements from someone getting this error. I'll quote it because I think it's important: Caused by: org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'null' at org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1150) at org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSourcejava:880) at com.wirefast.wsam.service.WMSSubmissionService.getConnection(WMSSubmissionService.java:208) at com.wirefast.wsam.service.WMSSubmissionService.submitMessage(WMSSubmissionService.java:570) ... 25 more Caused by: java.lang.NullPointerException at sun.jdbc.odbc.JdbcOdbcDriver.getProtocol(JdbcOdbcDriver.java:507) at sun.jdbc.odbc.JdbcOdbcDriver.knownURL(JdbcOdbcDriver.java:476) at sun.jdbc.odbc.JdbcOdbcDriver.acceptsURL(JdbcOdbcDriver.java:307) at java.sql.DriverManager.getDriver(DriverManager.java:253) at org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1143) ... 28 more The root cause is a NullPointerException within the JdbcOdbcDriver.acceptsURL call: basically, this driver is not properly checking its arguments for null (it's probably doing something like if(url.startsWith("jdbc:odbc:")) which means it'll blow up if the URL is null. The URL may or may not be null, in spite of this error message. I wonder if the message itself is inaccurate. I haven't traced through the code, but it would be nice to know what's going on. This error has come up over and over on this list and the solution usually ends up being that you just have to throw out your configuration and start over again, and everything seems to work out just fine. It would be nice to know what the real problem is. - -chris -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.9 (MingW32) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAkpcoc8ACgkQ9CaO5/Lv0PALJACgj45GZ7AYEjHMTb8RLIK4lqAN nsQAoMBLjWnRKHdyEvMOjhJYitSaP/wp =r5kk -END PGP SIGNATURE- - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: chunked encoding
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Charlie, On 7/14/2009 9:11 AM, charliehnabble wrote: > See, there's a router in the > path that splits my POST into two IP datagrams, one containing the http > header and one contining the http payload (an xml message). It also adds > a "connection:close: header. Apparently splitting the http message and > adding "connection:close" cause Tomcat to send non-chunked. You have a router that is modifying HTTP messages? I think that's called something other than a router. - -chris -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.9 (MingW32) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAkpcnuEACgkQ9CaO5/Lv0PBi7ACfTBpdPKXGaz2fuU0VQbUYR6Li YZAAoJ5qo9YeaZqoio+Q4nOckh37FHz2 =S7mP -END PGP SIGNATURE- - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: [OT] java.security.NoSuchAlgorithmException: No implementation for AES/CBC/NoPad
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 To whom it may concern, On 7/14/2009 3:15 AM, nitingautam wrote: > I ran the program that Chris shown above following is the output: > Provider: SUN version 1.42 I don't see anything about supported modes or padding. I have a 1.4.2 JVM lying around and I also don't see those options shown by the existing providers. Is it possible for you to upgrade to a newer JVM? By using my 1.5 or 1.6 JVMs, I see all the options I showed in my previous message. My question now would be: how does this ever work for you>? - -chris -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.9 (MingW32) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAkpcnWoACgkQ9CaO5/Lv0PBw3gCgjPAm2IU7wrR0KSKxcG02lKaS 0XcAn1/g5+iQjJF3ZzXbZl2odes+y3zr =LTGb -END PGP SIGNATURE- - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: Manipulate other session
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Daniel, On 7/14/2009 12:14 AM, Daniel Henrique Alves Lima wrote: > On Mon, 2009-07-13 at 13:00 -0400, Christopher Schultz wrote: >>> As >>> Mikolaj Rydzewski said, you could perform a HTTP request using a >>> different JSESSIONID cookie or a ;jsessionid URL rewriting. >> This is possible. >> >> It's also possible to use a SessionListener to maintain your own list of >> sessions and then you can do whatever you want. >> >> The real question is why you want to do this in the first place. > > I don't. It is Yves' question. Sorry if I was unclear. I meant "the royal you" -- that is: The real question is why /one/ would want to do this in the first place. (Not you specifically). - -chris -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.9 (MingW32) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAkpcm+4ACgkQ9CaO5/Lv0PA8LACeKOfLEH7qf4gprUuzArLaO3U6 smcAnjplAMWa9S9JQHGKkTVX6heh1Dyj =lKFm -END PGP SIGNATURE- - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: Symlinks inside WEB-INF/classes not working for me
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Konstantin, On 7/13/2009 10:06 PM, Konstantin Kolinko wrote: > See how allowLinking and caseSensitive options are implemented in > StandardContext. They are not implemented in StandardContext: they are implemented in FileDirContext and therefore should only affect content being served by the web server, not JAR files being loaded from the CLASSPATH. Here is the full implementation of the FileDirContext.file(String) method, for those too lazy to follow the link: http://svn.apache.org/repos/asf/tomcat/tc6.0.x/tags/TOMCAT_6_0_20/java/org/apache/naming/resources/FileDirContext.java protected File file(String name) { File file = new File(base, name); if (file.exists() && file.canRead()) { if (allowLinking) return file; // Check that this file belongs to our root path String canPath = null; try { canPath = file.getCanonicalPath(); } catch (IOException e) { } if (canPath == null) return null; // Check to see if going outside of the web application root if (!canPath.startsWith(absoluteBase)) { return null; } // Case sensitivity check if (caseSensitive) { String fileAbsPath = file.getAbsolutePath(); if (fileAbsPath.endsWith(".")) fileAbsPath = fileAbsPath + "/"; String absPath = normalize(fileAbsPath); if (canPath != null) canPath = normalize(canPath); if ((absoluteBase.length() < absPath.length()) && (absoluteBase.length() < canPath.length())) { absPath = absPath.substring(absoluteBase.length() + 1); if ((canPath == null) || (absPath == null)) return null; if (absPath.equals("")) absPath = "/"; canPath = canPath.substring(absoluteBase.length() + 1); if (canPath.equals("")) canPath = "/"; if (!canPath.equals(absPath)) return null; } } } else { return null; } return file; } So, from looking at this code, it appears that Java does not "know" the difference between a symbolic link and a hard link: it just lets the filesystem reveal the canonical path to the file (which is almost certainly different from a symbolic link) and compares the original name with the canonical name. If they are different, a symlink is implied and therefore rejected. Again, this appears to be only for static content loaded by code like DefaultServlet, not a policy enforced by Tomcat across all file accesses. - -chris -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.9 (MingW32) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAkpcm6QACgkQ9CaO5/Lv0PAhUACdHVbATjp2xIkAVupWk4f9PzxR mV8AoK8wS1x3WUuHqX2XNDOZCk0SnuDk =P9Op -END PGP SIGNATURE- - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: chunked encoding
Caldarale, Charles R wrote: From: charliehnabble [mailto:nab...@hand-family.org] Subject: Re: chunked encoding Excuse me, by "packet" I meant IP datagram. Just a terminology nit: "datagram" normally refers to a UDP packet, and we're using TCP here. I'll add another nit: if the "router" is smart enough to split the request into headers and content, and in addition to insert an extra HTTP header, then it's not a simple router. It's probably a HTTP proxy. And it doesn't like persistent connections..mm. Does it by any chance also downgrade the request to HTTP/1.0 ? - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Configuring Apache Web Server with Tomcat
I am trying to configuring apache webserver with tomcat using AJP but i am not sure am i doing it right or not. Here are the steps that i followed - Enabled required module in httpd.conf file LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_ajp_module modules/mod_proxy_ajp.so - Added the ifModule condition in httpd.conf file ProxyPass / ajp://localhost:8009/ ProxyPassMatch ^(/photos/.*\.jpg)$! Alias /photos "F:\projects\AL\Photos" Options Indexes MultiViews AllowOverride None Order allow,deny Allow from all - Added the worker.properties file to Catalina_home/conf directory with follwoing properties worker.list=testWorker worker.testWorker.port=8009 worker.testWorker.host=localhost worker.testWorker.type=ajp13 - And finally adding the connector in server.xml file of tomcat Now i am trying to test to browse some JSP file at the following location " http://localhost:8009/examples/jsp/jsp2/el/basic-arithmetic.jsp"; which is working fine. but i want to browse this file at http://localhost/examples/jsp/jsp2/el/basic-arithmetic.jsp. Have i done it right or there is something else that i can do? ..alee http://techboard.wordpress.com
RE: [ERROR] Cannot create JDBC driver of class '' for connect URL 'null'
> From: Rainer Frey [mailto:rainer.f...@inxmail.de] > Subject: Re: [ERROR] Cannot create JDBC driver of class '' for connect > URL 'null' > > > Tomcat won't create the [engine]/[host] directory until it > > needs to, such as when copying a element from a > > META-INF/context.xml file. > > Has Tomcat 6 done that since initial release? No, the [appName].xml file used to be created just when expanding a .war (and possibly some other conditions). > To the OP: what exact version are you using? He's already shown us: 6.0.16. - Chuck THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers. - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
RE: [ERROR] Cannot create JDBC driver of class '' for connect URL'null'
> From: Mark Shifman [mailto:mark.shif...@yale.edu] > Subject: Re: [ERROR] Cannot create JDBC driver of class '' for connect > URL'null' > > My tomcat6/lib contains tomcat-dbcp.jar and I don't have > commons-dbcp-1.1.jar in my webapp at all. The OP is attempting to use his own DBCP pooling factory, not the Tomcat-supplied one. Not clear why he's doing that, but it does trigger a thought related to one of the OP's previous posts in this thread: > > Commons-dbcp-1.1.jar is in the > > /home/tomcat6/wsam/webapps/axis2/WEB-INF/lib > > directory. Which may well be the source of the problem. Since you've told Tomcat to manage the pooling, I suspect you'll need to put the commons-dbcp jar in Tomcat's lib directory, not the webapp's WEB-INF/lib. (Definitely don't put it in both.) - Chuck THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers. - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: [ERROR] Cannot create JDBC driver of class '' for connect URL 'null'
I wonder if somehow the factory classes are confused. My tomcat6/lib contains tomcat-dbcp.jar and I don't have commons-dbcp-1.1.jar in my webapp at all. I also don't have a factory attribute in my resource definition since the right one is picked up by default. (I think this changed in tomcat6) my 2 cents mas Neil Youngman wrote: > Rainer Frey (Inxmail GmbH) wrote: >> On Tuesday 14 July 2009 10:42:19 Neil Youngman wrote: >>> I'm having trouble getting Oracle access from Axis2 to work under >>> Tomcat 6. I've spent a lot of time Googling and prodding and poking >>> the application and I haven't found a solution that works for me. >>> >>> Oddly the configuration I'm using seems to work for another >>> application. >>> >>> Let's start with the configuration in axis2/META-INF/context.xml, >>> which is: >>> >>> >>> >>> >>> >> auth="Container" >>> type="javax.sql.DataSource" >>> factory="org.apache.commons.dbcp.BasicDataSourceFactory" >> You are explicitly specifying the original DBCP factory >> class "org.apache.commons.dbcp.BasicDataSourceFactory" here. Is this for >> specific reason, and is the jar file available (I believe it needs to be in >> tomcat's lib dir, though I'm not sure if the resource is application >> specific)? What happens if you leave out the factory attribute? > > That was copied from a working application that I mentioned previously. > Commons-dbcp-1.1.jar is in the /home/tomcat6/wsam/webapps/axis2/WEB-INF/lib > directory. > > If I remove the factory attribute it fails in exactly the same way. > >>> Caused by: org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create >>> JDBC driver of class '' for connect URL 'null' at >>> org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSourc >>> e.java:1150) at >>> org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSourceja >>> va:880) at >> Obviously the packaged and renamed tomcat DBCP factory is used. Maybe a >> tomcat >> fallback if the specified factory is not found? Also might there be a >> fallback for the JDBC driver if the driver is not found? > > That seems likely. > > The app I currently have works under tomcat5 and I haven't written any apps > from scratch under tomcat6. Maybe if I try to create a minimal app from > scratch, I'll get a little more insight into what is actually needed. > > Neil Youngman > > > > > > > - > To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org > For additional commands, e-mail: users-h...@tomcat.apache.org -- Mark Shifman MD. Ph.D. Yale Center for Medical Informatics Phone (203)737-5219 mark.shif...@yale.edu - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: [ERROR] Cannot create JDBC driver of class '' for connect URL 'null'
On Tuesday 14 July 2009 15:56:07 Caldarale, Charles R wrote: > > From: Neil Youngman [mailto:neil.young...@wirefast.com] > > Subject: RE: [ERROR] Cannot create JDBC driver of class '' for connect > > URL 'null' > > > > As an experiment I removed the WSAM directory and several restarts have > > not recreated it. > > Tomcat won't create the [engine]/[host] directory until it needs to, such > as when copying a element from a META-INF/context.xml file. Has Tomcat 6 done that since initial release? I vaguely remember reading s.th. related in 6.0.20 change log. To the OP: what exact version are you using? Rainer - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
RE: [ERROR] Cannot create JDBC driver of class '' for connect URL 'null'
> From: Neil Youngman [mailto:neil.young...@wirefast.com] > Subject: RE: [ERROR] Cannot create JDBC driver of class '' for connect > URL 'null' > > As an experiment I removed the WSAM directory and several restarts have > not recreated it. Tomcat won't create the [engine]/[host] directory until it needs to, such as when copying a element from a META-INF/context.xml file. Since that directory is not being created, either you're not running Tomcat from where you think you are, or the element in your webapp's META-INF/context.xml file is not being recognized. Might want to double-check spelling of everything, since the XML files are case-sensitive. Could also try a fresh install of 6.0.20 and see if that works. - Chuck THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers. - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
RE: [ERROR] Cannot create JDBC driver of class '' for connect URL 'null'
Caldarale, Charles R wrote: >> From: Neil Youngman [mailto:neil.young...@wirefast.com] >> Subject: RE: [ERROR] Cannot create JDBC driver of class '' for connect >> URL 'null' >> >> I should have realised that WSAM is the engine name from server.xml > > So what's under the WSAM directory? There was a localhost subdirectory, which was completely empty. As an experiment I removed the WSAM directory and several restarts have not recreated it. Neil Youngman - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
RE: [ERROR] Cannot create JDBC driver of class '' for connect URL 'null'
Rainer Frey (Inxmail GmbH) wrote: > On Tuesday 14 July 2009 10:42:19 Neil Youngman wrote: >> I'm having trouble getting Oracle access from Axis2 to work under >> Tomcat 6. I've spent a lot of time Googling and prodding and poking >> the application and I haven't found a solution that works for me. >> >> Oddly the configuration I'm using seems to work for another >> application. >> >> Let's start with the configuration in axis2/META-INF/context.xml, >> which is: >> >> >> >> >> > auth="Container" >> type="javax.sql.DataSource" >> factory="org.apache.commons.dbcp.BasicDataSourceFactory" > > You are explicitly specifying the original DBCP factory > class "org.apache.commons.dbcp.BasicDataSourceFactory" here. Is this for > specific reason, and is the jar file available (I believe it needs to be in > tomcat's lib dir, though I'm not sure if the resource is application > specific)? What happens if you leave out the factory attribute? That was copied from a working application that I mentioned previously. Commons-dbcp-1.1.jar is in the /home/tomcat6/wsam/webapps/axis2/WEB-INF/lib directory. If I remove the factory attribute it fails in exactly the same way. >> Caused by: org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create >> JDBC driver of class '' for connect URL 'null' at >> org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSourc >> e.java:1150) at >> org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSourceja >> va:880) at > > Obviously the packaged and renamed tomcat DBCP factory is used. Maybe a > tomcat > fallback if the specified factory is not found? Also might there be a > fallback for the JDBC driver if the driver is not found? That seems likely. The app I currently have works under tomcat5 and I haven't written any apps from scratch under tomcat6. Maybe if I try to create a minimal app from scratch, I'll get a little more insight into what is actually needed. Neil Youngman - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
RE: chunked encoding
> From: charliehnabble [mailto:nab...@hand-family.org] > Subject: Re: chunked encoding > > Excuse me, by "packet" I meant IP datagram. Just a terminology nit: "datagram" normally refers to a UDP packet, and we're using TCP here. - Chuck THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers. - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: chunked encoding
awarnier wrote: > > charliehnabble wrote: >> What if I WANT chunked? >> >> I have a device that sends http POST header and xml request payload in >> one >> packet. Tomcat responds chunked. However when an intervening router >> decides >> to split the http POST header and xml request into two packets, Tomcat >> responds non-chunked. > > On the face of it, that does not seem to make any sense. Whether Tomcat > sends the response chunked or not, shouldn't have anything to do with > the way the request comes in. At least not with whether it comes in as > one or two "packets" (definition of packet needed here). > It could have something to do with an "accept-encoding" HTTP request > header however. Excuse me, by "packet" I meant IP datagram. See, there's a router in the path that splits my POST into two IP datagrams, one containing the http header and one contining the http payload (an xml message). It also adds a "connection:close: header. Apparently splitting the http message and adding "connection:close" cause Tomcat to send non-chunked. BTW, Tomcat also doesn't send a content-length header, so if it's not chunked I don't know how long the message is. -- View this message in context: http://www.nabble.com/chunked-encoding-tp23986311p24479138.html Sent from the Tomcat - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
RE: [ERROR] Cannot create JDBC driver of class '' for connect URL 'null'
> From: Neil Youngman [mailto:neil.young...@wirefast.com] > Subject: RE: [ERROR] Cannot create JDBC driver of class '' for connect > URL 'null' > > I should have realised that WSAM is the engine name from server.xml So what's under the WSAM directory? - Chuck THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers. - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: [ERROR] Cannot create JDBC driver of class '' for connect URL 'null'
On Tuesday 14 July 2009 10:42:19 Neil Youngman wrote: > I'm having trouble getting Oracle access from Axis2 to work under > Tomcat 6. I've spent a lot of time Googling and prodding and poking > the application and I haven't found a solution that works for me. > > Oddly the configuration I'm using seems to work for another > application. > > Let's start with the configuration in axis2/META-INF/context.xml, > which is: > > > > >auth="Container" > type="javax.sql.DataSource" > factory="org.apache.commons.dbcp.BasicDataSourceFactory" You are explicitly specifying the original DBCP factory class "org.apache.commons.dbcp.BasicDataSourceFactory" here. Is this for specific reason, and is the jar file available (I believe it needs to be in tomcat's lib dir, though I'm not sure if the resource is application specific)? What happens if you leave out the factory attribute? > Caused by: org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create > JDBC driver of class '' for connect URL 'null' at > org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSourc >e.java:1150) at > org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSourceja >va:880) at Obviously the packaged and renamed tomcat DBCP factory is used. Maybe a tomcat fallback if the specified factory is not found? Also might there be a fallback for the JDBC driver if the driver is not found? Rainer - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
RE: [ERROR] Cannot create JDBC driver of class '' for connect URL 'null'
Rainer Frey wrote: > Maybe 'WSAM' is the engine name. Maybe the OP should post his complete > server.xml. Rainer is of course right. I should have realised that WSAM is the engine name from server.xml The server.xml is quite simple. $ cat /home/tomcat6/wsam/conf/server.xml Neil Youngman - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: [ERROR] Cannot create JDBC driver of class '' for connect URL 'null'
On Tuesday 14 July 2009 14:31:06 Caldarale, Charles R wrote: > > From: Neil Youngman [mailto:neil.young...@wirefast.com] > > Subject: RE: [ERROR] Cannot create JDBC driver of class '' for connect > > URL 'null' > > > > That's $CATALINA_BASE/conf, not $CATALINA_HOME/conf > > Regardless, the lack of an [engine] subdirectory is an indication that you > may not be running Tomcat from where you think you are. Maybe 'WSAM' is the engine name. Maybe the OP should post his complete server.xml. Rainer - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
RE: [ERROR] Cannot create JDBC driver of class '' for connect URL 'null'
Caldarale, Charles R wrote: >> From: Neil Youngman [mailto:neil.young...@wirefast.com] >> That's $CATALINA_BASE/conf, not $CATALINA_HOME/conf > > Regardless, the lack of an [engine] subdirectory is an indication that you > may not be running Tomcat from where you think you are. > > 1) What's in $CATALINA_HOME/conf? $ ls -l /usr/local/apache-tomcat-6.0.16/conf total 92 -rw---1 root root 8568 Jan 28 2008 catalina.policy -rw---1 root root 3665 Jan 28 2008 catalina.properties -rw---1 root root 1396 Jan 28 2008 context.xml -rw---1 root root 3664 Jan 28 2008 logging.properties -rw---1 root root 6462 Jan 28 2008 server.xml -rw---1 root root 1107 Jan 28 2008 tomcat-users.xml -rw---1 root root51226 Jan 28 2008 web.xml $ > 2) What do the startup scripts display for the $CATALINA_xxx variables when > you bring up Tomcat? Using CATALINA_BASE: /home/tomcat6/wsam Using CATALINA_HOME: /usr/local/apache-tomcat-6.0.16 Using CATALINA_TMPDIR: /home/tomcat6/wsam/temp Using JRE_HOME: /usr/java/jdk1.6.0_06 That looks correct to me, but as you say: > The fact that the JDBC-ODBC bridge shows up in the stack trace says that your > published config is not the one being used. The config is in /home/tomcat6/wsam/webapps/axis2/META-INF/context.xml Again that seems right to me, but obviously I am missing something. Neil Youngman - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
RE: Problems with data sources
> From: Александър Шопов [mailto:a...@contact.bg] > Subject: Problems with data sources > > The path attribute is illegal - remove it. (That's not the cause of the problem, however.) Make sure you don't have another element in conf/Catalina/[host]/[appName].xml - that will override the one in META-INF/context.xml, causing your declaration to be ignored. - Chuck THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers. - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
RE: [ERROR] Cannot create JDBC driver of class '' for connect URL 'null'
> From: Neil Youngman [mailto:neil.young...@wirefast.com] > Subject: RE: [ERROR] Cannot create JDBC driver of class '' for connect > URL 'null' > > That's $CATALINA_BASE/conf, not $CATALINA_HOME/conf Regardless, the lack of an [engine] subdirectory is an indication that you may not be running Tomcat from where you think you are. 1) What's in $CATALINA_HOME/conf? 2) What do the startup scripts display for the $CATALINA_xxx variables when you bring up Tomcat? The fact that the JDBC-ODBC bridge shows up in the stack trace says that your published config is not the one being used. - Chuck THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers. - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: Problems with data sources
I don't see anything immediately. The driver is in the right place, you've not made any errors in character case that I can see. Is there anything in your logs from the either the moment your webapp deployed or the moment you loaded your page? --David Александър Шопов wrote: > Hi guys, > After reading > http://tomcat.apache.org/tomcat-6.0-doc/jndi-datasource-examples-howto.html > and > http://tomcat.apache.org/tomcat-6.0-doc/config/context.html > I am still trying to configure tomcat 6.0.20 to use datasources. > > I could be doing something very wrong and silly but cannot realize what. > > Here are the relevant parts of my project: > = > 0. The web app is called test > 1. web.xml in WEB-INF > > xmlns="http://java.sun.com/xml/ns/javaee"; > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; > xsi:schemaLocation="http://java.sun.com/xml/ns/javaee > http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd";> > > > 30 > > > > index.jsp > > > My postgreSQL Datasource > MyDS > javax.sql.DataSource > Container > > > > 2. context.xml in META-INF (I undeploy and redeploy the app in order to > not use previous context.xml files) > > > > >auth="Container" > type="javax.sql.DataSource" > driverClassName="org.postgresql.Driver" > url="jdbc:postgresql://myhost:5432/mydb" > username="myusername" > password="mypassword" > maxActive="20" > maxIdle="10" > maxWait="-1"/> > > > 3. index.jsp : > <%@ page language="java" contentType="text/html;charset=UTF-8" > import="java.util.*, java.io.*, javax.naming.*" > %> > > > > > Datasource information > > > > Name > Exists > Type > toString > > <% > try { > Context initCtx = new InitialContext(); > Context envCtx = (Context) > initCtx.lookup("java:comp/env"); > String[] sources = {"MyDS"}; > > for (int i =0; i Object ds = envCtx.lookup(sources[i]); > boolean exist = (null == ds); > String className > =(exist)?ds.getClass().getName():"NULL"; > String show = (exist)?ds.toString():"NULL"; > > %> > > <%=sources[i]%> > <%=exist%> > <%=className%> > <%=show%> > > <% > } > } catch (Exception e) { %> > > > <%= e.toString() %> > > > <% > > } > %> > > > > > > 4. The lib dir of tomcat contains the postgres JDBC driver jar. > = > > The result that I get is when I open the index.jsp page is: > Name Exists Type toString > MyDS false NULL NULL > > What am I missing? How can I check what is going wrong? > > Kind regards: > al_shopov > > - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
RE: [ERROR] Cannot create JDBC driver of class '' for connect URL 'null'
Caldarale, Charles R wrote: >> From: Neil Youngman [mailto:neil.young...@wirefast.com] >> Subject: RE: [ERROR] Cannot create JDBC driver of class '' for connect >> URL 'null' >> >> Using CATALINA_BASE: /home/tomcat6/wsam >> >> $ ls -l /home/tomcat6/wsam/conf/ >> total 28 >> -rw-r--r--1 tomcat6 tomcat6 426 Jul 10 13:45 server.xml >> -rw-r--r--1 tomcat6 tomcat6 436 Jul 10 13:43 server.xml~ >> -rw-r--r--1 tomcat6 tomcat6 15305 Jul 8 14:26 transform.xsl >> drwxrwxr-x3 tomcat6 tomcat6 4096 Jan 28 14:09 WSAM >> $ > > It's unlikely that's the real Tomcat conf directory - there's not enough > stuff in there to get Tomcat started. You either have a very broken > installation, or the Tomcat you're actually using is installed somewhere else. That's $CATALINA_BASE/conf, not $CATALINA_HOME/conf Neil Youngman Neil Youngman Developer Wirefast Limited Wirefast provides secure corporate messaging services. See our messaging solutions at http://www.wirefast.com/ Please consider the environment. Does this email or attachment need to be printed? This message contains confidential information and is intended only for the individual named. If you are not the named addressee you should not disseminate, distribute or copy this email. Please notify the sender immediately by email if you have received this email by mistake and delete this email from your system. Email transmission cannot be guaranteed to be secure or error-free as information could be intercepted, corrupted, lost, destroyed, arrive late or incomplete, or contain viruses. The sender therefore does not accept liability for any errors or omissions in the contents of this message which arise as a result of email transmission. Wirefast Limited is registered in England & Wales Company number: 03865860 Registered Office: 7/10 Chandos Street, Cavendish Square, London, W1G 9DQ
RE: [ERROR] Cannot create JDBC driver of class '' for connect URL 'null'
> From: Neil Youngman [mailto:neil.young...@wirefast.com] > Subject: RE: [ERROR] Cannot create JDBC driver of class '' for connect > URL 'null' > > Using CATALINA_BASE: /home/tomcat6/wsam > > $ ls -l /home/tomcat6/wsam/conf/ > total 28 > -rw-r--r-- 1 tomcat6 tomcat6 426 Jul 10 13:45 server.xml > -rw-r--r-- 1 tomcat6 tomcat6 436 Jul 10 13:43 server.xml~ > -rw-r--r-- 1 tomcat6 tomcat6 15305 Jul 8 14:26 transform.xsl > drwxrwxr-x 3 tomcat6 tomcat6 4096 Jan 28 14:09 WSAM > $ It's unlikely that's the real Tomcat conf directory - there's not enough stuff in there to get Tomcat started. You either have a very broken installation, or the Tomcat you're actually using is installed somewhere else. I'd suggest starting over with a clean installation and work up from there. - Chuck THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers. - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
RE: Tomcat 5.5.23 keeps starting threads until OS runs out of memory
> From: Rahman Akhlaqur [mailto:aki...@yahoo.co.uk] > Subject: Re: Tomcat 5.5.23 keeps starting threads until OS runs out of > memory > > I have some more info about the issue that I think is related. I found > our Tomcat executable is also establishing a lot of TCP connections. Tomcat isn't, your webapp is. Don't blame Tomcat for your misbehaving code. > Is this some sort of tomcat ping? No, it's your webapp opening up some sort of connection - likely RMI, judging from your stack trace. > Our tomcat connectors are set up to limit the max http threads as below That's irrelevant, since it's your webapp starting the extra threads. > The only timeouts are for the http requests, are there any other > timeouts I can configure that could potentially stop all those selector > threads from persisting? Whatever you can configure in your webapp - this is a problem with your code, not with Tomcat. - Chuck THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers. - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: Tomcat 5.5.23 keeps starting threads until OS runs out of memory
I have some more info about the issue that I think is related. I found our Tomcat executable is also establishing a lot of TCP connections. just doing a simple netstat just after I start tomcat and comparing it to when thread count for tomcat reaches 2000, I found a lot more lines like TCP 127.0.0.1:4912 127.0.0.1:2170 ESTABLISHED 4064 [tomcat5.exe] TCP 127.0.0.1:4912 127.0.0.1:4913 ESTABLISHED 4064 [tomcat5.exe] TCP 127.0.0.1:4913 127.0.0.1:4912 ESTABLISHED 4064 [tomcat5.exe] TCP 127.0.0.1:4914 127.0.0.1:4917 ESTABLISHED 4064 [tomcat5.exe] Is this some sort of tomcat ping? Our tomcat connectors are set up to limit the max http threads as below The only timeouts are for the http requests, are there any other timeouts I can configure that could potentially stop all those selector threads from persisting? - Original Message From: "Caldarale, Charles R" To: Tomcat Users List Sent: Tuesday, 14 July, 2009 2:59:36 Subject: RE: Tomcat 5.5.23 keeps starting threads until OS runs out of memory > From: Christopher Schultz [mailto:ch...@christopherschultz.net] > Subject: Re: Tomcat 5.5.23 keeps starting threads until OS runs out of > memory > > I'm surprised you're not hitting a thread maximum in the OS > and halting the JVM. I'm not aware of any hard limit in Windows; regardless, hitting such a limit just returns an error status on the system call, not a process abort. > Showing more of the stack trace will certainly help reveal the problem. Not likely; that will only show the stack of the started thread, not where it was started from. A heap profiler should show who created the Thread objects, if the profiler captures enough of the call stack at object creation time. One would think a grep of the webapp source for calls to start() would be a rather quick first cut if a profiler can't be used. If the source isn't available, then one possible way to trap the origin of the Thread.start() call is to enable a security manager and only allow start() calls from Tomcat, not webapp, code. This would probably require several iterations and would be somewhat tedious. - Chuck THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers. - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Problems with data sources
Hi guys, After reading http://tomcat.apache.org/tomcat-6.0-doc/jndi-datasource-examples-howto.html and http://tomcat.apache.org/tomcat-6.0-doc/config/context.html I am still trying to configure tomcat 6.0.20 to use datasources. I could be doing something very wrong and silly but cannot realize what. Here are the relevant parts of my project: = 0. The web app is called test 1. web.xml in WEB-INF http://java.sun.com/xml/ns/javaee"; xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd";> 30 index.jsp My postgreSQL Datasource MyDS javax.sql.DataSource Container 2. context.xml in META-INF (I undeploy and redeploy the app in order to not use previous context.xml files) 3. index.jsp : <%@ page language="java" contentType="text/html;charset=UTF-8" import="java.util.*, java.io.*, javax.naming.*" %> Datasource information Name Exists Type toString <% try { Context initCtx = new InitialContext(); Context envCtx = (Context) initCtx.lookup("java:comp/env"); String[] sources = {"MyDS"}; for (int i =0; i <%=sources[i]%> <%=exist%> <%=className%> <%=show%> <% } } catch (Exception e) { %> <%= e.toString() %> <% } %> 4. The lib dir of tomcat contains the postgres JDBC driver jar. = The result that I get is when I open the index.jsp page is: Name Exists Type toString MyDS false NULL NULL What am I missing? How can I check what is going wrong? Kind regards: al_shopov - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
RE: [ERROR] Cannot create JDBC driver of class '' for connect URL 'null'
Konstantin Kolinko wrote: > Look at $CATALINA_BASE/conf/Catalina/localhost/.xml > > That is a copy of your context.xml file that Tomcat creates when the > app is deployed. This copy takes precedence over its original. Maybe > your Resource isn't defined there. I can't see any sign that tomcat is creating such a file. There is no $CATALINA_BASE/conf/Catalina directory. Using CATALINA_BASE: /home/tomcat6/wsam $ ls -l /home/tomcat6/wsam/conf/ total 28 -rw-r--r--1 tomcat6 tomcat6 426 Jul 10 13:45 server.xml -rw-r--r--1 tomcat6 tomcat6 436 Jul 10 13:43 server.xml~ -rw-r--r--1 tomcat6 tomcat6 15305 Jul 8 14:26 transform.xsl drwxrwxr-x3 tomcat6 tomcat6 4096 Jan 28 14:09 WSAM $ Directory WSAM just contains an empty localhost subdirectory. Neil Youngman Neil Youngman Developer Wirefast Limited Wirefast provides secure corporate messaging services. See our messaging solutions at http://www.wirefast.com/ Please consider the environment. Does this email or attachment need to be printed? This message contains confidential information and is intended only for the individual named. If you are not the named addressee you should not disseminate, distribute or copy this email. Please notify the sender immediately by email if you have received this email by mistake and delete this email from your system. Email transmission cannot be guaranteed to be secure or error-free as information could be intercepted, corrupted, lost, destroyed, arrive late or incomplete, or contain viruses. The sender therefore does not accept liability for any errors or omissions in the contents of this message which arise as a result of email transmission. Wirefast Limited is registered in England & Wales Company number: 03865860 Registered Office: 7/10 Chandos Street, Cavendish Square, London, W1G 9DQ
Re: [ERROR] Cannot create JDBC driver of class '' for connect URL 'null'
2009/7/14 Neil Youngman : > I'm having trouble getting Oracle access from Axis2 to work under > Tomcat 6. I've spent a lot of time Googling and prodding and poking > the application and I haven't found a solution that works for me. > > Oddly the configuration I'm using seems to work for another > application. > > Let's start with the configuration in axis2/META-INF/context.xml, > which is: > (...) Look at $CATALINA_BASE/conf/Catalina/localhost/.xml That is a copy of your context.xml file that Tomcat creates when the app is deployed. This copy takes precedence over its original. Maybe your Resource isn't defined there. - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
RE: [ERROR] Cannot create JDBC driver of class '' for connect URL 'null'
> Perhaps you should try the Tomcat configuration method then: > > http://tomcat.apache.org/tomcat-6.0-doc/jndi-datasource-examples-howto.html Oddly enough, my configuration matches the Oracle example in that document, as far as I can see, possibly because I've read that document half a dozen times while searching for a solution. If you can see where my configuration differs from that in the document (obviously excluding local names), feel free to provide a helpful answer. Neil Youngman Neil Youngman Developer Wirefast Limited Wirefast provides secure corporate messaging services. See our messaging solutions at http://www.wirefast.com/ Please consider the environment. Does this email or attachment need to be printed? This message contains confidential information and is intended only for the individual named. If you are not the named addressee you should not disseminate, distribute or copy this email. Please notify the sender immediately by email if you have received this email by mistake and delete this email from your system. Email transmission cannot be guaranteed to be secure or error-free as information could be intercepted, corrupted, lost, destroyed, arrive late or incomplete, or contain viruses. The sender therefore does not accept liability for any errors or omissions in the contents of this message which arise as a result of email transmission. Wirefast Limited is registered in England & Wales Company number: 03865860 Registered Office: 7/10 Chandos Street, Cavendish Square, London, W1G 9DQ
Re: [ERROR] Cannot create JDBC driver of class '' for connect URL 'null'
On 14/7/09 09:42, Neil Youngman wrote: I'm having trouble getting Oracle access from Axis2 to work under Tomcat 6. I've spent a lot of time Googling and prodding and poking the application and I haven't found a solution that works for me. > Oddly the configuration I'm using seems to work for another application. Perhaps you should try the Tomcat configuration method then: http://tomcat.apache.org/tomcat-6.0-doc/jndi-datasource-examples-howto.html p Let's start with the configuration in axis2/META-INF/context.xml, which is: this seems to work for another app, without a resource-ref, but this app gets the "javax.naming.NameNotFoundException: Name jdbc is not bound in this Context". To resolve this I add the following resource-ref in axis2/WEB-INF/web.xml: DB Connection jdbc/AppDatabase javax.sql.DataSource Container I now get "org.apache.axis2.AxisFault: Cannot create JDBC driver of class '' for connect URL 'null'". The full stack trace is: [ERROR] Cannot create JDBC driver of class '' for connect URL 'null' java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.axis2.rpc.receivers.RPCUtil.invokeServiceClass(RPCUtil.java:194) at org.apache.axis2.rpc.receivers.RPCMessageReceiver.invokeBusinessLogic(RPCMessageReceiver.java:102) at org.apache.axis2.receivers.AbstractInOutMessageReceiver.invokeBusinessLogic(AbstractInOutMessageReceiver.java:40) at org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:100) at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:176) at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275) at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:133) at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValvejava:233) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValvejava:175) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) at java.lang.Thread.run(Thread.java:619) Caused by: org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'null' at org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1150) at org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSourcejava:880) at com.wirefast.wsam.service.WMSSubmissionService.getConnection(WMSSubmissionService.java:208) at com.wirefast.wsam.service.WMSSubmissionService.submitMessage(WMSSubmissionService.java:570) ... 25 more Caused by: java.lang.NullPointerException at sun.jdbc.odbc.JdbcOdbcDriver.getProtocol(JdbcOdbcDriver.java:507) at sun.jdbc.odbc.JdbcOdbcDriver.knownURL(JdbcOdbcDriver.java:476) at sun.jdbc.odbc.JdbcOdbcDriver.acceptsURL(JdbcOdbcDriver.java:307) at java.sql.DriverManager.getDriver(DriverManager.java:253) at org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1143) ... 28 more Obviously something isn't right, but I can't figure out where the problem lies. Maybe the fact that it is invoking sun.jdbc.odbc.JdbcOdbcDriver instead of oracle.jdbc.OracleDriver is a clue? Or am I missing something else? Neil Youngman Neil Youngman Developer Wirefast Limited Wirefast provides secure corporate messaging services. See our messaging solutions at _http://www.wirefast.com/_ Please consider the environment. Does this email or attachment need to be printed? This message contains confidential information and is intended only for the individual named. If you are not the named addressee you should not disseminate, distribute or copy this email. Please notify the sender immediately by email if you have received this email by mistake and delete this email from your system. Email transmission cannot be guaranteed to be secure or error-free as information could be intercepted, corrupted, lost, destroyed, arrive late or incomplete,
[ERROR] Cannot create JDBC driver of class '' for connect URL 'null'
I'm having trouble getting Oracle access from Axis2 to work under Tomcat 6. I've spent a lot of time Googling and prodding and poking the application and I haven't found a solution that works for me. Oddly the configuration I'm using seems to work for another application. Let's start with the configuration in axis2/META-INF/context.xml, which is: this seems to work for another app, without a resource-ref, but this app gets the "javax.naming.NameNotFoundException: Name jdbc is not bound in this Context". To resolve this I add the following resource-ref in axis2/WEB-INF/web.xml: DB Connection jdbc/AppDatabase javax.sql.DataSource Container I now get "org.apache.axis2.AxisFault: Cannot create JDBC driver of class '' for connect URL 'null'". The full stack trace is: [ERROR] Cannot create JDBC driver of class '' for connect URL 'null' java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.axis2.rpc.receivers.RPCUtil.invokeServiceClass(RPCUtil.java:194) at org.apache.axis2.rpc.receivers.RPCMessageReceiver.invokeBusinessLogic(RPCMessageReceiver.java:102) at org.apache.axis2.receivers.AbstractInOutMessageReceiver.invokeBusinessLogic(AbstractInOutMessageReceiver.java:40) at org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:100) at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:176) at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275) at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:133) at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValvejava:233) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValvejava:175) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) at java.lang.Thread.run(Thread.java:619) Caused by: org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'null' at org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1150) at org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSourcejava:880) at com.wirefast.wsam.service.WMSSubmissionService.getConnection(WMSSubmissionService.java:208) at com.wirefast.wsam.service.WMSSubmissionService.submitMessage(WMSSubmissionService.java:570) ... 25 more Caused by: java.lang.NullPointerException at sun.jdbc.odbc.JdbcOdbcDriver.getProtocol(JdbcOdbcDriver.java:507) at sun.jdbc.odbc.JdbcOdbcDriver.knownURL(JdbcOdbcDriver.java:476) at sun.jdbc.odbc.JdbcOdbcDriver.acceptsURL(JdbcOdbcDriver.java:307) at java.sql.DriverManager.getDriver(DriverManager.java:253) at org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1143) ... 28 more Obviously something isn't right, but I can't figure out where the problem lies. Maybe the fact that it is invoking sun.jdbc.odbc.JdbcOdbcDriver instead of oracle.jdbc.OracleDriver is a clue? Or am I missing something else? Neil Youngman Neil Youngman Developer Wirefast Limited Wirefast provides secure corporate messaging services. See our messaging solutions at http://www.wirefast.com/ Please consider the environment. Does this email or attachment need to be printed? This message contains confidential information and is intended only for the individual named. If you are not the named addressee you should not disseminate, distribute or copy this email. Please notify the sender immediately by email if you have received this email by mistake and delete this email from your s
Re: reply timeout, connect_timeout and preprost_timeout values
Thanks for the prompt reply. Yes. I did read the following howto document on timeout and also the mail thread http://www.mailinglistarchive.com/users@tomcat.apache.org/msg28345.html After reading the timeout howto once again, many things are becoming clear. Thanks for such a good document. As I was reading the timeout howto once again, one question came to my mind. What is the difference between socket_timeout and socket_connect_timeout? socket_timeout is used for TCP send/receive timeouts. Does socket_connect_timeout indicate failure to establish socket connection? One question regardig recovery. Every maintainence period it tries to recover worker in ERR state. I see the state being changed to ERR/REC. What does it exactly do during recovery? Are the real new requests sent to the worker in ERR/REC state? At present, we have recorvey option, reply_timeout set to default. ping_mode is not set. If it does try a real new request with a worker during ERR/REC state and if request doesn't succeed then the request is sent to a good worker? We have mod_jk load balancer running in production. We are using load balancer with 19 mod_jk workers. We noticed that even though 10 out of 19 tomcat workers are in good state, some times web site is unresponsive for few minutes. Thats why, I was wondering if somehow the requests are still being sent to 9 workers which are in bad state. Perhaps, this is happening during the transition when a worker goes bad but it takes time for the load balancer to detect that. This was setup by somebody else and prepost_timeout, ping_mode, reply_timeout and recovery_options are not set. I am hoping that after setting these timeout values we will not see these issue. I will be setting these timeout values in production system, so are there anythings I should be careful about? Thanks a lot. Madhuri --- On Tue, 7/14/09, Rainer Jung wrote: > From: Rainer Jung > Subject: Re: reply timeout, connect_timeout and preprost_timeout values > To: "Tomcat Users List" > Date: Tuesday, July 14, 2009, 2:14 AM > On 14.07.2009 04:34, Madhuri > Patwardhan wrote: > > Did you read the docs page about timeouts: > > http://tomcat.apache.org/connectors-doc/generic_howto/timeouts.html > > If you are very concerned about timeouts, use version > 1.2.28, because it > has an additional socket_connect_timeout. > > > connect_timeout and preprost_timeout what would be the > typical > > values? something like "5000" or less/more? > > I wouldn't choose less. The ping timeout usually shouldn't > fire. By > going to extremes, very small problems might lead to an > unacceptable big > reaction (taking a worker out of balancing, only because a > ping took a > second or so). > > Note, that in 1.2.28 there is an alternative unified way of > setting the > ping_timeout. > > > I also wonder if I specify prepost_timeout then it > would mean now > > each request would take that much additional > time?Before serving > > each request cping/cpong would be tried with timeout > value of > > prepost_timeout so that adds little delay to serving > the request?? > > Yes, before each request it adds a little latency, but > usually only very > few milliseconds, because the ping processing is very > simple. It adds > roughly double the network latency between your Apache and > Tomcat, which > for a normal LAN will be a single digit millisecond > number. > > I usually rate the improved stability higher than this > additional > resource use and latency. > > > Also, a typical value for recovery_options would be > "3". > > ... or "7". > > Concerning reply timeout: Also set max_reply_timeouts. > Don't push > reply_timeouts to low. In 1.2.28 you can set a general > reply_timeout and > set more specific ones for individual URL patterns, e.g. if > you have > some URLs that you expect to respond very sow (report > generation etc.). > This is done using extensions. See > > http://tomcat.apache.org/connectors-doc/reference/uriworkermap.html#Rule%20extensions > > Regards, > > Rainer > > - > To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org > For additional commands, e-mail: users-h...@tomcat.apache.org > > - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: Jakarta Connector 1.2.28 with Windows Server 2008 64bit, IIS 7.0 and Tomcat 6.0.18
Hello, Thanks for your answer. I have finally found a solution to this problem. In the Application pools in the advanced settings is an option 'Enable 32-Bit Applications' which was set to TRUE. After disabling this option the IIS was able to load the dll. The reason that the webapp was not found is because I missed a / at the end of the url. Regards, Simon. Rainer Jung schrieb: On 13.07.2009 15:04, Simon Kulessa wrote: Hello, I am trying to configure IIS 7.0 and Tomcat 6.0.18 with the JK 1.2.28 Connector. OS is Windows Server 2008 64bit. I have followed the tutorial from http://www.iisadmin.co.uk/?p=72 but all i get is a 404 error. It seems that the isapi_redirector.dll is not loaded. Let me explain what I have done to this point ... I have installed Tomcat under C:\Tomcat\, replaced the Tomcat executables with the amd 64bit versions from the repository and added a ISAPI directory. You are sure, that not only your windows is 64 Bit but also IIS runs in 64 Bit mode? Then I copied the isapi_redirect.dll (the amd64 bit version) into it and created a properties file as described in http://tomcat.apache.org/connectors-doc/reference/iis.html. Did you also allow the extension as indicated by number 9. in http://tomcat.apache.org/connectors-doc/webserver_howto/iis.html#Configuring%20the%20ISAPI%20Redirector The workers.properties and uriworkermap.properties were updated accordingly. Afterwards I added a virtual directory in the IIS with the name jakarta pointing to the ISAPI folder. The directory structure is like this: C:\ -Tomcat\ --ISAPI\ --webapps\ ---test-webapp\ I can access my sample web application via tomcat, but if I try to access it via the IIS I receive a 404 Error. If I access the webapp via http://localhost/test-webapp I get the message that the physical path is supposed to be C:\inteput\wwwroot\test-webapp. If I add the virtual folter to the path (http://localhost/jakarta/test-webapp) I get the message that the physical path is supposed to be C:\Tomcat\ISAPI\test-webapp. The log as described in the isapi_redirector.properties file has not been created and when I execute the command "tasklist /m is*" no result is found, which indicates that the dll was not loaded. That's indeed bad. Just to make sure: did you set your log level to something reasonable verbose (like debug)? Even with info, there should at least be a line giving the version of the redirector used. For debugging "debug" would be better (for production switch back to "info"). Regards, Rainer - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: [OT] java.security.NoSuchAlgorithmException: No implementation for AES/CBC/NoPad
I ran the program that Chris shown above following is the output: Provider: SUN version 1.42 === provider properties: Alg.Alias.AlgorithmParameters.1.2.840.10040.4.1=DSA Alg.Alias.AlgorithmParameters.1.3.14.3.2.12=DSA Alg.Alias.CertificateFactory.X509=X.509 Alg.Alias.KeyFactory.1.2.840.10040.4.1=DSA Alg.Alias.KeyFactory.1.3.14.3.2.12=DSA Alg.Alias.KeyPairGenerator.1.2.840.10040.4.1=DSA Alg.Alias.KeyPairGenerator.1.3.14.3.2.12=DSA Alg.Alias.KeyPairGenerator.OID.1.2.840.10040.4.1=DSA Alg.Alias.MessageDigest.SHA-1=SHA Alg.Alias.MessageDigest.SHA1=SHA Alg.Alias.Signature.1.2.840.10040.4.3=SHA1withDSA Alg.Alias.Signature.1.3.14.3.2.13=SHA1withDSA Alg.Alias.Signature.1.3.14.3.2.27=SHA1withDSA Alg.Alias.Signature.DSA=SHA1withDSA Alg.Alias.Signature.DSAWithSHA1=SHA1withDSA Alg.Alias.Signature.DSS=SHA1withDSA Alg.Alias.Signature.OID.1.2.840.10040.4.3=SHA1withDSA Alg.Alias.Signature.SHA-1/DSA=SHA1withDSA Alg.Alias.Signature.SHA/DSA=SHA1withDSA Alg.Alias.Signature.SHA1/DSA=SHA1withDSA Alg.Alias.Signature.SHAwithDSA=SHA1withDSA AlgorithmParameterGenerator.DSA=sun.security.provider.DSAParameterGenerator AlgorithmParameterGenerator.DSA ImplementedIn=Software AlgorithmParameterGenerator.DSA KeySize=1024 AlgorithmParameters.DSA=sun.security.provider.DSAParameters AlgorithmParameters.DSA ImplementedIn=Software CertPathBuilder.PKIX=sun.security.provider.certpath.SunCertPathBuilder CertPathBuilder.PKIX ImplementedIn=Software CertPathBuilder.PKIX ValidationAlgorithm=RFC3280 CertPathValidator.PKIX=sun.security.provider.certpath.PKIXCertPathValidator CertPathValidator.PKIX ImplementedIn=Software CertPathValidator.PKIX ValidationAlgorithm=RFC3280 CertStore.Collection=sun.security.provider.certpath.CollectionCertStore CertStore.Collection ImplementedIn=Software CertStore.LDAP=sun.security.provider.certpath.LDAPCertStore CertStore.LDAP ImplementedIn=Software CertStore.LDAP LDAPSchema=RFC2587 CertStore.com.sun.security.IndexedCollection=sun.security.provider.certpath.IndexedCollectionCertStore CertStore.com.sun.security.IndexedCollection ImplementedIn=Software CertificateFactory.X.509=sun.security.provider.X509Factory CertificateFactory.X.509 ImplementedIn=Software KeyFactory.DSA=sun.security.provider.DSAKeyFactory KeyFactory.DSA ImplementedIn=Software KeyPairGenerator.DSA=sun.security.provider.DSAKeyPairGenerator KeyPairGenerator.DSA ImplementedIn=Software KeyPairGenerator.DSA KeySize=1024 KeyStore.CaseExactJKS=sun.security.provider.JavaKeyStore$CaseExactJKS KeyStore.JKS=sun.security.provider.JavaKeyStore$JKS KeyStore.JKS ImplementedIn=Software MessageDigest.MD5=sun.security.provider.MD5 MessageDigest.MD5 ImplementedIn=Software MessageDigest.SHA=sun.security.provider.SHA MessageDigest.SHA ImplementedIn=Software MessageDigest.SHA-256=sun.security.provider.SHA2 MessageDigest.SHA-384=sun.security.provider.SHA3 MessageDigest.SHA-512=sun.security.provider.SHA5 SecureRandom.SHA1PRNG=sun.security.provider.SecureRandom SecureRandom.SHA1PRNG ImplementedIn=Software Signature.SHA1withDSA=sun.security.provider.DSA Signature.SHA1withDSA ImplementedIn=Software Signature.SHA1withDSA KeySize=1024 --- Provider: SunJSSE version 1.42 === provider properties: Alg.Alias.KeyFactory.1.2.840.113549.1.1=RSA Alg.Alias.KeyFactory.OID.1.2.840.113549.1.1=RSA Alg.Alias.KeyPairGenerator.1.2.840.113549.1.1=RSA Alg.Alias.KeyPairGenerator.OID.1.2.840.113549.1.1=RSA Alg.Alias.Signature.1.2.840.113549.1.1.2=MD2withRSA Alg.Alias.Signature.1.2.840.113549.1.1.4=MD5withRSA Alg.Alias.Signature.1.2.840.113549.1.1.5=SHA1withRSA Alg.Alias.Signature.1.3.14.3.2.29=SHA1withRSA Alg.Alias.Signature.OID.1.2.840.113549.1.1.2=MD2withRSA Alg.Alias.Signature.OID.1.2.840.113549.1.1.4=MD5withRSA Alg.Alias.Signature.OID.1.2.840.113549.1.1.5=SHA1withRSA Alg.Alias.Signature.OID.1.3.14.3.2.29=SHA1withRSA KeyFactory.RSA=com.sun.net.ssl.internal.ssl.JSA_RSAKeyFactory KeyManagerFactory.SunX509=com.sun.net.ssl.internal.ssl.KeyManagerFactoryImpl KeyPairGenerator.RSA=com.sun.net.ssl.internal.ssl.JSA_RSAKeyPairGenerator KeyStore.PKCS12=com.sun.net.ssl.internal.ssl.PKCS12KeyStore SSLContext.SSL=com.sun.net.ssl.internal.ssl.SSLContextImpl SSLContext.SSLv3=com.sun.net.ssl.internal.ssl.SSLContextImpl SSLContext.TLS=com.sun.net.ssl.internal.ssl.SSLContextImpl SSLContext.TLSv1=com.sun.net.ssl.internal.ssl.SSLContextImpl Signature.MD2withRSA=com.sun.net.ssl.internal.ssl.JSA_MD2RSASignature Signature.MD5withRSA=com.sun.net.ssl.internal.ssl.JSA_MD5RSASignature Signature.SHA1withRSA=com.sun.net.ssl.internal.ssl.JSA_SHA1RSASignature TrustManagerFactory.SunPKIX=com.sun.net.ssl.internal.ssl.TrustManagerFactoryImpl$PKIXFactory TrustManagerFactory.SunX509=com.sun.net.ssl.internal.ssl.TrustManagerFactoryImpl$SimpleFactory --- Provider: SunRsaSign version 1.42 === provider properties: Alg.Alias.KeyFactory.1.2.840.113549.1.1=RSA Alg.Alias.KeyFactory.OID.1.2.840.113549.1.1=RSA