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>

Reply via email to