Sender JDBC Problem
Hi
can any one hlp me..
My scenrio is JDBC is sender and file is Receiver.
problem is JDBC adapter is hitting the SQL server and retrived the data and Inbound message and Receivng Grouping Payload ..like this..
<?xml version="1.0" encoding="utf-8" ?>
- <resultset>
- <row>
<TransactionNumber>118</TransactionNumber>
<CompanyCode>1004</CompanyCode>
<CustomerNumber>1368986</CustomerNumber>
</row>
Response payload is showig only name space..of frist two lines..
<?xml version="1.0" encoding="UTF-8" ?>
<ns0:resultset_mt xmlns:ns0="urn:Poll_Database_File" />
even MessageData and Audit logs showing successfully delivered ..
Other than soap content in Message Content showing only name space of xml...first two lines..
So please let me know , where i did mistake?
Regards..Rambarki
Sharavan..the SQL statement is working fine..
otherwise i wont get this payload in Inbound Message
<?xml version="1.0" encoding="utf-8" ?>
- <resultset>
- <row>
<TransactionNumber>118</TransactionNumber>
<CompanyCode>1004</CompanyCode>
<CustomerNumber>1368986</CustomerNumber>
</row>
- <row>
<TransactionNumber>254</TransactionNumber>
<CompanyCode>1004</CompanyCode>
<CustomerNumber>2755685</CustomerNumber>
</row>
see u can find the data in payload..but thing is repsonse payload showing like this..
<?xml version="1.0" encoding="UTF-8" ?>
<ns0:resultset_mt xmlns:ns0="urn:Poll_Database_File" />
only..
i didn;t understand..what is this error/
regards
sankar
Similar Messages
-
Problem in sender JDBC adapter
hello,
I am facing one typical problem in sender JDBC adapter.
Here is the issue,
JDBC API method getString threw an exception: java.sql.SQLException: Cursor state not valid.
Can anyone please help me out in solving this problem?
Actually after a retry of 3 times the message has been successfully sent. Till then i am getting these error
On 1st attempt ,
Error during conversion of query result to XML java.sql.SQLException: Cursor state not valid
On 2nd attempt,
Error during conversion of query result to XML java.sql.SQLException: Internal driver error
(class.java.lang.InterruptedException)
On 3rd attempt,
Processing finished successfully.
This is the scenario that i can see in the audit log.
Can you please help me out in solving this issue.
Thanks,
SooryaHi gaurav,
It was a good response from your side.
I have gone through the FAQ but could not able to find anything.
Can you please help me out in this regard ?
Also i am using select query of this kind,
SELECT
SEFVHRC.VHRBRCD,SEFVHRC.VHRCUCD,SEFVHRC.VHRVIN,SEFVHRC.VHRMOCD,SEFVHRC.VHRCHAS,
SEFVHRC.VHRSLOR,SEFVHRC.VHRDIVI,SEFVHRC.VHRMGCD,SEFVHRC.VHRMOCH,SEFVHRC.VHRVHTY,
SEFVHRC.VHRBDTY,SEFVHRC.VHRMFYR,SEFVHRC.VHRMOYR,SEFVHRC.VHRMODS,
SEFVHRC.VHRMDTL,SEFVHRC.VHRCLBR,SEFVHRC.VHRRCID,SEFVHRC.VHRARDT,
SEFVHRC.VHRLUTM,SEFVHRC.VHRLUDT,SEFVHRC.VHRKEYN,SEFVHRC.VHRCTORN,
SEFVHRC.VHRCTIMP,SEFVHRC.VHRPRDT,SEFVHRC.VHRPRDT,SEFVHRC.VHRRCDT,
SEFVHFT.VHFCLCD,SEFVHFT.VHFCAT,SEFVHFT.VHFCADSC,SEFVHFT.VHFKEY,SEFVHFT.VHFTEXT1,
SEFVHFT.VHFTEXT2,SEFVHFT.VHFTEXT3,SEFVHFT.VHFTEXT4
FROM
SAPTESTLIB.SEFVHRC,SAPTESTLIB.SEFVHFT
WHERE
SEFVHRC.VHRVIN = SEFVHFT.VHFVIN AND SEFVHRC.VHRSTTS = ' '
and update query of this kind,
Update SEFVHRC SET VHRSTTS = 'R' WHERE VHRSTTS = ' '
I am using prity big select query. is there any option to optimize it?
Can you please help me out in solving this problem
urs,
Soorya -
Sender JDBC adapter...problem
Hi,
the real problem is Sender JDBC adapter sends data in following format.
<?xml version="1.0" encoding="UTF-8"?>
<resultset>
<row>
<Associate_ID>16444</Associate_ID>
<Associate_Name>Sudhir</Associate_Name>
<Status>false</Status>
</row>
</resultset>
But in Design time mapping...structure of source message will be like
<?xml version="1.0" encoding="UTF-8"?>
<ns5:DB2File_DB_MT xmlns:ns5="urn:db2file">
<Resultset>
<Row>
<Associate_ID>16444</Associate_ID>
<Associate_Name>Sudhir</Associate_Name>
<Status>false</Status>
</Row>
</Resultset>
</ns5:DB2File_DB_MT>
How does this tag ... <ns5:DB2File_DB_MT xmlns:ns5="urn:db2file"> get generated in runtime
and apart from 1 to 1 mappings b/w the three fields above in the row tag...wt other mappings to be performed
Pls help...
SunitaHi Sunita,
what i understood from your query is namespace tag is coming while message mapping. This namespace can be avoided in the message type if you keep the XML namespace field empty while creating message type. But i afraid you have to do the message mapping again.
Regards,
Satish -
Sender JDBC Adapter hang after network problem ?
Hi,
I got problem with Sender JDBC Adapter. in the normal condition it is working fine. no problem at all.
The problem coming after network connection problem within XI and database for about more than 24 hours. After the connection resume the Sender JDBC Adapter doesn't want to pickup the data.
Communication Channel Log Showing (Without finish Processing).
6/16/08 5:49:04 PM Processing started
6/16/08 5:48:04 PM Processing started
6/16/08 5:47:04 PM Processing started
6/16/08 5:46:04 PM Processing started
6/16/08 5:45:04 PM Processing started
In normal Communication Channel Showing :
6/16/08 5:33:39 PM efcbd379-6b57-4922-364f-9c047e82ac1b Polling interval started. Length: 30.0 seconds
6/16/08 5:33:39 PM efcbd379-6b57-4922-364f-9c047e82ac1b Processing finished successfully
6/16/08 5:33:39 PM Processing started
6/16/08 5:33:09 PM efcbd379-6b57-4922-364f-9c047e82ac1b Polling interval started. Length: 30.0 seconds
6/16/08 5:33:09 PM efcbd379-6b57-4922-364f-9c047e82ac1b Processing finished successfully
6/16/08 5:33:09 PM Processing started
The problem resolve after restart the whole XI system. is there any other way to solve the problem without restarting the whole xi server. Because i have tried to stop and start the communication channel but still doesn't work until restart the xi. server.
Please advise.
Thank you and Best Regards
FernandCheck JDBC FAQ note 831162
7. Network-Level Connection Problems
Q: The TCP/IP connection to my database host is running over an unreliable network connection, i.e. the connection is sometimes interrupted. Consequently, I sporadically receive an SQLException regarding a closed connection in the system trace or audit log or the connection as well as the JDBC Adapter channel are hanging.
How can I work around this connectivity issue?
A: Enable the "Advanced Mode" for the respective JDBC Adapter channel and select the option "Disconnect from Database After Processing each Message".
Note that this might put additional load on your DBMS due to the creation of a new database connection for each message.
If you are connecting to an Oracle database, also refer to question #10 for an alternative solution. -
Sender JDBC Commn channel problem - Channel is not reading any data.
Hi,
I am referring to the following blog as i have exactly the same problem:
[Blog|Sender JDBC Commn channel problem;
I communication channel monitoring i am getting the following logs -
6/21/10 7:19:07 PM Processing started
6/21/10 7:19:07 PM Retry interval started. Length: 86400.0 seconds
Here in the channel the poling interval is 86400 seconds.
Now according to this blog the solution to my issue is "Check whether anything is locked in "Locking adapter" in VA? If there is then just release the lock and restart the comm channel. Note: In "locking adapter" the name will be something like $XIDBAD.JDBC2XI."
Mine is a PI7.1 system and i am not able to find any thing like this in NWA.
Can some one please help me on this?
Thanks & Regards,
Anshultry;
Goto NWA -> Availability and Performance Management -> Resource Monitoring -> Locks -
Sender JDBC Communication Update SQL Command Problem!
Hi all,
I am trying to do a SENDER JDBC Scenario in XI.
I fetch the Records from the table Once per day based on the Current Date.
I do not have any Update Credentials in the table.
I can only perform Select Querry.
But when i am trying to configure the SENDER JDBC Channel its asking me to enter value for Update SQL Command in Sender JDBC communication channel Process Parameters.
Its not accepting BLANK or ' * ' Values.
But i have only Select Querry credentials in the table. I can only pick the values cant Update the tables but.
In the Above scenario how can i configure the Sender JDBC CC without Updating the Table after fetching the value?
Please Advice
Regards,
Senthilprakash.Hi,
Specify the Update SQL Statement value as .
http://help.sap.com/saphelp_nw04/helpdata/en/14/80243b4a66ae0ce10000000a11402f/frameset.htm
Thanks
SaNv...
Edited by: Sãnthosh Kûmãr V on Oct 8, 2008 10:44 AM
Edited by: Sãnthosh Kûmãr V on Oct 8, 2008 10:45 AM -
Problem with Sender JDBC adapter using StoredProcedures
Hi All,
I am facing some prblem when i am using StoredProcedure. Please look at the error which i observe in the traces when i try to execute a stored procedure using Sender JDBC channel.
SQLException during query 'execute MAG_C0210.dbo.biz_mag_ubicaciones @data="MAG_C0210" , @idciclovida=" ", @idmaestro=" ", @idtiporeplicacion=" "':com.microsoft.sqlserver.jdbc.SQLServerException: The statement did not return a result set
Please help me in this regard ASAP.
Cheers,
SooryaHi Praveen,
It is working fine when i executed the same in the SQL editor but when I use with XI it is failing with error
mentioned earlier. Please check this and help in solving this asap.
Regards,
Soorya -
Hi,
Sender JDBC communication channel is working fine first time to pull the data and from database. After pulling the data from the database i just stop the communication channel and start it to pull the data again. but it is not pulling the data and the adapter status is green in functioning. If i create the new communication channel with the same old CC parameters its pulling data again.
As per the sdn fourms to resolve the same, i coulnt not find any lock JDBC adapter with name $XIDBAD.JDBC2XI in Visula Amin.
Please share your valueble inputs on the same.
Thanks>My Issue is, First time JDBC CC is working fine. If i try pull the data again, its not working. it is showing successful status in the CC >monitoring. If i create the new communication channel with the values of the current CC and give it into the agreement, its working again.
Check whether your select query followed by update in the communication channel stops returning resultset after one time. I mean update does some fields update and so reread the data using select statement again stops returning data. If that is not the issue then search forum for SAP notes related to JDBC adapter fix. -
Error while executing the stored procedure through sender JDBC adapter
Hi All,
I am getting below error while executing the stored procedure through sender JDBC adapter.
Database-level error reported by JDBC driver while executing statement 'exec SapgetNextEntity 'SalesOrder''. The JDBC driver returned the following error message: 'com.microsoft.sqlserver.jdbc.SQLServerException: The statement did not return a result set.'. For details, contact your database server vendor.
what is the problem? any idea to anyone...
regards
Rameshhi Dharamveer,
I am not getting below statement for your reply
Try to use Refrence Cursor it will return u reference of resultset.
I mention SP like this
exec SapgetNextEntity 'SalesOrder'
SapgetNextEntity -
> SP Name
SalesOrder----
> Parameter I am passing...
regards
Ramesh -
Sender JDBC channel stop send messages
Hi,
We have a sender JDBC scenario which is working correctly time ago.
However, sometimes this channel stop sending messages although the Adapter Monitor shows that they regularly execute the polling interval.
We have confirmed that there isn't any connection from XI to target BD.
In other ocasions, we are required to restart XI and, after that, this scenario works without any problem.
What could be the cause?
How to solve it?
thanks, in advance
CarmeThis is rather strange.
A few of my observations -
1. When the sender jdbc adapter polls , and there is no data matching the select query, you will still see a message id in Comm Channel Monitoring but with no hyper link.
2. The actual message id / message is created only if there is data in the database and also the hyper link is enabled.
3. If you are confident that the data is being commited on the database and that it is XI not pulling the right data, one issue might be - driver issues. Can you check if you have the right compatible drivers for your database on XI server - is there a new'er driver available?
We hit a similar issue with JMS adapters and we learnt that the JMS server had been updated as a result of which a new driver had to be installed which we did not until we hit intermittent problems like these.
Hope this helps
Regards
Bhavesh -
Namespace issue in Sender JDBC message
Hi All,
My scenario is pulling data from Oracle DB(3rd party) and pushing it to SAP ECC system. Here I am using the table metadata in the form of an External Definition.I am directly using this ED in my message mapping and service interface. I am able to test the mapping locally, when I run the scenario the target message type is generated but the main element node inside is automatically suppressed. The structure examples are given as below(been taken from message mapping test tab):
Source
<?xml version="1.0" encoding="UTF-8"?>
<ns0:TABLE_NAME.resultSet xmlns:ns0="urn:sap.com:jdbcAdapter">
<row>
<A/>
<BV/>
</row>
</ns0:TABLE_NAME.resultSet>
Target:
<?xml version="1.0" encoding="UTF-8"?>
<MT_Inbound>
<Main_Node>
<X/>
<Y/>
</Main_Node>
</MT_Inbound>
I guess the problem is with the namespace and prefix which is coming along with the table metadata(ns0). I tried removing it by XML AnonymizerBean module in my sender JDBC channel but this did not solve the purpose.
Request you all to help in solving this.
Thanks in Advance
Lalitkumar.As you should have already noticed, the structure of sender JDBC adapter does not match the meta data.
The structure of the ED imported is :
TABLE_NAME.resultSet
TABLE_NAME.resultSet
row
A
BV
The structure getting generated after polling the JDBC adapter is as given below(structure from moni inbound payload):
<?xml version="1.0" encoding="utf-8" ?>
- <TABLE_NAME.resultSet>
- <row>
<A>20110206</A>
<BV>06:38:56</BV>
</row>
I am not able to make out the difference here. I am able to also see the namespace when i check the same in the message mapping test tab.
I am also a little lost now as abhishek is on a different track.
Please comment. -
We get "uFF06uFF03x0;" from sender JDBC adapter
Thank you.
This is naoki kurihara.
We have a problem in sender JDBC adapter.
We use java mapping and sender JDBC adapter in PI7.1 on Windows.(DB is sqlserver)
and we test the interface and we found error.
the reason is to get "&#x0;" from JDBC adapter.
and our java mapping can't parse it. and we got error.
the column is not null.
how we can prevent "&#x0;",
(sorry I cant write "&#" 1byte word, so I wrote 2bytes word)
please give me your help!!
ThanksHi,
Replace the & character with & ; in your java mapping. The same goes for these special characters:
< with < ;
> with > ;
" with " ;
' with &apos ;
Please remove the space between the escape character and the ; in your Java mapping. The spaces are typed here because the equivalent characters are not displaying correctly.
It should be able to handle the # though. Hope this helps
Regards,
Mark -
How to use Stored Procedure Call in Sender JDBC adapter
Hi All,
Could someone send me a blog on how to use Stored Procedure call in Sender JDBC adapter?
XierHi Xler
refer these links
/people/yining.mao/blog/2006/09/13/tips-and-tutorial-for-sender-jdbc-adapter
http://help.sap.com/saphelp_nw04/helpdata/en/2e/96fd3f2d14e869e10000000a155106/content.htm
Also, you can check Sriram's blog for executing Stored Procedures,
/people/sriram.vasudevan3/blog/2005/02/14/calling-stored-procs-in-maxdb-using-sap-xi
/people/jegathees.waran/blog/2007/03/02/oracle-table-functions-and-jdbc-sender-adapter
This blog might be helpfull on stored procedures for JDBC
JDBC Stored Procedures
/people/siva.maranani/blog/2005/05/21/jdbc-stored-procedures
Please go through these threads and see if it helps...
Re: How to execute Stored Procedure?
Re: Problem with JDBC stored procedure
Thnaks !! -
Sender JDBC Adapter Supports Stored Procedures????
Dear All,
I was trying to use the Sender JDBC adapter to call the Stored procedure in the Sender JDBC adapter is possible to do this???
I don't think Sender JDBC Adapter is supported to execute the Oracle Started Procedures. With my understanding only the Receiver JDBC Adapter will supported for the Stored Procedures using the message mapping Action = EXECUTE and Table = DBO.EmployeeMasterTable.
Please let me know how to achieve the below scenario.
My Scenario JDBC to RFC
Query SQL Statement:
select * from dbo.emp where flag = 'Insert' or flag = 'Update' or flag = 'Delete'
Update SQL Statement:
UPDATE dbo.emp SET flag = null WHERE flag IN ('Insert', 'Update');
DELETE dbo.emp WHERE flag = 'Delete';
In the my update statement I need to update few data flag with Insert , Update and need to delete the of the old records as mentioned above the query.
In the response mapping I am using the Action = INSERT and Table = emp.
Thanks,
Jane F.Hi Jane,
>>My requirment is to select from the DB and update and delete needs to be done. How I need to call this stored procedure in Sender JDBC adapter.
An example of SP call is mentioned in the previous note Note 941317 - XI / PI JDBC Adapter: Known Problems / Incompatibilities
SP Code
---------- pkg1 ----------
CREATE PACKAGE pkg1 AS
TYPE numset_t IS TABLE OF NUMBER;
FUNCTION f1(x NUMBER) RETURN numset_t PIPELINED;
END pkg1;
CREATE PACKAGE BODY pkg1 AS
-- FUNCTION f1 returns a collection of elements (1,2,3,... x)
FUNCTION f1(x NUMBER) RETURN numset_t PIPELINED IS
BEGIN
FOR i IN 1..x LOOP
PIPE ROW(i);
END LOOP;
RETURN;
END;
END pkg1;
In sender channel mention
>> SELECT * FROM TABLE(pkg1.f1(5));
>>Is this need to be in the one stored procedure right. Can ou let me know how it should be handled in JDBC Adapter.
Yes it shoudl be a single SP. Mention a select statement as given in above example.
What is your Oracle version?
Regards
Suraj -
Sender JDBC adapter : Update SQL Statement : stored procedure
Hi,
Can we use a stored procedure in the sender jdbc adapter in 'Update SQL Statement'.
The problem i am facing is like, we are selecting data from two tables in 'SQL statement for query' and then in 'Update SQL Statement' , we need to delete that data from these two tables.
Please let me know if it is possible.
Thanks,
Rohityou can use a Stored procedure in the
Query SQL Statement
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.
The expression must correspond to the SQL variant supported by the relevant JDBC driver. It can also contain table JOINs.
so have your whole select and update as part of this single Stored procedure
Maybe you are looking for
-
I cannot sync calendar on new ipad mini. My mac desktop and mac book have an old .me icloud account name. Cannot change that so how do I sync?
-
How do I get the password for an old apple ID when I dont have access to the email address and it does not recognize my birthdate?
-
Hi I want to enhance 0STOR_LOC_TEXT datasource with 0COUNTRY and country key. but, can i use them as a navigational attribute in the report, after adding into 0STOR_LOC_TEXT ? Regards Anuja
-
I have a new Mac Book Pro 13" & an iPad for my Amazon and eBay business. I have been a PC user. The problem relates to both. On my eBay Manager Sold page, the display of the page is wider than my screen. I use Safari and all other webpages are fine
-
How to recover lost photos from my mac book pro
I had photos saved on my harddrvie under Pictures folder. I think they were deleted by mistake and i don't know when but sure more than two months if that matters. please help i need them. client's work.