Thread: JServ + PostgreSQL 6.3
Hello All, I have JDK 1.1.6 and JServ 0.9.11 on Apache 1.3.3. I am able to get the servlets to work but I am not able to get the servlets which access the postgresql 6.3 JDBC to work correctly. I get the following message in the JServ error file. Exception creating server socket: java.net.BindException: Address already in use /usr/local/java/bin/../bin/checkVersions: /tmp/ldd.out.363: Permission denied /usr/local/java/bin/../bin/checkVersions: /tmp/ldd.out.363: No such file or directory For your information, all users have been given complete read/write access to the /tmp directory. By the way, the servlet runs perfectly well when executed seperately and not as a servlet albeit with the following error messages. /usr/local/java/bin/../bin/checkVersions: /tmp/ldd.out.363: Permission denied /usr/local/java/bin/../bin/checkVersions: /tmp/ldd.out.363: No such file or directory I have given below the parts from the httpd.conf file httpd.conf --------------------------------------------------------------- <IfModule mod_jserv.c> ServletProperties /usr/local/java/jserv/servlet.properties ServletBinary /usr/local/java/bin/java ServletClassPath /usr/local/java/lib/classes.zip:/usr/local/java/jserv/servclas ses.zip:/usr/local/java/jserv/classes ServletEnvironment NS_JAVA true #ServletClassPath /usr/local/java/jserv/servclasses.zip #ServletClassPath /usr/local/java/jserv/src ServletAlias /servlets /usr/local/java/jserv/servlets ServletErrorLog /usr/local/java/jserv/jserv_errors.log ServletAuthExport On AddHandler jhtml-parser .jhtml Action jhtml-parser /usr/local/java/jserv/servlets/org.apache.j serv.JServSSI </IfModule> Any ideas ? Any help will be greatly appreciated. Do I need to make any specific changes in the servlet.properties file ? Regards, Prem
On Wed, 6 Jan 1999, Prem Kurian Philip wrote: > Hello All, > I have JDK 1.1.6 and JServ 0.9.11 on Apache 1.3.3. I am able to get the > servlets to work but I am not able to get the servlets which access > the postgresql 6.3 JDBC to work correctly. > > I get the following message in the JServ error file. > > Exception creating server socket: java.net.BindException: Address already > in use > /usr/local/java/bin/../bin/checkVersions: /tmp/ldd.out.363: Permission denied > /usr/local/java/bin/../bin/checkVersions: /tmp/ldd.out.363: No such file or > directory I've got 1.1.6 installed on my linux box, and it doesn't have a checkVersions file. What platform are you running the JDK on? Any how, /tmp/ldd.out.363 looks to me like a temporary file being generated by a script using the ldd tool to test compiled binaries, possibly by the JDK to make sure everything is ok before starting. > For your information, all users have been given complete read/write access > to the /tmp directory. The first line would have indicated a permissions problem, but as you say, you have given everyone full access to /tmp > By the way, the servlet runs perfectly well when executed seperately and not > as a servlet albeit with the following error messages. > > /usr/local/java/bin/../bin/checkVersions: /tmp/ldd.out.363: Permission denied > /usr/local/java/bin/../bin/checkVersions: /tmp/ldd.out.363: No such file or > directory What happens if you run some other java code? If you wrote a simple "Hello World" style program in Java, do you get the same thing? > I have given below the parts from the httpd.conf file I don't think it's here. I think it's something to do with either your JDK or JServ installation. > Any ideas ? Any help will be greatly appreciated. Do I need to make > any specific changes in the servlet.properties file ? Let me know. Other people have told me that the JDBC driver works fine with servlets, and I haven't seen this problem before with the JDK on any of the platforms I've used Java on. -- Peter T Mount peter@retep.org.uk Main Homepage: http://www.retep.org.uk PostgreSQL JDBC Faq: http://www.retep.org.uk/postgres Java PDF Generator: http://www.retep.org.uk/pdf
Two thoughts. The servlet code would help a fair bit in this instance. I've got the identical setup running quite successfully with multiple servlets on a Linux box. So I know there is a solution. Second, the socket is locked either by another process, or another previous instance of ther servlet running. I think the /tmp file messages may be secondary exception traps at higher levels, depending on the code. ie: the exception is dropping through, and/or being rethrown after the failed bind, or the fail to bind triggers a cascade of errors in the coding assumptions afterwards. The checkVersions program isn't part of the 1.1.6 distribution, so I assume you have a class loading at runtime or some such thing. Again, the source would help, but the path it references on the class would *not* be permitted to be accessed by the servlet for loading from the .conf file you included from what I understand the setup to be. The binary is/is in /usr/local/java/bin/java, and the classpath for loading is in the subs of jserv, or the standard lib classes.zip. How is checkVersion being called/implemented? Like I say, I know the solution is there, but I need a bit more info to help you get to it! :-) Cheers, Dallas Hockley hockleyd@cybersurf.net Prem Kurian Philip wrote: > Hello All, > I have JDK 1.1.6 and JServ 0.9.11 on Apache 1.3.3. I am able to get the > servlets to work but I am not able to get the servlets which access > the postgresql 6.3 JDBC to work correctly. > > I get the following message in the JServ error file. > > Exception creating server socket: java.net.BindException: Address already > in use > /usr/local/java/bin/../bin/checkVersions: /tmp/ldd.out.363: Permission denied > /usr/local/java/bin/../bin/checkVersions: /tmp/ldd.out.363: No such file or > directory > > For your information, all users have been given complete read/write access > to the /tmp directory. > > By the way, the servlet runs perfectly well when executed seperately and not > as a servlet albeit with the following error messages. > > /usr/local/java/bin/../bin/checkVersions: /tmp/ldd.out.363: Permission denied > /usr/local/java/bin/../bin/checkVersions: /tmp/ldd.out.363: No such file or > directory > > I have given below the parts from the httpd.conf file > > httpd.conf > --------------------------------------------------------------- > <IfModule mod_jserv.c> > ServletProperties /usr/local/java/jserv/servlet.properties > ServletBinary /usr/local/java/bin/java > ServletClassPath > /usr/local/java/lib/classes.zip:/usr/local/java/jserv/servclas > ses.zip:/usr/local/java/jserv/classes > ServletEnvironment NS_JAVA true > > #ServletClassPath /usr/local/java/jserv/servclasses.zip > #ServletClassPath /usr/local/java/jserv/src > ServletAlias /servlets /usr/local/java/jserv/servlets > ServletErrorLog /usr/local/java/jserv/jserv_errors.log > ServletAuthExport On > AddHandler jhtml-parser .jhtml > Action jhtml-parser > /usr/local/java/jserv/servlets/org.apache.j > serv.JServSSI > </IfModule> > > Any ideas ? Any help will be greatly appreciated. Do I need to make > any specific changes in the servlet.properties file ? > > Regards, > Prem