Creating dynamic jdbc pools in WLS 5.10
Looking for pointers and/or sample code for creating dynamic connection pool using weblogic 5.10 SP9.
We are using oracle jdbc thin drivers
http://www.weblogic.com/docs51/classdocs/conn_pools.html#638923
Mehul Parikh wrote:
Looking for pointers and/or sample code for creating dynamic connection pool using weblogic 5.10 SP9.
We are using oracle jdbc thin drivers
Similar Messages
-
Hi, I get a java.lang.StringIndexOutOfBoundsException when making a JDBC
pool connection via the console of WLS 7.0. I use SQL Server 2000 in Win2K
SP2 environment. Exactly the same configuration works perfectly in WinXP
Pro. Can anyone advise me what might cause this problem? Thanks a lot.
Log message
####<May 13, 2002 5:15:52 PM CEST> <Error> <JDBC> <abcdefgh> <vtsserver>
<ExecuteThread: '1' for queue: '__weblogic_admin_html_queue'> <kernel
identity> <> <001060> <Cannot startup connection pool
"ejbTestConnectionPool" java.lang.StringIndexOutOfBoundsException: String
index out of range: -1>
Exception
java.lang.NullPointerException
at
weblogic.management.console.utils.MBeans.getMBeanClassNameFor(MBeans.java:11
53)
at
weblogic.management.console.actions.mbean.EditMBeanAction.getMBeanClass(Edit
MBeanAction.java:210)
at
weblogic.management.console.actions.mbean.EditMBeanAction.getDialogTypeKey(E
ditMBeanAction.java:188)
at
weblogic.management.console.actions.internal.InternalActionContext.setAction
(InternalActionContext.java:158)
at
weblogic.management.console.actions.internal.ActionServlet.doAction(ActionSe
rvlet.java:170)
at
weblogic.management.console.actions.internal.ActionServlet.doPost(ActionServ
let.java:85)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at
weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(Servle
tStubImpl.java:945)
at
weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java
:332)
at
weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java
:242)
at
weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(W
ebAppServletContext.java:5363)
at
weblogic.security.service.SecurityServiceManager.runAs(SecurityServiceManage
r.java:721)
at
weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletCo
ntext.java:3043)
at
weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java
:2466)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:152)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:133)
--------------- nested within: ------------------
weblogic.utils.NestedRuntimeException - with nested exception:
[java.lang.NullPointerException]
at
weblogic.management.console.utils.MBeans.getMBeanClassNameFor(MBeans.java:11
56)
at
weblogic.management.console.actions.mbean.EditMBeanAction.getMBeanClass(Edit
MBeanAction.java:210)
at
weblogic.management.console.actions.mbean.EditMBeanAction.getDialogTypeKey(E
ditMBeanAction.java:188)
at
weblogic.management.console.actions.internal.InternalActionContext.setAction
(InternalActionContext.java:158)
at
weblogic.management.console.actions.internal.ActionServlet.doAction(ActionSe
rvlet.java:170)
at
weblogic.management.console.actions.internal.ActionServlet.doPost(ActionServ
let.java:85)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at
weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(Servle
tStubImpl.java:945)
at
weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java
:332)
at
weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java
:242)
at
weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(W
ebAppServletContext.java:5363)
at
weblogic.security.service.SecurityServiceManager.runAs(SecurityServiceManage
r.java:721)
at
weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletCo
ntext.java:3043)
at
weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java
:2466)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:152)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:133)
--------------- nested within: ------------------
weblogic.management.console.actions.ActionException - with nested exception:
[weblogic.utils.NestedRuntimeException - with nested exception:
[java.lang.NullPointerException]]
at weblogic.management.console.actions.ErrorAction.(ErrorAction.java:38)
at
weblogic.management.console.actions.internal.ActionServlet.doAction(ActionSe
rvlet.java:190)
at
weblogic.management.console.actions.internal.ActionServlet.doPost(ActionServ
let.java:85)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at
weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(Servle
tStubImpl.java:945)
at
weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java
:332)
at
weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java
:242)
at
weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(W
ebAppServletContext.java:5363)
at
weblogic.security.service.SecurityServiceManager.runAs(SecurityServiceManage
r.java:721)
at
weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletCo
ntext.java:3043)
at
weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java
:2466)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:152)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:133)
Current Date
Mon May 13 17:15:52 CEST 2002
Console Release Build
null
Console Build
null
Server Release Build
7.0.0.0
Server Build
WebLogic Server 7.0 Thu Apr 25 17:16:22 PDT 2002 180709
All Server Product Versions
WebLogic Server 7.0 Thu Apr 25 17:16:22 PDT 2002 180709
WebLogic XMLX Module 7.0 Thu Apr 25 17:26:07 PDT 2002 180709
Request Info
Protocol: HTTP/1.1
ServerName: localhost
ServerPort: 7001
Secure: false
ContextPath: /console
ServletPath: /common/error.jsp
QueryString:
MBean=vtsdomain%3AName%3DejbTestConnectionPool%2CType%3DJDBCConnectionPool
PathInfo: null
PathTranslated: null
RequestURI: /console/common/error.jsp
AuthType: null
ContentType: application/x-www-form-urlencoded
CharacterEncoding: null
Locale: en_US
Method: POST
Session:
weblogic.servlet.internal.session.MemorySessionData@1926bd
RequestedSessionId:
8fMghRfnkcOls1wsW0vIRS8PuQKquWoYcnt6ciUG5uznDJiLr1ZA!-37849198!1021299872710
RequestedSessionIdFromCookie: true
RequestedSessionIdFromURL: false
UserPrincipal: vts
RemoteUser: vts
RemoteAddr: 127.0.0.1
RemoteHost: 127.0.0.1
Parameters
MBean = vtsdomain:Name=ejbTestConnectionPool,Type=JDBCConnectionPool
chosen_wl_control_weblogic.management.configuration.JDBCConnectionPoolMBean.
Targets-Server = vtsdomain:Name=vtsserver,Type=Server
weblogic.console.submit_form = dataposted
wl_control_weblogic.management.configuration.JDBCConnectionPoolMBean.Targets
-Server = vtsdomain:Name=vtsserver,Type=Server
Attributes
wlinternalaction =
weblogic.management.console.actions.internal.InternalActionContext@4372d8
java.util.Locale = en_US weblogic.management.console.catalog.Catalog =
weblogic.management.console.catalog.XmlCatalog@3ca759
weblogic.management.console.helpers.BrowserHelper = User-Agent: Mozilla/4.0
(compatible; MSIE 6.0; Windows NT 5.0; .NET CLR 1.0.3705) IE: true Netscape:
false Supported: true JavscriptHrefs: false TableCellClick: true
DocumentReloadedOnResize: false DropdownStretchable: true CellSpacingBlank:
false EmptyCellBlank: false ImgOnclickSupported: true TableBorderFancy: true
PartialToWideTables: false DisabledControlSupported: true
weblogic.management.console.helpers.DebugHelper =
weblogic.management.console.helpers.DebugHelper@16ed83
weblogic.management.console.helpers.UnitsHelper =
weblogic.management.console.helpers.UnitsHelper@ae2d9
weblogic.management.console.helpers.UrlHelper =
weblogic.management.console.helpers.UrlHelper@28fd41
Headers
Accept = image/gif, image/x-xbitmap, image/jpeg, image/pjpeg,
application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword,
*/* Accept-Encoding = gzip, deflate Accept-Language = en-us Cache-Control =
no-cache Connection = Keep-Alive Content-Length = 304 Content-Type =
application/x-www-form-urlencoded Cookie =
ADMINCONSOLESESSION=8fMghRfnkcOls1wsW0vIRS8PuQKquWoYcnt6ciUG5uznDJiLr1ZA!-37
849198 Host = localhost:7001 Referer =
http://localhost:7001/console/actions/mbean/DoEditMBeanAction?MBean=vtsdomai
n%3AName%3DejbTestConnectionPool%2CType%3DJDBCConnectionPool User-Agent =
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; .NET CLR 1.0.3705)
BrowserInfo
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0;
.NET CLR 1.0.3705)
IE: true
Netscape: false
Supported: true
JavscriptHrefs: false
TableCellClick: true
DocumentReloadedOnResize: false
DropdownStretchable: true
CellSpacingBlank: false
EmptyCellBlank: false
ImgOnclickSupported: true
TableBorderFancy: true
PartialToWideTables: false
DisabledControlSupported: trueThanks, Joe. It works now!
"Joseph Weinstein" <[email protected]> wrote in message
news:[email protected]...
>
Vladimir wrote:
Here are the definitions of the two pools - both encounter the same
problem:
<JDBCConnectionPool DriverName="weblogic.jdbc.mssqlserver4.Driver"
Name="ejbTestConPool"
Properties="db=ejbTest;user=sa;port=1433;password=test;server=localhost"
TestConnectionsOnRelease="true" TestConnectionsOnReserve="true"
TestTableName="accounts" URL="weblogic:jdbc:mssqlserver4"/>yep, as I thought. A JDBC URL always starts with 'jdbc'. It should be
'jdbc:weblogic:mssqlserver4'. Also, make TestConnectionsOnRelease="false"
(it's a waste of cycles).
Joe
<JDBCConnectionPool DriverName="weblogic.jdbc.mssqlserver4.Driver"
Name="ejbTestConnectionPool" Password="{3DES}sCmdDszi61I="
Properties="user=sa;db=ejbTest;port=1433;password=test;server=localhost"
Targets="vtsserver" TestTableName="accounts"
URL="weblogic:jdbc:mssqlserver4"
XAPassword="{3DES}sCmdDszi61I="/>
>>
Vladimir
"Joseph Weinstein" <[email protected]> wrote in message
news:[email protected]...
show us your pool definitions from the config.xml file. There's
probably a
problem
with the URL or properties.
Joe
Vladimir wrote:
Hi, I get a java.lang.StringIndexOutOfBoundsException when making a
JDBC
pool connection via the console of WLS 7.0. I use SQL Server 2000in
Win2K
SP2 environment. Exactly the same configuration works perfectly in
WinXP
Pro. Can anyone advise me what might cause this problem? Thanks alot.
>>>>
Log message
####<May 13, 2002 5:15:52 PM CEST> <Error> <JDBC> <abcdefgh><vtsserver>
<ExecuteThread: '1' for queue: '__weblogic_admin_html_queue'><kernel
identity> <> <001060> <Cannot startup connection pool
"ejbTestConnectionPool" java.lang.StringIndexOutOfBoundsException:String
index out of range: -1>
Exception
java.lang.NullPointerException
at
weblogic.management.console.utils.MBeans.getMBeanClassNameFor(MBeans.java:11
53)
at
weblogic.management.console.actions.mbean.EditMBeanAction.getMBeanClass(Edit
MBeanAction.java:210)
at
weblogic.management.console.actions.mbean.EditMBeanAction.getDialogTypeKey(E
ditMBeanAction.java:188)
at
weblogic.management.console.actions.internal.InternalActionContext.setAction
(InternalActionContext.java:158)
at
weblogic.management.console.actions.internal.ActionServlet.doAction(ActionSe
rvlet.java:170)
at
weblogic.management.console.actions.internal.ActionServlet.doPost(ActionServ
let.java:85)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at
weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(Servle
tStubImpl.java:945)
at
weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java
:332)
at
weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java
:242)
at
weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(W
ebAppServletContext.java:5363)
at
weblogic.security.service.SecurityServiceManager.runAs(SecurityServiceManage
r.java:721)
at
weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletCo
ntext.java:3043)
at
weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java
:2466)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:152)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:133)
--------------- nested within: ------------------
weblogic.utils.NestedRuntimeException - with nested exception:
[java.lang.NullPointerException]
at
weblogic.management.console.utils.MBeans.getMBeanClassNameFor(MBeans.java:11
56)
at
weblogic.management.console.actions.mbean.EditMBeanAction.getMBeanClass(Edit
MBeanAction.java:210)
at
weblogic.management.console.actions.mbean.EditMBeanAction.getDialogTypeKey(E
ditMBeanAction.java:188)
at
weblogic.management.console.actions.internal.InternalActionContext.setAction
(InternalActionContext.java:158)
at
weblogic.management.console.actions.internal.ActionServlet.doAction(ActionSe
rvlet.java:170)
at
weblogic.management.console.actions.internal.ActionServlet.doPost(ActionServ
let.java:85)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at
weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(Servle
tStubImpl.java:945)
at
weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java
:332)
at
weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java
:242)
at
weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(W
ebAppServletContext.java:5363)
at
weblogic.security.service.SecurityServiceManager.runAs(SecurityServiceManage
r.java:721)
at
weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletCo
ntext.java:3043)
at
weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java
:2466)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:152)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:133)
--------------- nested within: ------------------
weblogic.management.console.actions.ActionException - with nestedexception:
[weblogic.utils.NestedRuntimeException - with nested exception:
[java.lang.NullPointerException]]
atweblogic.management.console.actions.ErrorAction.(ErrorAction.java:38)
at
weblogic.management.console.actions.internal.ActionServlet.doAction(ActionSe
rvlet.java:190)
at
weblogic.management.console.actions.internal.ActionServlet.doPost(ActionServ
let.java:85)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at
weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(Servle
tStubImpl.java:945)
at
weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java
:332)
at
weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java
:242)
at
weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(W
ebAppServletContext.java:5363)
at
weblogic.security.service.SecurityServiceManager.runAs(SecurityServiceManage
r.java:721)
at
weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletCo
ntext.java:3043)
at
weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java
:2466)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:152)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:133)
Current Date
Mon May 13 17:15:52 CEST 2002
Console Release Build
null
Console Build
null
Server Release Build
7.0.0.0
Server Build
WebLogic Server 7.0 Thu Apr 25 17:16:22 PDT 2002 180709
All Server Product Versions
WebLogic Server 7.0 Thu Apr 25 17:16:22 PDT 2002 180709
WebLogic XMLX Module 7.0 Thu Apr 25 17:26:07 PDT 2002 180709
Request Info
Protocol: HTTP/1.1
ServerName: localhost
ServerPort: 7001
Secure: false
ContextPath: /console
ServletPath: /common/error.jsp
QueryString:
MBean=vtsdomain%3AName%3DejbTestConnectionPool%2CType%3DJDBCConnectionPool
PathInfo: null
PathTranslated: null
RequestURI: /console/common/error.jsp
AuthType: null
ContentType: application/x-www-form-urlencoded
CharacterEncoding: null
Locale: en_US
Method: POST
Session:
weblogic.servlet.internal.session.MemorySessionData@1926bd
RequestedSessionId:
8fMghRfnkcOls1wsW0vIRS8PuQKquWoYcnt6ciUG5uznDJiLr1ZA!-37849198!1021299872710
RequestedSessionIdFromCookie: true
RequestedSessionIdFromURL: false
UserPrincipal: vts
RemoteUser: vts
RemoteAddr: 127.0.0.1
RemoteHost: 127.0.0.1
Parameters
MBean = vtsdomain:Name=ejbTestConnectionPool,Type=JDBCConnectionPool
chosen_wl_control_weblogic.management.configuration.JDBCConnectionPoolMBean.
Targets-Server = vtsdomain:Name=vtsserver,Type=Server
weblogic.console.submit_form = dataposted
wl_control_weblogic.management.configuration.JDBCConnectionPoolMBean.Targets
-Server = vtsdomain:Name=vtsserver,Type=Server
Attributes
wlinternalaction =
weblogic.management.console.actions.internal.InternalActionContext@4372d8
java.util.Locale = en_US weblogic.management.console.catalog.Catalog=
weblogic.management.console.catalog.XmlCatalog@3ca759
weblogic.management.console.helpers.BrowserHelper = User-Agent:Mozilla/4.0
(compatible; MSIE 6.0; Windows NT 5.0; .NET CLR 1.0.3705) IE: trueNetscape:
false Supported: true JavscriptHrefs: false TableCellClick: true
DocumentReloadedOnResize: false DropdownStretchable: trueCellSpacingBlank:
false EmptyCellBlank: false ImgOnclickSupported: true
TableBorderFancy:
true
PartialToWideTables: false DisabledControlSupported: true
weblogic.management.console.helpers.DebugHelper =
weblogic.management.console.helpers.DebugHelper@16ed83
weblogic.management.console.helpers.UnitsHelper =
weblogic.management.console.helpers.UnitsHelper@ae2d9
weblogic.management.console.helpers.UrlHelper =
weblogic.management.console.helpers.UrlHelper@28fd41
Headers
Accept = image/gif, image/x-xbitmap, image/jpeg, image/pjpeg,
application/vnd.ms-excel, application/vnd.ms-powerpoint,application/msword,
*/* Accept-Encoding = gzip, deflate Accept-Language = en-usCache-Control =
no-cache Connection = Keep-Alive Content-Length = 304 Content-Type =
application/x-www-form-urlencoded Cookie =
ADMINCONSOLESESSION=8fMghRfnkcOls1wsW0vIRS8PuQKquWoYcnt6ciUG5uznDJiLr1ZA!-37
849198 Host = localhost:7001 Referer =
http://localhost:7001/console/actions/mbean/DoEditMBeanAction?MBean=vtsdomai
n%3AName%3DejbTestConnectionPool%2CType%3DJDBCConnectionPoolUser-Agent
=
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; .NET CLR
1.0.3705)
BrowserInfo
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; WindowsNT
5.0;
.NET CLR 1.0.3705)
IE: true
Netscape: false
Supported: true
JavscriptHrefs: false
TableCellClick: true
DocumentReloadedOnResize: false
DropdownStretchable: true
CellSpacingBlank: false
EmptyCellBlank: false
ImgOnclickSupported: true
TableBorderFancy: true
PartialToWideTables: false
DisabledControlSupported: true -
Connections not being released from jdbc pool on WLS 5.1 sp8
I am using WLS 5.1 on RedHat Linux kernel 2.4
The database is oracle 8.1.6 and I am using the thin jdbc driver as shown in the config below.
weblogic.jdbc.connectionPool.bobePool=\
url=jdbc:oracle:thin:@localhost:1521:<sid>,\
driver=oracle.jdbc.driver.OracleDriver,\
loginDelaySecs=1,\
initialCapacity=10,\
maxCapacity=22,\
capacityIncrement=5,\
allowShrinking=true,\
shrinkPeriodMins=3,\
testConnsOnReserve=true,\
testTable=dual,\
refreshTestMinutes=5,\
props=user=<username>;password=<password>
The problem I am facing is that some connections remain active
after the SQL query has finished. The no. of open connections
keep on piling up till the limit of 18 connections is reached and
ultimately at that point weblogic hangs.
Has someone else faced this problem...and found a solution??
Regards,
Anish Srivastava
System Analyst
Baazee.comHi Caren,
Weblogic doesn't close connections on "time-out". There are some reasons
for this. The most important one is that even if you have such a
functionality,
in case of a connection leak all the available connections can be trashed in
a matter of milliseconds, so it wouldn't help at all. Though, weblogic does
close leaked connection when they are garbage collected, but it's easy to
see
that it doesn't help a lot, too.
So you need to make sure that all the JDBC objects are closed properly,
for example like in this code:
try {
} finally {
try {resultSet.close();} catch (SQLException se) {}
try {preparedStatement.close();} catch (SQLException se) {}
try {connection.close();} catch (SQLException se) {}
Also it's possible that you simply don't have enough connection.
You could try to increase size of the pool.
Regards,
Slava Imeshev
"Karen Law" <[email protected]> wrote in message
news:[email protected]...
Closing the DB connections is important. But is there any parameters to be
set in the WebLogic configuration in order to release the connection whenit
hasn't been closed for a long time? Say, setting the connection timeout?
Many thx!
Karen
"Deyan D. Bektchiev" <[email protected]> wrote in message
news:[email protected]...
Do you close the DB connections in a finally block after you've finished
using them?
If not your application is leaking the connections and sometimes GC is
not able or does not free those in a timely manner.
--dejan
Anish Srivastava wrote:
I am using WLS 5.1 on RedHat Linux kernel 2.4
The database is oracle 8.1.6 and I am using the thin jdbc driver as
shown
in the config below.
weblogic.jdbc.connectionPool.bobePool=\
url=jdbc:oracle:thin:@localhost:1521:<sid>,\
driver=oracle.jdbc.driver.OracleDriver,\
loginDelaySecs=1,\
initialCapacity=10,\
maxCapacity=22,\
capacityIncrement=5,\
allowShrinking=true,\
shrinkPeriodMins=3,\
testConnsOnReserve=true,\
testTable=dual,\
refreshTestMinutes=5,\
props=user=<username>;password=<password>
The problem I am facing is that some connections remain active
after the SQL query has finished. The no. of open connections
keep on piling up till the limit of 18 connections is reached and
ultimately at that point weblogic hangs.
Has someone else faced this problem...and found a solution??
Regards,
Anish Srivastava
System Analyst
Baazee.com -
Unable to create dynamic JDBC Connections in RMI Server
Hi,
Goal: Using Swing client to connect to a variety of JDBC databases via RMI dynamically....
J2SE : 1.4.2
J2EE: 1.31
Databases: Oracle 9i(R2), MySQL 4.0, MS Access 2000
Platform : Windows 2000 SP4 (Professional and Server)
I have a working client-server application using RMI to connect to a single database. I want the ability
to create JDBC connections dynmically by invoking a RMI method after it has been bound. Presently
I am getting null pointers. Anybody offer any solutions or work arounds?Goal: Using Swing client to connect to a variety of
JDBC databases via RMI dynamically....Actually what u want from the client swing is to form a Form using the datamodel from the database, invoke query as the client is allowed and wants and update changes. I hope I got it right, thats what u want.
Actually as per my knowledge goes thats what any Database 3-tier program should do.
I have a working client-server application using RMI
to connect to a single database. I want the ability
to create JDBC connections dynmically by invoking a
RMI method after it has been bound. Presently
I am getting null pointers. Anybody offer any
solutions or work arounds?Database connections are only needed as long as the query to the database are being processed. So for ur solution if u have a RMI method that, will invoke first, the database connection and then process the query and then disconnect it , would be enough. When multiple clients will call the method there will be multiple connections to the database as they can have threads working or if u want one process at a time u can sycronize the method. This RMI method will only return the result set of the query and that would be enough for ur solution. Now to be able to say why ur getting null pointers I would need the code u r using. -
Dynamic Connection Pool fails in WLS 6.1
Hi all,
I am trying to create the connection pool dynamically but it fails saying " Error
to load the Driver"
Snippet Code --
Hashtable env = new Hashtable();
env.put(Context.INITIAL_CONTEXT_FACTORY,
"weblogic.jndi.WLInitialContextFactory");
// URL for the WebLogic Server
env.put(Context.PROVIDER_URL, "t3://localhost:7001");
env.put(Context.SECURITY_PRINCIPAL, "Fred");
env.put(Context.SECURITY_CREDENTIALS, "secret");
Context ctx = new InitialContext(env);
// Look up weblogic.jdbc.JdbcServices
weblogic.jdbc.common.JdbcServices jdbc =
(weblogic.jdbc.common.JdbcServices)
ctx.lookup("weblogic.jdbc.JdbcServices");
String thePoolName = "eng2";
Properties poolProps = null;
Pool myPool = null;
weblogic.jdbc.common.Pool pool = null
poolProps = new Properties();
// Set properties for the ConnectionPool.
poolProps.put("poolName", thePoolName);
poolProps.put("url", "jdbc:weblogic:demo");
poolProps.put("driver", "COM.cloudscape.core.JDBCDriver");
poolProps.put("props", "user=scott;password=tiger;server=demo");
poolProps.put("initialCapacity", "1");
poolProps.put("maxCapacity", "10");
poolProps.put("capacityIncrement", "1");
poolProps.put("aclName", "dynapool");
poolProps.put("allowShrinking", "true");
poolProps.put("shrinkPeriodMins", "5");
poolProps.put("refreshPeriod", "10");
poolProps.put("testConnOnReserve", "true");
poolProps.put("testConnOnRelease", "false");
poolProps.put("testTableName", "dual");
poolProps.put("loginDelaySecs", "1");
// create our pool
try {
myJdbc.createPool(poolProps);
} catch (Exception e) {
System.out.println(thePoolName
+ " can't be created ..");
System.exit(666);
Any Help will be appreciated in creating the dynamic connection pool in WLS 6.1 SP2
Regards,
BalaBala wrote:
Hi joe,
Any how let me want to create the Connections Pool Dynamically in WLS 6.1 .Pls
give some ideas / ways to proceeed further
Thx
BalaFirst I need the answer to my question:
Hi. Can the same pool be created as a startup pool?
(Ie: does it succeed?)
Joelet me know...
Joe
>
>>
Bala wrote:
Hi all,
I am trying to create the connection pool dynamically but it fails saying" Error
to load the Driver"
Snippet Code --
Hashtable env = new Hashtable();
env.put(Context.INITIAL_CONTEXT_FACTORY,
"weblogic.jndi.WLInitialContextFactory");
// URL for the WebLogic Server
env.put(Context.PROVIDER_URL, "t3://localhost:7001");
env.put(Context.SECURITY_PRINCIPAL, "Fred");
env.put(Context.SECURITY_CREDENTIALS, "secret");
Context ctx = new InitialContext(env);
// Look up weblogic.jdbc.JdbcServices
weblogic.jdbc.common.JdbcServices jdbc =
(weblogic.jdbc.common.JdbcServices)
ctx.lookup("weblogic.jdbc.JdbcServices");
String thePoolName = "eng2";
Properties poolProps = null;
Pool myPool = null;
weblogic.jdbc.common.Pool pool = null
poolProps = new Properties();
// Set properties for the ConnectionPool.
poolProps.put("poolName", thePoolName);
poolProps.put("url", "jdbc:weblogic:demo");
poolProps.put("driver", "COM.cloudscape.core.JDBCDriver");
poolProps.put("props", "user=scott;password=tiger;server=demo");
poolProps.put("initialCapacity", "1");
poolProps.put("maxCapacity", "10");
poolProps.put("capacityIncrement", "1");
poolProps.put("aclName", "dynapool");
poolProps.put("allowShrinking", "true");
poolProps.put("shrinkPeriodMins", "5");
poolProps.put("refreshPeriod", "10");
poolProps.put("testConnOnReserve", "true");
poolProps.put("testConnOnRelease", "false");
poolProps.put("testTableName", "dual");
poolProps.put("loginDelaySecs", "1");
// create our pool
try {
myJdbc.createPool(poolProps);
} catch (Exception e) {
System.out.println(thePoolName
+ " can't be created ..");
System.exit(666);
Any Help will be appreciated in creating the dynamic connection pool inWLS 6.1 SP2
Regards,
Bala -
Steve Muenchs "Dynamic JDBC" on WLS 11g (10.3.1)?
Hi,
I try to run Steves Example "11g Dynamic JDBC Credentials for Model 1, Struts, Trinidad, and ADF Faces Rich Client" on Standalone WLS 11g (10.3.1) but it doesn't works... on integrated WLS it runs without problems. The WLS-Log shows:
Modul: oracle.adf.mbean.share.config.ADFConfigLifeCycleCallBack
Message: Failed to create config mbean.
details: java.lang.Exception: oracle.mds.core.MetadataNotFoundException: MDS-00013: No Metadate for Metaobject "/META-INF/adf-config.xml" found.
Does somebody have the example to run brought? Or if new settings are necessary for the example on WLS 11g?
Kind regards
MartinHi,
since Steve's solution has nothing to do with the adf-config, I suggest you create a simple testcase that reproduces the problem. It appears as if the ADF binding is not set up properly
Frank -
Workaround for using Oracle JDBC extension with WLS pooling
Reading the newsgroup I saw that many of us encountered the problems
with ClassCastException when tried to use Oracle JDBC extension
with WLS pooling. I also had.
In this case BEA recommends to use dangerous
method getVendorConnection() which exposes
the physical connection object to your code.
Yes it's really dangerous because of unsafe usage may breaks
WLS pooled connection(s).
Moreover, this practice will make your JDBC code
unportable (your JDBC code in addition to Oracle dependence
became Weblogic dependent):
void doSmth() {
Connection con = ...;
Connection vCon = ((WLConnection)con).getVendorConnection();
// + mess of usage con in one places and vCon in others
// (where Oracle extensions are needed)
// !Don't forget to don't close vCon!
Sux.
I found the workaround.
Introduction
============
Yes the real cause of ClassCastException is that
in depth of Oracle driver the casting
to class oracle.jdbc.driver.OracleConnection
(not to interface oracle.jdbc.OracleConnection)
is performed.
Someone can say that this is bug or pure desing.
Weblogic pooled connection provide dynamic
implementation for all public interfaces
which real physical (wrapped) connection object implements.
Great feature!
But I guess that all interface methods implemented
by simple call-delegation to physical (wrapped) connection object.
In case of oracle.jdbc.OracleConnection interface
this approach doesn't work for at least one its method:
public OracleConnection unwrap()
WLS pooled connection shoudn't implement this method by
delegation to physical connection object BUT should
return physical connection object itself!
// Wrong implementation of unwrap()
// delegation is used
public OracleConnection unwrap() {
return physicalConnection.unwrap();
// Right implementation of unwrap()
// physical connection returned
public OracleConnection unwrap() {
return physicalConnection;
Workaround
==========
1. Develop your own OracleConnection wrapper class:
import oracle.jdbc.OracleConnection;
import weblogic.jdbc.extensions.WLConnection;
public class MyOracleConnectionImpl implements OracleConnection {
private OracleConnection con;
public MyOracleConnectionImpl(OracleConnection connection)
throws SQLException
this.con = connection;
public OracleConnection unwrap() {
return (OracleConnection)
((WLConnection)con).getVendorConnection();
/* Implement all other methods by delegation to con object */
2. Don't get Connections directly from DataSource --
develop your own simple (may be static) utility
class which retrives Connections from dataSource
and returns them wrapped into your MyOracleConnectionImpl
to your code from some method:
puclic abstract class MyConnectionSource {
public static Connection getConnection() {
Connection con = // get it from DataSource
return new MyOracleConnectionImpl((OracleConnection)con);
3. Add attribute RemoveInfectedConnectionsEnabled="false"
to definition of your JDBCConnectionPool within config.xml
You may do it because of you `safely` use vendorConnection --
you don't expose it to application code.
4. Enjoy the Oracle JDBC extensions in your code!
Example:
Connection con = MyConnectionSource.getConnection;
ArrayDescriptor add =
ArrayDescriptor.createDescriptor("your_type", con);
Hope it helps to someone.
Best regards,
Eugene VoytitskyHello Eugene Voytitsky,
Thanks Eugene Voytitsky for your idea
I have tried the solution suggested by You, but it did not work.
It still throws ClassCastException.
I am sorry for posting the whole code of two classes below.
I did this to give you more clarity.
I am also indicating the place where the exception was thrown..
Please let me know if I am doing something wrong.
OracleConnection Wrapper class
package ejbTesting;
// sql imports
import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.sql.SQLWarning;
import java.sql.Statement;
// util imports
import java.util.Map;
import java.util.Properties;
// imports from Oracle Driver Classes
import oracle.jdbc.OracleConnection;
import oracle.jdbc.OracleOCIFailover;
import oracle.jdbc.OracleSavepoint;
// import from Weblogic extensions
import weblogic.jdbc.extensions.WLConnection;
public class WeblogicConnectionWrapper implements OracleConnection
// oracle connection object
private OracleConnection connection;
public WeblogicConnectionWrapper (OracleConnection orclConnection)
try
this.connection = orclConnection;
catch(Exception unexpected )
unexpected.printStackTrace();
public OracleConnection unwrap()
try
// The datasource returns a weblogic.jdbc.pool.Connection
// This needs to be type casted to weblogic.jdbc.extensions.WLConnection
// Only this weblogic.jdbc.extensions.WLConnection CAN BE type casted
// to OracleConnection
return (OracleConnection) ((WLConnection) connection).getVendorConnection();
catch(Exception sqlException )
sqlException.printStackTrace ();
return null;
/* Implement all other methods by delegation to connection object */
public Connection _getPC()
return connection._getPC();
public void archive(int i, int j, String s)
throws SQLException
connection.archive(i, j, s);
public void assertComplete()
throws SQLException
connection.assertComplete();
public void clearWarnings()
throws SQLException
connection.clearWarnings();
public void close()
throws SQLException
connection.close();
public void commit()
throws SQLException
connection.commit();
public Statement createStatement()
throws SQLException
return connection.createStatement();
public Statement createStatement(int i, int j)
throws SQLException
return connection.createStatement(i, j);
public boolean getAutoClose()
throws SQLException
return connection.getAutoClose();
public boolean getAutoCommit()
throws SQLException
return connection.getAutoCommit();
public CallableStatement getCallWithKey(String s)
throws SQLException
return connection.getCallWithKey(s);
public String getCatalog()
throws SQLException
return connection.getCatalog();
public boolean getCreateStatementAsRefCursor()
return connection.getCreateStatementAsRefCursor();
public int getDefaultExecuteBatch()
return connection.getDefaultExecuteBatch();
public int getDefaultRowPrefetch()
return connection.getDefaultRowPrefetch();
public Object getDescriptor(String s)
return connection.getDescriptor(s);
public boolean getExplicitCachingEnabled()
throws SQLException
return connection.getExplicitCachingEnabled();
public boolean getImplicitCachingEnabled()
throws SQLException
return connection.getImplicitCachingEnabled();
public boolean getIncludeSynonyms()
return connection.getIncludeSynonyms();
public Object getJavaObject(String s)
throws SQLException
return connection.getJavaObject(s);
public DatabaseMetaData getMetaData()
throws SQLException
return connection.getMetaData();
public Properties getProperties()
return connection.getProperties();
public boolean getRemarksReporting()
return connection.getRemarksReporting();
public boolean getRestrictGetTables()
return connection.getRestrictGetTables();
public String getSQLType(Object obj)
throws SQLException
return connection.getSQLType(obj);
public String getSessionTimeZone()
return connection.getSessionTimeZone();
public int getStatementCacheSize()
throws SQLException
return connection.getStatementCacheSize();
public PreparedStatement getStatementWithKey(String s)
throws SQLException
return connection.getStatementWithKey(s);
public int getStmtCacheSize()
return connection.getStmtCacheSize();
public short getStructAttrCsId()
throws SQLException
return connection.getStructAttrCsId();
public boolean getSynchronousMode()
return connection.getSynchronousMode();
public int getTransactionIsolation()
throws SQLException
return connection.getTransactionIsolation();
public Map getTypeMap()
throws SQLException
return connection.getTypeMap();
public String getUserName()
throws SQLException
return connection.getUserName();
public boolean getUsingXAFlag()
return connection.getUsingXAFlag();
public SQLWarning getWarnings()
throws SQLException
return connection.getWarnings();
public boolean getXAErrorFlag()
return connection.getXAErrorFlag();
public boolean isClosed()
throws SQLException
return connection.isClosed();
public boolean isLogicalConnection()
return connection.isLogicalConnection();
public boolean isReadOnly()
throws SQLException
return connection.isReadOnly();
public String nativeSQL(String s)
throws SQLException
return connection.nativeSQL(s);
public Object openJoltConnection(String s, short word0, short word1)
return connection.openJoltConnection(s, word0, word1);
public void oracleReleaseSavepoint(OracleSavepoint oraclesavepoint)
throws SQLException
connection.oracleReleaseSavepoint(oraclesavepoint);
public void oracleRollback(OracleSavepoint oraclesavepoint)
throws SQLException
connection.oracleRollback(oraclesavepoint);
public OracleSavepoint oracleSetSavepoint()
throws SQLException
return connection.oracleSetSavepoint();
public OracleSavepoint oracleSetSavepoint(String s)
throws SQLException
return connection.oracleSetSavepoint(s);
public int pingDatabase(int i)
throws SQLException
return connection.pingDatabase(i);
public CallableStatement prepareCall(String s)
throws SQLException
return connection.prepareCall(s);
public CallableStatement prepareCall(String s, int i, int j)
throws SQLException
return connection.prepareCall(s, i, j);
public CallableStatement prepareCallWithKey(String s)
throws SQLException
return connection.prepareCallWithKey(s);
public PreparedStatement prepareStatement(String s)
throws SQLException
return connection.prepareStatement(s);
public PreparedStatement prepareStatement(String s, int i, int j)
throws SQLException
return connection.prepareStatement(s, i, j);
public PreparedStatement prepareStatementWithKey(String s)
throws SQLException
return connection.prepareStatementWithKey(s);
public void purgeExplicitCache()
throws SQLException
connection.purgeExplicitCache();
public void purgeImplicitCache()
throws SQLException
connection.purgeImplicitCache();
public void putDescriptor(String s, Object obj)
throws SQLException
connection.putDescriptor(s, obj);
public void registerApiDescription(String s, short word0, short word1, String
s1)
connection.registerApiDescription(s, word0, word1, s1);
public void registerSQLType(String s, Class class1)
throws SQLException
connection.registerSQLType(s, class1);
public void registerSQLType(String s, String s1)
throws SQLException
connection.registerSQLType(s, s1);
public void registerTAFCallback(OracleOCIFailover oracleocifailover, Object
obj)
throws SQLException
connection.registerTAFCallback(oracleocifailover, obj);
public void rollback()
throws SQLException
connection.rollback();
public void setAutoClose(boolean flag)
throws SQLException
connection.setAutoClose(flag);
public void setAutoCommit(boolean flag)
throws SQLException
connection.setAutoCommit(flag);
public void setCatalog(String s)
throws SQLException
connection.setCatalog(s);
public void setCreateStatementAsRefCursor(boolean flag)
connection.setCreateStatementAsRefCursor(flag);
public void setDefaultExecuteBatch(int i)
throws SQLException
connection.setDefaultExecuteBatch(i);
public void setDefaultRowPrefetch(int i)
throws SQLException
connection.setDefaultRowPrefetch(i);
public void setExplicitCachingEnabled(boolean flag)
throws SQLException
connection.setExplicitCachingEnabled(flag);
public void setImplicitCachingEnabled(boolean flag)
throws SQLException
connection.setImplicitCachingEnabled(flag);
public void setIncludeSynonyms(boolean flag)
connection.setIncludeSynonyms(flag);
public void setReadOnly(boolean flag)
throws SQLException
connection.setReadOnly(flag);
public void setRemarksReporting(boolean flag)
connection.setRemarksReporting(flag);
public void setRestrictGetTables(boolean flag)
connection.setRestrictGetTables(flag);
public void setSessionTimeZone(String s)
throws SQLException
connection.setSessionTimeZone(s);
public void setStatementCacheSize(int i)
throws SQLException
connection.setStatementCacheSize(i);
public void setStmtCacheSize(int i)
throws SQLException
connection.setStmtCacheSize(i);
public void setStmtCacheSize(int i, boolean flag)
throws SQLException
connection.setStmtCacheSize(i, flag);
public void setSynchronousMode(boolean flag)
connection.setSynchronousMode(flag);
public void setTransactionIsolation(int i)
throws SQLException
connection.setTransactionIsolation(i);
public void setTypeMap(Map map)
throws SQLException
connection.setTypeMap(map);
public void setUsingXAFlag(boolean flag)
connection.setUsingXAFlag(flag);
public void setWrapper(OracleConnection oracleconnection)
connection.setWrapper(oracleconnection);
public void setXAErrorFlag(boolean flag)
connection.setXAErrorFlag(flag);
public void shutdown(int i)
throws SQLException
connection.shutdown(i);
public void startup(String s, int i)
throws SQLException
connection.startup(s, i);
Util class to get Wrapped Connections from
datasource
package ejbTesting;
// j2ee imports
import javax.naming.InitialContext;
import javax.sql.DataSource;
// sql imports
import java.sql.Connection;
// imports from Oracle Driver Classes
import oracle.jdbc.OracleConnection;
* Wrapper class for the DataSource Connection from Weblogic pool
public class DataSourceConnectionWrapper
// datasource variable
private static transient DataSource datasource = null;
private static String dbName = "jdbc/workbench";
* Method that returns the database connection
public static Connection getConnection()
try
// initialsing the datasource object
initialiseDataSource ();
// Getting a connection from the datasource
Connection con = datasource.getConnection( );
// wrapping it custom wrapper class and
// returning the connection object
return new WeblogicConnectionWrapper((OracleConnection)con);
catch(Exception exception )
exception.printStackTrace();
return null;
private static void initialiseDataSource( ) throws Exception
if ( datasource == null )
try
InitialContext ic = new InitialContext( );
datasource = (DataSource) ic.lookup( dbName );
catch (Exception ne )
throw new Exception( "NamingException while looking up DataSource with
JNDI name" +
dbName + ": \n" + ne.getMessage( ) );
Exception Stack Trace
The line 46 in DataSourceConnectionWrapper
corresponds to
return new WeblogicConnectionWrapper((OracleConnection)con);
Which I feel is logical as the connection which we get from Weblogic
datasource cannot be type casted to OracleConnection
java.lang.ClassCastException: weblogic.jdbc.pool.Connection
at ejbTesting.DataSourceConnectionWrapper.getConnection(DataSourceConnectionWrapper.java:46) -
Problem creating dynamic pools with JdbcServices?
Hi
I am using WL Server 6.1 and am trying to create dynamic pools using the JdbcServices
object. Basically, I create a properties object, and fill it with the properties,
and then pass it as a parameter to the CreatePool command.
I have noticed that whenever I set the initialCapacity property, an exception
gets thrown. The pool gets created and is visible in the admin console, but I
cannot do any operations on the pool.
It seems to work if I don't set initialCapacity. In this case, initialCapacity
defaults to 0 (and not 1 as the documentation says).
Could the Weblogic people throw some light on the issue? This is very important
for our release.
Thanks in advance,
P KeshHi Mitesh
Here is the exception I get when I try to create a pool called 'pkPool9':
The createPool command failed: Pool pkPool9 can't be created. Exception:java.lang.reflect.UndeclaredThrowableException:
Start server side stack trace:
java.lang.reflect.UndeclaredThrowableException: javax.management.ReflectionException:
error invoking addTarget
Start server side stack trace:
javax.management.ReflectionException: error invoking addTarget
at weblogic.management.internal.DynamicMBeanImpl.invokeLocally(DynamicMBeanImpl.java:688)
at weblogic.management.internal.DynamicMBeanImpl.invoke(DynamicMBeanImpl.java:621)
at weblogic.management.internal.ConfigurationMBeanImpl.invoke(ConfigurationMBeanImpl.java:359)
at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1555)
at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
at weblogic.management.internal.RemoteMBeanServerImpl_WLSkel.invoke(Unknown Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267)
at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:22)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
End server side stack trace
at weblogic.rmi.internal.BasicOutboundRequest.sendReceive(BasicOutboundRequest.java:85)
at weblogic.rmi.internal.BasicRemoteRef.invoke(BasicRemoteRef.java:135)
at weblogic.rmi.internal.ProxyStub.invoke(ProxyStub.java:35)
at $Proxy8.invoke(Unknown Source)
at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:468)
at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:209)
at $Proxy99.addTarget(Unknown Source)
at weblogic.jdbc.common.internal.ConnectionPool.dynaStartup(ConnectionPool.java:498)
at weblogic.jdbc.common.internal.ConnectionPool.createPool(ConnectionPool.java:727)
at weblogic.jdbc.common.internal.ConnectionPool.createPool(ConnectionPool.java:709)
at weblogic.jdbc.common.internal.ConnectionPool_WLSkel.invoke(Unknown Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267)
at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:22)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
-Thanks
P Kesh
Mitesh Patel <[email protected]> wrote:
Hi
Exception should be thrown only if initial capacity > Max capacity or
inital capacity <
0. Can you post the exception you are getting here?
Thanks,
Mitesh
P Kesh wrote:
Hi
I am using WL Server 6.1 and am trying to create dynamic pools usingthe JdbcServices
object. Basically, I create a properties object, and fill it with theproperties,
and then pass it as a parameter to the CreatePool command.
I have noticed that whenever I set the initialCapacity property, anexception
gets thrown. The pool gets created and is visible in the admin console,but I
cannot do any operations on the pool.
It seems to work if I don't set initialCapacity. In this case, initialCapacity
defaults to 0 (and not 1 as the documentation says).
Could the Weblogic people throw some light on the issue? This is veryimportant
for our release.
Thanks in advance,
P Kesh -
Does WLS use OracleOCIConnectionPool to create it's pool?
Hello,
I have WLS 8.1 SP2... it ships with oralce jdbc driver version 9.2.0.0 I think...
When WLS creates a connection pool, does it use the OracleOCIConnectionPool class from the oracle jdbc driver? OR does it use the OraclePooledConnection class?
Thanks!
KeithKeith Kwiatek wrote:
Hello,
I have WLS 8.1 SP2... it ships with oralce jdbc driver version 9.2.0.0 I think...
When WLS creates a connection pool, does it use the OracleOCIConnectionPool
class from the oracle jdbc driver? OR does it use the OraclePooledConnection class?
Thanks!
KeithHi. We use our own pooling implementation. We do not use dirver-internal pooling,
and don't recommend them for use with WebLogic.
Joe -
A question about creating a Connection pool that uses Oracle JDBC
Dear all,
I have an issue with creating a connection pool within a web application in order to be used by several servlets. I appreciate if you could kindly give me a hand.
I'm using:
Web server: Apache-tomcat: 6.0.18
Oracle Database 11g Enterprise: 11.1.0.6.0 - Production
Operating system: Linux (ubuntu 8.10)
IDE: Sun Netbeans
Oralce JDBC Drivers: 11.1.0.7.0-Production (ojdbc6.jar and orai18n.jar)
JDK 1.6
Usually, just for creating a connection to my database (without using a connection pool), I proceed in the following way:
String dbURL = "jdbc:oracle:thin:@localhost:1521:database01";
String username = "scott";
String user_password = "tiger";
String userSqlQuery = "SELECT * FROM mytable";
Connection connection = DriverManager.getConnection (dbURL, username, user_password);
Statement statement = connection.createStatement();
statement.executeUpdate(query_text);This works pretty well allowing to communicate with my oracle database. By this method I have run several projects
with different queries (SELECT, INSERT, UPDATE, DELETE ,etc.) and each time it worked without any problem and
returned the result of the query. Therefore I think that there is no problem with JDBC drivers
However, when I want to create a connection pool, it seems that the lookup method cannot locate Oracle JDBC drivers. That is,
try
InitialContext ic = new InitialContext();
Context envContext = (Context)ic.lookup("java:/comp/env");
dataSource = (DataSource)envContext.lookup("jdbc/oracle11gEnterprise");
Connection connection = dataSource.getConnection();
catch (Exception e)
e.printStackTrace();
}Just after calling dataSource.getConnection() the java.lang.NullPointerException is thrown.
Any idea?
Thanks in advance,
And for your information, here are context.xml and web.xml files for my project
Here is my context.xml
<?xml version="1.0" encoding="UTF-8"?>
<Context antiJARLocking="true" path="/WebApplication1">
<Resource name="jdbc/oracle11gEnterprise"
scope="Shareable"
type="javax.sql.DataSource"
auth="Container"
description="Oracle Database 11g Enterprise"
maxActive="100"
maxIdle="30"
maxWait="10000"
removeAbandoned="true"
removeAbandonedTimeout="60"
logAbandoned="true"
url="jdbc:oracle:thin:@localhost:1521:database01"
username="scott"
password="tiger" />
</Context>my web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<ConsumeOutput>false</ConsumeOutput>
<resource-ref>
<res-ref-name>jdbc/oracle11gEnterprise</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
<!--
. And here as usual I write servlet definition and url mappings
-->nobody?
-
Slow performance WLS with jdbc pools
Hi all, we have follow configuration of our system: the server with applications and server with jdbc pools. Recently we get strange situation. The server with jdbc pools it seems hung. We get thread dumps for this server and we see that it not hung, but normally work but very slow. Many weblogic.kernel.Default threads were busy by rmi database calls (see below). Anothe strange that before slowing server work nothing enties in server log. Last entry in server log were one hour before slow work. May someone propose why this situation can occure?
Thread dump:
<b>"ExecuteThread: '0' for queue: 'weblogic.kernel.Default'" id=11 idx=0x1c tid=6668 prio=5 alive, daemon
at java/util/WeakHashMap.get(Ljava/lang/Object;)Ljava/lang/Object;(WeakHashMap.java:342)[optimized]
at weblogic/rmi/internal/ClientRuntimeDescriptor.intern(Ljava/lang/String;)Lweblogic/rmi/internal/ClientRuntimeDescriptor;(ClientRuntimeDescriptor.java:130)[inlined]
at weblogic/rmi/internal/BasicRuntimeDescriptor.getClientRuntimeDescriptor(Ljava/lang/String;)Lweblogic/rmi/internal/ClientRuntimeDescriptor;(BasicRuntimeDescriptor.java:459)[optimized]
at weblogic/rmi/internal/BasicServerRef.getStub()Ljava/lang/Object;(BasicServerRef.java:656)[optimized]
at weblogic/rmi/internal/OIDManager.getReplacement(Ljava/lang/Object;)Ljava/lang/Object;(OIDManager.java:189)[optimized]
at weblogic/rmi/extensions/StubFactory.getStub(Ljava/rmi/Remote;)Ljava/lang/Object;(StubFactory.java:66)
at weblogic/jdbc/rmi/internal/CallableStatementImpl.interopWriteReplace(Lweblogic/common/internal/PeerInfo;)Ljava/lang/Object;(CallableStatementImpl.java:50)
at weblogic/rmi/utils/io/InteropObjectReplacer.replaceObject(Ljava/lang/Object;)Ljava/lang/Object;(InteropObjectReplacer.java:38)[optimized]
at weblogic/common/internal/ChunkedObjectOutputStream.replaceObject(Ljava/lang/Object;)Ljava/lang/Object;(ChunkedObjectOutputStream.java:54)[inlined]
at weblogic/common/internal/ChunkedObjectOutputStream$NestedObjectOutputStream.replaceObject(Ljava/lang/Object;)Ljava/lang/Object;(ChunkedObjectOutputStream.java:249)[optimized]
at java/io/ObjectOutputStream.writeObject0(Ljava/lang/Object;Z)V(Unknown Source)[inlined]
at java/io/ObjectOutputStream.writeObject(Ljava/lang/Object;)V(Unknown Source)[inlined]
at weblogic/common/internal/ChunkedObjectOutputStream.writeObject(Ljava/lang/Object;)V(ChunkedObjectOutputStream.java:120)[inlined]
at weblogic/rjvm/MsgAbbrevOutputStream.writeObject(Ljava/lang/Object;Ljava/lang/Class;)V(MsgAbbrevOutputStream.java:94)[optimized]
at weblogic/jdbc/rmi/internal/ConnectionImpl_weblogic_jdbc_wrapper_PoolConnection_oracle_jdbc_driver_OracleConnection_WLSkel.invoke(ILweblogic/rmi/spi/InboundRequest;Lweblogic/rmi/spi/OutboundResponse;Ljava/lang/Object;)Lweblogic/rmi/spi/OutboundResponse;(Unknown Source)[optimized]
at weblogic/rmi/internal/BasicServerRef.invoke(Lweblogic/rmi/extensions/server/RuntimeMethodDescriptor;Lweblogic/rmi/spi/InboundRequest;Lweblogic/rmi/spi/OutboundResponse;)V(BasicServerRef.java:477)[optimized]
at weblogic/rmi/internal/BasicServerRef$1.run()Ljava/lang/Object;(BasicServerRef.java:420)[inlined]
at weblogic/security/acl/internal/AuthenticatedSubject.doAs(Lweblogic/security/subject/AbstractSubject;Ljava/security/PrivilegedExceptionAction;)Ljava/lang/Object;(AuthenticatedSubject.java:363)[inlined]
at weblogic/security/service/SecurityManager.runAs(Lweblogic/security/acl/internal/AuthenticatedSubject;Lweblogic/security/acl/internal/AuthenticatedSubject;Ljava/security/PrivilegedExceptionAction;)Ljava/lang/Object;(SecurityManager.java:147)[inlined]
at weblogic/rmi/internal/BasicServerRef.handleRequest(Lweblogic/rmi/spi/InboundRequest;)V(BasicServerRef.java:415)[inlined]
at weblogic/rmi/internal/BasicExecuteRequest.execute(Lweblogic/kernel/ExecuteThread;)V(BasicExecuteRequest.java:27)[optimized]
at weblogic/kernel/ExecuteThread.execute(Lweblogic/kernel/ExecuteRequest;)V(ExecuteThread.java:219)[optimized]
at weblogic/kernel/ExecuteThread.run()V(ExecuteThread.java:178)
at jrockit/vm/RNI.c2java(IIII)V(Native Method)
-- end of trace
"ExecuteThread: '1' for queue: 'weblogic.kernel.Default'" id=12 idx=0x1e tid=6669 prio=5 alive, daemon
at java/util/WeakHashMap.get(Ljava/lang/Object;)Ljava/lang/Object;(WeakHashMap.java:346)[optimized]
at weblogic/rmi/internal/ClientRuntimeDescriptor.intern(Ljava/lang/String;)Lweblogic/rmi/internal/ClientRuntimeDescriptor;(ClientRuntimeDescriptor.java:130)[inlined]
at weblogic/rmi/internal/BasicRuntimeDescriptor.getClientRuntimeDescriptor(Ljava/lang/String;)Lweblogic/rmi/internal/ClientRuntimeDescriptor;(BasicRuntimeDescriptor.java:459)[optimized]
at weblogic/rmi/internal/BasicServerRef.getStub()Ljava/lang/Object;(BasicServerRef.java:656)[optimized]
at weblogic/rmi/internal/OIDManager.getReplacement(Ljava/lang/Object;)Ljava/lang/Object;(OIDManager.java:189)[optimized]
at weblogic/rmi/extensions/StubFactory.getStub(Ljava/rmi/Remote;)Ljava/lang/Object;(StubFactory.java:66)
at weblogic/jdbc/rmi/internal/CallableStatementImpl.interopWriteReplace(Lweblogic/common/internal/PeerInfo;)Ljava/lang/Object;(CallableStatementImpl.java:50)
at weblogic/rmi/utils/io/InteropObjectReplacer.replaceObject(Ljava/lang/Object;)Ljava/lang/Object;(InteropObjectReplacer.java:38)[optimized]
at weblogic/common/internal/ChunkedObjectOutputStream.replaceObject(Ljava/lang/Object;)Ljava/lang/Object;(ChunkedObjectOutputStream.java:54)[inlined]
at weblogic/common/internal/ChunkedObjectOutputStream$NestedObjectOutputStream.replaceObject(Ljava/lang/Object;)Ljava/lang/Object;(ChunkedObjectOutputStream.java:249)[optimized]
at java/io/ObjectOutputStream.writeObject0(Ljava/lang/Object;Z)V(Unknown Source)[inlined]
at java/io/ObjectOutputStream.writeObject(Ljava/lang/Object;)V(Unknown Source)[inlined]
at weblogic/common/internal/ChunkedObjectOutputStream.writeObject(Ljava/lang/Object;)V(ChunkedObjectOutputStream.java:120)[inlined]
at weblogic/rjvm/MsgAbbrevOutputStream.writeObject(Ljava/lang/Object;Ljava/lang/Class;)V(MsgAbbrevOutputStream.java:94)[optimized]
at weblogic/jdbc/rmi/internal/ConnectionImpl_weblogic_jdbc_wrapper_PoolConnection_oracle_jdbc_driver_OracleConnection_WLSkel.invoke(ILweblogic/rmi/spi/InboundRequest;Lweblogic/rmi/spi/OutboundResponse;Ljava/lang/Object;)Lweblogic/rmi/spi/OutboundResponse;(Unknown Source)[optimized]
at weblogic/rmi/internal/BasicServerRef.invoke(Lweblogic/rmi/extensions/server/RuntimeMethodDescriptor;Lweblogic/rmi/spi/InboundRequest;Lweblogic/rmi/spi/OutboundResponse;)V(BasicServerRef.java:477)[optimized]
at weblogic/rmi/internal/BasicServerRef$1.run()Ljava/lang/Object;(BasicServerRef.java:420)[inlined]
at weblogic/security/acl/internal/AuthenticatedSubject.doAs(Lweblogic/security/subject/AbstractSubject;Ljava/security/PrivilegedExceptionAction;)Ljava/lang/Object;(AuthenticatedSubject.java:363)[inlined]
at weblogic/security/service/SecurityManager.runAs(Lweblogic/security/acl/internal/AuthenticatedSubject;Lweblogic/security/acl/internal/AuthenticatedSubject;Ljava/security/PrivilegedExceptionAction;)Ljava/lang/Object;(SecurityManager.java:147)[inlined]
at weblogic/rmi/internal/BasicServerRef.handleRequest(Lweblogic/rmi/spi/InboundRequest;)V(BasicServerRef.java:415)[inlined]
at weblogic/rmi/internal/BasicExecuteRequest.execute(Lweblogic/kernel/ExecuteThread;)V(BasicExecuteRequest.java:27)[optimized]
at weblogic/kernel/ExecuteThread.execute(Lweblogic/kernel/ExecuteRequest;)V(ExecuteThread.java:219)[optimized]
at weblogic/kernel/ExecuteThread.run()V(ExecuteThread.java:178)
at jrockit/vm/RNI.c2java(IIII)V(Native Method)
-- end of trace</b>Denis Reimer wrote:
Hi all, we have follow configuration of our system: the server with applications and server with jdbc pools. Recently we get strange situation. The server with jdbc pools it seems hung. We get thread dumps for this server and we see that it not hung, but normally work but very slow. Many weblogic.kernel.Default threads were busy by rmi database calls (see below). Anothe strange that before slowing server work nothing enties in server log. Last entry in server log were one hour before slow work. May someon
e propose why this situation can occure?
Thread dump:
<b>"ExecuteThread: '0' for queue: 'weblogic.kernel.Default'" id=11 idx=0x1c tid=6668 prio=5 alive, daemon
at java/util/WeakHashMap.get(Ljava/lang/Object;)Ljava/lang/Object;(WeakHashMap.java:342)[optimized]
at weblogic/rmi/internal/ClientRuntimeDescriptor.intern(Ljava/lang/String;)Lweblogic/rmi/internal/ClientRuntimeDescriptor;(ClientRuntimeDescriptor.java:130)[inlined]
at weblogic/rmi/internal/BasicRuntimeDescriptor.getClientRuntimeDescriptor(Ljava/lang/String;)Lweblogic/rmi/internal/ClientRuntimeDescriptor;(BasicRuntimeDescriptor.java:459)[optimized]
at weblogic/rmi/internal/BasicServerRef.getStub()Ljava/lang/Object;(BasicServerRef.java:656)[optimized]
at weblogic/rmi/internal/OIDManager.getReplacement(Ljava/lang/Object;)Ljava/lang/Object;(OIDManager.java:189)[optimized]
at weblogic/rmi/extensions/StubFactory.getStub(Ljava/rmi/Remote;)Ljava/lang/Object;(StubFactory.java:66)
at weblogic/jdbc/rmi/internal/CallableStatementImpl.interopWriteReplace(Lweblogic/common/internal/PeerInfo;)Ljava/lang/Object;(CallableStatementImpl.java:50)
at weblogic/rmi/utils/io/InteropObjectReplacer.replaceObject(Ljava/lang/Object;)Ljava/lang/Object;(InteropObjectReplacer.java:38)[optimized]
at weblogic/common/internal/ChunkedObjectOutputStream.replaceObject(Ljava/lang/Object;)Ljava/lang/Object;(ChunkedObjectOutputStream.java:54)[inlined]
at weblogic/common/internal/ChunkedObjectOutputStream$NestedObjectOutputStream.replaceObject(Ljava/lang/Object;)Ljava/lang/Object;(ChunkedObjectOutputStream.java:249)[optimized]
at java/io/ObjectOutputStream.writeObject0(Ljava/lang/Object;Z)V(Unknown Source)[inlined]
at java/io/ObjectOutputStream.writeObject(Ljava/lang/Object;)V(Unknown Source)[inlined]
at weblogic/common/internal/ChunkedObjectOutputStream.writeObject(Ljava/lang/Object;)V(ChunkedObjectOutputStream.java:120)[inlined]
at weblogic/rjvm/MsgAbbrevOutputStream.writeObject(Ljava/lang/Object;Ljava/lang/Class;)V(MsgAbbrevOutputStream.java:94)[optimized]
at weblogic/jdbc/rmi/internal/ConnectionImpl_weblogic_jdbc_wrapper_PoolConnection_oracle_jdbc_driver_OracleConnection_WLSkel.invoke(ILweblogic/rmi/spi/InboundRequest;Lweblogic/rmi/spi/OutboundResponse;Ljava/lang/Object;)Lweblogic/rmi/spi/OutboundResponse;(Unknown Source)[optimized]
at weblogic/rmi/internal/BasicServerRef.invoke(Lweblogic/rmi/extensions/server/RuntimeMethodDescriptor;Lweblogic/rmi/spi/InboundRequest;Lweblogic/rmi/spi/OutboundResponse;)V(BasicServerRef.java:477)[optimized]
at weblogic/rmi/internal/BasicServerRef$1.run()Ljava/lang/Object;(BasicServerRef.java:420)[inlined]
at weblogic/security/acl/internal/AuthenticatedSubject.doAs(Lweblogic/security/subject/AbstractSubject;Ljava/security/PrivilegedExceptionAction;)Ljava/lang/Object;(AuthenticatedSubject.java:363)[inlined]
at weblogic/security/service/SecurityManager.runAs(Lweblogic/security/acl/internal/AuthenticatedSubject;Lweblogic/security/acl/internal/AuthenticatedSubject;Ljava/security/PrivilegedExceptionAction;)Ljava/lang/Object;(SecurityManager.java:147)[inlined]
at weblogic/rmi/internal/BasicServerRef.handleRequest(Lweblogic/rmi/spi/InboundRequest;)V(BasicServerRef.java:415)[inlined]
at weblogic/rmi/internal/BasicExecuteRequest.execute(Lweblogic/kernel/ExecuteThread;)V(BasicExecuteRequest.java:27)[optimized]
at weblogic/kernel/ExecuteThread.execute(Lweblogic/kernel/ExecuteRequest;)V(ExecuteThread.java:219)[optimized]
at weblogic/kernel/ExecuteThread.run()V(ExecuteThread.java:178)
at jrockit/vm/RNI.c2java(IIII)V(Native Method)
-- end of trace
"ExecuteThread: '1' for queue: 'weblogic.kernel.Default'" id=12 idx=0x1e tid=6669 prio=5 alive, daemon
at java/util/WeakHashMap.get(Ljava/lang/Object;)Ljava/lang/Object;(WeakHashMap.java:346)[optimized]
at weblogic/rmi/internal/ClientRuntimeDescriptor.intern(Ljava/lang/String;)Lweblogic/rmi/internal/ClientRuntimeDescriptor;(ClientRuntimeDescriptor.java:130)[inlined]
at weblogic/rmi/internal/BasicRuntimeDescriptor.getClientRuntimeDescriptor(Ljava/lang/String;)Lweblogic/rmi/internal/ClientRuntimeDescriptor;(BasicRuntimeDescriptor.java:459)[optimized]
at weblogic/rmi/internal/BasicServerRef.getStub()Ljava/lang/Object;(BasicServerRef.java:656)[optimized]
at weblogic/rmi/internal/OIDManager.getReplacement(Ljava/lang/Object;)Ljava/lang/Object;(OIDManager.java:189)[optimized]
at weblogic/rmi/extensions/StubFactory.getStub(Ljava/rmi/Remote;)Ljava/lang/Object;(StubFactory.java:66)
at weblogic/jdbc/rmi/internal/CallableStatementImpl.interopWriteReplace(Lweblogic/common/internal/PeerInfo;)Ljava/lang/Object;(CallableStatementImpl.java:50)
at weblogic/rmi/utils/io/InteropObjectReplacer.replaceObject(Ljava/lang/Object;)Ljava/lang/Object;(InteropObjectReplacer.java:38)[optimized]
at weblogic/common/internal/ChunkedObjectOutputStream.replaceObject(Ljava/lang/Object;)Ljava/lang/Object;(ChunkedObjectOutputStream.java:54)[inlined]
at weblogic/common/internal/ChunkedObjectOutputStream$NestedObjectOutputStream.replaceObject(Ljava/lang/Object;)Ljava/lang/Object;(ChunkedObjectOutputStream.java:249)[optimized]
at java/io/ObjectOutputStream.writeObject0(Ljava/lang/Object;Z)V(Unknown Source)[inlined]
at java/io/ObjectOutputStream.writeObject(Ljava/lang/Object;)V(Unknown Source)[inlined]
at weblogic/common/internal/ChunkedObjectOutputStream.writeObject(Ljava/lang/Object;)V(ChunkedObjectOutputStream.java:120)[inlined]
at weblogic/rjvm/MsgAbbrevOutputStream.writeObject(Ljava/lang/Object;Ljava/lang/Class;)V(MsgAbbrevOutputStream.java:94)[optimized]
at weblogic/jdbc/rmi/internal/ConnectionImpl_weblogic_jdbc_wrapper_PoolConnection_oracle_jdbc_driver_OracleConnection_WLSkel.invoke(ILweblogic/rmi/spi/InboundRequest;Lweblogic/rmi/spi/OutboundResponse;Ljava/lang/Object;)Lweblogic/rmi/spi/OutboundResponse;(Unknown Source)[optimized]
at weblogic/rmi/internal/BasicServerRef.invoke(Lweblogic/rmi/extensions/server/RuntimeMethodDescriptor;Lweblogic/rmi/spi/InboundRequest;Lweblogic/rmi/spi/OutboundResponse;)V(BasicServerRef.java:477)[optimized]
at weblogic/rmi/internal/BasicServerRef$1.run()Ljava/lang/Object;(BasicServerRef.java:420)[inlined]
at weblogic/security/acl/internal/AuthenticatedSubject.doAs(Lweblogic/security/subject/AbstractSubject;Ljava/security/PrivilegedExceptionAction;)Ljava/lang/Object;(AuthenticatedSubject.java:363)[inlined]
at weblogic/security/service/SecurityManager.runAs(Lweblogic/security/acl/internal/AuthenticatedSubject;Lweblogic/security/acl/internal/AuthenticatedSubject;Ljava/security/PrivilegedExceptionAction;)Ljava/lang/Object;(SecurityManager.java:147)[inlined]
at weblogic/rmi/internal/BasicServerRef.handleRequest(Lweblogic/rmi/spi/InboundRequest;)V(BasicServerRef.java:415)[inlined]
at weblogic/rmi/internal/BasicExecuteRequest.execute(Lweblogic/kernel/ExecuteThread;)V(BasicExecuteRequest.java:27)[optimized]
at weblogic/kernel/ExecuteThread.execute(Lweblogic/kernel/ExecuteRequest;)V(ExecuteThread.java:219)[optimized]
at weblogic/kernel/ExecuteThread.run()V(ExecuteThread.java:178)
at jrockit/vm/RNI.c2java(IIII)V(Native Method)
-- end of trace</b>Hi. It seems you're doing JDBC in an external client, using our RMI-based
JDBC wrappers to the actual connection in the WLS server, and you are
doing LOB retrieval. This means your query goes from your client to
the WLS process, and then to the DBMS, and the LOB data (big) has to go
from the DBMS to the WLS process and then back over RMI to your client.
This is bound to be inefficient. If you can move your JDBC to a JSP or
other serverside class, it will be much faster. Otherwise, if the
management that WLS provides is not strictly necessary for the LOB
manipulation, it may be faster to get that directly from the DBMS to
the external client by using the vendor's JDBC driver directly.
Joe -
How to create dynamic screen using module pool programming
Hi,
Could anybody help me how to create dynamic screens?
I am developing a screen with HR Person with assignment info. If PERNR have multiple assignments, i need to show all the details one by one. How to show the details on screen. I need to call one by one assignment information dynamically.
Please suggest me how to do, apart from using table controls.
Thanks,
KamalYou may have the below options:
1) Table Control
2) Individual fields
3) ALV
4) pop-up screen -
Dynamic Connection Pool Creation Failing in a cluster
Hi,
I am trying to create a connection pool in a clustered environment. This connection
pool is created lazily behind a Stateless Session Bean. We first attempt to determine
whether, the connection pool exists using JdbcServices.poolExists(someName), and
create it if it does not exist. A failure occurs on creation because it looks
like the connection pool might have been created by a bean on a different weblogic
VM instance. Is there any way to dynamically create a connection pool and make
it visible to the whole cluster? Thanks in advance for any help. Michael Dolbear
Mar 28, 2002 5:35:08 PM MST> <Info> <JDBC> <Checking existence of connection pool
Content
ConnectionPool requested by user guest>
<Mar 28, 2002 5:35:08 PM MST> <Info> <JDBC> <Creating connection pool ContentConnectionPoo
l requested by user guest>
weblogic.common.ResourceException: weblogic.management.MBeanCreationException:
Start server side stack trace:
javax.management.InstanceAlreadyExistsException: domain:Name=ContentConnectionPool,Type=JD
BCConnectionPool
at com.sun.management.jmx.RepositorySupport.addMBean(RepositorySupport.java:134)
at com.sun.management.jmx.MBeanServerImpl.internal_addObject(MBeanServerImpl.java:
2352)
at com.sun.management.jmx.MBeanServerImpl.registerMBean(MBeanServerImpl.java:874)
at weblogic.management.internal.RemoteMBeanServerImpl.registerMBean(RemoteMBeanSer
verImpl.java:181)
at weblogic.management.internal.Helper.createMBean(Helper.java:376)
at weblogic.management.internal.Helper.createAdminMBean(Helper.java:291)
at weblogic.management.internal.RemoteMBeanServerImpl.createAdminMBean(RemoteMBean
ServerImpl.java:278)
at weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.java:
635)
at weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.java:
621)
at weblogic.management.internal.AdminMBeanHomeImpl.createAdminMBean(AdminMBeanHome
Impl.java:397)
at weblogic.management.internal.AdminMBeanHomeImpl_WLSkel.invoke(Unknown
Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267)
at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:22)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
--------------- nested within: ------------------
weblogic.management.MBeanCreationException: - with nested exception:
[javax.management.InstanceAlreadyExistsException: domain:Name=ContentConnectionPool,Type=J
DBCConnectionPool]
at weblogic.management.internal.Helper.createMBean(Helper.java:383)
at weblogic.management.internal.Helper.createAdminMBean(Helper.java:291)
at weblogic.management.internal.RemoteMBeanServerImpl.createAdminMBean(RemoteMBean
ServerImpl.java:278)
at weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.java:
635)
at weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.java:
621)
at weblogic.management.internal.AdminMBeanHomeImpl.createAdminMBean(AdminMBeanHome
Impl.java:397)
at weblogic.management.internal.AdminMBeanHomeImpl_WLSkel.invoke(Unknown
Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267)
at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:22)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
End server side stack trace
- with nested exception:
[javax.management.InstanceAlreadyExistsException: domain:Name=ContentConnectionPool,Type=J
DBCConnectionPool
Start server side stack trace:
javax.management.InstanceAlreadyExistsException: domain:Name=ContentConnectionPool,Type=JD
BCConnectionPool
at com.sun.management.jmx.RepositorySupport.addMBean(RepositorySupport.java:134)
at com.sun.management.jmx.MBeanServerImpl.internal_addObject(MBeanServerImpl.java:
2352)
at com.sun.management.jmx.MBeanServerImpl.registerMBean(MBeanServerImpl.java:874)
at weblogic.management.internal.RemoteMBeanServerImpl.registerMBean(RemoteMBeanSer
verImpl.java:181)
at weblogic.management.internal.Helper.createMBean(Helper.java:376)
at weblogic.management.internal.Helper.createAdminMBean(Helper.java:291)
at weblogic.management.internal.RemoteMBeanServerImpl.createAdminMBean(RemoteMBean
ServerImpl.java:278)
at weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.java:
635)
at weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.java:
621)
at weblogic.management.internal.AdminMBeanHomeImpl.createAdminMBean(AdminMBeanHome
Impl.java:397)
at weblogic.management.internal.AdminMBeanHomeImpl_WLSkel.invoke(Unknown
Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267)
at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:22)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
End server side stack trace
at weblogic.jdbc.common.internal.ConnectionPool.dynaStartup(ConnectionPool.java:47
2)
at weblogic.jdbc.common.internal.ConnectionPool.createPool(ConnectionPool.java:727
at weblogic.jdbc.common.internal.ConnectionPool.createPool(ConnectionPool.java:709
at com.thc.ids.inf.framework.opf.rdbms.datastore.ConnectionPoolCreator.createConne
ctionPool(ConnectionPoolCreator.java:82)
at com.thc.ids.inf.framework.opf.datastore.DataStoreRepository.createConnectionPoo
lIfNonExistent(DataStoreRepository.java:211)
at com.thc.ids.inf.util.persistence.content.ConnectionPoolInitializer.createConnec
tionPoolIfNeeded(ConnectionPoolInitializer.java:48)
at com.thc.ids.inf.services.business.crs.spi.oracle.OracleRetrievalProvider.create
ConnectionPoolIfNeeded(Unknown Source)
at com.thc.ids.inf.services.business.crs.spi.oracle.OracleRetrievalProvider.getIma
ge(Unknown Source)
at com.thc.ids.inf.services.business.crs.ContentRetrievalService.getImage(Unknown
Source)
at java.lang.reflect.Method.invoke(Native Method)
at com.thc.ids.inf.util.reflection.MethodDescription.invokeMethod(MethodDescriptio
n.java:181)
at com.thc.ids.inf.util.reflection.MethodInvocation.invoke(MethodInvocation.java:7
9)
at com.thc.ids.inf.framework.service.J2EE.ejb.ServiceBean.invoke(ServiceBean.java:
186)
at com.thc.ids.inf.framework.service.J2EE.ejb.ServiceBean_bjedmi_EOImpl.invoke(Ser
viceBean_bjedmi_EOImpl.java:37)
at com.thc.ids.inf.framework.service.J2EE.ejb.ServiceBean_bjedmi_EOImpl_WLSkel.inv
oke(Unknown Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
at weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerRef.java:93
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267)
at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:22)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
<Mar 28, 2002 5:35:08 PM MST> <Info> <JDBC> <Checking existence of connection
pool Content
ConnectionPool requested by user guest>
<Mar 28, 2002 5:35:08 PM MST> <Info> <JDBC> <Creating connection pool ContentConnectionPoo
l requested by user guest>
weblogic.common.ResourceException: weblogic.management.MBeanCreationException:
Start server side stack trace:
javax.management.InstanceAlreadyExistsException: domain:Name=ContentConnectionPool,Type=JD
BCConnectionPool
at com.sun.management.jmx.RepositorySupport.addMBean(RepositorySupport.java:134)
at com.sun.management.jmx.MBeanServerImpl.internal_addObject(MBeanServerImpl.java:
2352)
at com.sun.management.jmx.MBeanServerImpl.registerMBean(MBeanServerImpl.java:874)
at weblogic.management.internal.RemoteMBeanServerImpl.registerMBean(RemoteMBeanSer
verImpl.java:181)
at weblogic.management.internal.Helper.createMBean(Helper.java:376)
at weblogic.management.internal.Helper.createAdminMBean(Helper.java:291)
at weblogic.management.internal.RemoteMBeanServerImpl.createAdminMBean(RemoteMBean
ServerImpl.java:278)
at weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.java:
635)
at weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.java:
621)
at weblogic.management.internal.AdminMBeanHomeImpl.createAdminMBean(AdminMBeanHome
Impl.java:397)
at weblogic.management.internal.AdminMBeanHomeImpl_WLSkel.invoke(Unknown
Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267)
at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:22)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
--------------- nested within: ------------------
weblogic.management.MBeanCreationException: - with nested exception:
[javax.management.InstanceAlreadyExistsException: domain:Name=ContentConnectionPool,Type=J
DBCConnectionPool]
at weblogic.management.internal.Helper.createMBean(Helper.java:383)
at weblogic.management.internal.Helper.createAdminMBean(Helper.java:291)
at weblogic.management.internal.RemoteMBeanServerImpl.createAdminMBean(RemoteMBean
ServerImpl.java:278)
at weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.java:
635)
at weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.java:
621)
at weblogic.management.internal.AdminMBeanHomeImpl.createAdminMBean(AdminMBeanHome
Impl.java:397)
at weblogic.management.internal.AdminMBeanHomeImpl_WLSkel.invoke(Unknown
Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267)
at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:22)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
End server side stack trace
- with nested exception:
[javax.management.InstanceAlreadyExistsException: domain:Name=ContentConnectionPool,Type=J
DBCConnectionPool
Start server side stack trace:
javax.management.InstanceAlreadyExistsException: domain:Name=ContentConnectionPool,Type=JD
BCConnectionPool
at com.sun.management.jmx.RepositorySupport.addMBean(RepositorySupport.java:134)
at com.sun.management.jmx.MBeanServerImpl.internal_addObject(MBeanServerImpl.java:
2352)
at com.sun.management.jmx.MBeanServerImpl.registerMBean(MBeanServerImpl.java:874)
at weblogic.management.internal.RemoteMBeanServerImpl.registerMBean(RemoteMBeanSer
verImpl.java:181)
at weblogic.management.internal.Helper.createMBean(Helper.java:376)
at weblogic.management.internal.Helper.createAdminMBean(Helper.java:291)
at weblogic.management.internal.RemoteMBeanServerImpl.createAdminMBean(RemoteMBean
ServerImpl.java:278)
at weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.java:
635)
at weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.java:
621)
at weblogic.management.internal.AdminMBeanHomeImpl.createAdminMBean(AdminMBeanHome
Impl.java:397)
at weblogic.management.internal.AdminMBeanHomeImpl_WLSkel.invoke(Unknown
Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267)
at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:22)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
End server side stack trace
at weblogic.jdbc.common.internal.ConnectionPool.dynaStartup(ConnectionPool.java:47
2)
at weblogic.jdbc.common.internal.ConnectionPool.createPool(ConnectionPool.java:727
at weblogic.jdbc.common.internal.ConnectionPool.createPool(ConnectionPool.java:709
at com.thc.ids.inf.framework.opf.rdbms.datastore.ConnectionPoolCreator.createConne
ctionPool(ConnectionPoolCreator.java:82)
at com.thc.ids.inf.framework.opf.datastore.DataStoreRepository.createConnectionPoo
lIfNonExistent(DataStoreRepository.java:211)
at com.thc.ids.inf.util.persistence.content.ConnectionPoolInitializer.createConnec
tionPoolIfNeeded(ConnectionPoolInitializer.java:48)
at com.thc.ids.inf.services.business.crs.spi.oracle.OracleRetrievalProvider.create
ConnectionPoolIfNeeded(Unknown Source)
at com.thc.ids.inf.services.business.crs.spi.oracle.OracleRetrievalProvider.getIma
ge(Unknown Source)
at com.thc.ids.inf.services.business.crs.ContentRetrievalService.getImage(Unknown
Source)
at java.lang.reflect.Method.invoke(Native Method)
at com.thc.ids.inf.util.reflection.MethodDescription.invokeMethod(MethodDescriptio
n.java:181)
at com.thc.ids.inf.util.reflection.MethodInvocation.invoke(MethodInvocation.java:7
9)
at com.thc.ids.inf.framework.service.J2EE.ejb.ServiceBean.invoke(ServiceBean.java:
186)
at com.thc.ids.inf.framework.service.J2EE.ejb.ServiceBean_bjedmi_EOImpl.invoke(Ser
viceBean_bjedmi_EOImpl.java:37)
at com.thc.ids.inf.framework.service.J2EE.ejb.ServiceBean_bjedmi_EOImpl_WLSkel.inv
oke(Unknown Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
at weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerRef.java:93
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267)
at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:22)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)The only way to do it is using MBeans. You could search this newsgroup
for "JDBCConnectionPoolMBean" to get an idea of how it could be done.
Slava
P.S. http://search.bea.com/weblogic/gonews
"Mark Mortensen" <[email protected]> wrote in message
news:[email protected]...
>
Slava,
I am working with Mike on this issue and wanted to add some moreclarifications.
We have a two server cluster where one of the EJB's on one of the Managedservers
creates the connection pool. The problem comes in when a request comes tothe
second server in the cluster. The connection pool is created by the firstserver
but it is only assigned to the first server in the targets section on theconsole.
It isn't assigned to the cluster. Is there a way to programmaticallyassign the
pool to the cluster instead of just the server that created the pool?
-Mark
"Michael Dolear" <[email protected]> wrote:
Hi Slava,
Here is what I am doing. The code is spread across a couple of classes.
I am using
what was described in BEA's doc on dynamic connection pool creation.
I didn't
see anything about MBean apis required:
* Dynamically create a connection pool using
aConnectionPoolProperties.
Please
see ConnectionPoolCreator
* for the required properties that must be sent in.
* @param aConnectionPoolProperties
public synchronized void createConnectionPoolIfNonExistent(Properties
aConnectionPoolProperties)
throwsPersistenceFrameworkInitializationException
ConnectionPoolCreator tempPoolCreator;
Pool tempPool;
tempPoolCreator = new ConnectionPoolCreator();
tempPool =tempPoolCreator.getConnectionPool(aConnectionPoolProperties);
if (tempPool == null)
tempPoolCreator.createConnectionPool(aConnectionPoolProperties);
>>
* Create Connection pool given the properties that I have beenconfigured
with
* @return Pool
public Pool createConnectionPool(Properties aConnectionProperties)
throwsPersistenceFrameworkInitializationException
JdbcServices tempServices;
try
tempServices = this.lookupJdbcServices();
tempServices.createPool(aConnectionProperties);
returntempServices.getPool(aConnectionProperties.getProperty(CONNECTION_POOL_NAME)
catch (Exception e)
PersistenceFrameworkUtils.logException(e);
throw newPersistenceFrameworkInitializationException(e.getMessage());
* Answer a connectionPool or null.
* @return Pool
public Pool getConnectionPool(Properties aConnectionProperties)
throwsPersistenceFrameworkInitializationException
JdbcServices tempServices;
try
tempServices = this.lookupJdbcServices();
if (tempServices.poolExists(
aConnectionProperties.getProperty(CONNECTION_POOL_NAME)))
return tempServices.getPool(
aConnectionProperties.getProperty(CONNECTION_POOL_NAME));
else
return null;
catch (Exception e)
PersistenceFrameworkUtils.logException(e);
throw
newPersistenceFrameworkInitializationException(e.getMessage());
"Slava Imeshev" <[email protected]> wrote:
Hi Michael,
Could you show us the code? Without looking at the code
I can only say that JdbcServices.poolExists(someName)
returns true only in case the pool is up and running.
If the connection pool MBean was created but not assigned
a target, subsequent tries to create it would fail.
Regards,
Slava Imeshev
"Michael Dolbear" <[email protected]> wrote in message
news:[email protected]...
Hi,
I am trying to create a connection pool in a clustered environment.This
connection
pool is created lazily behind a Stateless Session Bean. We first
attempt
to determine
whether, the connection pool exists usingJdbcServices.poolExists(someName), and
create it if it does not exist. A failure occurs on creation becauseit
looks
like the connection pool might have been created by a bean on a
different
weblogic
VM instance. Is there any way to dynamically create a connection pooland
make
it visible to the whole cluster? Thanks in advance for any help.
Michael
Dolbear
Mar 28, 2002 5:35:08 PM MST> <Info> <JDBC> <Checking existence ofconnection pool
Content
ConnectionPool requested by user guest>
<Mar 28, 2002 5:35:08 PM MST> <Info> <JDBC> <Creating connection poolContentConnectionPoo
l requested by user guest>
weblogic.common.ResourceException:weblogic.management.MBeanCreationException:
Start server side stack trace:
javax.management.InstanceAlreadyExistsException:domain:Name=ContentConnectionPool,Type=JD
BCConnectionPool
at
com.sun.management.jmx.RepositorySupport.addMBean(RepositorySupport.java:1
34
at
com.sun.management.jmx.MBeanServerImpl.internal_addObject(MBeanServerImpl.
ja
va:
2352)
at
com.sun.management.jmx.MBeanServerImpl.registerMBean(MBeanServerImpl.java:
87
4)
at
weblogic.management.internal.RemoteMBeanServerImpl.registerMBean(RemoteMBe
an
Ser
verImpl.java:181)
atweblogic.management.internal.Helper.createMBean(Helper.java:376)
atweblogic.management.internal.Helper.createAdminMBean(Helper.java:291)
at
weblogic.management.internal.RemoteMBeanServerImpl.createAdminMBean(Remote
MB
ean
ServerImpl.java:278)
at
weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.
ja
va:
635)
at
weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.
ja
va:
621)
at
weblogic.management.internal.AdminMBeanHomeImpl.createAdminMBean(AdminMBea
nH
ome
Impl.java:397)
atweblogic.management.internal.AdminMBeanHomeImpl_WLSkel.invoke(Unknown
Source)
atweblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
at
weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267
at
weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java
:2
2)
at
weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
--------------- nested within: ------------------
weblogic.management.MBeanCreationException: - with nested exception:
[javax.management.InstanceAlreadyExistsException:domain:Name=ContentConnectionPool,Type=J
DBCConnectionPool]
atweblogic.management.internal.Helper.createMBean(Helper.java:383)
atweblogic.management.internal.Helper.createAdminMBean(Helper.java:291)
at
weblogic.management.internal.RemoteMBeanServerImpl.createAdminMBean(Remote
MB
ean
ServerImpl.java:278)
at
weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.
ja
va:
635)
at
weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.
ja
va:
621)
at
weblogic.management.internal.AdminMBeanHomeImpl.createAdminMBean(AdminMBea
nH
ome
Impl.java:397)
atweblogic.management.internal.AdminMBeanHomeImpl_WLSkel.invoke(Unknown
Source)
atweblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
at
weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267
at
weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java
:2
2)
at
weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
End server side stack trace
- with nested exception:
[javax.management.InstanceAlreadyExistsException:domain:Name=ContentConnectionPool,Type=J
DBCConnectionPool
Start server side stack trace:
javax.management.InstanceAlreadyExistsException:domain:Name=ContentConnectionPool,Type=JD
BCConnectionPool
at
com.sun.management.jmx.RepositorySupport.addMBean(RepositorySupport.java:1
34
at
com.sun.management.jmx.MBeanServerImpl.internal_addObject(MBeanServerImpl.
ja
va:
2352)
at
com.sun.management.jmx.MBeanServerImpl.registerMBean(MBeanServerImpl.java:
87
4)
at
weblogic.management.internal.RemoteMBeanServerImpl.registerMBean(RemoteMBe
an
Ser
verImpl.java:181)
atweblogic.management.internal.Helper.createMBean(Helper.java:376)
atweblogic.management.internal.Helper.createAdminMBean(Helper.java:291)
at
weblogic.management.internal.RemoteMBeanServerImpl.createAdminMBean(Remote
MB
ean
ServerImpl.java:278)
at
weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.
ja
va:
635)
at
weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.
ja
va:
621)
at
weblogic.management.internal.AdminMBeanHomeImpl.createAdminMBean(AdminMBea
nH
ome
Impl.java:397)
atweblogic.management.internal.AdminMBeanHomeImpl_WLSkel.invoke(Unknown
Source)
atweblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
at
weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267
at
weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java
:2
2)
at
weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
End server side stack trace
at
weblogic.jdbc.common.internal.ConnectionPool.dynaStartup(ConnectionPool.ja
va
:47
2)
at
weblogic.jdbc.common.internal.ConnectionPool.createPool(ConnectionPool.jav
a:
727
at
weblogic.jdbc.common.internal.ConnectionPool.createPool(ConnectionPool.jav
a:
709
at
com.thc.ids.inf.framework.opf.rdbms.datastore.ConnectionPoolCreator.create
Co
nne
ctionPool(ConnectionPoolCreator.java:82)
at
com.thc.ids.inf.framework.opf.datastore.DataStoreRepository.createConnecti
on
Poo
lIfNonExistent(DataStoreRepository.java:211)
at
com.thc.ids.inf.util.persistence.content.ConnectionPoolInitializer.createC
on
nec
tionPoolIfNeeded(ConnectionPoolInitializer.java:48)
at
com.thc.ids.inf.services.business.crs.spi.oracle.OracleRetrievalProvider.c
re
ate
ConnectionPoolIfNeeded(Unknown Source)
at
com.thc.ids.inf.services.business.crs.spi.oracle.OracleRetrievalProvider.g
et
Ima
ge(Unknown Source)
at
com.thc.ids.inf.services.business.crs.ContentRetrievalService.getImage(Unk
no
wn
Source)
at java.lang.reflect.Method.invoke(Native Method)
at
com.thc.ids.inf.util.reflection.MethodDescription.invokeMethod(MethodDescr
ip
tio
n.java:181)
at
com.thc.ids.inf.util.reflection.MethodInvocation.invoke(MethodInvocation.j
av
a:7
9)
at
com.thc.ids.inf.framework.service.J2EE.ejb.ServiceBean.invoke(ServiceBean.
ja
va:
186)
at
com.thc.ids.inf.framework.service.J2EE.ejb.ServiceBean_bjedmi_EOImpl.invok
e(
Ser
viceBean_bjedmi_EOImpl.java:37)
at
com.thc.ids.inf.framework.service.J2EE.ejb.ServiceBean_bjedmi_EOImpl_WLSke
l.
inv
oke(Unknown Source)
atweblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
at
weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerRef.ja
va
:93
at
weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267
at
weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java
:2
2)
at
weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
<Mar 28, 2002 5:35:08 PM MST> <Info> <JDBC> <Checking existence ofconnection
pool Content
ConnectionPool requested by user guest>
<Mar 28, 2002 5:35:08 PM MST> <Info> <JDBC> <Creating connection poolContentConnectionPoo
l requested by user guest>
weblogic.common.ResourceException:weblogic.management.MBeanCreationException:
Start server side stack trace:
javax.management.InstanceAlreadyExistsException:domain:Name=ContentConnectionPool,Type=JD
BCConnectionPool
at
com.sun.management.jmx.RepositorySupport.addMBean(RepositorySupport.java:1
34
at
com.sun.management.jmx.MBeanServerImpl.internal_addObject(MBeanServerImpl.
ja
va:
2352)
at
com.sun.management.jmx.MBeanServerImpl.registerMBean(MBeanServerImpl.java:
87
4)
at
weblogic.management.internal.RemoteMBeanServerImpl.registerMBean(RemoteMBe
an
Ser
verImpl.java:181)
atweblogic.management.internal.Helper.createMBean(Helper.java:376)
atweblogic.management.internal.Helper.createAdminMBean(Helper.java:291)
at
weblogic.management.internal.RemoteMBeanServerImpl.createAdminMBean(Remote
MB
ean
ServerImpl.java:278)
at
weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.
ja
va:
635)
at
weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.
ja
va:
621)
at
weblogic.management.internal.AdminMBeanHomeImpl.createAdminMBean(AdminMBea
nH
ome
Impl.java:397)
atweblogic.management.internal.AdminMBeanHomeImpl_WLSkel.invoke(Unknown
Source)
atweblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
at
weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267
at
weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java
:2
2)
at
weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
--------------- nested within: ------------------
weblogic.management.MBeanCreationException: - with nested exception:
[javax.management.InstanceAlreadyExistsException:domain:Name=ContentConnectionPool,Type=J
DBCConnectionPool]
atweblogic.management.internal.Helper.createMBean(Helper.java:383)
atweblogic.management.internal.Helper.createAdminMBean(Helper.java:291)
at
weblogic.management.internal.RemoteMBeanServerImpl.createAdminMBean(Remote
MB
ean
ServerImpl.java:278)
at
weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.
ja
va:
635)
at
weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.
ja
va:
621)
at
weblogic.management.internal.AdminMBeanHomeImpl.createAdminMBean(AdminMBea
nH
ome
Impl.java:397)
atweblogic.management.internal.AdminMBeanHomeImpl_WLSkel.invoke(Unknown
Source)
atweblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
at
weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267
at
weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java
:2
2)
at
weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
End server side stack trace
- with nested exception:
[javax.management.InstanceAlreadyExistsException:domain:Name=ContentConnectionPool,Type=J
DBCConnectionPool
Start server side stack trace:
javax.management.InstanceAlreadyExistsException:domain:Name=ContentConnectionPool,Type=JD
BCConnectionPool
at
com.sun.management.jmx.RepositorySupport.addMBean(RepositorySupport.java:1
34
at
com.sun.management.jmx.MBeanServerImpl.internal_addObject(MBeanServerImpl.
ja
va:
2352)
at
com.sun.management.jmx.MBeanServerImpl.registerMBean(MBeanServerImpl.java:
87
4)
at
weblogic.management.internal.RemoteMBeanServerImpl.registerMBean(RemoteMBe
an
Ser
verImpl.java:181)
atweblogic.management.internal.Helper.createMBean(Helper.java:376)
atweblogic.management.internal.Helper.createAdminMBean(Helper.java:291)
at
weblogic.management.internal.RemoteMBeanServerImpl.createAdminMBean(Remote
MB
ean
ServerImpl.java:278)
at
weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.
ja
va:
635)
at
weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.
ja
va:
621)
at
weblogic.management.internal.AdminMBeanHomeImpl.createAdminMBean(AdminMBea
nH
ome
Impl.java:397)
atweblogic.management.internal.AdminMBeanHomeImpl_WLSkel.invoke(Unknown
Source)
atweblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
at
weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267
at
weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java
:2
2)
at
weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
End server side stack trace
at
weblogic.jdbc.common.internal.ConnectionPool.dynaStartup(ConnectionPool.ja
va
:47
2)
at
weblogic.jdbc.common.internal.ConnectionPool.createPool(ConnectionPool.jav
a:
727
at
weblogic.jdbc.common.internal.ConnectionPool.createPool(ConnectionPool.jav
a:
709
at
com.thc.ids.inf.framework.opf.rdbms.datastore.ConnectionPoolCreator.create
Co
nne
ctionPool(ConnectionPoolCreator.java:82)
at
com.thc.ids.inf.framework.opf.datastore.DataStoreRepository.createConnecti
on
Poo
lIfNonExistent(DataStoreRepository.java:211)
at
com.thc.ids.inf.util.persistence.content.ConnectionPoolInitializer.createC
on
nec
tionPoolIfNeeded(ConnectionPoolInitializer.java:48)
at
com.thc.ids.inf.services.business.crs.spi.oracle.OracleRetrievalProvider.c
re
ate
ConnectionPoolIfNeeded(Unknown Source)
at
com.thc.ids.inf.services.business.crs.spi.oracle.OracleRetrievalProvider.g
et
Ima
ge(Unknown Source)
at
com.thc.ids.inf.services.business.crs.ContentRetrievalService.getImage(Unk
no
wn
Source)
at java.lang.reflect.Method.invoke(Native Method)
at
com.thc.ids.inf.util.reflection.MethodDescription.invokeMethod(MethodDescr
ip
tio
n.java:181)
at
com.thc.ids.inf.util.reflection.MethodInvocation.invoke(MethodInvocation.j
av
a:7
9)
at
com.thc.ids.inf.framework.service.J2EE.ejb.ServiceBean.invoke(ServiceBean.
ja
va:
186)
at
com.thc.ids.inf.framework.service.J2EE.ejb.ServiceBean_bjedmi_EOImpl.invok
e(
Ser
viceBean_bjedmi_EOImpl.java:37)
at
com.thc.ids.inf.framework.service.J2EE.ejb.ServiceBean_bjedmi_EOImpl_WLSke
l.
inv
oke(Unknown Source)
atweblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
at
weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerRef.ja
va
:93
at
weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267
at
weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java
:2
2)
at
weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120) -
Microsoft SQL Server JDBC driver and WLS JMS problem?
Greetings,
I'm using the Microsoft SQL Server JDBC driver with WLS with JMS
persisted to SQL Server, during WLS startup the JMS attempts to
read the JMSStore and JMSState tables in the db, if they are
already present (say, from a previous run) the driver kicks out:
java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]ResultSet can
not re-read row data for column 1.
If the tables are not present, then WLS creates them and
everything proceeds fine. Now, its not a good thing to attempt
to reread row data for a ResultSet, especially for portability. Why is WLS JMS
doing this? is there some config I can use to adjust JMS startup behavior for
persisted JMS stores?
Jay Houghton
Centiv
[email protected]
long exception trace follows:
<Oct 1, 2002 8:29:11 AM EDT> <Info> <JMS> <User connection factory "BroadcastTopicFactory"
is started.>
<Oct 1, 2002 8:29:18 AM EDT> <Info> <JMS> <JMSServer "EnergizerJMSServer", Opening
JDBC store tables "JMSStore
" and "JMSState" using connection pool "JMSConnectionPool".>
<Oct 1, 2002 8:29:20 AM EDT> <Alert> <JMS> <JMSServer "EnergizerJMSServer", store
failed to open, java.io.IOEx
ception: JMS JDBC store, connection pool = <JMSConnectionPool>, prefix = <null>:
recover
java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]ResultSet can
not re-read row data for colum
n 1.
at com.microsoft.jdbc.base.BaseResultSet.getLong(Unknown Source)
at com.microsoft.jdbc.base.BaseResultSet.getLong(Unknown Source)
at weblogic.jdbc.pool.ResultSet.getLong(ResultSet.java:304)
at weblogic.jms.store.JDBCIOStream.doRecover(JDBCIOStream.java:618)
at weblogic.jms.store.JDBCIOStream.recover(JDBCIOStream.java:728)
at weblogic.jms.store.JMSStore.recover(JMSStore.java:112)
at weblogic.jms.backend.BEStore.open(BEStore.java:179)
at weblogic.jms.backend.BackEnd.initialize(BackEnd.java:330)
at weblogic.jms.JMSService.createBackEnd(JMSService.java:923)
at weblogic.jms.JMSService.addJMSServer(JMSService.java:1277)
at weblogic.jms.JMSService.addDeployment(JMSService.java:1174)
at weblogic.management.mbeans.custom.DeploymentTarget.addDeployment(DeploymentTarget.java:329)
at weblogic.management.mbeans.custom.DeploymentTarget.addDeployments(DeploymentTarget.java:279)
at weblogic.management.mbeans.custom.DeploymentTarget.updateServerDeployments(DeploymentTarget.java:23
3)
at weblogic.management.mbeans.custom.DeploymentTarget.updateDeployments(DeploymentTarget.java:193)
at java.lang.reflect.Method.invoke(Native Method)
at weblogic.management.internal.DynamicMBeanImpl.invokeLocally(DynamicMBeanImpl.java:608)
at weblogic.management.internal.DynamicMBeanImpl.invoke(DynamicMBeanImpl.java:592)
at weblogic.management.internal.ConfigurationMBeanImpl.invoke(ConfigurationMBeanImpl.java:352)
at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1555)
at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:449)
at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:190)
at $Proxy40.updateDeployments(Unknown Source)
at weblogic.management.configuration.ServerMBean_CachingStub.updateDeployments(ServerMBean_CachingStub
.java:2734)
at weblogic.management.mbeans.custom.ApplicationManager.startConfigManager(ApplicationManager.java:362
at weblogic.management.mbeans.custom.ApplicationManager.start(ApplicationManager.java:154)
at java.lang.reflect.Method.invoke(Native Method)
at weblogic.management.internal.DynamicMBeanImpl.invokeLocally(DynamicMBeanImpl.java:608)
at weblogic.management.internal.DynamicMBeanImpl.invoke(DynamicMBeanImpl.java:592)
at weblogic.management.internal.ConfigurationMBeanImpl.invoke(ConfigurationMBeanImpl.java:352)
at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1555)
at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:449)
at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:190)
at $Proxy57.start(Unknown Source)
at weblogic.management.configuration.ApplicationManagerMBean_CachingStub.start(ApplicationManagerMBean
_CachingStub.java:480)
at weblogic.management.Admin.startApplicationManager(Admin.java:1151)
at weblogic.management.Admin.finish(Admin.java:571)
at weblogic.t3.srvr.T3Srvr.start(T3Srvr.java:508)
at weblogic.t3.srvr.T3Srvr.run(T3Srvr.java:203)
at weblogic.Server.main(Server.java:35)
Tom,
thanks for the info, I'll bring this to support.
I did try the weblogic jDriver for SQL Server and it works fine, so i think it
must be the way JMS is interacting with the MS driver.
here are my components:
WLS 6.1sp1
Microsoft® SQL Server™ 2000 Driver for JDBC™ is a (Type 4 JDBC) which provides
partial JDBC 2 support (no blobs, clobs, etc)
MS SQL Server 2000 (sp2?)
thanks!
Jay Houghton
[email protected]
Tom Barnes <[email protected]> wrote:
>Hi Jay,
>
>This is not a known issue at BEA as far as I know, perhaps it is the
>result
>of a new driver/database combination. Try using a different driver,
>or a different
>version of the current driver. Meanwhile, use a file store (just as
>reliable but faster) and log a case with customer support, including
>information on your version, service-pack, and what driver you are using.
>
>Tom, BEA
>
>Jay Houghton wrote:
>
>> Greetings,
>>
>> I'm using the Microsoft SQL Server JDBC driver with WLS with JMS
>> persisted to SQL Server, during WLS startup the JMS attempts to
>> read the JMSStore and JMSState tables in the db, if they are
>> already present (say, from a previous run) the driver kicks out:
>>
>> java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]ResultSet
>can
>> not re-read row data for column 1.
>>
>> If the tables are not present, then WLS creates them and
>> everything proceeds fine. Now, its not a good thing to attempt
>> to reread row data for a ResultSet, especially for portability. Why
>is WLS JMS
>> doing this? is there some config I can use to adjust JMS startup behavior
>for
>> persisted JMS stores?
>>
>> Jay Houghton
>> Centiv
>> [email protected]
>>
>> long exception trace follows:
>>
>> <Oct 1, 2002 8:29:11 AM EDT> <Info> <JMS> <User connection factory
>"BroadcastTopicFactory"
>> is started.>
>> <Oct 1, 2002 8:29:18 AM EDT> <Info> <JMS> <JMSServer "EnergizerJMSServer",
>Opening
>> JDBC store tables "JMSStore
>> " and "JMSState" using connection pool "JMSConnectionPool".>
>> <Oct 1, 2002 8:29:20 AM EDT> <Alert> <JMS> <JMSServer "EnergizerJMSServer",
>store
>> failed to open, java.io.IOEx
>> ception: JMS JDBC store, connection pool = <JMSConnectionPool>, prefix
>= <null>:
>> recover
>> java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]ResultSet
>can
>> not re-read row data for colum
>> n 1.
>> at com.microsoft.jdbc.base.BaseResultSet.getLong(Unknown Source)
>> at com.microsoft.jdbc.base.BaseResultSet.getLong(Unknown Source)
>> at weblogic.jdbc.pool.ResultSet.getLong(ResultSet.java:304)
>> at weblogic.jms.store.JDBCIOStream.doRecover(JDBCIOStream.java:618)
>> at weblogic.jms.store.JDBCIOStream.recover(JDBCIOStream.java:728)
>> at weblogic.jms.store.JMSStore.recover(JMSStore.java:112)
>> at weblogic.jms.backend.BEStore.open(BEStore.java:179)
>> at weblogic.jms.backend.BackEnd.initialize(BackEnd.java:330)
>> at weblogic.jms.JMSService.createBackEnd(JMSService.java:923)
>> at weblogic.jms.JMSService.addJMSServer(JMSService.java:1277)
>> at weblogic.jms.JMSService.addDeployment(JMSService.java:1174)
>> at weblogic.management.mbeans.custom.DeploymentTarget.addDeployment(DeploymentTarget.java:329)
>> at weblogic.management.mbeans.custom.DeploymentTarget.addDeployments(DeploymentTarget.java:279)
>> at weblogic.management.mbeans.custom.DeploymentTarget.updateServerDeployments(DeploymentTarget.java:23
>> 3)
>> at weblogic.management.mbeans.custom.DeploymentTarget.updateDeployments(DeploymentTarget.java:193)
>> at java.lang.reflect.Method.invoke(Native Method)
>> at weblogic.management.internal.DynamicMBeanImpl.invokeLocally(DynamicMBeanImpl.java:608)
>> at weblogic.management.internal.DynamicMBeanImpl.invoke(DynamicMBeanImpl.java:592)
>> at weblogic.management.internal.ConfigurationMBeanImpl.invoke(ConfigurationMBeanImpl.java:352)
>> at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1555)
>> at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
>> at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:449)
>> at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:190)
>> at $Proxy40.updateDeployments(Unknown Source)
>> at weblogic.management.configuration.ServerMBean_CachingStub.updateDeployments(ServerMBean_CachingStub
>> java:2734)
>> at weblogic.management.mbeans.custom.ApplicationManager.startConfigManager(ApplicationManager.java:362
>> )
>> at weblogic.management.mbeans.custom.ApplicationManager.start(ApplicationManager.java:154)
>> at java.lang.reflect.Method.invoke(Native Method)
>> at weblogic.management.internal.DynamicMBeanImpl.invokeLocally(DynamicMBeanImpl.java:608)
>> at weblogic.management.internal.DynamicMBeanImpl.invoke(DynamicMBeanImpl.java:592)
>> at weblogic.management.internal.ConfigurationMBeanImpl.invoke(ConfigurationMBeanImpl.java:352)
>> at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1555)
>> at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
>> at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:449)
>> at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:190)
>> at $Proxy57.start(Unknown Source)
>> at weblogic.management.configuration.ApplicationManagerMBean_CachingStub.start(ApplicationManagerMBean
>> _CachingStub.java:480)
>> at weblogic.management.Admin.startApplicationManager(Admin.java:1151)
>> at weblogic.management.Admin.finish(Admin.java:571)
>> at weblogic.t3.srvr.T3Srvr.start(T3Srvr.java:508)
>> at weblogic.t3.srvr.T3Srvr.run(T3Srvr.java:203)
>> at weblogic.Server.main(Server.java:35)
>
-
Which BC4J / JDBC pooling configurations are global for a JVM?
There are several documents and postings saying that some of the BC4J / JDBC Pooling properties are unique for the JVM.
So if i have 3 WAR files with 3 different settings in bc4j.xcfg (transaction factory, pooling settings) some of the settings are ignored after the first AM Pool is instanciated. This could be the reason for some "unreproducable" problems we have.
So please provide us a list, which properties additional to the ones below are global per JVM and which are really used from the bc4j.xcfg.
1. Getting the Connection object out of ApplicationModule says about the TransactionFactory
Please not that this property is a static BC4J property. Meaning that the value of this property when the first ApplicationModule is created is the value which will be used. If you have multiple ApplicationPool(s) then it is necessary to define the property in all configurations, dynamically, or as a system property.
2. http://www.oracle.com/technology/products/jdev/tips/muench/ampooling/index.html says about jbo.ampool.monitorsleepinterval
Since there is only a single application monitor pool monitor per Java VM, the value that will effectively be used for the AM pool monitor polling interval will be the value found in the AM configuration read by the first AM pool that gets created. To make sure this value is set in a predictable way, it is best practice for all application modules to use the same Pool Polling Interval value.
and
3. Since the tuning parameters for all ADF database connection pools - regardless of <JDBCURL,Username> value - will be set based on the parameters found in the configuration for the first AM pool that is created. To insure the most predictable behavior, it is best practice to leave the values of the parameters in the Connnection Pooling section of the Pooling and Scalability tab at their default values - so that no entry for them is written into the bc4j.xcfg file - and to instead set the desired values for the database connection pooling tuning parameters as Java System Parameters in your J2EE container.
Sounds like this means the parameters: jbo.initpoolsize, jbo.maxpoolsize, jbo.poolmonitorsleepinterval, jbo.poolmaxavailablesize, jbo.poolminavailablesize, jbo.poolmaxinactiveage ?
4. And http://oracle-web.petersons.com/bc4jdoc/bc_aappmodpooling.htm tells There is one connection pool manager for each business logic tier's Java VM. Connections remain in the pool until the Java VM stops running.
Thanks, MarkusJust another funny observation regarding BC4J parameter settings in 9.0.5.2:
Setting jbo.ampool.sessioncookiefactoryclass in the jboserver.properties is ignored. Setting in bc4j.xcfg works.
rgds, Markus
Maybe you are looking for
-
Songs will not sync to my iPhone
So earlier this week I got a few songs from my sister over email, and was able to put them into my itunes. This worked perfectly...They played on my laptop and everything... until i tried to then get the songs from my itunes on my macbook to my iphon
-
Font issue with left sidebar in Mail
I'm having perhaps another/different font issue with Mail after updating to Snow Leopard. I do have a Dell 24" LCD hooked up to my MBP. I've noticed the comments/links related to the font smoothing issues. I've played around with that with no noticea
-
Ref no. not shown in account balance
Dear Experts, There is minor problem i am facing. When i click the account balance of business partners , the data added in a Cust ref no. of A/R invoice named ref2 is not being shown; although i have entered text in that box. I am using SAP busines
-
How do i tranfer a text I wrote on the Ipad (using pages), to my comp ?
must be simple, but can't figure it out....
-
ADF Image from BLOB Table Column
Does anybody know how to show an image on a JSP page based on a Blob Column through ADF Binding ? I've seen a post which reference the use of <adf:render model="Row.image"/>. However this doesn't seem to work. Thanx