I'm just getting started with JBoss. I'm trying to set up a connection pool using a PostgreSQL 7.1 database on a FreeBSD 4.3 machine. I can connect to the database using JDBC in a standalone java app from both my FreeBSD and Linux machines, but setting up the connection pool in JBoss fails (configuration and error files are attached). Can anyone tell me what I'm doing wrong? Thanks in advance. -- Larry Coleman [EMAIL PROTECTED] ---- Democracy: Two wolves and a lamb deciding what to have for dinner.
[Americredit] Stopped [Americredit] java.lang.NullPointerException: [Americredit] at org.opentools.minerva.jdbc.xa.XAPoolDataSource.getConnection(XAPoolDataSource.java:165) [Americredit] at org.jboss.jdbc.XADataSourceLoader.startService(XADataSourceLoader.java:330) [Americredit] at org.jboss.util.ServiceMBeanSupport.start(ServiceMBeanSupport.java:93) [Americredit] at java.lang.reflect.Method.invoke(Native Method) [Americredit] at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1628) [Americredit] at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523) [Americredit] at org.jboss.util.ServiceControl.start(ServiceControl.java:97) [Americredit] at java.lang.reflect.Method.invoke(Native Method) [Americredit] at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1628) [Americredit] at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523) [Americredit] at org.jboss.Main.<init>(Main.java:217) [Americredit] at org.jboss.Main$1.run(Main.java:121) [Americredit] at java.security.AccessController.doPrivileged(Native Method) [Americredit] at org.jboss.Main.main(Main.java:117) [Service Control] Could not start DefaultDomain:service=XADataSource,name=Americredit [Service Control] java.lang.NullPointerException: [Service Control] at org.opentools.minerva.jdbc.xa.XAPoolDataSource.getConnection(XAPoolDataSource.java:165) [Service Control] at org.jboss.jdbc.XADataSourceLoader.startService(XADataSourceLoader.java:330) [Service Control] at org.jboss.util.ServiceMBeanSupport.start(ServiceMBeanSupport.java:93) [Service Control] at java.lang.reflect.Method.invoke(Native Method) [Service Control] at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1628) [Service Control] at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523) [Service Control] at org.jboss.util.ServiceControl.start(ServiceControl.java:97) [Service Control] at java.lang.reflect.Method.invoke(Native Method) [Service Control] at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1628) [Service Control] at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523) [Service Control] at org.jboss.Main.<init>(Main.java:217) [Service Control] at org.jboss.Main$1.run(Main.java:121) [Service Control] at java.security.AccessController.doPrivileged(Native Method) [Service Control] at org.jboss.Main.main(Main.java:117)
<?xml version="1.0" encoding="UTF-8"?> <!-- This is where you can add and configure your MBeans ATTENTION: The order of the listing here is the same order as the MBeans are loaded. Therefore if a MBean depends on another MBean to be loaded and started it has to be listed after all the MBeans it depends on. --> <server> <!-- Classloading --> <mbean code="org.jboss.web.WebService" name="DefaultDomain:service=Webserver"> <attribute name="Port">8083</attribute> </mbean> <!-- JNDI --> <mbean code="org.jboss.naming.NamingService" name="DefaultDomain:service=Naming"> <attribute name="Port">1099</attribute> </mbean> <mbean code="org.jboss.naming.JNDIView" name="DefaultDomain:service=JNDIView" /> <!-- Transactions --> <mbean code="org.jboss.tm.TransactionManagerService" name="DefaultDomain:service=TransactionManager"> <attribute name="TransactionTimeout">300</attribute> </mbean> <!-- Security --> <!-- Uncomment to enable the sample SRPVerifierStore service <mbean code="org.jboss.security.srp.SRPVerifierStoreService" name="Security:name=SRPVerifierStoreService"> <attribute name="JndiName">SRPDefaultVerifierSource</attribute> <attribute name="StoreFile">SRPVerifierStore.ser</attribute> </mbean> --> <!-- Uncomment to enable the SRP login service <mbean code="org.jboss.security.srp.SRPService" name="service:name=SRPService"> <attribute name="JndiName">SRPServerInterface</attribute> <attribute name="VerifierSourceJndiName">SRPDefaultVerifierSource</attribute> <attribute name="AuthenticationCacheJndiName">SRPAuthenticationCache</attribute> <attribute name="ServerPort">10099</attribute> </mbean> --> <!-- JAAS security manager and realm mapping --> <mbean code="org.jboss.security.plugins.JaasSecurityManagerService" name="Security:name=JaasSecurityManager"> <attribute name="SecurityManagerClassName">org.jboss.security.plugins.JaasSecurityManager</attribute> </mbean> <!-- Uncomment to enable the XML implementation of the JAAS policy <mbean code="org.jboss.security.plugins.SecurityPolicyService" name="Security:name=SecurityPolicyService"> <attribute name="JndiName">DefaultSecurityPolicy</attribute> <attribute name="PolicyFile">sample_policy.xml</attribute> </mbean> --> <!-- JDBC --> <mbean code="org.jboss.jdbc.JdbcProvider" name="DefaultDomain:service=JdbcProvider"> <attribute name="Drivers">org.postgresql.Driver</attribute> </mbean> <mbean code="org.jboss.jdbc.HypersonicDatabase" name="DefaultDomain:service=Hypersonic"> <attribute name="Port">1476</attribute> <attribute name="Silent">true</attribute> <attribute name="Database">default</attribute> <attribute name="Trace">false</attribute> </mbean> <!-- <mbean code="org.jboss.jdbc.XADataSourceLoader" name="DefaultDomain:service=XADataSource,name=Clients"> <attribute name="PoolName">Clients</attribute> <attribute name="DataSourceClass">org.opentools.minerva.jdbc.xa.wrapper.XADataSourceImpl</attribute> <attribute name="URL">jdbc:postgresql://localhost/clients</attribute> <attribute name="JDBCUser">larry</attribute> <attribute name="Password" /> </mbean> --> <mbean code="org.jboss.jdbc.XADataSourceLoader" name="DefaultDomain:service=XADataSource,name=Americredit"> <attribute name="PoolName">Americredit</attribute> <attribute name="DataSourceClass">org.opentools.minerva.jdbc.xa.wrapper.XADataSourceImpl</attribute> <attribute name="URL">jdbc:postgresql://localhost/americredit</attribute> <attribute name="JDBCUser">larry</attribute> <attribute name="Password" /> </mbean> <mbean code="org.jboss.jdbc.XADataSourceLoader" name="DefaultDomain:service=XADataSource,name=InstantDB"> <attribute name="PoolName">InstantDB</attribute> <attribute name="DataSourceClass">org.opentools.minerva.jdbc.xa.wrapper.XADataSourceImpl</attribute> <attribute name="Properties"></attribute> <attribute name="URL">jdbc:idb:../conf/default/instantdb.properties</attribute> <attribute name="GCMinIdleTime">1200000</attribute> <attribute name="JDBCUser" /> <attribute name="MaxSize">10</attribute> <attribute name="Password" /> <attribute name="GCEnabled">false</attribute> <attribute name="InvalidateOnError">false</attribute> <attribute name="TimestampUsed">false</attribute> <attribute name="Blocking">true</attribute> <attribute name="GCInterval">120000</attribute> <attribute name="IdleTimeout">1800000</attribute> <attribute name="IdleTimeoutEnabled">false</attribute> <attribute name="LoggingEnabled">false</attribute> <attribute name="MaxIdleTimeoutPercent">1.0</attribute> <attribute name="MinSize">0</attribute> </mbean> <mbean code="org.jboss.jdbc.XADataSourceLoader" name="DefaultDomain:service=XADataSource,name=DefaultDS"> <attribute name="PoolName">DefaultDS</attribute> <attribute name="DataSourceClass">org.opentools.minerva.jdbc.xa.wrapper.XADataSourceImpl</attribute> <attribute name="Properties"></attribute> <attribute name="URL">jdbc:HypersonicSQL:hsql://localhost:1476</attribute> <attribute name="GCMinIdleTime">1200000</attribute> <attribute name="JDBCUser">sa</attribute> <attribute name="MaxSize">10</attribute> <attribute name="Password" /> <attribute name="GCEnabled">false</attribute> <attribute name="InvalidateOnError">false</attribute> <attribute name="TimestampUsed">false</attribute> <attribute name="Blocking">true</attribute> <attribute name="GCInterval">120000</attribute> <attribute name="IdleTimeout">1800000</attribute> <attribute name="IdleTimeoutEnabled">false</attribute> <attribute name="LoggingEnabled">false</attribute> <attribute name="MaxIdleTimeoutPercent">1.0</attribute> <attribute name="MinSize">0</attribute> </mbean> <!-- J2EE deployment --> <mbean code="org.jboss.ejb.ContainerFactory" name=":service=ContainerFactory"> <attribute name="VerifyDeployments">true</attribute> <attribute name="MetricsEnabled">false</attribute> <attribute name="VerifierVerbose">true</attribute> <attribute name="BeanCacheJMSMonitoringEnabled">false</attribute> </mbean> <!-- Uncomment to add embedded tomcat service <mbean code="org.jboss.tomcat.EmbeddedTomcatServiceSX" name="DefaultDomain:service=EmbeddedTomcat" /> --> <!-- Uncomment and set file URL to add Jetty service (you can set config more than once) <mbean code="org.jboss.jetty.JettyService" name="DefaultDomain:service=Jetty"> <attribute name="Configuration">file URL to jetty.xml e.g. file:/usr/local/jboss/dist/conf/default/jetty.xml</attribute> </mbean> --> <!-- For Message Driven Beans --> <mbean code="org.jbossmq.server.JBossMQService" name="DefaultDomain:service=JBossMQ" /> <mbean code="org.jboss.jms.jndi.JMSProviderLoader" name=":service=JMSProviderLoader,name=JBossMQProvider"> <attribute name="ProviderName">DefaultJMSProvider</attribute> <attribute name="ProviderAdapterClass">org.jboss.jms.jndi.JBossMQProvider</attribute> </mbean> <mbean code="org.jboss.jms.asf.ServerSessionPoolLoader" name=":service=ServerSessionPoolMBean,name=StdJMSPool"> <attribute name="PoolName">StdJMSPool</attribute> <attribute name="PoolFactoryClass">org.jboss.jms.asf.StdServerSessionPoolFactory</attribute> </mbean> <!-- Make sure you change EmbeddedTomcat to Jetty if you are using Jetty --> <mbean code="org.jboss.deployment.J2eeDeployer" name="J2EE:service=J2eeDeployer"> <attribute name="DeployerName">Default</attribute> <attribute name="JarDeployerName">:service=ContainerFactory</attribute> <attribute name="WarDeployerName">:service=EmbeddedTomcat</attribute> </mbean> <mbean code="org.jboss.ejb.AutoDeployer" name="EJB:service=AutoDeployer"> <attribute name="Deployer">J2EE:service=J2eeDeployer</attribute> <attribute name="URLs">../deploy</attribute> </mbean> <!-- J2EE connector architecture --> <mbean code="org.jboss.resource.RARDeployer" name="JCA:service=RARDeployer"> </mbean> <!-- Minerva no transaction connection manager factory. Use this for resource adapters that don't support transactions. --> <mbean code="org.jboss.resource.ConnectionManagerFactoryLoader" name="JCA:service=ConnectionManagerFactoryLoader,name=MinervaNoTransCMFactory"> <attribute name="FactoryName">MinervaNoTransCMFactory</attribute> <attribute name="FactoryClass">org.opentools.minerva.connector.jboss.MinervaNoTransCMFactory</attribute> <attribute name="Properties"></attribute> </mbean> <!-- Minerva local transaction connection manager factory. Use this for resource adapters that support "local" transactions. --> <mbean code="org.jboss.resource.ConnectionManagerFactoryLoader" name="JCA:service=ConnectionManagerFactoryLoader,name=MinervaSharedLocalCMFactory"> <attribute name="FactoryName">MinervaSharedLocalCMFactory</attribute> <attribute name="FactoryClass"> org.opentools.minerva.connector.jboss.MinervaSharedLocalCMFactory </attribute> <attribute name="Properties"></attribute> </mbean> <!-- Minerva XA transaction connection manager factory Use this for resource adapters that support "xa" transactions. --> <mbean code="org.jboss.resource.ConnectionManagerFactoryLoader" name="JCA:service=ConnectionManagerFactoryLoader,name=MinervaXACMFactory"> <attribute name="FactoryName">MinervaXACMFactory</attribute> <attribute name="FactoryClass"> org.opentools.minerva.connector.jboss.MinervaXACMFactory </attribute> <attribute name="Properties"></attribute> </mbean> <!-- Example connection factory for the example "Black Box" resource adapter. This points at the same database as DefaultDS. --> <mbean code="org.jboss.resource.ConnectionFactoryLoader" name="JCA:service=ConnectionFactoryLoader,name=BlackBoxDS"> <attribute name="FactoryName">BlackBoxDS</attribute> <attribute name="RARDeployerName">JCA:service=RARDeployer</attribute> <attribute name="ResourceAdapterName">Black Box LocalTx Adapter</attribute> <attribute name="Properties"> ConnectionURL=jdbc:HypersonicSQL:hsql://localhost:1476 </attribute> <attribute name="ConnectionManagerFactoryName"> MinervaSharedLocalCMFactory </attribute> <!-- See the documentation for the specific connection manager implementation you are using for the properties you can set --> <attribute name="ConnectionManagerProperties"> # Pool type - uncomment to force, otherwise it is the default #PoolConfiguration=per-factory # Connection pooling properties - see # org.opentools.minerva.pool.PoolParameters MinSize=0 MaxSize=10 Blocking=true GCEnabled=false IdleTimeoutEnabled=false InvalidateOnError=false TrackLastUsed=false GCIntervalMillis=120000 GCMinIdleMillis=1200000 IdleTimeoutMillis=1800000 MaxIdleTimeoutPercent=1.0 </attribute> <!-- Principal mapping configuration --> <attribute name="PrincipalMappingClass"> org.jboss.resource.security.ManyToOnePrincipalMapping </attribute> <attribute name="PrincipalMappingProperties"> userName=sa password= </attribute> </mbean> <!-- This is an example of using a resource adapter that supports XA transactions. The Black Box XA resource adapter requires an XADataSource to be in JNDI somewhere. JBoss doesn't include a database with an XA-compliant JDBC driver, so this will need to be configured to use whatever XADataSource implementation you have. <mbean code="org.jboss.jdbc.RawXADataSourceLoader" name="DefaultDomain:service=RawXADataSourceLoader,name=BlackBoxXADS"> <attribute name="PoolName">BlackBoxXADS</attribute> <attribute name="DataSourceClass"> Put your XADataSource implementation class here </attribute> <attribute name="Properties"></attribute> </mbean> <mbean code="org.jboss.resource.ConnectionFactoryLoader" name="JCA:service=ConnectionFactoryLoader,name=XABlackBoxDS"> <attribute name="FactoryName">XABlackBoxDS</attribute> <attribute name="RARDeployerName">JCA:service=RARDeployer</attribute> <attribute name="ResourceAdapterName">Black Box XA Adapter</attribute> <attribute name="Properties"> XADataSourceName=java:/BlackBoxXADS </attribute> <attribute name="ConnectionManagerFactoryName"> MinervaXACMFactory </attribute> <attribute name="ConnectionManagerProperties"> # Pool type - uncomment to force, otherwise it is the default #PoolConfiguration=per-factory # Connection pooling properties - see # org.opentools.minerva.pool.PoolParameters MinSize=0 MaxSize=10 Blocking=true GCEnabled=false IdleTimeoutEnabled=false InvalidateOnError=false TrackLastUsed=false GCIntervalMillis=120000 GCMinIdleMillis=1200000 IdleTimeoutMillis=1800000 MaxIdleTimeoutPercent=1.0 </attribute> <attribute name="PrincipalMappingClass"> org.jboss.resource.security.ManyToOnePrincipalMapping </attribute> <attribute name="PrincipalMappingProperties"> userName=sa password= </attribute> </mbean> --> <!-- JMX adaptors --> <mbean code="org.jboss.jmx.server.JMXAdaptorService" name="Adaptor:name=RMI" /> <mbean code="org.jboss.jmx.server.RMIConnectorService" name="Connector:name=RMI" /> <mbean code="com.sun.jdmk.comm.HtmlAdaptorServer" name="Adaptor:name=html"> <attribute name="MaxActiveClientCount">10</attribute> <attribute name="Parser" /> <attribute name="Port">8082</attribute> </mbean> <!-- Mail Connection Factory --> <mbean code="org.jboss.mail.MailService" name=":service=Mail"> <attribute name="JNDIName">Mail</attribute> <attribute name="ConfigurationFile">mail.properties</attribute> <attribute name="User">user_id</attribute> <attribute name="Password">password</attribute> </mbean> <!-- Uncomment to enable JMX monitoring of the bean cache <mbean code="org.jboss.monitor.BeanCacheMonitor" name="Monitor:name=BeanCacheMonitor"/> --> <!-- Add your custom MBeans here --> </server>