Subject Re: [Firebird-Java] Re: Jboss 3.0 RC3 Configuration Trouble
Author David Jencks
I can run the jboss testsuite with only a few errors if I remove
hsqldb-service.xml and replace it with firebird-service.xml. If you can't
do this there is something wrong with your setup, although I don't see what
it is.

Are you doing something that results in serialization of the DataSource
that is looked up from jndi? This is the scenario that I expect to fail
with the current equals and hashcode implementation of
FBManagedConnectionFactory.

thanks
david jencks

On 2002.06.04 10:04:34 -0400 bryan_napier wrote:
> Thanks for the quick reply, look forward to any help you may provide!
>
> Bryan Napier
>
> --- In Firebird-Java@y..., David Jencks <davidjencks@d...> wrote:
> > I think this is probably caused by some changes I made to how jboss
> > determines if ManagedConnectionFactories are identical and a bad
> > implementation of equals in the firebird driver. I will look at
> this this
> > afternoon.
> >
> > david jencks
> >
> > On 2002.06.04 09:23:28 -0400 Bryan Napier wrote:
> > > I'm trying to get Firebird 1.0 (Windows) configured
> > > for JBoss 3.0 RC3 (Windows) using the JCA driver. I
> > > receive no errors until I execute one of the Finder
> > > methods of one of my CMP beans. I used the
> > > firebird-service.xml from docs/examples/jca as a
> > > template, and tried downloading the latest version
> > > from CVS to make sure that wasn't the problem. The
> > > following is the error I receive:
> > >
> > > 2002-06-04 09:01:05,283 ERROR
> > > [org.jboss.ejb.plugins.jaws.jdbc.JDBCFinderCommand]
> > > Failed to create finder results
> > > java.sql.SQLException: Problem getting connection:
> > > javax.resource.ResourceException: Wrong
> > > ManagedConnectionFactory sent to allocateConnection!
> > > at
> > > org.firebirdsql.jdbc.FBDataSource.getConnection
> (FBDataSource.java:100)
> > > at
> > > org.jboss.ejb.plugins.jaws.jdbc.JDBCCommand.getConnection
> (JDBCCommand.java:694)
> > > at
> > > org.jboss.ejb.plugins.jaws.jdbc.JDBCCommand.jdbcExecute
> (JDBCCommand.java:167)
> > > at
> > > org.jboss.ejb.plugins.jaws.jdbc.JDBCFinderCommand.execute
> (JDBCFinderCommand.java:114)
> > > at
> > > org.jboss.ejb.plugins.jaws.jdbc.JDBCFindEntitiesCommand.execute
> (JDBCFindEntitiesCommand.java:194)
> > > at
> > > org.jboss.ejb.plugins.jaws.JAWSPersistenceManager.findEntities
> (JAWSPersistenceManager.java:269)
> > > at
> > > org.jboss.ejb.plugins.CMPPersistenceManager.findEntities
> (CMPPersistenceManager.java:348)
> > > at
> > >
> org.jboss.resource.connectionmanager.CachedConnectionInterceptor.findE
> ntities(CachedConnectionInterceptor.java:284)
> > > at
> > > org.jboss.ejb.EntityContainer.find(EntityContainer.java:662)
> > > at java.lang.reflect.Method.invoke(Native Method)
> > > at
> > > org.jboss.ejb.EntityContainer$ContainerInterceptor.invokeHome
> (EntityContainer.java:1116)
> > > at
> > > org.jboss.ejb.plugins.EntitySynchronizationInterceptor.invokeHome
> (EntitySynchronizationInterceptor.java:257)
> > > at
> > >
> org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invok
> eHome(CachedConnectionInterceptor.java:176)
> > > at
> > > org.jboss.ejb.plugins.EntityInstanceInterceptor.invokeHome
> (EntityInstanceInterceptor.java:134)
> > > at
> > > org.jboss.ejb.plugins.EntityLockInterceptor.invokeHome
> (EntityLockInterceptor.java:79)
> > > at
> > > org.jboss.ejb.plugins.EntityCreationInterceptor.invokeHome
> (EntityCreationInterceptor.java:44)
> > > at
> > > org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext
> (AbstractTxInterceptor.java:98)
> > > at
> > > org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions
> (TxInterceptorCMT.java:167)
> > > at
> > > org.jboss.ejb.plugins.TxInterceptorCMT.invokeHome
> (TxInterceptorCMT.java:52)
> > > at
> > > org.jboss.ejb.plugins.SecurityInterceptor.invokeHome
> (SecurityInterceptor.java:104)
> > > at
> > > org.jboss.ejb.plugins.LogInterceptor.invokeHome
> (LogInterceptor.java:109)
> > > at
> > > org.jboss.ejb.EntityContainer.invokeHome(EntityContainer.java:487)
> > > at org.jboss.ejb.Container.invoke(Container.java:726)
> > > at
> > > org.jboss.ejb.EntityContainer.invoke(EntityContainer.java:1055)
> > > at
> > > org.jboss.mx.server.MBeanServerImpl.invoke
> (MBeanServerImpl.java:491)
> > > at
> > > org.jboss.invocation.local.LocalInvoker.invoke
> (LocalInvoker.java:98)
> > > at
> > > org.jboss.invocation.InvokerInterceptor.invoke
> (InvokerInterceptor.java:102)
> > > at
> > > org.jboss.proxy.TransactionInterceptor.invoke
> (TransactionInterceptor.java:73)
> > > at
> > > org.jboss.proxy.SecurityInterceptor.invoke
> (SecurityInterceptor.java:76)
> > > at
> > > org.jboss.proxy.ejb.HomeInterceptor.invoke
> (HomeInterceptor.java:185)
> > > at
> > > org.jboss.proxy.ClientContainer.invoke(ClientContainer.java:76)
> > > at $Proxy35.findAllOpenJobs(Unknown Source)
> > > at
> > > com.providicom.jms.JobManagementEJB.findAllOpenJobs
> (JobManagementEJB.java:90)
> > > at java.lang.reflect.Method.invoke(Native Method)
> > > at
> > >
> org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke
> (StatelessSessionContainer.java:664)
> > > at
> > >
> org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invok
> e(CachedConnectionInterceptor.java:147)
> > > at
> > > org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke
> (StatelessSessionInstanceInterceptor.java:77)
> > > at
> > > org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext
> (AbstractTxInterceptor.java:96)
> > > at
> > > org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions
> (TxInterceptorCMT.java:167)
> > > at
> > > org.jboss.ejb.plugins.TxInterceptorCMT.invoke
> (TxInterceptorCMT.java:61)
> > > at
> > > org.jboss.ejb.plugins.SecurityInterceptor.invoke
> (SecurityInterceptor.java:129)
> > > at
> > > org.jboss.ejb.plugins.LogInterceptor.invoke
> (LogInterceptor.java:166)
> > > at
> > > org.jboss.ejb.StatelessSessionContainer.invoke
> (StatelessSessionContainer.java:313)
> > > at org.jboss.ejb.Container.invoke(Container.java:705)
> > > at
> > > org.jboss.mx.server.MBeanServerImpl.invoke
> (MBeanServerImpl.java:491)
> > > at
> > > org.jboss.invocation.local.LocalInvoker.invoke
> (LocalInvoker.java:98)
> > > at
> > > org.jboss.invocation.InvokerInterceptor.invoke
> (InvokerInterceptor.java:102)
> > > at
> > > org.jboss.proxy.TransactionInterceptor.invoke
> (TransactionInterceptor.java:73)
> > > at
> > > org.jboss.proxy.SecurityInterceptor.invoke
> (SecurityInterceptor.java:76)
> > > at
> > > org.jboss.proxy.ejb.StatelessSessionInterceptor.invoke
> (StatelessSessionInterceptor.java:111)
> > > at
> > > org.jboss.proxy.ClientContainer.invoke(ClientContainer.java:76)
> > > at $Proxy43.findAllOpenJobs(Unknown Source)
> > > at
> > >
> com.providicom.jms.servlets.JobManagementFindServletSection.processPos
> t(JobManagementFindServletSection.java:101)
> > > at
> > >
> com.providicom.jms.servlets.JobManagementFindServletSection.process
> (JobManagementFindServletSection.java:43)
> > > at
> > > com.providicom.jms.servlets.JobManagementServlet.processRequest
> (JobManagementServlet.java:98)
> > > at
> > > com.providicom.jms.servlets.JobManagementServlet.handleRequest
> (JobManagementServlet.java:38)
> > > at
> > > org.apache.velocity.servlet.VelocityServlet.doRequest
> (VelocityServlet.java:326)
> > > at
> > > org.apache.velocity.servlet.VelocityServlet.doGet
> (VelocityServlet.java:287)
> > > at
> > > javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
> > > at
> > > javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
> > > at
> > > org.mortbay.jetty.servlet.ServletHolder.handle
> (ServletHolder.java:326)
> > > at
> > > org.mortbay.jetty.servlet.ServletHandler.handle
> (ServletHandler.java:595)
> > > at
> > > org.mortbay.http.HttpContext.handle(HttpContext.java:1357)
> > > at
> > > org.mortbay.http.HttpContext.handle(HttpContext.java:1309)
> > > at
> > > org.mortbay.http.HttpServer.service(HttpServer.java:744)
> > > at org.jboss.jetty.Jetty.service(Jetty.java:525)
> > > at
> > > org.mortbay.http.HttpConnection.service(HttpConnection.java:743)
> > > at
> > > org.mortbay.http.HttpConnection.handleNext
> (HttpConnection.java:916)
> > > at
> > > org.mortbay.http.HttpConnection.handle(HttpConnection.java:758)
> > > at
> > > org.mortbay.http.SocketListener.handleConnection
> (SocketListener.java:145)
> > > at
> > > org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:287)
> > > at
> > > org.mortbay.util.ThreadPool$JobRunner.run(ThreadPool.java:715)
> > > at java.lang.Thread.run(Thread.java:484)
> > > 2002-06-04 09:01:05,283 INFO [STDOUT] Error
> > > javax.ejb.FinderException: Find failed:
> > > java.sql.SQLException: Problem getting connection:
> > > javax.resource.ResourceException: Wrong
> > > ManagedConnectionFactory sent to allocateConnection!
> > >
> > >
> > >
> > > This is my firebird-service.xml :
> > >
> > > <?xml version="1.0" encoding="UTF-8"?>
> > >
> > > <!--
> > >
> ====================================================================
> > > -->
> > > <!-- New ConnectionManager setup for firebird dbs
> > > using jca-jdbc xa driver-->
> > > <!-- Build jmx-api (build/build.sh all) and view for
> > > config documentation -->
> > > <!--
> > >
> ====================================================================
> > > -->
> > >
> > > <service>
> > >
> > > <!--FBManager can be used to create and drop
> > > databases.
> > > Drop is especially useful during testing, since it
> > >
> > > assures a clean start next time. -->
> > > <mbean code="org.firebirdsql.management.FBManager"
> > > name="jboss.jca:service=FirebirdManager">
> > > <attribute
> > > name="FileName">c:\cvs\jms\db\JOBS.GDB</attribute>
> > > <attribute name="UserName">sysdba</attribute>
> > > <attribute name="Password">masterkey</attribute>
> > > <attribute name="CreateOnStart">true</attribute>
> > > <attribute name="DropOnStop">false</attribute>
> > > </mbean>
> > >
> > > <mbean
> > > code="org.jboss.resource.connectionmanager.XATxConnectionManager"
> > > name="jboss.jca:service=XaTxCM,name=FirebirdDS">
> > > <!--make the rar deploy - A BIG HACK till xslt
> > > based deployment is written-->
> > > <depends>jboss.jca:service=RARDeployer</depends>
> > >
> > > <depends
> > > optional-attribute-name="ManagedConnectionFactoryName">
> > > <mbean
> > > code="org.jboss.resource.connectionmanager.RARDeployment"
> > > name="jboss.jca:service=XaTxDS,name=FirebirdDS">
> > > <!--more hack-->
> > > <depends
> > > optional-attribute-
> name="OldRarDeployment">jboss.jca:service=RARDeployment,name=Firebird
> > > Database Connector</depends>
> > > <attribute
> > > name="ManagedConnectionFactoryProperties">
> > > <properties>
> > > <!--config-property>
> > >
> > > <config-property-name>Server</config-property-name>
> > >
> > > <config-property-type>java.lang.String</config-property-type>
> > >
> > > <config-property-value>localhost</config-property-value>
> > > </config-property>
> > > <config-property>
> > >
> > > <config-property-name>Port</config-property-name>
> > >
> > > <config-property-type>java.lang.Integer</config-property-type>
> > >
> > > <config-property-value>3050</config-property-value>
> > > </config-property-->
> > > <config-property>
> > >
> > > <config-property-name>Database</config-property-name>
> > >
> > > <config-property-type>java.lang.String</config-property-type>
> > >
> > > <config-property-value>c:\cvs\jms\db\JOBS.GDB</config-property-
> value>
> > > </config-property>
> > > <config-property>
> > >
> > > <config-property-name>UserName</config-property-name>
> > >
> > > <config-property-type>java.lang.String</config-property-type>
> > >
> > > <config-property-value>xxxxxx</config-property-value>
> > > </config-property>
> > > <config-property>
> > >
> > > <config-property-name>Password</config-property-name>
> > >
> > > <config-property-type>java.lang.String</config-property-type>
> > >
> > > <config-property-value>xxxxxx</config-property-value>
> > > </config-property>
> > > </properties>
> > > </attribute>
> > > <attribute name="JndiName">JMS</attribute>
> > > </mbean>
> > >
> > > </depends>
> > > <depends
> > > optional-attribute-name="ManagedConnectionPool">
> > > <mbean
> > >
> code="org.jboss.resource.connectionmanager.JBossManagedConnectionPool"
> > > name="jboss.jca:service=XaTxPool,name=FirebirdDS">
> > >
> > > <attribute name="MinSize">0</attribute>
> > > <attribute name="MaxSize">50</attribute>
> > > <attribute
> > > name="BlockingTimeoutMillis">5000</attribute>
> > > <attribute
> > > name="IdleTimeoutMinutes">15</attribute>
> > > <!--criteria indicates if Subject (from
> > > security domain) or app supplied
> > > parameters (such as from
> > > getConnection(user, pw)) are used to distinguish
> > > connections in the pool. Choices are
> > > ByContainerAndApplication (use both),
> > > ByContainer (use Subject),
> > > ByApplication (use app supplied params
> > > only),
> > > ByNothing (all connections are equivalent,
> > > usually if adapter supports
> > > reauthentication)-->
> > > <attribute
> > > name="Criteria">ByContainer</attribute>
> > > </mbean>
> > > </depends>
> > > <depends
> > > optional-attribute-
> name="CachedConnectionManager">jboss.jca:service=CachedConnectionManag
> er</depends>
> > > <!-- Include a login module configuration named
> > > FirebirdDBRealm.
> > > Update your login-conf.xml, here is an
> > > example for a
> > > ConfiguredIdentityLoginModule:
> > >
> > > <application-policy name = "FirebirdDBRealm">
> > > <authentication>
> > > <login-module code =
> > > "org.jboss.resource.security.ConfiguredIdentityLoginModule"
> > > flag = "required">
> > > <module-option name =
> > > "principal">sysdba</module-option>
> > > <module-option name =
> > > "userName">sysdba</module-option>
> > > <module-option name =
> > > "password">masterkey</module-option>
> > > <module-option name =
> >
> > "managedConnectionFactoryName">jboss.jca:service=XaTxCM,name=Firebir
> dDS</module-option>
> > > </login-module>
> > > </authentication>
> > > </application-policy>
> > >
> > > NOTE: the application-policy name attribute must
> > > match SecurityDomainJndiName, and the
> > > module-option name =
> > > "managedConnectionFactoryName"
> > > must match the object name of the
> > > ConnectionManager you are configuring here.
> > > -->
> > > <!--comment out this line if you want component
> > > managed security or want
> > > to use the default values in the
> > > ManagedConnectionFactoryProperties -->
> > > <attribute
> > > name="SecurityDomainJndiName">FirebirdDBRealm</attribute>
> > >
> > > <depends
> > > optional-attribute-
> name="JaasSecurityManagerService">jboss.security:name=JaasSecurityMana
> ger</depends>
> > >
> > > <attribute
> > > name="TransactionManager">java:/TransactionManager</attribute>
> > > </mbean>
> > >
> > > </service>
> > >
> > > I have not changed the sysdba password for Firebird
> > > yet (this is on a development workstation, just trying
> > > to get things working first).
> > >
> > > Any help would be much appreciated!
> > >
> > > Bryan Napier
> > >
> > >
> > > __________________________________________________
> > > Do You Yahoo!?
> > > Yahoo! - Official partner of 2002 FIFA World Cup
> > > http://fifaworldcup.yahoo.com
> > >
> > >
> > > To unsubscribe from this group, send an email to:
> > > Firebird-Java-unsubscribe@y...
> > >
> > >
> > >
> > > Your use of Yahoo! Groups is subject to
> http://docs.yahoo.com/info/terms/
> > >
> > >
> > >
> > >
> > >
>
>
>
> To unsubscribe from this group, send an email to:
> Firebird-Java-unsubscribe@yahoogroups.com
>
>
>
> Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
>
>
>
>
>