cancel
Showing results for 
Search instead for 
Did you mean: 

JDBC Adapter Issue

Former Member
0 Kudos

Hi Experts,

I have an issue with my XI JDBC adapter. Once a job gets sent through XI (from nonSAP to XI to SAP), the JDBC adapter is required to write a confirmation in the database that the job was processed in SAP.

When I go into my Adapter Monitor (http://system:num/AdapterFramework/) I see a red dot beside JDBC and the following error:

Error: Transform error in xml processor class, rollback:

ERROR:Processing request: Error when executing statement for table/stored proc. 'stfx.job_copy': com.mysql.jdbc.exceptions.MySQLNonTransientConnectionException: No operations allowed after statement closed.

Any ideas??

Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

Hi Shane,

You can deactivate and reactivate the communication channel from Integration directory.

In communication channel configuration you will find Adapter staus as active.

Change it to make inactive , activate and again chage it to active.

It will start the polling immediately once you will activate.

Thanks,

Beena

Former Member
0 Kudos

Thanks

prateek
Active Contributor
0 Kudos

Hi,

There is an option in the communication channels for deactivating

Scroll down: It has a option "status". It has 2 options to choose. "Active" and "Inactive"

Regards,

Prateek

Former Member
0 Kudos

What would be the cause of this adapter to stop working??

I need to be able to write back to a database that the job has been completed, but I need 100% uptime to ensure that messages do not get processed multiple times. How can I ensure that the JDBC connector does not go down?

prateek
Active Contributor
0 Kudos

Hi,

Since u want 100% uptime, that not only means that u need JDBC connector always up, rather u need whole XI always up. For this certain configurations are required.

https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/cefe0399-0701-0010-8d86-b6b31cc5...

https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/30f8bd90-0201-0010-dd9a-c8a7f52c...

Regards,

Prateek

bhavesh_kantilal
Active Contributor
0 Kudos

Shane,

Can you give us the entire flow here?

How are you planing to update the database here etc?

Regards

Bhavesh

Former Member
0 Kudos

Hi Bhavesh,

I update with the XML coming out of XI. All I need to update is the status. This XML currently does come out of XI and would be sent back to my database, except for the fact that the JDBC adapter goes down, and I get the originally mentioned error. The XML looks like:

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

- <ns0:MT_UPDATE_STATUS xmlns:ns0="http://tssi.ycdsb.ca">

- <STATEMENTNAME>

- <dbTableName action="UPDATE">

<TABLE>sfx.job_copy</TABLE>

- <access>

<status1>DONE</status1>

<status2>DONE</status2>

</access>

- <key>

<jobId>00595593</jobId>

<status1>NEW</status1>

<messagenm>d3e98e294bfcd2d5d3e98e29</messagenm>

</key>

</dbTableName>

</STATEMENTNAME>

</ns0:MT_UPDATE_STATUS>

Any ideas?

bhavesh_kantilal
Active Contributor
0 Kudos

Shane,

A few questions,

Are all the KEY Elements in the table Numbers? If no, then you would need to use the Attribute hasQuot with value YES.

regards

Bhavesh

Former Member
0 Kudos

Hi Bravesh,

The key elements <jobId> <status1> and <messagenm> are in the table sfx.job_copy

So are <status1> and <status2>

Is there any reason why the JDBC adapter would just stop working after a certain amount of time being up??

bhavesh_kantilal
Active Contributor
0 Kudos

Shane,

If this is a one of issue that happens once in a while and tghe scenario works fine otherwise, the issue could be DB connectivity to XI.

In the receiver JDBC adapter , under Advanced Mode select option "DIsconnect from Database after each message processing" .

Let us know if this helps

Regards

Bhavesh

Former Member
0 Kudos

Hi Bravesh,

Where do I change this?

In XI?

or somewhere in the IR / ID?

or on the receiving system?

Thanks for your help. Hopefully this can help resolve my issue.

Shane

bhavesh_kantilal
Active Contributor
0 Kudos

You do this in the ID.

Log on to the ID, Find the JDBC receiver Adapter being used and then make this change in the receiver JDBC adapter.

Regards

Bhavesh

Former Member
0 Kudos

Thanks Bravesh. I will let you know if this works.

SL

Former Member
0 Kudos

Hi Shane,

How many statements do you have in Stored procedure?

>>+You have the following options:

· Specify a valid SQL SELECT statement to select the data to be sent from the specified database.

· Specify an SQL EXECUTE statement to execute a stored procedure, which contains exactly one SELECT statement+.

Thanks,

Beena

Former Member
0 Kudos

Only one. I think the stored procedure is fine (although obviously not sure).

How would I go about re-starting the JDBC adapter. The person who was working on our XI system before (who has since left the company) said that it would work, and then stop working. Is there a way to turn it back on (even if it is only temporary)??? How can I get that red light to turn green?

Thanks