Problem with JDBC adapter services

Hi,

I receive the following error from my JDBC Adapter services: (HY000/0) [wm-cjdbc33-0009][SQLServer JDBC Driver]No more data available to read." I do not get it everytime I run the service, it works a couple of times and then I get the error again. It happens with insert, custom & select services. Please let me know if you’ve seen this and what can I do to prevent it.

Thanks

Rudi,

Are you using Local_Transaction or No_Transaction in your JDBC Adapter connection to talk with DB?If you are using local transaction make use of WmART Services startTransaction,insertData to DB,commitTransaction and in the errorhandling sequence invoke the rollbackTransaction service.Hope this will solve your problem.
And in the JDBC connecion settings check your min/max connections have enough numbers for connection pooling.

HTH,

Thanks, I will try it using the WmART services since I am using local transactions.

Cheers

Hi,

I tried using the WmART services using the startTransaction and commitTransaction and it worked a couple of times but I still get the “No more data available to read” error from time to time. I’ve tried just about everything and it works for a couple of runs but every way I’ve tried I still get the error from time to time.

Any suggestions?

Can you tell us what are the current JDBC Adapter connection (Local_Transaction) settings configured there?

I have no clue regarding the error as of now.

makroPostilion.inbound.sql:localSubsetDb Details
Connection Type JDBC Adapter Connection
Package Name clntMakroPostilion
Connection Properties
Transaction Type LOCAL_TRANSACTION
DataSource Class com.wm.dd.jdbcx.sqlserver.SQLServerDataSource
serverName 196.26.56.48
user eai
password ******
databaseName esp_server
portNumber 1433
networkProtocol
Other Properties
Connection Management Properties
Enable Connection Pooling true
Minimum Pool Size 1
Maximum Pool Size 10
Pool Increment Size 1
Block Timeout (msec) 10000
Expire Timeout (msec) 10000
Startup Retry Count 0
Startup Backoff Timeout (sec) 10

I saw that someone did ask about this same error on the discussion board a couple of months ago but there were no replies.
If I restart the JDBC adapter it works a couple of times perfectly but after a couple of queries the same errors occurs.
A workaround for the time being might be to schedule a job to restart the JDBC adapter when the error occurs.
Do you know if there is a service I can use to restart the JDBC Adapter?

Thanks

Please check the WmART services (wm.art.admin:startup,wm.art.admin:shutdown).But i believe its not a good idea to restart the adapter everytime few minutes.

Can you try changing the settings as per below:

networkProtocol TCP
Other Properties
Minimum Pool Size 0
Maximum Pool Size 20
Pool Increment Size 1
Block Timeout (msec) 10000
Expire Timeout (msec) 500

As a final attempt contact tech support for resolving this issue if there any fix available.

Regards,

Try also changing the datasource class name
DataSource Class com.microsoft.jdbcx.sqlserver.SQLServerDataSource

I believe you are using MS SQLServer.

Hi Rudi,
Did you manage to fix this problem?

We have exactly the same problem. We are using WmDB and our TN is using DataDirect. The problem happens when our partner submits EDI document to us through AS2. It is not everytime, but occasionally.

We use TN6.0.1 and wM6.0.1 version.
Regards,
Krishnan

Use OCI driver, instead of thin driver, to get rid of this exception.

Hi…,

I have one adapter service to data from oracle, when I try to run this adapter service, It work.

Then I try to delete on data from my database table.Then I run again the adapter service in webmethods.

The problem is, the result doesn’t change.It still come with the old data.

Can you tell me how can I get the update data from database?

thanks for your help…

bonds

Bondan,

After deleteting the data from the DB table are you explicitly committing?

If so try to refresh your developer and test the AS again check the results tab you should not see the old data.

HTH,
RMG

thnks Mr RMG.

Hi WmART Expert,
I have a problem :when i use “pub.art.connection:enableConnection” with input, it enables the connection. but when i put “pub.art.connection:enableConnection” inside sequence(with exit on done), then it does not gives any errors and does not enables the connection.

This scenario works

Flow Steps(begin)
pub.art.connection:enableConnection
Flow Steps(end)

Following Scenario does not works
[b]
Flow Steps(begin)

pub.art.connection:queryConnectionState
Branch(evaluate lables)[/b]
|------ Sequence(exit on done)
|--------||----------[b]pub.art.connection:enableConnection

Flow Steps(end)
[/b]

Does anybody have any clue about it?

Regards,
Puneet Saxena

Hi WmART Experts,

Got the Solution while going through WmART Package.
I used wm.art.admin.connection:getResourceState and then inside sequence i used wm.art.admin.connection:setResourceState instead of pub.art.connection:enableConnection.

Anybody got better solution than this, kindly share.

Regards,
Puneet Saxena