geronimo-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From David Jencks <david_jen...@yahoo.com>
Subject Re: Issues facing when connecting with Oracle10g
Date Fri, 13 Mar 2009 18:53:30 GMT
I'm not an oracle expert...
On Mar 13, 2009, at 3:30 AM, Hearty wrote:

>
> The code is responsible for creating the tables.

Is that code succeeding now?  Can you see the tables from something  
other than your app?
>
> Other things I need to bring to your notice is regarding the following
> issues
>
> Issue 1
> 18:20:31,046 WARN  [GeronimoConnectionEventListener]  
> connectionErrorOccurred
> called with null
> java.sql.SQLException: ORA-00054: resource busy and acquire with  
> NOWAIT
> specified
>
> I have never faced such an issue when I deployed with apache tomcat

I'd guess some transaction is being left open or you are having a  
concurrency/locking problem.  It this is not the result of an error  
maybe turning off NOWAIT would help?
>
>
> Issue 2

I thought there was a way to get the underlying "native" connection  
out of the tranql connection handle but I'm not seeing it right now.   
Do you know what the code is trying to do that is causing this error?

thanks
david jencks
>
>
> Mar 12, 2009 6:20:33 PM
> com.telelogic.focalpoint.bus.report.ReportManagerImpl  
> setDefaultReportImage
> SEVERE: Error when uploading default report image
> org.springframework.dao.InvalidDataAccessApiUsageException:  
> OracleLobCreator
> needs to work on [oracl
> e.jdbc.OracleConnection], not on
> [org.tranql.connector.jdbc.ConnectionHandle]: specify a correspondi
> ng NativeJdbcExtractor; nested exception is  
> java.lang.ClassCastException:
> org.tranql.connector.jdbc.
> ConnectionHandle
> Caused by: java.lang.ClassCastException:
> org.tranql.connector.jdbc.ConnectionHandle
>        at oracle.sql.BLOB.createTemporary(BLOB.java:531)
>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
>        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown  
> Source)
>        at java.lang.reflect.Method.invoke(Unknown Source)
>        at
> org.springframework.jdbc.support.lob.OracleLobHandler 
> $OracleLobCreator.prepareLob(OracleL
> obHandler.java:393)
>        at
> org.springframework.jdbc.support.lob.OracleLobHandler 
> $OracleLobCreator.createLob(OracleLo
> bHandler.java:340)
>        at
> org.springframework.jdbc.support.lob.OracleLobHandler 
> $OracleLobCreator.setBlobAsBytes(Ora
> cleLobHandler.java:220)
>        at
> org 
> .springframework 
> .jdbc.core.support.SqlLobValue.setTypeValue(SqlLobValue.java:175)
>        at
> org 
> .springframework 
> .jdbc.core.StatementCreatorUtils.setParameterValue(StatementCreatorUti
> ls.java:128)
>        at
> org 
> .springframework 
> .jdbc.core.StatementCreatorUtils.setParameterValue(StatementCreatorUti
> ls.java:76)
>        at
> org.springframework.jdbc.core.PreparedStatementCreatorFactory 
> $PreparedStatementCreatorImp
> l.setValues(PreparedStatementCreatorFactory.java:271)
>        at
> org.springframework.jdbc.core.PreparedStatementCreatorFactory 
> $PreparedStatementCreatorImp
> l.createPreparedStatement(PreparedStatementCreatorFactory.java:247)
>        at
> org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java: 
> 524)
>        at
> org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java: 
> 736)
>        at
> org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java: 
> 759)
>        at
> org.springframework.jdbc.object.SqlUpdate.update(SqlUpdate.java:163)
>        at
> com 
> .telelogic 
> .focalpoint 
> .dao.jdbc.ReportDaoJdbc.uplodadReportImage(ReportDaoJdbc.java:109
> )
>        at
> com 
> .telelogic 
> .focalpoint 
> .bus.report.ReportManagerImpl.uploadReportImage(ReportManagerImpl
> .java:274)
>        at
> com 
> .telelogic 
> .focalpoint 
> .bus.report.ReportManagerImpl.setDefaultReportImage(ReportManager
> Impl.java:301)
>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
>        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown  
> Source)
>        at java.lang.reflect.Method.invoke(Unknown Source)
>        at
> org 
> .springframework 
> .aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:281
> )
>        at
> org 
> .springframework 
> .aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMe
> thodInvocation.java:187)
>        at
> org 
> .springframework 
> .aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvo
> cation.java:154)
>        at
> org 
> .springframework 
> .transaction.interceptor.TransactionInterceptor.invoke(TransactionInte
> rceptor.java:107)
>        at
> org 
> .springframework 
> .aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvo
> cation.java:176)
>        at
> org 
> .springframework 
> .aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:210)
>        at $Proxy60.setDefaultReportImage(Unknown Source)
>        at
> com.telelogic.focalpoint.dom.server.ServerImpl.init(ServerImpl.java: 
> 165)
>        at
> com 
> .telelogic 
> .focalpoint.dom.server.ServerImpl.afterPropertiesSet(ServerImpl.java: 
> 112)
>        at
> org 
> .springframework 
> .beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMe
> thods(AbstractAutowireCapableBeanFactory.java:1118)
>        at
> org 
> .springframework 
> .beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBe
> an(AbstractAutowireCapableBeanFactory.java:1085)
>        at
> org 
> .springframework 
> .beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(A
> bstractAutowireCapableBeanFactory.java:429)
>        at
> org.springframework.beans.factory.support.AbstractBeanFactory 
> $1.getObject(AbstractBeanFac
> tory.java:250)
>        at
> org 
> .springframework 
> .beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(Defau
> ltSingletonBeanRegistry.java:141)
>        at
> org 
> .springframework 
> .beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory
> .java:247)
>        at
> org 
> .springframework 
> .beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory
> .java:161)
>        at
> org 
> .springframework 
> .beans.factory.support.DefaultListableBeanFactory.preInstantiateSingle
> tons(DefaultListableBeanFactory.java:273)
>        at
> org 
> .springframework 
> .context.support.AbstractApplicationContext.refresh(AbstractApplicatio
> nContext.java:346)
>        at
> org.springframework.web.context.support.AbstractRefreshableWebApplicationContext.refresh

> (
> AbstractRefreshableWebApplicationContext.java:156)
>        at
> org.springframework.web.context.ContextLoader.createWebApplicationContext 
> (ContextLoader.j
> ava:246)
>        at
> org.springframework.web.context.ContextLoader.initWebApplicationContext 
> (ContextLoader.jav
> a:184)
>        at
> org.springframework.web.context.ContextLoaderListener.contextInitialized 
> (ContextLoaderLis
> tener.java:49)
>        at
> org 
> .apache 
> .catalina.core.StandardContext.listenerStart(StandardContext.java: 
> 3839)
>        at
> org.apache.catalina.core.StandardContext.start(StandardContext.java: 
> 4332)
>        at
> org.apache.geronimo.tomcat.GeronimoStandardContext.access 
> $201(GeronimoStandardContext.jav
> a:63)
>        at
> org.apache.geronimo.tomcat.GeronimoStandardContext 
> $SystemMethodValve.invoke(GeronimoStand
> ardContext.java:398)
>        at
> org 
> .apache 
> .geronimo 
> .tomcat.valve.GeronimoBeforeAfterValve.invoke(GeronimoBeforeAfterValve
> .java:47)
>        at
> org 
> .apache 
> .geronimo 
> .tomcat.GeronimoStandardContext.start(GeronimoStandardContext.java:251
> )
>        at
> org 
> .apache 
> .catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
>        at
> org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java: 
> 771)
>        at
> org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
>        at
> org 
> .apache 
> .geronimo.tomcat.TomcatContainer.addContext(TomcatContainer.java:364)
>        at
> org 
> .apache 
> .geronimo 
> .tomcat.TomcatWebAppContext.doStart(TomcatWebAppContext.java:512)
>        at
> org 
> .apache 
> .geronimo 
> .gbean.runtime.GBeanInstance.createInstance(GBeanInstance.java:998)
>        at
> org 
> .apache 
> .geronimo 
> .gbean.runtime.GBeanInstanceState.attemptFullStart(GBeanInstanceState.
> java:268)
>        at
> org 
> .apache 
> .geronimo 
> .gbean.runtime.GBeanInstanceState.start(GBeanInstanceState.java:102)
>        at
> org 
> .apache 
> .geronimo.gbean.runtime.GBeanInstance.start(GBeanInstance.java:541)
>        at
> org 
> .apache 
> .geronimo 
> .gbean.runtime.GBeanDependency.attemptFullStart(GBeanDependency.java:1
> 11)
>        at
> org 
> .apache 
> .geronimo 
> .gbean.runtime.GBeanDependency.addTarget(GBeanDependency.java:146)
>        at
> org.apache.geronimo.gbean.runtime.GBeanDependency 
> $1.running(GBeanDependency.java:120)
>        at
> org 
> .apache 
> .geronimo 
> .kernel.basic.BasicLifecycleMonitor.fireRunningEvent(BasicLifecycleMon
> itor.java:176)
>        at
> org.apache.geronimo.kernel.basic.BasicLifecycleMonitor.access 
> $300(BasicLifecycleMonitor.j
> ava:44)
>        at
> org.apache.geronimo.kernel.basic.BasicLifecycleMonitor 
> $RawLifecycleBroadcaster.fireRunnin
> gEvent(BasicLifecycleMonitor.java:254)
>        at
> org 
> .apache 
> .geronimo 
> .gbean.runtime.GBeanInstanceState.attemptFullStart(GBeanInstanceState.
> java:294)
>        at
> org 
> .apache 
> .geronimo 
> .gbean.runtime.GBeanInstanceState.start(GBeanInstanceState.java:102)
>        at
> org 
> .apache 
> .geronimo 
> .gbean.runtime.GBeanInstanceState.startRecursive(GBeanInstanceState.ja
> va:124)
>        at
> org 
> .apache 
> .geronimo 
> .gbean.runtime.GBeanInstance.startRecursive(GBeanInstance.java:555)
>        at
> org 
> .apache 
> .geronimo 
> .kernel.basic.BasicKernel.startRecursiveGBean(BasicKernel.java:379)
>        at
> org 
> .apache 
> .geronimo 
> .kernel.config.ConfigurationUtil.startConfigurationGBeans(Configuratio
> nUtil.java:456)
>        at
> org 
> .apache 
> .geronimo 
> .kernel.config.KernelConfigurationManager.start(KernelConfigurationMan
> ager.java:188)
>        at
> org 
> .apache 
> .geronimo 
> .kernel.config.SimpleConfigurationManager.startConfiguration(SimpleCon
> figurationManager.java:562)
>        at
> org 
> .apache 
> .geronimo 
> .kernel.config.SimpleConfigurationManager.startConfiguration(SimpleCon
> figurationManager.java:543)
>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
>        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown  
> Source)
>        at java.lang.reflect.Method.invoke(Unknown Source)
>        at
> org 
> .apache 
> .geronimo 
> .gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.
> java:34)
>        at
> org 
> .apache 
> .geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:124)
>        at
> org 
> .apache 
> .geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:832)
>        at
> org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java: 
> 57)
>        at
> org 
> .apache 
> .geronimo 
> .kernel.basic.RawOperationInvoker.invoke(RawOperationInvoker.java:35)
>        at
> org 
> .apache 
> .geronimo 
> .kernel.basic.ProxyMethodInterceptor.intercept(ProxyMethodInterceptor.
> java:96)
>        at
> org.apache.geronimo.kernel.config.EditableConfigurationManager$ 
> $EnhancerByCGLIB$$b90e4867
> .startConfiguration(<generated>)
>        at
> org 
> .apache 
> .geronimo 
> .deployment.plugin.local.RedeployCommand.redeploySameConfiguration(Red
> eployCommand.java:229)
>        at
> org 
> .apache 
> .geronimo 
> .deployment.plugin.local.RedeployCommand.run(RedeployCommand.java:101)
>
>        at java.lang.Thread.run(Unknown Source)
>
>
>
> djencks wrote:
>>
>> This looks ok to me.  I think maybe we didn't ship the tranql oracle
>> wrappers with geronimo until a later geronimo release: I think they
>> are in 2.1.3.
>>
>> The values in your geronimo plan override the defaults in ra.xml, but
>> don't change the contents of ra.xml.
>>
>> If you are still having problems with this you might try changing to
>> <no-transaction/> and see what happens.  Obviously you won't want to
>> use this in production but if it works it may help figure out what is
>> wrong.
>>
>> Does your code start by creating tables and the problem you are  
>> seeing
>> is that when you try to use them they have not been created?  Or are
>> the tables created by some other process like running a script on the
>> db by hand?
>>
>> thanks
>> david jencks
>>
>> On Mar 13, 2009, at 12:09 AM, Hearty wrote:
>>
>>>
>>> I am not using any oracle specific wrapper for the db pool.
>>> I have used admin console for configuring the db pool. Since admin
>>> console
>>> does not provide a way
>>> to set the property for autocommit, I have modified ra.xml manually.
>>>
>>> I have tried one more option by deploying the dbpool using deploy
>>> command
>>> deploy
>>> %GERONIMO_HOME%\repository\org\tranql\tranql-connector-ra 
>>> \1.4\tranql-
>>> connector-ra-1.4.rar
>>> ..\fpconfig\oracle10g-deployment-plan.xml
>>>
>>> oracle10g-deployment-plan is as follows
>>>
>>>
>>> <?xml version="1.0" encoding="UTF-8"?>
>>> <connector
>>> 	xmlns="http://geronimo.apache.org/xml/ns/j2ee/connector-1.2">
>>> 	<dep:environment
>>> 		xmlns:dep="http://geronimo.apache.org/xml/ns/deployment-1.2">
>>> 		<dep:moduleId>
>>> 			<dep:groupId>console.dbpool</dep:groupId>
>>> 			<dep:artifactId>fpdbpool</dep:artifactId>
>>> 			<dep:version>1.0</dep:version>
>>> 			<dep:type>rar</dep:type>
>>> 		</dep:moduleId>
>>> 		<dep:dependencies>
>>> 			<dep:dependency>
>>> 				<dep:groupId>com.telelogic.focalpoint.lib</dep:groupId>
>>> 				<dep:artifactId>ojdbc14</dep:artifactId>
>>> 				<dep:version>10.2.0.1.0</dep:version>
>>> 				<dep:type>jar</dep:type>
>>> 			</dep:dependency>
>>> 		</dep:dependencies>
>>> 	</dep:environment>
>>> 	<resourceadapter>
>>> 		<outbound-resourceadapter>
>>> 			<connection-definition>
>>> 				<connectionfactory-interface>
>>> 					javax.sql.DataSource
>>> 				</connectionfactory-interface>
>>> 				<connectiondefinition-instance>
>>> 					<name>fpdbpool</name>
>>> 					<config-property-setting name="Password">
>>> 						focalpoint
>>> 					</config-property-setting>
>>> 					<config-property-setting name="Driver">
>>> 						oracle.jdbc.driver.OracleDriver
>>> 					</config-property-setting>
>>> 					<config-property-setting name="UserName">
>>> 						mobile
>>> 					</config-property-setting>
>>> 					<config-property-setting name="ConnectionURL">
>>> 						jdbc:oracle:thin:@192.168.133.96:1521:orcl
>>> 					</config-property-setting>
>>> 					<config-property-setting
>>> name="CommitBeforeAutocommit">true</config-property-setting>
>>> 					
>>> 					<connectionmanager>
>>> 						<local-transaction />
>>> 						<single-pool>
>>> 							<max-size>10</max-size>
>>> 							<min-size>10</min-size>
>>> 							<blocking-timeout-milliseconds>
>>> 								60000
>>> 							</blocking-timeout-milliseconds>
>>> 							<idle-timeout-minutes>
>>> 								10
>>> 							</idle-timeout-minutes>
>>> 							<match-one />
>>> 						</single-pool>
>>> 					</connectionmanager>
>>> 				</connectiondefinition-instance>
>>> 			</connection-definition>
>>> 		</outbound-resourceadapter>
>>> 	</resourceadapter>
>>> </connector>
>>>
>>>
>>> But I've observed even I've specified "CommitBeforeAutocommit" as
>>> true,
>>> ra.xml contains the value of "CommitBeforeAutocommit" as false. I am
>>> using
>>> "Oracle Thin" as the Database Type.
>>>
>>> I am not using any specific tranql wrapper for oracle. I am using
>>> tranql-connector-ra-1.4.rar which I found with
>>> repository\org\tranql\tranql-connector-ra\1.4
>>>
>>> Please let me know if I am doing some thing wrong. Is there
>>> documentation
>>> (with sample code) for creating tranql oracle specific wrapper for
>>> the db
>>> pool.
>>>
>>> Can I rely on the admin console alone for deploying the database
>>> pool for
>>> oracle 10g?
>>>
>>>
>>> djencks wrote:
>>>>
>>>> Its difficult to do more than guess without more information on  
>>>> what
>>>> you have deployed.
>>>>
>>>> You should be using one of the tranql oracle specific wrappers for
>>>> your db pool.  This should take care of the commit-before- 
>>>> autocommit
>>>> problem caused by oracle jdbc spec non-compliance.  If you aren't
>>>> using an oracle specific wrapper you do need to set the commit  
>>>> before
>>>> autocommit property to true, but you should do it in your pool
>>>> deployment plan, not by modifying the ra.xml.
>>>>
>>>> At a minimum I think we'd need to know which tranql wrapper you are
>>>> using and to see the deployment plan for it.
>>>>
>>>> thanks
>>>> david jencks
>>>>
>>>> On Mar 12, 2009, at 6:19 AM, Hearty wrote:
>>>>
>>>>>
>>>>> When I have configured database pool with oracle10g and running
>>>>> against the
>>>>> apache geronimo v2.1, I am getting some unusual errors where as  
>>>>> when
>>>>> I've
>>>>> tried with tomcat5.5 it is working smoothly.
>>>>> Oracle driver I've used is ojdbc14-10.2.0.1.0.jar.
>>>>>
>>>>> The following is the error message I am getting. Also I am  
>>>>> uploading
>>>>> the
>>>>> error log since the error log is a big file
>>>>> http://www.nabble.com/file/p22476155/errorLog.txt errorLog.txt
>>>>> I have modified ra.xml with the following entry
>>>>> <config-property>
>>>>>                  <description>
>>>>>                      Flag indicating whether the Driver requires a
>>>>> commit
>>>>> to be performed
>>>>>                      before enabling auto-commit on a Connection.
>>>>> This
>>>>> should be set to false for
>>>>>                      compliant drivers to avoid an extraneous
>>>>> commit to
>>>>> the database.
>>>>>                  </description>
>>>>>
>>>>> <config-property-name>CommitBeforeAutocommit</config-property-

>>>>> name>
>>>>>
>>>>> <config-property-type>java.lang.Boolean</config-property-type>
>>>>>                  <config-property-value>true</config-property-
>>>>> value>
>>>>>              </config-property>
>>>>> The default value was false
>>>>>
>>>>> I am struggling with this issue for more than one week.
>>>>>
>>>>> Any help is highly appreciated. I am very new to apache geronimo.
>>>>> Please let
>>>>> me know if I've missed out any entries.
>>>>>
>>>>> -- 
>>>>> View this message in context:
>>>>> http://www.nabble.com/Issues-facing-when-connecting-with-Oracle10g-tp22476155s134p22476155.html
>>>>> Sent from the Apache Geronimo - Users mailing list archive at
>>>>> Nabble.com.
>>>>>
>>>>
>>>>
>>>>
>>>
>>> -- 
>>> View this message in context:
>>> http://www.nabble.com/Issues-facing-when-connecting-with-Oracle10g-tp22476155s134p22491260.html
>>> Sent from the Apache Geronimo - Users mailing list archive at
>>> Nabble.com.
>>>
>>
>>
>>
>
> -- 
> View this message in context: http://www.nabble.com/Issues-facing-when-connecting-with-Oracle10g-tp22476155s134p22493784.html
> Sent from the Apache Geronimo - Users mailing list archive at  
> Nabble.com.
>


Mime
View raw message