1 Reply Latest reply on Jan 4, 2003 10:40 PM by gcm614

    JBOSS and Postgresql

    gcm614

      When I test autocommit in a bmp entity bean it is always true even though the transactions are set to required in the deployment descriptor!

      I am accessing the Datasource through java:/RealEstateProDS

      Any Ideas?

      Code:
      InitialContext theContext = new InitialContext();
      DataSource theDataSource = (DataSource) theContext.lookup("java:/RealEstateProDS");
      theDBConn = theDataSource.getConnection();
      System.out.println("AutoCommit: " + theDBConn.getAutoCommit());

      ejb-jar.xml:
      <?xml version="1.0" encoding="ISO-8859-1"?>

      <!DOCTYPE ejb-jar>

      <ejb-jar>
      Deployment descriptor for Realestate Pro
      <display-name>Realestate Pro</display-name>

      <enterprise-beans>

      <ejb-name>CUser</ejb-name>
      com.skyviewsoftware.realestatepro.CUserHome
      com.skyviewsoftware.realestatepro.CUser
      <ejb-class>com.skyviewsoftware.realestatepro.CUserEJB</ejb-class>
      <persistence-type>Bean</persistence-type>
      <prim-key-class>com.skyviewsoftware.realestatepro.CUserPK</prim-key-class>
      False

      </enterprise-beans>




      <assembly-descriptor>
      <container-transaction>

      <ejb-name>CUser</ejb-name>
      <method-name>*</method-name>

      <trans-attribute>Required</trans-attribute>
      </container-transaction>

      </assembly-descriptor>
      </ejb-jar>


      Service:
      <?xml version="1.0" encoding="UTF-8"?>

      <!-- ======================================================================================== -->
      <!-- New ConnectionManager setup for default PostgreSQL dbs -->
      <!-- Build jmx-api (build/build.sh all) and view for config documentation -->
      <!-- To avoid class not found headaches, copy your postgres driver to the jboss lib directory -->
      <!-- ======================================================================================== -->




      <!-- ======================================================= -->
      <!-- You must include a login module configuration named PostgresDbRealm
      in your login-conf.xml, here is an example for a
      ConfiguredIdentityLoginModule:

      <application-policy name = "PostgresDbRealm">

      <login-module code = "org.jboss.resource.security.ConfiguredIdentityLoginModule" flag = "required">
      <module-option name = "principal">yourprincipal</module-option>
      <module-option name = "userName">yourusername</module-option>
      <module-option name = "password">yourpassword</module-option>
      <module-option name = "managedConnectionFactoryName">jboss.jca:service=LocalTxCM,name=realestateprodb</module-option>
      </login-module>

      </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.
      -->
      <!-- ===================================================================== -->
      <!--uncomment out this line if you are using the PostgresDbRealm above
      PostgresDbRealm
      -->

      <depends optional-attribute-name="ManagedConnectionFactoryName">
      <!--embedded mbean-->

      <!-- ========== Set the JndiName ======================= -->
      RealEstateProDS


      <config-property name="ConnectionURL" type="java.lang.String">jdbc:postgresql://localhost/realestatepro</config-property>
      <config-property name="DriverClass" type="java.lang.String">org.postgresql.Driver</config-property>
      <!--set these only if you want only default logins, not through JAAS -->
      <config-property name="UserName" type="java.lang.String">realestatepro</config-property>
      <config-property name="Password" type="java.lang.String">rp1</config-property>




      <!--Below here are advanced properties -->
      <!--hack-->
      <depends optional-attribute-name="OldRarDeployment">jboss.jca:service=RARDeployment,name=JBoss LocalTransaction JDBC Wrapper

      <!--real attributes-->



      <depends optional-attribute-name="ManagedConnectionPool">
      <!--embedded mbean-->


      1
      50
      5000
      15
      <!--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)-->
      ByContainer



      <depends optional-attribute-name="CachedConnectionManager">jboss.jca:service=CachedConnectionManager

      <depends optional-attribute-name="JaasSecurityManagerService">jboss.security:service=JaasSecurityManager

      java:/TransactionManager
      <!--make the rar deploy! hack till better deployment-->
      jboss.jca:service=RARDeployer