WebLogic中SQL Server2000的JDBC Pool配置
一、 采用Microsoft的JDBC Driver
1 到www.microsoft.com上下载“Microsoft SQL Server 2000 Driver for
JDBC”并安装
2 安装后,在安装的目录中有三个jar文件包
msbase.jar
msutil.jar
mssqlserver.jar
建议将其拷贝出来放置到%WL_HOME%\server\lib目录中(其实随意,但附后的
classpath中要指明)
3 将3个jar包加入到classpath中,改startWLS.cmd,“set CLASSPATH=”后插
入%WL_HOME%\server\lib\msbase.jar;%WL_HOME%\server\lib\msutil.jar;%
WL_HOME%\server\lib\mssqlserver.jar;
4 确认MSSQLServer的端口号(这点比较重要)
And to find the port number where your instance is running, run the
server network utility and select the server instance and select the
TCP/IP. When you click the properties button, it will show the port.
5 启动WebLogic
6 打开IE,在地址栏中输入:http://localhost:7001/console
7 输入用户名和密码
8 在左边的目录树中选中Services->JDBC->Connection Pools,单击右侧的
Configure a new JDBC Connection Pool.,输入以下信息:
Configuration->General页:
Name = MSSQLServerConnectionPool
URL = jdbc:microsoft:sqlserver://localhost:2040 (注意端口号填第5步中
看到的port)
Driver classname =com.microsoft.jdbc.sqlserver.SQLServerDriver
Properties :
databasename= northwind
user = sa
password = <- sa的密码
单击Create建立连接池。
9 Connection属性设置
Configuration->Connections页:
将Initial Capacity由1置为10 (视需求)
将Maximum Capacity由1置为10(视需求)
10 Targets->Server页:
将myserver(服务器名称)移至右侧的列表中,但击单击Apply
11 配置数据源
. 在左边的目录树中选中Services->JDBC->Data Sources(或者TXData
Sources),单击右侧的Configure a new JDBC Connection Pool.,输入以下信
息:
Configuration->General页:
Name = SQLServer Tx Data Source
JNDI Name = SQLServer
Pool Name = MSSQLServerConnectionPool
选中Emulate Two-Phase Commit for non-XA Driver和Row Prefetch Enabled
单击Create建立数据源。
12 Targets->Server页:
将myserver(服务器名称)移至右侧的列表中,但击单击Apply,配置完毕。
13 reboot server
二、采用WebLogic的JDBC Driver for SQL Server
1确认MSSQLServer的端口号(这点比较重要)
And to find the port number where your instance is running, run the
server network utility and select the server instance and select the
TCP/IP. When you click the properties button, it will show the port.
2 启动WebLogic
3 打开IE,在地址栏中输入:http://localhost:7001/console
4 输入用户名和密码
5 在左边的目录树中选中Services->JDBC->Connection Pools,单击右侧的
Configure a new JDBC Connection Pool.,输入以下信息:
Configuration->General页:
Name = WLSQLServerConnectionPool
URL = jdbc:weblogic:mssqlserver4:northwind@localhost:2040
Driver classname = weblogic.jdbc.mssqlserver4.Driver
Properties :
user = sa
password = <- sa的密码
单击Create建立连接池。
6 Connection属性设置
Configuration->Connections页:
将Initial Capacity由1置为10 (视需求)
将Maximum Capacity由1置为10(视需求)
7 Targets->Server页:
将myserver(服务器名称)移至右侧的列表中,但击单击Apply
8 配置数据源
. 在左边的目录树中选中Services->JDBC->Data Sources(或者TXData
Sources),单击右侧的Configure a new JDBC Connection Pool.,输入以下信
息:
Configuration->General页:
Name = SQLServer Tx Data Source
JNDI Name = SQLServer
Pool Name = WLSQLServerConnectionPool
选中Emulate Two-Phase Commit for non-XA Driver和Row Prefetch Enabled
单击Create建立数据源。
9 Targets->Server页:
将myserver(服务器名称)移至右侧的列表中,但击单击Apply,配置完毕。
10 reboot server
附注: 如果你的WebLogic server和sql server2k不在同一台机器的话,sql
server2k的安全认证方式要选成sql server and windows(不选window
上面的配置文档很不错,不过个人建议,在采用 ms sql server数据库的系统,
尽量不要使用weblogic jDriver或ms mssql driver。原因如下:
(1)在以后的版本中,weblogic 将不再对jDriver of mssql server进行支持
(1)ms mssql driver对于Image和text类型(也就是blob和clob类型)的数据
查询,支持不好。
所以,尽量采用第三方的ms sql server driver。
Similar Messages
-
One of our customers starts to encounter this error message recently.
We checked our log files. It seems that the error happens when
to obtain a jdbc connection. Have anyone seen similar problems
and knows how to fix it? thanks in advance.
We are using weblogic server 6.1sp2, and weblogic sql type 4 driver.
The functions that invoke the jdbc calls are stateless session bean
methods with their transaction attributes marked as Required.
There is no nested calls of these methods.
A partial stack trace we obtained is as following:
java.sql.SQLException: No JDBC connection can be made
because the transaction state is
Marked Rollback
at weblogic.jdbc.jts.Connection.getOrCreateConnection(Connection.java:586)
at weblogic.jdbc.jts.Connection.prepareStatement(Connection.java:115)
at weblogic.jdbc.rmi.internal.ConnectionImpl.prepareStatement(ConnectionImpl.java:135)
at weblogic.jdbc.rmi.SerialConnection.prepareStatement(SerialConnection.java:76)
lixinJoseph Weinstein <[email protected]> wrote:
>
>
YuanHui Liu wrote:
Joe,
We got the exact same error message. The error came after we got theJDBC connection,
and trying to create statement off it.
It occurs intermitently when we are running another standalone JAVAapp to do
some end of day work, which results in the DB Server being very busy(90+%CPU
usage) for about 5 minutes. We see a surge of requests to the WLSJDBC Connection
pool. This would sometimes result in all our subsequent DB requeststo fail and
lead to a crash.
We are using WLS6.0SP1. I do not think there's a 30 seconds wait leadingto a
connection timeout that caused this(rather it is the end effect).
Can you give us a more detailed explanation? Is there a miscommunicationbetween
our DB(Sybase12) and WLS?Hi. It looks to you like it's after you get the connection, but really
it's when the server is
gettng the pool connection. For performance/synchronization reasons we
do a clever
delay: When your code asks for a pool connection we quickly give you
the pool wrapper,
but we delay actually reserving the real underlying DBMS connection until
your first
real need for a connection, at your first JDBC call, such as createStatement()
etc.
It is while waiting for a pool connection long enough for the transaction
coordinator
to have timed you out before you ever get a chance. It's nothing to do
with the
DBMS or even JDBC, I believe. I think the weblogic server either has
too few execute-threads
and/or too few CPU cycles to do the work load.
Okay, so there's a lazy initialization of the connection.
From reading our log I believe our failur is immediate rather
than waiting for 30+ seconds(the default setting) from the DB,
the timeout occurred later as a result. At the time either because the DB Server
is very busy.
Since we are running WLS6.0 we have only one connection pool,
we have defined a max of 150 threads in the pool. While this
is happening the DB Server is being pinned by an overnight job,
but the WLS Server is not busy at all. The DB and WLS resides
on different physical boxes.
We also have a thread dump from the WLS console when we rebooted the server, it
showed that we are hanging on to the thread & jdbc
connections after these exceptions has occurred instead of releasing them, note
"16083"(~4.5 hours) seconds has passed:
142 116222 Retry rollback request for tx: 'transaction=(IdHash=2963855,Name =
[EJB UserManagerBeanImpl.signalICUserServletHeartBeat()],Xid=30643:8f3838f3709bf53d,Status=Rolling
Back. [Reason = Unknown],numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since
begin=16083,seconds left=10,ServerResourceInfo[weblogic.jdbc.jts.Connection]=(state=started,assigned=server),SCInfo[server]=(state=active),properties=({weblogic.jdbc=t3://159.55.158.25:8005,
weblogic.transaction.name=[EJB UserManagerBeanImpl.signalICUserServletHeartBeat()]}))'
Scheduled Trigger
So I would argue this problem actually chewed up resources on the WLS server.
-Yuanhui Liu
>>
>>
Thanks.
-YuanHui Liu
Joseph Weinstein <[email protected]> wrote:
lixin wrote:
One of our customers starts to encounter this error message recently.
We checked our log files. It seems that the error happens when
to obtain a jdbc connection. Have anyone seen similar problems
and knows how to fix it? thanks in advance.
We are using weblogic server 6.1sp2, and weblogic sql type 4 driver.
The functions that invoke the jdbc calls are stateless session bean
methods with their transaction attributes marked as Required.
There is no nested calls of these methods.
A partial stack trace we obtained is as following:
java.sql.SQLException: No JDBC connection can be made
because the transaction state is
Marked Rollback
at weblogic.jdbc.jts.Connection.getOrCreateConnection(Connection.java:586)Hi. This sounds like a JVM thread starvation issue, and/or a server
load
issue. What is
happening is that the transaction is started, and times out beforethe
SSB even gets to
the first JDBC work. I would first verify that the customer is using
the very latest JVM
available for the machine.
Joe Weinstein
at weblogic.jdbc.jts.Connection.prepareStatement(Connection.java:115)
at weblogic.jdbc.rmi.internal.ConnectionImpl.prepareStatement(ConnectionImpl.java:135)
at weblogic.jdbc.rmi.SerialConnection.prepareStatement(SerialConnection.java:76)
lixin -
ClassNotFoundException: weblogic/jdbc/pool/Driver
Hi,
I was able to run the sql example in the jsp\tagext directory.
The ConnectionTag tag contains basically code like:
Class.forName("weblogic.jdbc.pool.Driver").newInstance();
which works fine.
Next, I moved the code into a utility package, which I
compiled into the public_html\WEB-INF\classes directory. This
code is called from within a servlet.
Strangely enough, when I run the servlet, I get the
ClassNotFoundException: weblogic/jdbc/pool/Driver error.
It is as if the servlet does not have access to the
weblogic.jdbc.pool.Driver class while the tag library does.
What am I doing wrong?
Thanks,
Vladimir
You must include the path to jdbc driver in the script wich you start the
server.
WEBLOGIC_CLASSPATH
vladimir <[email protected]> escribió en el mensaje de noticias
39bcdf0c$[email protected]..
>
> Hi,
>
> I was able to run the sql example in the jsp\tagext directory.
> The ConnectionTag tag contains basically code like:
>
> Class.forName("weblogic.jdbc.pool.Driver").newInstance();
>
> which works fine.
>
> Next, I moved the code into a utility package, which I
> compiled into the public_html\WEB-INF\classes directory. This
> code is called from within a servlet.
>
> Strangely enough, when I run the servlet, I get the
> ClassNotFoundException: weblogic/jdbc/pool/Driver error.
> It is as if the servlet does not have access to the
> weblogic.jdbc.pool.Driver class while the tag library does.
>
> What am I doing wrong?
>
> Thanks,
> Vladimir
>
-
Repost: ClassNotFoundException: weblogic/jdbc/pool/Driver
Hi,
I was able to run the sql example in the jsp\tagext directory. The ConnectionTag tag contains basically code like:
Class.forName("weblogic.jdbc.pool.Driver").newInstance();
which works fine.
Next, I moved the code into a utility package, which I compiled into the public_html\WEB-INF\classes directory. This code is called from within a servlet.
Strangely enough, when I run the servlet, I get the ClassNotFoundException: weblogic/jdbc/pool/Driver error. It is as if the servlet does not have access to the weblogic.jdbc.pool.Driver class while the tag library does.
What am I doing wrong?
Thanks, Vladimir
Hi,
I was able to run the sql example in the jsp\tagext directory. The ConnectionTag tag contains basically code like:
Class.forName("weblogic.jdbc.pool.Driver").newInstance();
which works fine.
Next, I moved the code into a utility package, which I compiled into the public_html\WEB-INF\classes directory. This code is called from within a servlet.
Strangely enough, when I run the servlet, I get the ClassNotFoundException: weblogic/jdbc/pool/Driver error. It is as if the servlet does not have access to the weblogic.jdbc.pool.Driver class while the tag library does.
What am I doing wrong?
Thanks, Vladimir
-
CF8 and connection pooling using MS SQL 2005 JDBC Driver
After upgrading one of our production servers to CF8 we're
getting errors under load while connecting to MS SQL 2000 data
bases using the MS SQL 2005 JDBC 1.1 driver instead of the driver
cf8 ships with. The following error is recorded in the logs:
Error Executing Database Query. The TCP/IP connection to the
host has failed. java.net.BindException: Address already in use:
connect
Confirmed by the database statistics, Coldfusion is no longer
pooling the database connections. After changing the data source to
use the build in driver everything works fine. We've been using
this driver and CF7 for some time without this error.
Is this a compatibility issue between the driver and Java 6?
Or is there a conflict between this driver and the build in driver?
Has anyone seen similar issues? We’d like to use this driver
rather then the build in one.
Thanks,
Remy Becherthanks for the answer...I have been waiting for one..I do agree that connection ppooling is same ..but I would appreciate it if someone could point me to some example implemenations using MS JDBC type 4 driver..
Thanks again..
PS: I did search the forum before posting this.. -
Connection Pool using weblogic.jdbc.pool.Driver
I am trying to use connection pooling in my JSP data access classes (which
work fine without connection pooling) on weblogic 4.5.1. I tried using the
weblogic.jdbc.pool.Driver but it exits with the following exception:
java.lang.ClassNotFoundException: weblogic.jdbc.pool.Driver
The path c:\weblogic\classes which contains this driver is specified in the
weblogic.class.path . I can not include it in the java class path because
then weblogic server fails to start at all (with an error message). I would
appreciate any help !
Thanks,
UsamahHi. Please don't repost identical posts to different news groups. See a response
in the JDBC group. thanks, joe
Usamah Malik wrote:
I am trying to use connection pooling in my JSP data access classes (which
work fine without connection pooling) on weblogic 4.5.1. I tried using the
weblogic.jdbc.pool.Driver but it exits with the following exception:
java.lang.ClassNotFoundException: weblogic.jdbc.pool.Driver
The path c:\weblogic\classes which contains this driver is specified in the
weblogic.class.path . I can not include it in the java class path because
then weblogic server fails to start at all (with an error message). I would
appreciate any help !
Thanks,
Usamah--
PS: Hey folks, we're hiring Java engineers for our WebLogic
Engineering group in downtown S.F. Send me your resume.
The Weblogic Application Server from BEA
JavaWorld Editor's Choice Award: Best Web Application Server
Java Developer's Journal Editor's Choice Award: Best Web Application Server
Crossroads A-List Award: Rapid Application Development Tools for Java
Intelligent Enterprise RealWare: Best Application Using a Component Architecture
http://weblogic.beasys.com/press/awards/index.htm -
Hello,
In my servelts only sometime I get this exception. I am using WLS7.0 jDK
1.3.1(the one which comes with WLS7.0). I am using Java Beans which are all
serializable.(I have declared that the classes implements Serilizable)
Exception is as follows
<Jan 27, 2003 4:19:09 AM EST> <Error> <HTTP Session> <triton>
<AccupacServer> <ExecuteThread: '8' for queue: 'default'> <kernel identity>
<> <100028> <Could not deserialize session data>
java.io.NotSerializableException: weblogic.jdbc.pool.Connection
at java.io.ObjectOutputStream.outputObject(ObjectOutputStream.java:1143)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:361)
at
java.io.ObjectOutputStream.outputClassFields(ObjectOutputStream.java:1822)
at
java.io.ObjectOutputStream.defaultWriteObject(ObjectOutputStream.java:475)
at java.io.ObjectOutputStream.outputObject(ObjectOutputStream.java:1209)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:361)
at
weblogic.servlet.internal.AttributeWrapper.getObject(AttributeWrapper.java:9
1)
at
weblogic.servlet.internal.AttributeWrapper.getObject(AttributeWrapper.java:6
6)
at
weblogic.servlet.internal.session.SessionData.removeAttribute(SessionData.ja
va:570)
at
weblogic.servlet.internal.session.SessionData.removeAttribute(SessionData.ja
va:552)
at
weblogic.servlet.internal.session.SessionData.remove(SessionData.java:734)
at
weblogic.servlet.internal.session.MemorySessionContext.invalidateSession(Mem
orySessionContext.java:51)
at
weblogic.servlet.internal.session.SessionContext$SessionInvalidator$Invalida
tionAction.run(SessionContext.java:523)
at
weblogic.security.service.SecurityServiceManager.runAs(SecurityServiceManage
r.java:744)
at
weblogic.servlet.internal.session.SessionContext$SessionInvalidator.cleanupE
xpiredSessions(SessionContext.java:444)
at
weblogic.servlet.internal.session.SessionContext.deleteInvalidSessions(Sessi
onContext.java:81)
at
weblogic.servlet.internal.session.SessionContext$SessionInvalidator.trigger(
SessionContext.java:392)
at
weblogic.time.common.internal.ScheduledTrigger.run(ScheduledTrigger.java:181
at
weblogic.security.service.SecurityServiceManager.runAs(SecurityServiceManage
r.java:744)
at
weblogic.time.common.internal.ScheduledTrigger.executeLocally(ScheduledTrigg
er.java:167)
at
weblogic.time.common.internal.ScheduledTrigger.execute(ScheduledTrigger.java
:161)
at weblogic.time.server.ScheduledTrigger.execute(ScheduledTrigger.java:38)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:153)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:134)
Any help appreciated.
Thanks
Madhu
Hello,
In my servelts only sometime I get this exception. I am using WLS7.0 jDK
1.3.1(the one which comes with WLS7.0). I am using Java Beans which are all
serializable.(I have declared that the classes implements Serilizable)
Exception is as follows
<Jan 27, 2003 4:19:09 AM EST> <Error> <HTTP Session> <triton>
<AccupacServer> <ExecuteThread: '8' for queue: 'default'> <kernel identity>
<> <100028> <Could not deserialize session data>
java.io.NotSerializableException: weblogic.jdbc.pool.Connection
at java.io.ObjectOutputStream.outputObject(ObjectOutputStream.java:1143)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:361)
at
java.io.ObjectOutputStream.outputClassFields(ObjectOutputStream.java:1822)
at
java.io.ObjectOutputStream.defaultWriteObject(ObjectOutputStream.java:475)
at java.io.ObjectOutputStream.outputObject(ObjectOutputStream.java:1209)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:361)
at
weblogic.servlet.internal.AttributeWrapper.getObject(AttributeWrapper.java:9
1)
at
weblogic.servlet.internal.AttributeWrapper.getObject(AttributeWrapper.java:6
6)
at
weblogic.servlet.internal.session.SessionData.removeAttribute(SessionData.ja
va:570)
at
weblogic.servlet.internal.session.SessionData.removeAttribute(SessionData.ja
va:552)
at
weblogic.servlet.internal.session.SessionData.remove(SessionData.java:734)
at
weblogic.servlet.internal.session.MemorySessionContext.invalidateSession(Mem
orySessionContext.java:51)
at
weblogic.servlet.internal.session.SessionContext$SessionInvalidator$Invalida
tionAction.run(SessionContext.java:523)
at
weblogic.security.service.SecurityServiceManager.runAs(SecurityServiceManage
r.java:744)
at
weblogic.servlet.internal.session.SessionContext$SessionInvalidator.cleanupE
xpiredSessions(SessionContext.java:444)
at
weblogic.servlet.internal.session.SessionContext.deleteInvalidSessions(Sessi
onContext.java:81)
at
weblogic.servlet.internal.session.SessionContext$SessionInvalidator.trigger(
SessionContext.java:392)
at
weblogic.time.common.internal.ScheduledTrigger.run(ScheduledTrigger.java:181
at
weblogic.security.service.SecurityServiceManager.runAs(SecurityServiceManage
r.java:744)
at
weblogic.time.common.internal.ScheduledTrigger.executeLocally(ScheduledTrigg
er.java:167)
at
weblogic.time.common.internal.ScheduledTrigger.execute(ScheduledTrigger.java
:161)
at weblogic.time.server.ScheduledTrigger.execute(ScheduledTrigger.java:38)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:153)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:134)
Any help appreciated.
Thanks
Madhu
-
What jar contains weblogic.jdbc.pool.Driver connection pool class?
Hi all,
I am trying to use the JDeveloper IDE to generate code that I'll deploy on WebLogic
6.1.
I want to add the necessary files to the JDeveloper classpath so that during development
it can use my
weblogic connection pool. I've looked all over and can't seem to find it. It's
not in weblogic.jar. Anyone know
what file contains weblogic.jdbc.pool.Driver?
Thanks in advance,
NormThanks. I don't know how I missed it in the first place.
"Sree Bodapati" <[email protected]> wrote:
weblogic.jar
sree
"Norm Heske" <[email protected]> wrote in message
news:3ba246c2$[email protected]..
Hi all,
I am trying to use the JDeveloper IDE to generate code that I'll deployon
WebLogic
6.1.
I want to add the necessary files to the JDeveloper classpath so thatduring development
it can use my
weblogic connection pool. I've looked all over and can't seem to findit.
It's
not in weblogic.jar. Anyone know
what file contains weblogic.jdbc.pool.Driver?
Thanks in advance,
Norm -
BLOB / CLOB operations using JDBC connections taken from WebLogic 6.0 connectrion pool
Hi..
I need to do some CLOB operations using JDBC connection taken
from WebLogic 6.0 connection pool. Will weblogic 6.0 supports it.?
I am getting errors when trying to do it in normal way .
It seems like ResultSet.getClob() returns an RMI (kind of ) object
instead of the Clob object.
If you have any idea . Pls respond to [email protected]
NazilinHi..
I need to do some CLOB operations using JDBC connection taken
from WebLogic 6.0 connection pool. Will weblogic 6.0 supports it.?
I am getting errors when trying to do it in normal way .
It seems like ResultSet.getClob() returns an RMI (kind of ) object
instead of the Clob object.
If you have any idea . Pls respond to [email protected]
Nazilin -
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)
>
-
Weblogic 8.1 Connection Pool and jta
Hi ! I am getting the below exception while migrating my application from weblogic
6.1sp2 to weblogic 8.1. When I migrate to weblogic 7.0 sp2 there are no problems.
The problem occurs specifically when I save an record using a container managed
transaction thru a stateless session bean. The save itself works, but when I
refresh my JSP, I get the following exception. Keep in mind that the same application
works fine in 7.0.
Thanks,
Eddie
java.sql.SQLException: Cannot obtain connection: driverURL = jdbc:weblogic:pool:Sybdev07Pool,
props = {enableTwoPhaseCommit=true, jdbcTxDataSource=true, connectionPoolID=Sybdev07Pool,
dataSourceName=sdaapadrDB}. Nested Exception: java.lang.RuntimeException: Failed
to setAutoCommit to true for pool connection. at weblogic.jdbc.wrapper.PoolConnection.init(PoolConnection.java:38)
at weblogic.jdbc.pool.Driver.allocateConnection(Driver.java:248) at weblogic.jdbc.pool.Driver.connect(Driver.java:158)
at weblogic.jdbc.jts.Driver.getNonTxConnection(Driver.java:444) at weblogic.jdbc.jts.Driver.connect(Driver.java:138)
at weblogic.jdbc.common.internal.RmiDataSource.getConnection(RmiDataSource.java:298)
atHi Eddie,
"Eddie Baue" <[email protected]> wrote in message
news:[email protected]...
In addition to the exception below, which is displayed on the browser,the
weblogic server log has the following error:
####<Aug 1, 2003 11:50:24 AM EDT> <Warning> <JDBC> <6X19DYSZH1ZV><wla_adruat>
<Finalizer> <<anonymous>> <> <BEA-001074> <A JDBC pool connection leak wasdetected.
A connection leak occurs when a connection obtained from the pool was notclosed
explicitly by calling close() and then was disposed by the garbagecollector and
returned to the connection pool. The following stack trace at create showswhere
the leaked connection was created. [Null exception passed, creating stack
trace> for offending caller
atweblogic.utils.StackTraceUtils.throwable2StackTrace(StackTraceUtils.java:28)
at weblogic.jdbc.wrapper.PoolConnection.finalize(PoolConnection.java:69)
at java.lang.ref.Finalizer.invokeFinalizeMethod(Native Method)
at java.lang.ref.Finalizer.runFinalizer(Finalizer.java:83)
at java.lang.ref.Finalizer.access$100(Finalizer.java:14)
at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:160)The only case it's possible is when the weblogic.jdbc.wrapper.PoolConnection
failed during instantiation process and GC kicked in before the
Throwable holding stack trace at create was initialized.
I believe this is the result of the exception below and you can not see
this under normal circumstances.
Regards,
Slava Imeshev
>
Any info would be greatly appreciated.
Thanks,
Eddie
"Eddie Baue" <[email protected]> wrote:
Hi ! I am getting the below exception while migrating my application
from weblogic
6.1sp2 to weblogic 8.1. When I migrate to weblogic 7.0 sp2 there are
no problems.
The problem occurs specifically when I save an record using a container
managed
transaction thru a stateless session bean. The save itself works, but
when I
refresh my JSP, I get the following exception. Keep in mind that the
same application
works fine in 7.0.
Thanks,
Eddie
java.sql.SQLException: Cannot obtain connection: driverURL =
jdbc:weblogic:pool:Sybdev07Pool,
props = {enableTwoPhaseCommit=true, jdbcTxDataSource=true,connectionPoolID=Sybdev07Pool,> >dataSourceName=sdaapadrDB. Nested Exception: java.lang.RuntimeException:
Failed
to setAutoCommit to true for pool connection. at
weblogic.jdbc.wrapper.PoolConnection.init(PoolConnection.java:38)
at weblogic.jdbc.pool.Driver.allocateConnection(Driver.java:248) atweblogic.jdbc.pool.Driver.connect(Driver.java:158)
at weblogic.jdbc.jts.Driver.getNonTxConnection(Driver.java:444) atweblogic.jdbc.jts.Driver.connect(Driver.java:138)
atweblogic.jdbc.common.internal.RmiDataSource.getConnection(RmiDataSource.java
:298)
at -
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 -
Sql Exception on Testing Configuration with SQL Server JDBC driver for XA
I have a requirement of analyzing the behavior of SQL Server JDBC data sources for XA transactions in our application.We have been using Non-XA drivers for both Oracle and SQL Server as we had no requirement for transactions spanning across multiple databases in past.I have setup and tested the XA driver for Oracle (Oracle Driver (Thin XA) for Instance Connections 9.0.1,9.2.0,10,11) in Weblogic 11g and its working perfectly for transactions spanning across two databases.No when I am trying to configure weblogic 11g R1 for Sql server JDBC driver to support XA transactions with driver details as follows,
Server:Weblogic 11g R1
Driver Type: MS Sql Server
Database Driver :Oracle's MS SQL Server Driver(Type 4 XA) Version:7.0,2000,2005)
Database:SQL Server 2005(Single Instance)
and try to create a new data source and select "Test Configuration" and following error is thrown ,
<Mar 17, 2011 4:49:49 PM GMT+05:30> <Error> <Console> <BEA-240003> <Console encountered the following error java.sql.SQLException: [OWLS][SQLServer JDBC Driver][SQLServer]xa_open (0) returns -3
at weblogic.jdbc.sqlserverbase.BaseExceptions40.createAppropriateSQLExceptionInstance(Unknown Source)
at weblogic.jdbc.sqlserverbase.BaseExceptions40.createSQLException(Unknown Source)
at weblogic.jdbc.sqlserverbase.BaseExceptions.createException(Unknown Source)
at weblogic.jdbc.sqlserverbase.BaseExceptions.getException(Unknown Source)
at weblogic.jdbc.sqlserver.tds.TDSRequest.processErrorToken(Unknown Source)
at weblogic.jdbc.sqlserver.tds.TDSRequest.processReplyToken(Unknown Source)
at weblogic.jdbc.sqlserver.tds.TDSRPCRequest.processReplyToken(Unknown Source)
at weblogic.jdbc.sqlserver.tds.TDSRequest.processReply(Unknown Source)
at weblogic.jdbc.sqlserver.SQLServerImplStatement.getNextResultType(Unknown Source)
at weblogic.jdbc.sqlserverbase.BaseStatement.commonTransitionToState(Unknown Source)
at weblogic.jdbc.sqlserverbase.BaseStatement.postImplExecute(Unknown Source)
at weblogic.jdbc.sqlserverbase.BasePreparedStatement.postImplExecute(Unknown Source)
at weblogic.jdbc.sqlserverbase.BaseStatement.commonExecute(Unknown Source)
at weblogic.jdbc.sqlserverbase.BaseStatement.executeUpdateInternal(Unknown Source)
at weblogic.jdbc.sqlserverbase.BasePreparedStatement.executeUpdate(Unknown Source)
at weblogic.jdbcx.sqlserver.SQLServerImplXAResource.executeXaRpc(Unknown Source)
at weblogic.jdbcx.sqlserver.SQLServerImplXAResource.executeXaRpc(Unknown Source)
at weblogic.jdbcx.sqlserver.SQLServerImplXAResource.open(Unknown Source)
at weblogic.jdbcx.sqlserverbase.BaseXAConnection.init(Unknown Source)
at weblogic.jdbcx.sqlserverbase.BaseXAConnection40.init(Unknown Source)
at weblogic.jdbc.sqlserverbase.BaseClassCreatorForJDBC40.createXaConnection(Unknown Source)
at weblogic.jdbcx.sqlserverbase.BaseXADataSource.getXAConnection(Unknown Source)
at com.bea.console.utils.jdbc.JDBCUtils.testConnection(JDBCUtils.java:550)
at com.bea.console.actions.jdbc.datasources.createjdbcdatasource.CreateJDBCDataSource.testConnectionConfiguration(CreateJDBCDataSource.java:450)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.beehive.netui.pageflow.FlowController.invokeActionMethod(FlowController.java:870)
at org.apache.beehive.netui.pageflow.FlowController.getActionMethodForward(FlowController.java:809)
at org.apache.beehive.netui.pageflow.FlowController.internalExecute(FlowController.java:478)
at org.apache.beehive.netui.pageflow.PageFlowController.internalExecute(PageFlowController.java:306)
at org.apache.beehive.netui.pageflow.FlowController.execute(FlowController.java:336)
at org.apache.beehive.netui.pageflow.internal.FlowControllerAction.execute(FlowControllerAction.java:52)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.access$201(PageFlowRequestProcessor.java:97)
at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor$ActionRunner.execute(PageFlowRequestProcessor.java:2044)
at org.apache.beehive.netui.pageflow.interceptor.action.internal.ActionInterceptors$WrapActionInterceptorChain.continueChain(ActionInterceptors.java:64)
at org.apache.beehive.netui.pageflow.interceptor.action.ActionInterceptor.wrapAction(ActionInterceptor.java:184)
at org.apache.beehive.netui.pageflow.interceptor.action.internal.ActionInterceptors$WrapActionInterceptorChain.invoke(ActionInterceptors.java:50)
at org.apache.beehive.netui.pageflow.interceptor.action.internal.ActionInterceptors$WrapActionInterceptorChain.continueChain(ActionInterceptors.java:58)
at org.apache.beehive.netui.pageflow.interceptor.action.internal.ActionInterceptors.wrapAction(ActionInterceptors.java:87)
at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.processActionPerform(PageFlowRequestProcessor.java:2116)
at com.bea.console.internal.ConsolePageFlowRequestProcessor.processActionPerform(ConsolePageFlowRequestProcessor.java:261)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.processInternal(PageFlowRequestProcessor.java:556)
at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.process(PageFlowRequestProcessor.java:853)
at org.apache.beehive.netui.pageflow.AutoRegisterActionServlet.process(AutoRegisterActionServlet.java:631)
at org.apache.beehive.netui.pageflow.PageFlowActionServlet.process(PageFlowActionServlet.java:158)
at com.bea.console.internal.ConsoleActionServlet.process(ConsoleActionServlet.java:256)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
at com.bea.console.internal.ConsoleActionServlet.doGet(ConsoleActionServlet.java:133)
at org.apache.beehive.netui.pageflow.PageFlowUtils.strutsLookup(PageFlowUtils.java:1199)
at com.bea.portlet.adapter.scopedcontent.ScopedContentCommonSupport.executeAction(ScopedContentCommonSupport.java:686)
at com.bea.portlet.adapter.scopedcontent.ScopedContentCommonSupport.processActionInternal(ScopedContentCommonSupport.java:142)
at com.bea.portlet.adapter.scopedcontent.PageFlowStubImpl.processAction(PageFlowStubImpl.java:106)
at com.bea.portlet.adapter.NetuiActionHandler.raiseScopedAction(NetuiActionHandler.java:111)
at com.bea.netuix.servlets.controls.content.NetuiContent.raiseScopedAction(NetuiContent.java:181)
at com.bea.netuix.servlets.controls.content.NetuiContent.raiseScopedAction(NetuiContent.java:167)
at com.bea.netuix.servlets.controls.content.NetuiContent.handlePostbackData(NetuiContent.java:225)
at com.bea.netuix.nf.ControlLifecycle$2.visit(ControlLifecycle.java:180)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:324)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:334)
at com.bea.netuix.nf.ControlTreeWalker.walk(ControlTreeWalker.java:130)
at com.bea.netuix.nf.Lifecycle.processLifecycles(Lifecycle.java:395)
at com.bea.netuix.nf.Lifecycle.processLifecycles(Lifecycle.java:361)
at com.bea.netuix.nf.Lifecycle.processLifecycles(Lifecycle.java:352)
at com.bea.netuix.nf.Lifecycle.runInbound(Lifecycle.java:184)
at com.bea.netuix.nf.Lifecycle.run(Lifecycle.java:159)
at com.bea.netuix.servlets.manager.UIServlet.runLifecycle(UIServlet.java:388)
at com.bea.netuix.servlets.manager.UIServlet.doPost(UIServlet.java:258)
at com.bea.netuix.servlets.manager.UIServlet.service(UIServlet.java:199)
at com.bea.netuix.servlets.manager.SingleFileServlet.service(SingleFileServlet.java:251)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at com.bea.console.utils.MBeanUtilsInitSingleFileServlet.service(MBeanUtilsInitSingleFileServlet.java:47)
at weblogic.servlet.AsyncInitServlet.service(AsyncInitServlet.java:130)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:292)
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3592)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2202)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2108)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1432)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
I followed the instruction in weblogic jdbc drivers guide to configure the JTA Transactions to support XA on SQL Server machine and weblogic server which included,
1.Copying sqljdbc.dll copied to SQL_Server_Root/bin directory from WL_HOME\server\lib.
2.Copied instjdbc.sql to sql server machine and executed the script with following output,
Changed database context to 'master'.
Msg 3701, Level 11, State 5, Server SQLDB, Procedure sp_dropextendedproc, Line 16
Cannot drop the procedure 'xp_jdbc_open', because it does not exist or you do not have permission.
Msg 3701, Level 11, State 5, Server SQLDB, Procedure sp_dropextendedproc, Line 16
Cannot drop the procedure 'xp_jdbc_open2', because it does not exist or you do not have permission.
Msg 3701, Level 11, State 5, Server SQLDB, Procedure sp_dropextendedproc, Line 16
Cannot drop the procedure 'xp_jdbc_close', because it does not exist or you do not have permission.
Msg 3701, Level 11, State 5, Server SQLDB, Procedure sp_dropextendedproc, Line 16
Cannot drop the procedure 'xp_jdbc_close2', because it does not exist or you do not have permission.
Msg 3701, Level 11, State 5, Server SQLDB, Procedure sp_dropextendedproc, Line 16
Cannot drop the procedure 'xp_jdbc_start', because it does not exist or you do not have permission.
Msg 3701, Level 11, State 5, Server SQLDB, Procedure sp_dropextendedproc, Line 16
Cannot drop the procedure 'xp_jdbc_start2', because it does not exist or you do not have permission.
Msg 3701, Level 11, State 5, Server SQLDB, Procedure sp_dropextendedproc, Line 16
Cannot drop the procedure 'xp_jdbc_end', because it does not exist or you do not have permission.
Msg 3701, Level 11, State 5, Server SQLDB, Procedure sp_dropextendedproc, Line 16
Cannot drop the procedure 'xp_jdbc_end2', because it does not exist or you do not have permission.
Msg 3701, Level 11, State 5, Server SQLDB, Procedure sp_dropextendedproc, Line 16
Cannot drop the procedure 'xp_jdbc_prepare', because it does not exist or you do not have permission.
Msg 3701, Level 11, State 5, Server SQLDB, Procedure sp_dropextendedproc, Line 16
Cannot drop the procedure 'xp_jdbc_prepare2', because it does not exist or you do not have permission.
Msg 3701, Level 11, State 5, Server SQLDB, Procedure sp_dropextendedproc, Line 16
Cannot drop the procedure 'xp_jdbc_commit', because it does not exist or you do not have permission.
Msg 3701, Level 11, State 5, Server SQLDB, Procedure sp_dropextendedproc, Line 16
Cannot drop the procedure 'xp_jdbc_commit2', because it does not exist or you do not have permission.
Msg 3701, Level 11, State 5, Server SQLDB, Procedure sp_dropextendedproc, Line 16
Cannot drop the procedure 'xp_jdbc_rollback', because it does not exist or you do not have permission.
Msg 3701, Level 11, State 5, Server SQLDB, Procedure sp_dropextendedproc, Line 16
Cannot drop the procedure 'xp_jdbc_rollback2', because it does not exist or you do not have permission.
Msg 3701, Level 11, State 5, Server SQLDB, Procedure sp_dropextendedproc, Line 16
Cannot drop the procedure 'xp_jdbc_forget', because it does not exist or you do not have permission.
Msg 3701, Level 11, State 5, Server SQLDB, Procedure sp_dropextendedproc, Line 16
Cannot drop the procedure 'xp_jdbc_forget2', because it does not exist or you do not have permission.
Msg 3701, Level 11, State 5, Server SQLDB, Procedure sp_dropextendedproc, Line 16
Cannot drop the procedure 'xp_jdbc_recover', because it does not exist or you do not have permission.
Msg 3701, Level 11, State 5, Server SQLDB, Procedure sp_dropextendedproc, Line 16
Cannot drop the procedure 'xp_jdbc_recover2', because it does not exist or you do not have permission.
creating JDBC XA procedures
instxa.sql completed successfully.
3.Verified that MSDTC service is running on both SQL Server and weblogic machines with XA Transaction enabled and DTC option enabled for both inbound and outbound connections.
4.Copied sqljdbc.jar (version 3.0 downloaded from msdn portal) to "C:\Oracle\Middleware\wlserver_10.3\server\ext\jdbc\sqlserver" directory and updated weblogic_classpth variable in commEnv.cmd file.
set WEBLOGIC_CLASSPATH=%JAVA_HOME%\lib\tools.jar;%BEA_HOME%\utils\config\10.3\config-launch.jar;%WL_HOME%\server\lib\weblogic_sp.jar;%WL_HOME%\server\lib\weblogic.jar;%FEATURES_DIR%\weblogic.server.modules_10.3.2.0.jar;%WL_HOME%\server\lib\webservices.jar;%ANT_HOME%/lib/ant-all.jar;%ANT_CONTRIB%/lib/ant-contrib.jar;C:\Oracle\Middleware\wlserver_10.3\server\ext\jdbc\sqlserver\server\ext\jdbc\sqlserver\sqljdbc.jar
Can some one please provide some input on whats causing this and any other steps needs to be followed to implement XA support using SQL Server JDBC driver.You seem to have done everything correctly and diligently. I would ask that you open
an official support case. -
Hi ,
I tried to create an oracle pool by admin server. When I tried to ping it I got an error something like the cache name is already used.
When I tried to use it in my code I got another error :
'java.lang.ClassCastException: com.sun.gjc.spi.DataSource cannot be cast to oracle.jdbc.pool.OracleDataSource'
The pool properties I used are :
Url : dbc:oracle:thin:@servername:port:dbname
DataSourceName: OracleDataSource
ConnectionCacheName: cache2
ConnectionCachingEnabled: true
The code I used to get the connection :
OracleDataSource poolConnDs = null;
Connection poolConn = null;
try{
InitialContext jdbcContext = new InitialContext();
poolConnDs = (OracleDataSource)jdbcContext.lookup("java:comp/env/jdbc/jndi_pool_name");
poolConn = poolConnDs.getConnection();
ResultSet res = poolConn.createStatement().executeQuery("Select * from my_table");
}catch(Exception e){
e.printStackTrace();
}finally{
try{
poolConn.close();
}catch(Exception e){
e.printStackTrace();
Can anybody help me ??
Thanx in advanceYou should not be using com.sun.appserv.jdbc.DataSource in your code.
Neither OracleDataSource.
Change your code from
"poolConnDs = (OracleDataSource)jdbcContext.lookup("java:comp/env/jdbc/jndi_pool_name");"
to
"poolConnDs = (javax.sql.DataSource)jdbcContext.lookup("java:comp/env/jdbc/jndi_pool_name");"
Hope this works.
Thanks,
-Jagadish -
JDBC pooling Oracle driver Socket read timed out
I run Java EE application on Glassfish server v3 together with Oracle 12 DB on the same machine under Windows Server 2012 64bit. I use latest ojdbc7 driver.
Connection pool config:
<jdbc-connection-pool validation-table-name="DUAL" steady-pool-size="20" statement-cache-size="100" associate-with-thread="true" statement-timeout-in-seconds="30" idle-timeout-in-seconds="60" max-wait-time-in-millis="2000" validate-atmost-once-period-in-seconds="20" datasource-classname="oracle.jdbc.pool.OracleDataSource" pool-resize-quantity="5" max-pool-size="60" res-type="javax.sql.DataSource" name="dbPool" is-connection-validation-required="true">
<property name="driverClass" value="oracle.jdbc.OracleDriver"></property>
<property name="user" value="xxx"></property>
<property name="url" value="jdbc:oracle:thin:@(DESCRIPTION=(ENABLE=BROKEN)(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=127.0.0.1)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=orcl)))"></property>
<property name="password" value="xxx"></property>
<property name="portNumber" value="1521"></property>
<property name="databaseName" value="orcl"></property>
<property name="serverName" value="127.0.0.1"></property>
<property name="oracle.jdbc.ReadTimeout" value="300000"></property>
<property name="oracle.net.CONNECT_TIMEOUT" value="10000"></property>
</jdbc-connection-pool>
After 2 or 3 hours, when there is more than 1 user (3-5) using my application, it stops responding and I get this in glassfish logs
javax.enterprise.resource.resourceadapter.com.sun.enterprise.resource.allocator|_ThreadID=152;_ThreadName=Thread-2;|RAR5038:Unexpected exception while creating resource for pool dbPool. Exception : javax.resource.spi.ResourceAllocationException: Connection could not be allocated because: IO Error: Socket read timed out
Local Exception Stack:
Exception [EclipseLink-4002] (Eclipse Persistence Services - 2.3.2.v20111125-r10461): org.eclipse.persistence.exceptions.DatabaseException
Internal Exception: java.sql.SQLException: Error in allocating a connection. Cause: Connection could not be allocated because: IO Error: Socket read timed out
From the database side it looks like this
Fatal NI connect error 12560, connecting to:
(LOCAL=NO)
VERSION INFORMATION:
TNS for 64-bit Windows: Version 12.1.0.1.0 - Production
Oracle Bequeath NT Protocol Adapter for 64-bit Windows: Version 12.1.0.1.0 - Production
Windows NT TCP/IP NT Protocol Adapter for 64-bit Windows: Version 12.1.0.1.0 - Production
Time: 13-JUN-2014 03:14:49
Tracing not turned on.
Tns error struct:
ns main err code: 12560
TNS-12560: TNS:protocol adapter error
ns secondary err code: 0
nt main err code: 0
nt secondary err code: 0
nt OS err code: 0
opiodr aborting process unknown ospid (3404) as a result of ORA-609
When I just reset db listener everything works ok for next 1-2 hours (depends on application load). So temporary solution is to run bat script from windows scheduler to reset the listener every 1h.
I tried everything I could find - applied these parameters:
- Sqlnet.ora:
SQLNET.INBOUND_CONNECT_TIMEOUT=180
SQLNET.EXPIRE_TIME=5
- Listener.ora:
INBOUND_CONNECT_TIMEOUT_LISTENER_IPC=120
But still without successIs the problem here just that you need a connection pool that closes idle connections? Some pools will close idle connections after a time out period. And the pool lets you set that time out period. If the pool you are using doesn't provide that then use a different pool.
Maybe you are looking for
-
My MacBook Pro won't connect to the Internet via wifi but it worked fine on ethernet cord...I tried running diagnostic but it didn't work:(((( it happen every time if I restart the modem and/or router.. Any idea how to fix this?
-
How to set the protocol T=1 or T=0 in java card?
Hi,all.Java card surpport T=1 T=0 or T=CL.How can I set the protocols? Does java card supply this kind of API?Please help me. Thinks.
-
ABAP Error while Migration of Transfer Rules
HI I am migrating the standard Transfer Rules for the Cube : 0COOM_C02 InfoSource: 0CO_OM_CCA_9 When I converted the Transfer rules it gave me syntax error for ABAP. When i checked for any routines in transformation rules i found 0PART_CCTR and some
-
GCAC - Ledger comparsion, why we do it and what are the key analysis points
Hi all, I am currently working on a GCAC check reconciling FI/PCA legers to they are in sync. I just want to know the analysis points for the endusers. If you have any suggestions please reply back to me asap. I really appriciate your response and co
-
VideoDisplay component to play mp4/h.264 content
Hi, I want to build a simple video player that plays HD movie content. Can the VideoDisplay component in flex builder 3 be used play mp4/h.264 content? If so how is it done as I have tried setting VideoDisplay's source to a local MP4 file and it will