  | Mailing List | | Home | | Forum Home | | JBoss - Java Application Server | | Tomcat - JSP/Servlet container | | Struts - A MVC web framework | | iText - An open source PDF Java Library | | JDOM - JDOM XML Parser | | JSP - A mailing list about Java Server Pages specification and reference | | J2EE - A mailing list for Java(tm) 2 Platform, Enterprise Edition | | J2EE Pattern - An interest list for Sun Java Center J2EE Pattern Catalog | | Servlet - A mailing list for discussion about Sun Microsystem's Java Servlet API Technology | |
Struts & Hibernate
|
|
|
  | | | Tomcat Service and OCI | Tomcat Service and OCI 2007-12-01 - By Johnny Kewl
Back
-- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- -- HARBOR: http://coolharbor.100free.com/index.htm Now Tomcat is also a cool pojo application server -- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- -- Rumpa I dont know, going to guess.
First Guess ;) I'm wondering why you dont base this on service.bat Starting a service is done for you, and it (service bat) look like its actually a 2 phase thing. First the service is installed, and then at the bottom, they give you a place to add options, with another call. You seem to be doing it the hard way.
Second Guess ;) The error you getting has got nothing to do with the JDBC driver, it cant find the DLL. I think if you put the DLL in windows/system32 it would find it. Which means the system path or something like that is not right. The Tomcat service probably checks this sort of thing when started in 2 phases, but the cause is probably because services run under a "local system user", and the system paths showing the location of those DLL's are under "your" user name and not in ALL user names... see My Computer (right cick) -> Advanced -> Env Variables.
Then finally, if you do let Tomcat do its thing through service bat, you should get a task bar icon, if you click on that and look at the Java tab, its easy to see which JavaOpts are coming through and you can change and test there as well.
Compliments of the Season
-- -- Original Message -- -- From: "Rumpa Giri" <girirx@(protected)> To: <users@(protected)> Sent: Saturday, December 01, 2007 4:01 AM Subject: Tomcat Service and OCI
> Hello, > > I am trying to run the tomcat as NT Service, but does not seem to work > with OCI, if I run the same tomcat instance not as a service but via > startup.bat, the OCI JDBC driver works fine. > > Can anybody help me locate how to fix the service installation script to > avoid the exception. > > Local setup followed - > > 1) I have installed tomcat 5.5.25. > 2) Installed oracle client installation to use JDBC OCI Driver. > a) Installed the oracle client installation at location - > C:\oracle\product\10.2.0\client_1 > b) PATH is updated to reflect the above location for the dlls. > c) copied the ojdbc14.ar to the %CATALINA_HOME%/commo/lib/ folder. > 3) the context.xml has the OCI URL properly - > <Resource name="jdbc/provider" auth="Container" > type="javax.sql.DataSource" > driverClassName="oracle.jdbc.driver.OracleDriver" > url="jdbc:oracle:oci:@//<IP>:1521/orcl" > username="UN" password="PWD" maxActive="20" maxIdle="10" > maxWait="-1" > removeAbandoned="true" > removeAbandonedTimeout="60" > logAbandoned="true" > /> > > If i run the %CATALINA_HOME%/bin/startup.bat - the application works fine > and the JDBC code excutes properly. > > To install the tomcat as a service I ran the following script - > NOTE - We did specify the -Djava.library.path in the script. > > __ ____ ____ ____ ____ ____ ____ ____ ____ ____ ____ ____ ____ ____ ____ ____ > SET CATALINA_HOME=C:\tools\apache-tomcat-5 (See http://cat-5.ora-code.com).5.25 > SET CATALINA_BASE=C:\tools\apache-tomcat-5 (See http://cat-5.ora-code.com).5.25 > > @(protected) off > > echo CATALINA_HOME: %CATALINA_HOME% > echo CATALINA_BASE: %CATALINA_BASE% > echo JAVA_HOME: %JAVA_HOME% > pause > set BASEDIR=%CATALINA_HOME% > call "%CATALINA_HOME%\bin\setclasspath.bat" > > set args=%args% --Description=TOMCAT1 > set args=%args% --DisplayName=TOMCAT1 > > set args=%args% --Startup=auto > > set args=%args% --LogPath=%CATALINA_BASE%\logs > set args=%args% --LogLevel=DEBUG > set args=%args% --StdError=%CATALINA_BASE%\logs\tomcat1_err.log > set args=%args% --StdOutput=%CATALINA_BASE%\logs\tomcat1_out.log > > set > args=%args% --Classpath="%CLASSPATH%;%CATALINA_HOME%\bin\bootstrap.jar" > > set args=%args% --JavaHome=%JAVA_HOME% > set args=%args% --Jvm=%JAVA_HOME%\jre\bin\server\jvm.dll > set > args=%args% --JvmOptions="-Xms128m;-Xmx512m;-Djava.library.path=C:\oracle \product\10.2.0\client_1;-Dcatalina.base=%CATALINA_BASE%;-Dcatalina.home= %CATALINA_HOME%;-Djava.endorsed.dirs=%CATALINA_HOME%\common\endorsed" > > set args=%args% --StartMode=jvm > set args=%args% --StartClass=org.apache.catalina.startup.Bootstrap > set args=%args% --StartParams=start > rem set args=%args% --StartImage=%CATALINA_HOME%\bin\tomcat5.exe > rem set args=%args% --StartPath=%CATALINA_HOME%\bin; > > set args=%args% --StopMode=jvm > set args=%args% --StopClass=org.apache.catalina.startup.Bootstrap > set args=%args% --StopParams=stop > rem set args=%args% --StopImage=%CATALINA_HOME%\bin\tomcat5.exe > rem set args=%args% --StopPath=%CATALINA_HOME%\bin > > %CATALINA_HOME%\bin\tomcat5.exe //IS//TomcatTest %args% > set args= > set BASEDIR= > __ ____ ____ ____ ____ ____ ____ ____ ____ ____ ____ ____ ____ ____ ____ ____ > > Now when we run the service and start the application - we get the > following exception - > java.lang.UnsatisfiedLinkError: > C:\oracle\product\10.2.0\client_1\ocijdbc10.dll: Can't find dependent > libraries > at java.lang.ClassLoader$NativeLibrary.load(Native Method) > at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1751) > at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1676) > at java.lang.Runtime.loadLibrary0(Runtime.java:822) > at java.lang.System.loadLibrary(System.java:992) > at oracle.jdbc.driver.T2CConnection$1.run(T2CConnection.java:3135) > at java.security.AccessController.doPrivileged(Native Method) > at > oracle.jdbc.driver.T2CConnection.loadNativeLibrary(T2CConnection.java:3131) > at oracle.jdbc.driver.T2CConnection.logon(T2CConnection.java:221) > at > oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414) > at oracle.jdbc.driver.T2CConnection.<init>(T2CConnection.java:132) > at > oracle.jdbc.driver.T2CDriverExtension.getConnection(T2CDriverExtension.java :78) > at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) > at > org.apache.tomcat.dbcp.dbcp.DriverConnectionFactory.createConnection (DriverConnectionFactory.java:38) > at > org.apache.tomcat.dbcp.dbcp.PoolableConnectionFactory.makeObject (PoolableConnectionFactory.java:294) > at > org.apache.tomcat.dbcp.dbcp.BasicDataSource.validateConnectionFactory (BasicDataSource.java:1247) > at > org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource .java:1221) > at > org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSource .java:880) > <<snipped>> > > Can anybody please help me locate how to fix the service installation > script to avoid the exception. I am assuming since the regular command > prompt way of starting tomcat works fine with the driver, its the service > installation script which is missing something. > > Thanks, > Rumpa Giri > > > -- ---- ---- ---- ---- ---- ----- > Be a better pen pal. Text or chat with friends inside Yahoo! Mail. See > how.
-- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ------ To start a new topic, e-mail: users@(protected) To unsubscribe, e-mail: users-unsubscribe@(protected) For additional commands, e-mail: users-help@(protected)
|
|
 |