Establishing multiple WLEC connection pools

Running WLS 6.0 communicating with WLE 4.2:
I'm looking at setting up multiple connection pools to communicate with multiple
WLE application domains.
The code fragment below is from the BEA documentation and works fine if you know
the domain(pool) name. My code uses the "lookup" method in the InitialContext
class to get the pool name for single WLEC pool/domain configuration. Is there
a method to return a list of domain(pool) names?
Each WLEC connection pool has a Tobj_Bootstrap object that lets you access the
associated WLE domain. The WLEC component provides an object called BootstrapFactory
which provides access to the Tobj_Bootstrap object for a particular WLE domain.
Include the following code in your WebLogic Server client to connect to a WLE
domain:
Tobj_Bootstrap myBootstrap = Tobj_BootstrapFactory.getClientContext("myPool");
where
The getClientContext() method returns the Tobj_Bootstrap object that is associated
with myPool. If getClientContext() cannot find a WLEC connection pool with this
name, it returns null.
myPool is the name of a WLEC connection pool for the desired WLE domain. This
WLEC connection pool needs to be defined in the Administration Console.

Well ... It boiled down to ACLs.
"Sreeram" <[email protected]> wrote:
>
Hi
I have WLI application ( 7.0 ) and another J2EE appliction configured
on WLS (
7.0 ). If I have multiple jdbc connection pools configured to access
different
( or even the same ) databases, I am unable to get the connection to
execute a
sql query in the J2EE app. The connection pool gets initialized properly
during
the server startup and I can see them in the console but when I try to
acquire
a connection from the pool for execution of a jdbc stmt, I am unable
to obtain
a connection. Did any one succeed in configuring mulitple jdbc connection
pools
and WLI and another J2EE app to run together on WLS 7.0? Any suggestions
are welcome.
Thanks
Sreeram

Similar Messages

  • Multiple JDBC connection pools

    Hi
    I have WLI application ( 7.0 ) and another J2EE appliction configured on WLS (
    7.0 ). If I have multiple jdbc connection pools configured to access different
    ( or even the same ) databases, I am unable to get the connection to execute a
    sql query in the J2EE app. The connection pool gets initialized properly during
    the server startup and I can see them in the console but when I try to acquire
    a connection from the pool for execution of a jdbc stmt, I am unable to obtain
    a connection. Did any one succeed in configuring mulitple jdbc connection pools
    and WLI and another J2EE app to run together on WLS 7.0? Any suggestions are welcome.
    Thanks
    Sreeram

    Well ... It boiled down to ACLs.
    "Sreeram" <[email protected]> wrote:
    >
    Hi
    I have WLI application ( 7.0 ) and another J2EE appliction configured
    on WLS (
    7.0 ). If I have multiple jdbc connection pools configured to access
    different
    ( or even the same ) databases, I am unable to get the connection to
    execute a
    sql query in the J2EE app. The connection pool gets initialized properly
    during
    the server startup and I can see them in the console but when I try to
    acquire
    a connection from the pool for execution of a jdbc stmt, I am unable
    to obtain
    a connection. Did any one succeed in configuring mulitple jdbc connection
    pools
    and WLI and another J2EE app to run together on WLS 7.0? Any suggestions
    are welcome.
    Thanks
    Sreeram

  • Creating Multiple LibrarySession (Connection Pool), Using single LibraryService

    Hello,
    I am trying to create multiple LibrarySession with a single LibraryService, so that each user can pick a new session from a pool and release LibrarySession back to the pool, when the user task is been completed.
    Question.
    1. Is it possible to create LibrarySession Pool ?
    2. If yes, Can any one suggest, whether there will be any improvement in the performance of the application by doing so, or Oracle IFS internally handles the connection pool mechanism for LibrarySession.
    3. Does Oracle IFS handle LibrarySession pool internally.
    If there is any code, which does similar action, please do forward.
    Best Regards
    Sujeem Haries

    Sujeem, we do not pool LibrarySession instances for you. You may see a performance improvement if you maintain a LibrarySession pool, depending on the application. See the following post for more info:
    Oracle Security & PAM
    Please note that although LibrarySession instances are not pooled for you, the underlying database connections are pooled.

  • Connection Pool establishment problem

    Hi Experts,
    we have one application with JCo mechanism. For this application,
    we are using one properties file, which holds ABAP connection information. From this connection information(sapconn.props), we created connection pool and fetching data from the back end. Now my requirement is, instead of this properties file, we want to use one SLD, from this i would like to fetch connection information and establish a connection pool. How can we implement this one...?
    Is there any API to read the ABAP connection informaation from visual admin (JCo RFC provider) ?
    Thanks
    maha

    Your question has been answered in this [thread|connection establishment doubt;.
    Please read the [rules|https://wiki.sdn.sap.com/wiki/display/HOME/RulesofEngagement], in particular - do not cross post.
    -- Vladimir

  • How to use my connection pool in multiple servlets?

    I now have a functioning connection pool using these lines in a servlet:
    private Connection getConnection(String lookup) throws NamingException, SQLException {
    Context context = new InitialContext();
    DataSource ds = (DataSource)context.lookup(lookup);
    Connection ocon = ds.getConnection();
    context.close();
    return ocon;
    } // private Connection getConnection(String lookup) throws NamingException, SQLException {
    ========================
    If I want to create additional servlets in the same web app which query the same database,
    do I need to repeat this block of code in every servlet, or can I just put it in one servlet
    and have other servlets access it in some way to get a connection? Should I change the code
    above from a "private" Connection to a "public" Connection?
    An example servlet is shown below. To put my question another way: If I want to
    create a second servlet with a different set of queries, would I just make a copy of the first
    servlet and then change only the queries, or is there a more efficient way to have multiple
    servlets get connections from the pool?
    Any suggestions are greatly appreciated.
    Thank you.
    Logan
    ************************************servlet example**********************************
    package CraigsClasses;
    import javax.servlet.*;
    import javax.servlet.jsp.*;
    import java.net.*;
    import java.util.*;
    import java.io.*;
    import javax.servlet.http.*;
    import java.sql.*;
    import java.util.Date;
    import java.text.*;
    import javax.naming.*;
    import javax.sql.DataSource;
    public class CraigsMain extends HttpServlet {
    public void init(ServletConfig config) throws ServletException {
    super.init(config);
    private Connection getConnection(String lookup) throws NamingException, SQLException {
    Context context = new InitialContext();
    DataSource ds = (DataSource)context.lookup(lookup);
    Connection ocon = ds.getConnection();
    context.close();
    return ocon;
    } // private Connection getConnection(String lookup) throws NamingException, SQLException {
    // Process the http Get request
    public void doGet(HttpServletRequest request, HttpServletResponse response)
         throws ServletException, IOException {
    try {
    response.setContentType("text/html");
    PrintWriter out = response.getWriter();
    String sql = "select formtitle from checkboxforms where cbformid = 157";
    // error occurs at this line
    Connection ocon = getConnection("java:comp/env/jdbc/CraigsList");
    PreparedStatement pStmt = ocon.prepareStatement(sql);
    ResultSet rs1 = pStmt.executeQuery();
    rs1.next();
    out.println("<br>" + rs1.getString(1));
    rs1.close();
    pStmt.close();
    ocon.close();
    } catch(SQLException sqle) {
    System.err.println("sql exception error: " + sqle);
    } catch(NamingException ne) {
    System.err.println("naming exception error: " + ne);
    public void doPost(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
    doGet(request, response);
    =======================================================================

    sjasja, Thank you for the reply. What you are suggesting is exactly what I have been looking for. But I'm pretty weak on how to make this separate con pool servlet work. My first attempt is shown below. It doesn't compile this line, which is obviously wrong:
    public static Connection getConnection(String lookup) throws NamingException, SQLException {
    Could you please help me with this servlet code? Thanks.
    package CraigsClasses;
    import javax.servlet.*;
    import javax.servlet.jsp.*;
    import java.net.*;
    import java.io.*;
    import javax.servlet.http.*;
    import java.sql.*;
    import javax.naming.*;
    import javax.sql.DataSource;
    public class ConPoolInit extends HttpServlet {
    public void init(ServletConfig config) throws ServletException {
    super.init(config);
    try {
    public static Connection getConnection(String lookup) throws NamingException, SQLException {
    Context context = new InitialContext();
    DataSource ds = (DataSource)context.lookup(lookup);
    Connection ocon = ds.getConnection();
    context.close();
    return ocon;
    } // private Connection getConnection(String lookup) throws NamingException, SQLException {
    } catch(SQLException sqle) {
    System.err.println("sql exception error: " + sqle);
    } catch(NamingException ne) {
    System.err.println("naming exception error: " + ne);
    =======================================

  • Shall I use one datasource for multiple connection pool?

    Hi,
    I need to clarrify that, Shall I use one Datasource for multiple connection pool in distributed transaction?
    Thanks with regards
    Suresh

    No. If its transactions across multiple databases you should use different datasources.

  • Multiple DataSource using single Connection Pool

    Previously using Weblogic 6.1 we had a configuration where multiple Datasources used a single connection pool. Now that we are in the process of upgrading to Weblogic 9.1, we are attempting to recreate the same configuration.
    The Weblogic 9.1 upgrade wizard appears to have created the relevent datasource & connection pool configuration files but when attempting to use these I am receiving the following errors:
    ####<30-Jan-2007 11:18:21 o'clock GMT> <Info> <JDBC> <tu0991ws9004> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1170155901758> <BEA-001508> <Destroying Connection Pool TestDSLegacyPool.>
    ####<30-Jan-2007 11:18:21 o'clock GMT> <Info> <JDBC> <tu0991ws9004> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1170155901758> <BEA-001155> <The following exception has occurred:
    weblogic.common.ResourceException: Unknown Data Source TestDSLegacyPool
         at weblogic.jdbc.common.internal.ConnectionPoolManager.shutdownAndDestroyPool(ConnectionPoolManager.java:419)
         at weblogic.jdbc.module.JDBCModule.prepare(JDBCModule.java:251)
         at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:90)
         at weblogic.application.internal.flow.DeploymentCallbackFlow$1.next(DeploymentCallbackFlow.java:318)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
         at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:53)
         at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:43)
         at weblogic.application.internal.BaseDeployment$1.next(BaseDeployment.java:620)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
         at weblogic.application.internal.BaseDeployment.prepare(BaseDeployment.java:231)
         at weblogic.application.internal.DeploymentStateChecker.prepare(DeploymentStateChecker.java:147)
         at weblogic.deploy.internal.targetserver.AppContainerInvoker.prepare(AppContainerInvoker.java:61)
         at weblogic.deploy.internal.targetserver.SystemResourceDeployment.prepare(SystemResourceDeployment.java:65)
         at weblogic.management.deploy.internal.DeploymentAdapter$1.prepare(DeploymentAdapter.java:37)
         at weblogic.management.deploy.internal.AppTransition$1.transitionApp(AppTransition.java:21)
         at weblogic.management.deploy.internal.ConfiguredDeployments.transitionApps(ConfiguredDeployments.java:232)
         at weblogic.management.deploy.internal.ConfiguredDeployments.prepare(ConfiguredDeployments.java:164)
         at weblogic.management.deploy.internal.ConfiguredDeployments.deploy(ConfiguredDeployments.java:121)
         at weblogic.management.deploy.internal.DeploymentServerService.resume(DeploymentServerService.java:173)
         at weblogic.management.deploy.internal.DeploymentServerService.start(DeploymentServerService.java:89)
         at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
         at weblogic.work.ServerWorkManagerImpl$WorkAdapterImpl.run(ServerWorkManagerImpl.java:518)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:207)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:179)
    >
    ####<30-Jan-2007 11:18:21 o'clock GMT> <Error> <Deployer> <tu0991ws9004> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1170155901773> <BEA-149205> <Failed to initialize the application 'TestDSLegacyPool' due to error weblogic.application.ModuleException: .
    weblogic.application.ModuleException:
         at weblogic.jdbc.module.JDBCModule.prepare(JDBCModule.java:257)
         at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:90)
         at weblogic.application.internal.flow.DeploymentCallbackFlow$1.next(DeploymentCallbackFlow.java:318)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
         at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:53)
         at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:43)
         at weblogic.application.internal.BaseDeployment$1.next(BaseDeployment.java:620)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
         at weblogic.application.internal.BaseDeployment.prepare(BaseDeployment.java:231)
         at weblogic.application.internal.DeploymentStateChecker.prepare(DeploymentStateChecker.java:147)
         at weblogic.deploy.internal.targetserver.AppContainerInvoker.prepare(AppContainerInvoker.java:61)
         at weblogic.deploy.internal.targetserver.SystemResourceDeployment.prepare(SystemResourceDeployment.java:65)
         at weblogic.management.deploy.internal.DeploymentAdapter$1.prepare(DeploymentAdapter.java:37)
         at weblogic.management.deploy.internal.AppTransition$1.transitionApp(AppTransition.java:21)
         at weblogic.management.deploy.internal.ConfiguredDeployments.transitionApps(ConfiguredDeployments.java:232)
         at weblogic.management.deploy.internal.ConfiguredDeployments.prepare(ConfiguredDeployments.java:164)
         at weblogic.management.deploy.internal.ConfiguredDeployments.deploy(ConfiguredDeployments.java:121)
         at weblogic.management.deploy.internal.DeploymentServerService.resume(DeploymentServerService.java:173)
         at weblogic.management.deploy.internal.DeploymentServerService.start(DeploymentServerService.java:89)
         at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
         at weblogic.work.ServerWorkManagerImpl$WorkAdapterImpl.run(ServerWorkManagerImpl.java:518)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:207)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:179)
    weblogic.common.ResourceException: weblogic.common.ResourceException: DataSource(TestDSLegacyPool) can't be created with non-existent Pool (connection or multi) (Beach Brochure Browse Pool)
         at weblogic.jdbc.common.internal.DataSourceManager.checkDataSource(DataSourceManager.java:239)
         at weblogic.jdbc.module.JDBCModule.prepare(JDBCModule.java:247)
         at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:90)
         at weblogic.application.internal.flow.DeploymentCallbackFlow$1.next(DeploymentCallbackFlow.java:318)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
         at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:53)
         at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:43)
         at weblogic.application.internal.BaseDeployment$1.next(BaseDeployment.java:620)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
         at weblogic.application.internal.BaseDeployment.prepare(BaseDeployment.java:231)
         at weblogic.application.internal.DeploymentStateChecker.prepare(DeploymentStateChecker.java:147)
         at weblogic.deploy.internal.targetserver.AppContainerInvoker.prepare(AppContainerInvoker.java:61)
         at weblogic.deploy.internal.targetserver.SystemResourceDeployment.prepare(SystemResourceDeployment.java:65)
         at weblogic.management.deploy.internal.DeploymentAdapter$1.prepare(DeploymentAdapter.java:37)
         at weblogic.management.deploy.internal.AppTransition$1.transitionApp(AppTransition.java:21)
         at weblogic.management.deploy.internal.ConfiguredDeployments.transitionApps(ConfiguredDeployments.java:232)
         at weblogic.management.deploy.internal.ConfiguredDeployments.prepare(ConfiguredDeployments.java:164)
         at weblogic.management.deploy.internal.ConfiguredDeployments.deploy(ConfiguredDeployments.java:121)
         at weblogic.management.deploy.internal.DeploymentServerService.resume(DeploymentServerService.java:173)
         at weblogic.management.deploy.internal.DeploymentServerService.start(DeploymentServerService.java:89)
         at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
         at weblogic.work.ServerWorkManagerImpl$WorkAdapterImpl.run(ServerWorkManagerImpl.java:518)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:207)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:179)
    weblogic.common.ResourceException: DataSource(TestDSLegacyPool) can't be created with non-existent Pool (connection or multi) (Beach Brochure Browse Pool)
         at weblogic.jdbc.common.internal.DataSourceManager.verifyPoolDeployment(DataSourceManager.java:607)
         at weblogic.jdbc.common.internal.DataSourceManager.checkDSConfig(DataSourceManager.java:594)
         at weblogic.jdbc.common.internal.DataSourceManager.checkDataSource(DataSourceManager.java:236)
         at weblogic.jdbc.module.JDBCModule.prepare(JDBCModule.java:247)
         at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:90)
         at weblogic.application.internal.flow.DeploymentCallbackFlow$1.next(DeploymentCallbackFlow.java:318)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
         at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:53)
         at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:43)
         at weblogic.application.internal.BaseDeployment$1.next(BaseDeployment.java:620)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
         at weblogic.application.internal.BaseDeployment.prepare(BaseDeployment.java:231)
         at weblogic.application.internal.DeploymentStateChecker.prepare(DeploymentStateChecker.java:147)
         at weblogic.deploy.internal.targetserver.AppContainerInvoker.prepare(AppContainerInvoker.java:61)
         at weblogic.deploy.internal.targetserver.SystemResourceDeployment.prepare(SystemResourceDeployment.java:65)
         at weblogic.management.deploy.internal.DeploymentAdapter$1.prepare(DeploymentAdapter.java:37)
         at weblogic.management.deploy.internal.AppTransition$1.transitionApp(AppTransition.java:21)
         at weblogic.management.deploy.internal.ConfiguredDeployments.transitionApps(ConfiguredDeployments.java:232)
         at weblogic.management.deploy.internal.ConfiguredDeployments.prepare(ConfiguredDeployments.java:164)
         at weblogic.management.deploy.internal.ConfiguredDeployments.deploy(ConfiguredDeployments.java:121)
         at weblogic.management.deploy.internal.DeploymentServerService.resume(DeploymentServerService.java:173)
         at weblogic.management.deploy.internal.DeploymentServerService.start(DeploymentServerService.java:89)
         at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
         at weblogic.work.ServerWorkManagerImpl$WorkAdapterImpl.run(ServerWorkManagerImpl.java:518)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:207)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:179)
    ++++++++++++++++++++++++++++++++++++++++++++++++++
    The configuration files content is :
    TestDSLegacyPool-9290-jdbc.xml
    <?xml version='1.0' encoding='UTF-8'?>
    <jdbc-data-source xmlns="http://www.bea.com/ns/weblogic/90" xmlns:sec="http://www.bea.com/ns/weblogic/90/security" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:wls="http://www.bea.com/ns/weblogic/90/security/wls" xsi:schemaLocation="http://www.bea.com/ns/weblogic/910/domain.xsd">
    <name>TestDSLegacyPool</name>
    <internal-properties>
    <property>
    <name>LegacyType</name>
    <value>3</value>
    </property>
    <property>
    <name>LegacyPoolName</name>
    <value>Beach Brochure Browse Pool</value>
    </property>
    </internal-properties>
    <jdbc-data-source-params>
    <jndi-name>beachBrochureBrowseDS</jndi-name>
    <global-transactions-protocol>None</global-transactions-protocol>
    </jdbc-data-source-params>
    </jdbc-data-source>
    CP-Beach_Brochure_Browse_Pool-1043-jdbc.xml
    <?xml version='1.0' encoding='UTF-8'?>
    <jdbc-data-source xmlns="http://www.bea.com/ns/weblogic/90" xmlns:sec="http://www.bea.com/ns/weblogic/90/security" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:wls="http://www.bea.com/ns/weblogic/90/security/wls" xsi:schemaLocation="http://www.bea.com/ns/weblogic/910/domain.xsd">
    <name>Beach Brochure Browse Pool</name>
    <internal-properties>
    <property>
    <name>LegacyType</name>
    <value>1</value>
    </property>
    </internal-properties>
    <jdbc-driver-params>
    <url>jdbc:oracle:thin:@aserver:1522:adb</url>
    <driver-name>oracle.jdbc.driver.OracleDriver</driver-name>
    <properties>
    <property>
    <name>user</name>
    <value>gf_user</value>
    </property>
    <property>
    <name>dll</name>
    <value>ocijdbc9</value>
    </property>
    <property>
    <name>protocol</name>
    <value>thin</value>
    </property>
    </properties>
    <password-encrypted>{3DES}4UT5899x/Z4=</password-encrypted>
    </jdbc-driver-params>
    <jdbc-connection-pool-params>
    <initial-capacity>1</initial-capacity>
    <max-capacity>3</max-capacity>
    </jdbc-connection-pool-params>
    </jdbc-data-source>
    Would anyone be able to point me in the right direction with this? Configuring the Datasources through the Admin Console creates a single Datasource configuration file that contains its relevent connection pool configuration, but the Weblogic Upgrade wizard creates a Datasource config file and a separate connection pool config file. What would I need to do to use the config files generated by the Weblogic Upgrade wizard?
    Any help appreciated
    Thanks
    Andrew

    Andrew Harrison wrote:
    Previously using Weblogic 6.1 we had a configuration where multiple Datasources used a single
    connection pool. Now that we are in the process of upgrading to Weblogic 9.1, we are attempting
    to recreate the same configuration.Hi, sorry to say, that is no longer possible:
    http://e-docs.bea.com/wls/docs90/jdbc_admin/jdbc_intro.html#1044158
    Simplified JDBC Resource Configuration
    In WebLogic Server 9.0, the number of JDBC resource types was reduced to simplify JDBC configuration and to reduce the likelihood
    of configuration errors. Instead of configuring a JDBC connection pool and then configuring a data source or tx data source to
    point to the connection pool and bind to the JNDI tree, you configure a data source that encompasses a connection pool.
    Note: Because of the new configuration design, you can no longer have multiple data sources that point to a single connection
    pool. Instead, you can create additional data sources, each with its own pool of connections, or you can bind a single data source
    to the JNDI tree with multiple names. See Binding a Data Source to the JNDI Tree with Multiple Names for more information.
    Joe
    >
    The Weblogic 9.1 upgrade wizard appears to have created the relevent datasource & connection pool
    configuration files but when attempting to use these I am receiving the following errors:
    ####<30-Jan-2007 11:18:21 o'clock GMT> <Info> <JDBC> <tu0991ws9004> <AdminServer> <[ACTIVE]
    ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <>
    <1170155901758> <BEA-001508> <Destroying Connection Pool TestDSLegacyPool.>
    ####<30-Jan-2007 11:18:21 o'clock GMT> <Info> <JDBC> <tu0991ws9004> <AdminServer> <[ACTIVE]
    ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <>
    <1170155901758> <BEA-001155> <The following exception has occurred:
    weblogic.common.ResourceException: Unknown Data Source TestDSLegacyPool
         at weblogic.jdbc.common.internal.ConnectionPoolManager.shutdownAndDestroyPool(ConnectionPoolManager.java:419)
         at weblogic.jdbc.module.JDBCModule.prepare(JDBCModule.java:251)
         at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:90)
         at weblogic.application.internal.flow.DeploymentCallbackFlow$1.next(DeploymentCallbackFlow.java:318)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
         at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:53)
         at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:43)
         at weblogic.application.internal.BaseDeployment$1.next(BaseDeployment.java:620)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
         at weblogic.application.internal.BaseDeployment.prepare(BaseDeployment.java:231)
         at weblogic.application.internal.DeploymentStateChecker.prepare(DeploymentStateChecker.java:147)
         at weblogic.deploy.internal.targetserver.AppContainerInvoker.prepare(AppContainerInvoker.java:61)
         at weblogic.deploy.internal.targetserver.SystemResourceDeployment.prepare(SystemResourceDeployment.java:65)
         at weblogic.management.deploy.internal.DeploymentAdapter$1.prepare(DeploymentAdapter.java:37)
         at weblogic.management.deploy.internal.AppTransition$1.transitionApp(AppTransition.java:21)
         at weblogic.management.deploy.internal.ConfiguredDeployments.transitionApps(ConfiguredDeployments.java:232)
         at weblogic.management.deploy.internal.ConfiguredDeployments.prepare(ConfiguredDeployments.java:164)
         at weblogic.management.deploy.internal.ConfiguredDeployments.deploy(ConfiguredDeployments.java:121)
         at weblogic.management.deploy.internal.DeploymentServerService.resume(DeploymentServerService.java:173)
         at weblogic.management.deploy.internal.DeploymentServerService.start(DeploymentServerService.java:89)
         at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
         at weblogic.work.ServerWorkManagerImpl$WorkAdapterImpl.run(ServerWorkManagerImpl.java:518)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:207)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:179)
    ####<30-Jan-2007 11:18:21 o'clock GMT> <Error> <Deployer> <tu0991ws9004> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1170155901773> <BEA-149205> <Failed to initialize the application 'TestDSLegacyPool' due to error weblogic.application.ModuleException: .
    weblogic.application.ModuleException:
         at weblogic.jdbc.module.JDBCModule.prepare(JDBCModule.java:257)
         at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:90)
         at weblogic.application.internal.flow.DeploymentCallbackFlow$1.next(DeploymentCallbackFlow.java:318)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
         at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:53)
         at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:43)
         at weblogic.application.internal.BaseDeployment$1.next(BaseDeployment.java:620)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
         at weblogic.application.internal.BaseDeployment.prepare(BaseDeployment.java:231)
         at weblogic.application.internal.DeploymentStateChecker.prepare(DeploymentStateChecker.java:147)
         at weblogic.deploy.internal.targetserver.AppContainerInvoker.prepare(AppContainerInvoker.java:61)
         at weblogic.deploy.internal.targetserver.SystemResourceDeployment.prepare(SystemResourceDeployment.java:65)
         at weblogic.management.deploy.internal.DeploymentAdapter$1.prepare(DeploymentAdapter.java:37)
         at weblogic.management.deploy.internal.AppTransition$1.transitionApp(AppTransition.java:21)
         at weblogic.management.deploy.internal.ConfiguredDeployments.transitionApps(ConfiguredDeployments.java:232)
         at weblogic.management.deploy.internal.ConfiguredDeployments.prepare(ConfiguredDeployments.java:164)
         at weblogic.management.deploy.internal.ConfiguredDeployments.deploy(ConfiguredDeployments.java:121)
         at weblogic.management.deploy.internal.DeploymentServerService.resume(DeploymentServerService.java:173)
         at weblogic.management.deploy.internal.DeploymentServerService.start(DeploymentServerService.java:89)
         at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
         at weblogic.work.ServerWorkManagerImpl$WorkAdapterImpl.run(ServerWorkManagerImpl.java:518)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:207)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:179)
    weblogic.common.ResourceException: weblogic.common.ResourceException: DataSource(TestDSLegacyPool) can't be created with non-existent Pool (connection or multi) (Beach Brochure Browse Pool)
         at weblogic.jdbc.common.internal.DataSourceManager.checkDataSource(DataSourceManager.java:239)
         at weblogic.jdbc.module.JDBCModule.prepare(JDBCModule.java:247)
         at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:90)
         at weblogic.application.internal.flow.DeploymentCallbackFlow$1.next(DeploymentCallbackFlow.java:318)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
         at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:53)
         at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:43)
         at weblogic.application.internal.BaseDeployment$1.next(BaseDeployment.java:620)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
         at weblogic.application.internal.BaseDeployment.prepare(BaseDeployment.java:231)
         at weblogic.application.internal.DeploymentStateChecker.prepare(DeploymentStateChecker.java:147)
         at weblogic.deploy.internal.targetserver.AppContainerInvoker.prepare(AppContainerInvoker.java:61)
         at weblogic.deploy.internal.targetserver.SystemResourceDeployment.prepare(SystemResourceDeployment.java:65)
         at weblogic.management.deploy.internal.DeploymentAdapter$1.prepare(DeploymentAdapter.java:37)
         at weblogic.management.deploy.internal.AppTransition$1.transitionApp(AppTransition.java:21)
         at weblogic.management.deploy.internal.ConfiguredDeployments.transitionApps(ConfiguredDeployments.java:232)
         at weblogic.management.deploy.internal.ConfiguredDeployments.prepare(ConfiguredDeployments.java:164)
         at weblogic.management.deploy.internal.ConfiguredDeployments.deploy(ConfiguredDeployments.java:121)
         at weblogic.management.deploy.internal.DeploymentServerService.resume(DeploymentServerService.java:173)
         at weblogic.management.deploy.internal.DeploymentServerService.start(DeploymentServerService.java:89)
         at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
         at weblogic.work.ServerWorkManagerImpl$WorkAdapterImpl.run(ServerWorkManagerImpl.java:518)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:207)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:179)
    weblogic.common.ResourceException: DataSource(TestDSLegacyPool) can't be created with non-existent Pool (connection or multi) (Beach Brochure Browse Pool)
         at weblogic.jdbc.common.internal.DataSourceManager.verifyPoolDeployment(DataSourceManager.java:607)
         at weblogic.jdbc.common.internal.DataSourceManager.checkDSConfig(DataSourceManager.java:594)
         at weblogic.jdbc.common.internal.DataSourceManager.checkDataSource(DataSourceManager.java:236)
         at weblogic.jdbc.module.JDBCModule.prepare(JDBCModule.java:247)
         at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:90)
         at weblogic.application.internal.flow.DeploymentCallbackFlow$1.next(DeploymentCallbackFlow.java:318)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
         at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:53)
         at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:43)
         at weblogic.application.internal.BaseDeployment$1.next(BaseDeployment.java:620)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
         at weblogic.application.internal.BaseDeployment.prepare(BaseDeployment.java:231)
         at weblogic.application.internal.DeploymentStateChecker.prepare(DeploymentStateChecker.java:147)
         at weblogic.deploy.internal.targetserver.AppContainerInvoker.prepare(AppContainerInvoker.java:61)
         at weblogic.deploy.internal.targetserver.SystemResourceDeployment.prepare(SystemResourceDeployment.java:65)
         at weblogic.management.deploy.internal.DeploymentAdapter$1.prepare(DeploymentAdapter.java:37)
         at weblogic.management.deploy.internal.AppTransition$1.transitionApp(AppTransition.java:21)
         at weblogic.management.deploy.internal.ConfiguredDeployments.transitionApps(ConfiguredDeployments.java:232)
         at weblogic.management.deploy.internal.ConfiguredDeployments.prepare(ConfiguredDeployments.java:164)
         at weblogic.management.deploy.internal.ConfiguredDeployments.deploy(ConfiguredDeployments.java:121)
         at weblogic.management.deploy.internal.DeploymentServerService.resume(DeploymentServerService.java:173)
         at weblogic.management.deploy.internal.DeploymentServerService.start(DeploymentServerService.java:89)
         at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
         at weblogic.work.ServerWorkManagerImpl$WorkAdapterImpl.run(ServerWorkManagerImpl.java:518)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:207)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:179)
    ++++++++++++++++++++++++++++++++++++++++++++++++++
    The configuration files content is :
    TestDSLegacyPool-9290-jdbc.xml
    <?xml version='1.0' encoding='UTF-8'?>
    <jdbc-data-source xmlns="http://www.bea.com/ns/weblogic/90" xmlns:sec="http://www.bea.com/ns/weblogic/90/security" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:wls="http://www.bea.com/ns/weblogic/90/security/wls" xsi:schemaLocation="http://www.bea.com/ns/weblogic/910/domain.xsd">
    <name>TestDSLegacyPool</name>
    <internal-properties>
    <property>
    <name>LegacyType</name>
    <value>3</value>
    </property>
    <property>
    <name>LegacyPoolName</name>
    <value>Beach Brochure Browse Pool</value>
    </property>
    </internal-properties>
    <jdbc-data-source-params>
    <jndi-name>beachBrochureBrowseDS</jndi-name>
    <global-transactions-protocol>None</global-transactions-protocol>
    </jdbc-data-source-params>
    </jdbc-data-source>
    CP-Beach_Brochure_Browse_Pool-1043-jdbc.xml
    <?xml version='1.0' encoding='UTF-8'?>
    <jdbc-data-source xmlns="http://www.bea.com/ns/weblogic/90" xmlns:sec="http://www.bea.com/ns/weblogic/90/security" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:wls="http://www.bea.com/ns/weblogic/90/security/wls" xsi:schemaLocation="http://www.bea.com/ns/weblogic/910/domain.xsd">
    <name>Beach Brochure Browse Pool</name>
    <internal-properties>
    <property>
    <name>LegacyType</name>
    <value>1</value>
    </property>
    </internal-properties>
    <jdbc-driver-params>
    <url>jdbc:oracle:thin:@aserver:1522:adb</url>
    <driver-name>oracle.jdbc.driver.OracleDriver</driver-name>
    <properties>
    <property>
    <name>user</name>
    <value>gf_user</value>
    </property>
    <property>
    <name>dll</name>
    <value>ocijdbc9</value>
    </property>
    <property>
    <name>protocol</name>
    <value>thin</value>
    </property>
    </properties>
    <password-encrypted>{3DES}4UT5899x/Z4=</password-encrypted>
    </jdbc-driver-params>
    <jdbc-connection-pool-params>
    <initial-capacity>1</initial-capacity>
    <max-capacity>3</max-capacity>
    </jdbc-connection-pool-params>
    </jdbc-data-source>
    Would anyone be able to point me in the right direction with this? Configuring the Datasources
    through the Admin Console creates a single Datasource configuration file that contains its relevent
    connection pool configuration, but the Weblogic Upgrade wizard creates a Datasource config file and
    a separate connection pool config file. What would I need to do to use the config files generated
    by the Weblogic Upgrade wizard?
    Any help appreciated
    Thanks
    Andrew

  • Connection Pool - unable to establish connection for one or more OC4J inst.

    Hi.
    I'm using Oracle JDeveloper 10.1.3.1 to develop some app. Database is Oracle XE 10.2.0. Application server is Oracle Aplication Server 10.1.3.1
    After create a needed code, I' v tried establish Connection Pool. When I' v tested connection, next errors was occurred:
    Unable to establish connection for one or more OC4J instances<<
    Home on admin.FRIEND-6843859F - Failed due to error: "Exception occurred testing connection. Exception: java.sql.SQLException: invalid arguments in call."<<"FRIEND-6843859F " is Computer name where Application server is installed.
    --Database is started.
    --App.server processes are started.
    How can I solve this problem?
    Thanx

    If you are using ADF "BC" Jdev will not support more than one connection
    I've tryied and always gives a errors.

  • Multiple connection pools problem

    Hi,
    Here is the problem. We use several connection pools to access differents
    schema of our database. We also have a connection pool
    opened for Weblogic Commerce which connects to the Commerce schema in our
    database. Here is a sample of our weblogic.properties file:
    #========================================================
    # WeblogicCommerce pool and data source
    #========================================================
    weblogic.jdbc.connectionPool.commercePool=\
    url=jdbc:oracle:thin:@careon_dev:1521:careon,\
    driver=oracle.jdbc.driver.OracleDriver,\
    loginDelaySecs=1,\
    initialCapacity=2,\
    maxCapacity=10,\
    capacityIncrement=1,\
    allowShrinking=true,\
    shrinkPeriodMins=15,\
    testConnsOnReserve=true,\
    props=user=WLCS_TEST;password=WLCS_TEST,\
    testTable=WLCS_IS_ALIVE,\
    refreshMinutes=5
    weblogic.allow.reserve.weblogic.jdbc.connectionPool.commercePool=everyone,
    CareonDev
    weblogic.jdbc.DataSource.weblogic.jdbc.jts.commercePool=commercePool
    #========================================================
    # WeblogicCommerce Document Management pool
    #========================================================
    # This is the pool the beans reference
    weblogic.jdbc.connectionPool.docPool=\
    url=jdbc:beasys:docmgmt:com.beasys.commerce.axiom.document.ref.RefDocumentPr
    ovider,\
    driver=com.beasys.commerce.axiom.document.jdbc.Driver,\
    loginDelaySecs=1,\
    initialCapacity=2,\
    maxCapacity=10,\
    capacityIncrement=1,\
    allowShrinking=true,\
    shrinkPeriodMins=15,\
    refreshMinutes=10,\
    props=jdbc.url=jdbc:weblogic:pool:commercePool;\
    jdbc.isPooled=true;\
    weblogic.t3.waitForConnection=true;\
    weblogic.t3.waitSecondsForConnection=999999999999;\
    docBase=C:/WebLogicCommerce/dmsBase/;\
    schemaXML=C:/WebLogicCommerce/dmsBase/doc-schema.xml
    weblogic.allow.reserve.weblogic.jdbc.connectionPool.docPool=everyone,
    CareonDev
    # Add the show doc servlet
    weblogic.httpd.register.ShowDocServlet=com.beasys.commerce.content.ShowDocSe
    rvlet
    #========================================================
    # Careon's CDRpool and data source
    #========================================================
    weblogic.jdbc.connectionPool.cdrPool=\
    url=jdbc:oracle:thin:@careon_dev:1521:careon,\
    driver=oracle.jdbc.driver.OracleDriver,\
    initialCapacity=2,\
    maxCapacity=10,\
    capacityIncrement=2,\
    allowShrinking=true,\
    shrinkPeriodMins=15,\
    refreshMinutes=10,\
    testTable=dual,\
    props=user=test;password=test
    weblogic.allow.reserve.weblogic.jdbc.connectionPool.cdrPool=everyone,
    CareonDev
    Inpredictably, we obtain the following error:
    java.sql.SQLException: Connection has already been created in this tx
    context for pool named commercePool. Illegal attempt to create connection
    from another pool: cdrPool
    Does anybody have a solution or at least pointers ?
    Many thanks,
    Olivier

    Goh Yew Yap wrote:
    >
    Is there any workaround for this?Yes. In 6.0, presuming you use XA-compliant JDBC drivers
    for the DBMS or DBMSes involved, transactions will be able
    to involve any number of pools/DBMSes in a transaction.
    For 5.1 and/or for DBMSes that do not have an XA-compliant
    JDBC driver, you can write BMP beans that will do their own
    JDBC access to all but one DBMS, using the non-transactional
    pool driver, and you will be fully responsible for any
    transactional state involving this under-the-covers JDBC.
    This is easy to do in cases where a second DBMS is used
    primarily for queries, not updates, so the non-JTS-managed
    JDBC access can't corrupt that DBMS.
    Joe
    >
    "Joseph Weinstein" <[email protected]> wrote in message
    news:[email protected]...
    Olivier Baujard wrote:
    Hi,
    Here is the problem.
    Inpredictably, we obtain the following error:
    java.sql.SQLException: Connection has already been created in this tx
    context for pool named commercePool. Illegal attempt to create connection
    from another pool: cdrPoolHi. This means that within a single JTS/EJB transaction, there weremultiple
    beans and/or JSPs etc that got JDBC connections to do work, but not all ofthese
    routines asked for a connection from the same pool. That's a requirementfor
    5.1 or 4.5. The transaction coordinator and JTS driver cooperate to ensurethat
    only one JDBC connection is really ever used in a given transaction. Ifmultiple
    beans ask for a pool connection within a given tx, we ensure that theyreally get
    the same connection. This is because JDBC drivers typically don'timplement
    2-phase commit, so we must enforse that only one DBMS connection isinvolved so we
    can just commit or roll back on it, and ensure transactional correctness.If a
    bean asks for a connection from a different pool than a previous bean inthe same
    tx, we know we can't give them the already-established connection, so wethrow
    this exception.
    For 6.0, for pools made with XA-compliant JDBC drivers, this will be OK.
    Joe
    We use several connection pools to access differents
    schema of our database. We also have a connection pool
    opened for Weblogic Commerce which connects to the Commerce schema in
    our
    database. Here is a sample of our weblogic.properties file:
    #========================================================
    # WeblogicCommerce pool and data source
    #========================================================
    weblogic.jdbc.connectionPool.commercePool=\
    url=jdbc:oracle:thin:@careon_dev:1521:careon,\
    driver=oracle.jdbc.driver.OracleDriver,\
    loginDelaySecs=1,\
    initialCapacity=2,\
    maxCapacity=10,\
    capacityIncrement=1,\
    allowShrinking=true,\
    shrinkPeriodMins=15,\
    testConnsOnReserve=true,\
    props=user=WLCS_TEST;password=WLCS_TEST,\
    testTable=WLCS_IS_ALIVE,\
    refreshMinutes=5
    weblogic.allow.reserve.weblogic.jdbc.connectionPool.commercePool=everyone,
    CareonDev
    weblogic.jdbc.DataSource.weblogic.jdbc.jts.commercePool=commercePool
    #========================================================
    # WeblogicCommerce Document Management pool
    #========================================================
    # This is the pool the beans reference
    weblogic.jdbc.connectionPool.docPool=\
    url=jdbc:beasys:docmgmt:com.beasys.commerce.axiom.document.ref.RefDocumentPr
    ovider,\
    driver=com.beasys.commerce.axiom.document.jdbc.Driver,\
    loginDelaySecs=1,\
    initialCapacity=2,\
    maxCapacity=10,\
    capacityIncrement=1,\
    allowShrinking=true,\
    shrinkPeriodMins=15,\
    refreshMinutes=10,\
    props=jdbc.url=jdbc:weblogic:pool:commercePool;\
    jdbc.isPooled=true;\
    weblogic.t3.waitForConnection=true;\
    weblogic.t3.waitSecondsForConnection=999999999999;\
    docBase=C:/WebLogicCommerce/dmsBase/;\
    schemaXML=C:/WebLogicCommerce/dmsBase/doc-schema.xml
    weblogic.allow.reserve.weblogic.jdbc.connectionPool.docPool=everyone,
    CareonDev
    # Add the show doc servlet
    weblogic.httpd.register.ShowDocServlet=com.beasys.commerce.content.ShowDocSe
    rvlet
    #========================================================
    # Careon's CDRpool and data source
    #========================================================
    weblogic.jdbc.connectionPool.cdrPool=\
    url=jdbc:oracle:thin:@careon_dev:1521:careon,\
    driver=oracle.jdbc.driver.OracleDriver,\
    initialCapacity=2,\
    maxCapacity=10,\
    capacityIncrement=2,\
    allowShrinking=true,\
    shrinkPeriodMins=15,\
    refreshMinutes=10,\
    testTable=dual,\
    props=user=test;password=test
    weblogic.allow.reserve.weblogic.jdbc.connectionPool.cdrPool=everyone,
    CareonDev
    Inpredictably, we obtain the following error:
    java.sql.SQLException: Connection has already been created in this tx
    context for pool named commercePool. Illegal attempt to createconnection
    from another pool: cdrPool
    Does anybody have a solution or at least pointers ?
    Many thanks,
    Olivier--
    PS: Folks: BEA WebLogic is in S.F. with both entry and advanced positionsfor
    people who want to work with Java and E-Commerce infrastructure products.Send
    resumes to [email protected]
    The Weblogic Application Server from BEA
    JavaWorld Editor's Choice Award: Best Web Application Server
    Java Developer's Journal Editor's Choice Award: Best Web ApplicationServer
    Crossroads A-List Award: Rapid Application Development Tools for Java
    Intelligent Enterprise RealWare: Best Application Using a ComponentArchitecture
    http://www.bea.com/press/awards_weblogic.html
    PS: Folks: BEA WebLogic is in S.F. with both entry and advanced positions for
    people who want to work with Java and E-Commerce infrastructure products. Send
    resumes to [email protected]
    The Weblogic Application Server from BEA
    JavaWorld Editor's Choice Award: Best Web Application Server
    Java Developer's Journal Editor's Choice Award: Best Web Application Server
    Crossroads A-List Award: Rapid Application Development Tools for Java
    Intelligent Enterprise RealWare: Best Application Using a Component Architecture
    http://www.bea.com/press/awards_weblogic.html

  • Multiple connection pools in the same DB physical source

    Hi, I have this situation in BI Admin:
    A single DB with 2 physical schema and 2 Connection Pools with OCI 10/11g.
    Clicking on any table I can see the data after selecting the right connection pool for that table.
    I created a Business Model based upon tables from one of the 2 physical schemas and a corresponding presentation layer. It is consistent and I can view the related subject area in Answers, but when I select a Dimension column (CONVERGENZA_NEGOZIO.STATO) and the fact measure ( Convergenza_Fact.INCASSO ) in viewing results I get this error:
    Odbc driver returned an error (SQLExecDirectW).
    Error Details
    Error Codes: OPR4ONWY:U9IM8TAC:OI2DL65P
    State: HY000. Code: 10058. [NQODBC] [SQL_STATE: HY000] [nQSError: 10058] A general error has occurred. [nQSError: 17001] Oracle Error code: 942, message: ORA-00942: table or view does not exist at OCI call OCIStmtExecute. [nQSError: 17010] SQL statement preparation failed. (HY000)
    SQL Issued: SELECT CONVERGENZA_NEGOZIO.STATO saw_0, Convergenza_Fact.INCASSO saw_1 FROM Convergenza ORDER BY saw_0
    Is it caused by the multiple connection pools under the same DB?

    Yes I think that's correct, but only if you're going to use the same user to connect to them.
    If you have a single user you're using to connect to a database to read data which happens to be over more than one schema, you'd use one connection pool.
    However if you have entirely separate schemas (eg. different applications) and need to use a different user for each then you would use one connection pool per schema. Also if you thought you might move one of the schemas to another physical database at some point in the future it might be prudent to use a separate connection pool from the outset.
    If you're still getting the error that the table cannot be found and your users have full permissions then logically the table that's being looked for does not exist, or you have not qualified it. What I mean by that is if you are connecting as USER2 and SELECT * FROM TABLE_A then the database will assume that you mean USER2.TABLE_A. If you mean USER1.TABLE_A then you need to make sure the qualification is in there.
    In the admin tool check your Physical layer is set up correctly with your Physical Tables residing in the correct Physical Schemas.

  • Query about multiple connection pools under one database

    Hi,
    I have s query about connection pool, now we have a requirement,
    we have two schemas in one db, some data store in one schema, some in another schema,
    all tables are the same, but data is different, we want to retrive all data under two schemas,
    so we need two connection pools under one database,
    I have set two system DSN, and each connection pool was mapping to one DSN,
    but after I importing tables into RPD, when I view data, there is a dialog let me select connection pool. so If this, when we drag columns in answer, it will definitely get wrong.
    so how to realize this function about multiple connection pools under one database and we can get data normally.

    Hi,
    Try this step
    1)Better to create two different DSN for the same database with different user id and password
    2)now create multiple connection pool in the same database in u r RPD physical layer .
    also refer this link : for imporving performance
    http://obiee101.blogspot.com/2009/01/obiee-multiple-connection-pools.html
    http://gerardnico.com/wiki/dat/obiee/connection_pool
    Thanks
    Deva

  • Connection Pooling : Network Adapter could not establish the connection

    Hi,
    We have a client-server application wherein the server has a pooled connection to an Oracle 10i database. The application is developed in Java and we are using Oracle OracleConnectionCacheImpl API to manage the connection pooling( DYNAMIC pooling with a pool size of 5 and we are using ojdbc14.jar)
    On certain occasions when activity is extremely high, the server attemtps to retrieve around 2 million datasets/records. The connection pool runs out of connections and we get the following error :
    com.indigo.utils.DBEngineException: java.sql.SQLException: Io exception: The Network Adapter could not establish the connection
    at com.indigo.zclasses.DBTradingSource.getConnection(DBTradingSource.java:136)
    at com.indigo.zclasses.DBTradingSource.getTicketMessages(DBTradingSource.java:8033)
    at sun.reflect.GeneratedMethodAccessor749.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at com.indigo.basketserver.ServerSideUtil.ConfigUtil(ServerSideUtil.java:88)
    at com.indigo.basketserver.RemoteServerImpl.ConfigUtil(RemoteServerImpl.java:543)
    at sun.reflect.GeneratedMethodAccessor17.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:294)
    at sun.rmi.transport.Transport$1.run(Transport.java:153)
    at java.security.AccessController.doPrivileged(Native Method)
    at sun.rmi.transport.Transport.serviceCall(Transport.java:149)
    at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:466)
    at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:707)
    at java.lang.Thread.run(Thread.java:595)
    Caused by: java.sql.SQLException: Io exception: The Network Adapter could not establish the connection
    at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
    at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:179)
    at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:334)
    at oracle.jdbc.driver.OracleConnection.<init>(OracleConnection.java:418)
    at oracle.jdbc.driver.OracleDriver.getConnectionInstance(OracleDriver.java:521)
    at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:325)
    at java.sql.DriverManager.getConnection(DriverManager.java:525)
    at java.sql.DriverManager.getConnection(DriverManager.java:140)
    at oracle.jdbc.pool.OracleDataSource.getConnection(OracleDataSource.java:171)
    at oracle.jdbc.pool.OracleConnectionPoolDataSource.getPhysicalConnection(OracleConnectionPoolDataSource.java:149)
    at oracle.jdbc.pool.OracleConnectionPoolDataSource.getPooledConnection(OracleConnectionPoolDataSource.java:95)
    at oracle.jdbc.pool.OracleConnectionPoolDataSource.getPooledConnection(OracleConnectionPoolDataSource.java:63)
    at oracle.jdbc.pool.OracleConnectionCacheImpl.getNewPoolOrXAConnection(OracleConnectionCacheImpl.java:547)
    at oracle.jdbc.pool.OracleConnectionCacheImpl.getPooledConnection(OracleConnectionCacheImpl.java:404)
    at oracle.jdbc.pool.OracleConnectionCacheImpl.getConnection(OracleConnectionCacheImpl.java:298)
    at oracle.jdbc.pool.OracleConnectionCacheImpl.getConnection(OracleConnectionCacheImpl.java:268)
    at com.indigo.zclasses.DBTradingSource.getConnection(DBTradingSource.java:127)
    This is happens in Production and despite our exhaustive efforts,we have been unable to reproduce it in our Testing environment so far.
    A large number of login attempts are seen in the Oracle login monitoring table, around 50,000 but we dont think that should be an issue. At the time, when this problem occurs, there are other processes making connection to the DB without any issues. Also, after sometime, the connection is restored and no exceptions are thrown.
    Any insight into how we could simulate,resolve or monitor this issue would be greatly appreciated.
    Thanks,
    Zuber

    Hi. This a long-known issue, and is caused by the DBMS listener's incoming
    request buffer becoming overloaded by many simultaneous connection
    requests. It will fail some of them. I have seen this with a simple java
    program that calls Driver.connect() identically 20 times in a tight loop.
    Some of the calls will fail in this way, while others will succeed. The
    solution BEA's pool has, is to have a delay option to have the thread
    sleep a bit (half-second to a secod or so) between successive connection
    requests. After that, don't close connections until they're broken. Keep
    them and re-use them.
    HTH,
    Joe Weinstein at BEA Systems

  • Connection pooling & multiple apps in single instance - many sessions

    Any feedback would be much appreciated from anyone with experience already with this situation and/or can provide some insight on this:
    Adhering to the trend of consolidating instances, we have a single consolidated instance with multiple apps. With connection pooling (we use apache & mod_perl), I suppose you have an option of creating some oracle db accounts that can be shared among multiple apps - that benefits you in reducing the numbers of total pooled db connections to the instance - but one very big drawback is that you have some apps, if sharing generic db userids, having access to tables they have no need to access.
    On another hand, you have the option (which is the approach we've taken thus far and, in my view, is definitely the way to go) of a distinct oracle account for each app - on the downside, that could produce many more total db sessions (& os processes) on the server as each new set of unique persistent pooled connections are created - but it benefits you in terms of security - which has a lot of weight - since each app account only has access to what it needs & nothing beyond that (the "least privilege" concept).
    We're not an "amazon.com" so we haven't had to deal with thousands of sessions within an instance so there's an element of the unknown here for us - some questions I have are: How can I accurately predict how many db sessions (& os processes) this particular solaris server can support? I realize kernel parameters need to be set high enough for this sort of environment but simply setting the parameters cannot be a true indication of what the server can support. How much memory is required for thousands of sessions? I'm trying to gauge how many sessions & processes we can currently support - and at what point we'll need additional memory, or an updated server, or at what point we need to start thinking about an additional server environment for new apps.
    I realize connection pooling is, by it nature, reducing the overall sessions required but as each unique db account is created, there will be set of persistent sessions out there and that will grow.
    Also if you have any insight on other things to think about when heading into the direction of lots of sessions (beyond kernel settings, other OS or db parameters that need to be reviewed, or some features to enable).
    I'm rambling so I'll stop right there; sorry about the length of the post. It's possible that the things to look at and consider are pretty straight-forward.
    Thanks in advance for any feedback on any of the above.
    -Rick Papaj
    [email protected]

    You better check the documentation available on OTN
    http://download-west.oracle.com/docs/cd/B25221_03/web.1013/b14432/threadpool.htm
    There are several options you can setup with pooling.
    hope this helps.

  • Connection pool not re-establishing connections, throwing exception instead

    Hello,
    I've just set up a connection pool on the sun java system application server 8 for a MySQL database using the official mysql-connector/j 5.0. Everything is working great, except when the connections timeout (or i kill them all manually from the database server) and then request a page that needs to use the DataSource object, the following exception is thrown:
    Exception thrown: com.mysql.jdbc.CommunicationsException -- Communications link failure due to underlying exception:
    ** BEGIN NESTED EXCEPTION **
    java.io.EOFException
    STACKTRACE:
    java.io.EOFException
         at com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:1913)
         at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:2304)
         at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2803)
         at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1573)
         at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1665)
         at com.mysql.jdbc.Connection.execSQL(Connection.java:3118)
         at com.mysql.jdbc.Connection.execSQL(Connection.java:3047)
         at com.mysql.jdbc.Statement.executeQuery(Statement.java:1166)
         at com.mysql.jdbc.jdbc2.optional.StatementWrapper.executeQuery(StatementWrapper.java:705)
         at beans.MySessionBean.businessMethod(MySessionBean.java:73)
         at org.apache.jsp.index_jsp._jspService(index_jsp.java:70)
         at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:105)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:860)
         at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:336)
         at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
         at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:251)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:860)
         at sun.reflect.GeneratedMethodAccessor98.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:585)
         at org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:249)
         at java.security.AccessController.doPrivileged(Native Method)
         at javax.security.auth.Subject.doAsPrivileged(Subject.java:517)
         at org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:282)
         at org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:165)
         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:257)
         at org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:55)
         at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:161)
         at java.security.AccessController.doPrivileged(Native Method)
         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:263)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
         at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:225)
         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:173)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:161)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:132)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
         at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:933)
         at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:185)
         at com.sun.enterprise.web.connector.grizzly.ProcessorTask.process(ProcessorTask.java:653)
         at com.sun.enterprise.web.connector.grizzly.ProcessorTask.process(ProcessorTask.java:534)
         at com.sun.enterprise.web.connector.grizzly.ProcessorTask.doTask(ProcessorTask.java:403)
         at com.sun.enterprise.web.connector.grizzly.WorkerThread.run(WorkerThread.java:55)
    ** END NESTED EXCEPTION **
    Last packet sent to the server was 16 ms ago.What could be wrong?
    Thank you.

    The code is here:
        public String businessMethod() {
            //TODO implement businessMethod
            try
                InitialContext ic = new InitialContext();
                Object obj = ic.lookup("jdbc/MyDS");
                System.out.println("Object is: " + obj + " | Class is: " + obj.getClass().getName());
                DataSource ds = (DataSource)obj;
                Connection conn = ds.getConnection();
                Statement stmt = conn.createStatement();
                ResultSet rs = stmt.executeQuery("SELECT a,b FROM test");
                String ret = "";
                while(rs.next())
                    ret += rs.getString(1) + " - " + rs.getString(2) + "<br/>";
                conn.close();
                return ret;
            catch(Exception e)
                return "Exception thrown: " + e.getClass().getName() + " -- " + e.getMessage();
        }On the server, it is set up as XADataSource. I don't really have a big need for distributed transactions, but does it hurt badly to use it anyways? Could it be causing this problem?

  • Multiple sources in a single Connection Pool

    Hi Folks,
    I have a requirement to import data from two diffrent data sources( for example : Two diffrent database of Oracle in two diffrent servers) using a single connection pool to the physical layers of OBIEE RPD. Can anyone please suggest whether this is possible or not? If yes please provide the steps.

    DB Links is an Oracle feature, not an OBIEE. You have to create your DB link in one of the schemas in DB1 so you can connect from there to DB2. Then you can simply create a query that joins data from both DBs:
    SELECT * FROM DUAL d1, DUAL@DB2 d2
    WHERE d1.dummy = d2.dummy
    Search on Google as this is a very popular and simple feature to use. It will allow you to use one connection pool that's connection to two DBs.

Maybe you are looking for