on 01-25-2007 9:29 AM
Hi
Can any one please tell me what is the Key Column Name and Key Column Value in JDBC adatper parameters. If i dont mention those parameters i am getting the following error
<b> Value missing for mandatory configuration attribute tableEOColumnNameId</b>
Please help me
Best Regards
Ravi Shankar B
Hi
Thanks for ur help.... I have resolved that error. Now i am getting the following error when i am testing the mapping
<b>Cannot produce target element /ns0:Dest_JDBC_MT/Phone. Check xml instance is valid for source xsd and target-field mapping fulfills requirements of target xsd Cannot produce target element /ns0:Dest_JDBC_MT/Phone. Check xml instance is valid for source xsd and target-field mapping fulfills requirements of target xsd</b>
Can any one tell me why i am getting this error
Please help me
Best Regards
Ravi Shankar B
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi
Can any one tell me is there any wrong with my mapping
Source Data Type ....... UserName ... String.. 1..1 Occurence
Target Data Type ........ Phone............String.. 1..1 Occurence
The following code i have written in user defined function (DBProcessing_SpecialAPI)
//write your code here
String query = " ";
Channel channel = null;
DataBaseAccessor accessor = null;
DataBaseResult resultSet = null;
query = "select Phone from CheckUser where UserName = ' " +UserName[0]+ " ' ";
try {
channel = LookupService.getChannel("ILG_Business_System","CC_JDBC");
accessor = LookupService.getDataBaseAccessor(channel);
resultSet = accessor.execute(query);
for(Iterator rows = resultSet.getRows();rows.hasNext();){
Map rowMap = (Map)rows.next();
result.addValue((String)rowMap.get("Phone"));
}
}
catch(Exception e){
result.addValue(e.getMessage());
}
finally{
try{
if(accessor != null)
accessor.close();
}catch(Exception e){
result.addValue(e.getMessage());
}
}
Now i have mapped source and target like this
<b>UserName -
> DBProcessing_SpecialAPI----
>Phone</b>
Can any one please tell me is there any worng with my mapping...becoz when i am executing this mapping i am getting the following error
<i><b>Compilation of JDBC_Message_Map successful Cannot produce target element /ns0:Dest_JDBC_MT/Phone. Check xml instance is valid for source xsd and target-field mapping fulfills requirements of target xsd Cannot produce target element /ns0:Dest_JDBC_MT/Phone. Check xml instance is valid for source xsd and target-field mapping fulfills requirements of target xsd</b></i>
Best Regards
Ravi Shankar B
<b>Key Column Name and Key Column Value in JDBC adatper parameters</b>
<i>Key Column Name</i> represent the keyfield of a table. Even based on the keyfield value you can perform an action in a table and it is represnted by the <i>Key Column Value</i>
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi
I have one table CheckUser in SQL Server which have two fields one is UserName and one is PhoneNumber.. My Senario is just to get the phone number using user name field.. i dont have any Primary Keys.......
Are Key Column Name and Value Column Name are Mandatory.........
I have given the JDBC Adapter Parameter like this
Persistence : Database
Database Table Name : CheckUser
Key Column Name and Value Colum Name i left blank.....
But in RWB JDBC adapter showing the following error
<i><b>Value missing for mandatory configuration attribute tableEOColumnNameId</b></i>
Best Regards
Ravi Shankar B
Okie, let me put my question in other words
1. What are you trying to do to your database. Are you trying to insert data, update data m, delete data?
2. Can you also post the target datatype you hafve created for the JDBC , the output of your mapping program that goes as the input to your JDBC adapter?
Regards
Bhavesh
Hi
I am doing DataBase Lookup in XI
First i have created a Table in Database( CheckUser) which has two fields UserName and PhoneNumber and then i have created
I have created one Communication Channel For Reciever Adapter .
I have given the parameters like this
JDBC Driver : com.microsoft.jdbc.sqlserver.SQLServerDriver
Connection : jdbc:microsoft:sqlserver://10.7.1.43:1433;DatabaseName=Ravi;
UserName.... sa
password.... sa
persistence : Database
Database Table Name : CheckUser
Key column name and Value column name i left blank and activated
and then
I have created
Data Types : Source ...... UserName
Destination.... PhoneNumber
Message Types
Message Interfaces
In Message Mapping
I have created one User Defined function DBProcessing_SpecialAPI().This method will get the data from the database....
In this function i have written the following code
//write your code here
String query = " ";
Channel channel = null;
DataBaseAccessor accessor = null;
DataBaseResult resultSet = null;
query = "select Password from CheckUser where UserName = ' " +UserName[0]+ " ' ";
try {
channel = LookupService.getChannel("Ravi","CC_JDBC");
accessor = LookupService.getDataBaseAccessor(channel);
resultSet = accessor.execute(query);
for(Iterator rows = resultSet.getRows();rows.hasNext();){
Map rowMap = (Map)rows.next();
result.addValue((String)rowMap.get("Password"));
}
}
catch(Exception e){
result.addValue(e.getMessage());
}
finally{
try{
if(accessor != null)
accessor.close();
}catch(Exception e){
result.addValue(e.getMessage());
}
}
And the i have mapped like this
UserName -
> DBProcessing_SpecialAPI----
>PhoneNumber
when i am testing this mapping i am getting the following error
<?xml version="1.0" encoding="UTF-8"?>
<ns0:Dest_JDBC_MT xmlns:ns0="http://filetofilescenario.com/ilg"><phoneNumber>Plain exception:Problem when calling an adapter by using communication channel CC_JDBC (Party: , Service: Ravi, Object ID: c360bc139a403293afbc49d5c46e4478) Check whether the communication channel exists in the Integration Directory; also check the cache notifications for the instance Integration Server (central Adapter-Engine) Channel object with Id Channel:c360bc139a403293afbc49d5c46e4478 not available in CPA Cache.
com.sap.aii.mapping.lookup.LookupException: Problem when calling an adapter by using communication channel CC_JDBC (Party: , Service: Ravi, Object ID: c360bc139a403293afbc49d5c46e4478) Check whether the communication channel exists in the Integration Directory; also check the cache notifications for the instance Integration Server (central Adapter-Engine) Channel object with Id Channel:c360bc139a403293afbc49d5c46e4478 not available in CPA Cache.
at com.sap.aii.ibrun.server.lookup.AdapterProxyLocal.<init>(AdapterProxyLocal.java:61)
at com.sap.aii.ibrun.server.lookup.SystemAccessorInternal.getProxy(SystemAccessorInternal.java:98)
at com.sap.aii.ibrun.server.lookup.SystemAccessorInternal.<init>(SystemAccessorInternal.java:38)
at com.sap.aii.ibrun.server.lookup.SystemAccessorHmiServer.getConnection(SystemAccessorHmiServer.java:270)
at com.sap.aii.ibrun.server.lookup.SystemAccessorHmiServer.process(SystemAccessorHmiServer.java:70)
at com.sap.aii.utilxi.hmis.server.HmisServiceImpl.invokeMethod(HmisServiceImpl.java:169)
at com.sap.aii.utilxi.hmis.server.HmisServer.process(HmisServer.java:178)
at com.sap.aii.utilxi.hmis.web.HmisServletImpl.processRequestByHmiServer(HmisServletImpl.java:296)
at com.sap.aii.utilxi.hmis.web.HmisServletImpl.processRequestByHmiServer(HmisServletImpl.java:211)
at com.sap.aii.utilxi.hmis.web.workers.HmisInternalClient.doWork(HmisInternalClient.java:70)
at com.sap.aii.utilxi.hmis.web.HmisServletImpl.doWork(HmisServletImpl.java:496)
at com.sap.aii.utilxi.hmis.web.HmisServletImpl.doPost(HmisServletImpl.java:634)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:390)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:264)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:347)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:325)
at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:887)
at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:241)
at com.sap.engine.services.httpserver.server.Client.handle(Client.java:92)
at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:148)
at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
at java.security.AccessController.doPrivileged(Native Method)
at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170)
</phoneNumber></ns0:Dest_JDBC_MT>
In RWB i have checked the status of JDBC driver its showing the following error
<b>Value missing for mandatory configuration attribute tableEOColumnNameId</b>
Best Regards
Ravi Shankar B
Message was edited by:
RaviShankar B
Hi,
if only you had given all this detail earlier.
<i>persistence : Database
Database Table Name : CheckUser
Key column name and Value column name i left blank and activated</i>
<b>Persistence should be --> Local
Conflict resolution should be --> Redor</b>
The moment you make persistence Local, the KeyCoumnName and Calue will not be neded.
Regards
Bhavesh
Hi,
Uncheck the check box of Key Column name and Value Column name in the JDBC receiver adapter configuration.
You can go through this help document to know more about Key values:
<a href="http://help.sap.com/saphelp_nw04/helpdata/en/64/ce4e886334ec4ea7c2712e11cc567c/content.htm">Receiver JDBC adapter</a>
JE
Hi
When i am testing the message mapping still i am getting the following error
<b><?xml version="1.0" encoding="UTF-8"?>
<ns0:Dest_JDBC_MT xmlns:ns0="http://filetofilescenario.com/ilg"><phoneNumber>Plain exception:Problem when calling an adapter by using communication channel CC_JDBC (Party: , Service: Ravi, Object ID: c360bc139a403293afbc49d5c46e4478) Check whether the communication channel exists in the Integration Directory; also check the cache notifications for the instance Integration Server (central Adapter-Engine) Channel object with Id Channel:c360bc139a403293afbc49d5c46e4478 not available in CPA Cache.
com.sap.aii.mapping.lookup.LookupException: Problem when calling an adapter by using communication channel CC_JDBC (Party: , Service: Ravi, Object ID: c360bc139a403293afbc49d5c46e4478) Check whether the communication channel exists in the Integration Directory; also check the cache notifications for the instance Integration Server (central Adapter-Engine) Channel object with Id Channel:c360bc139a403293afbc49d5c46e4478 not available in CPA Cache.
at com.sap.aii.ibrun.server.lookup.AdapterProxyLocal.<init>(AdapterProxyLocal.java:61)
at com.sap.aii.ibrun.server.lookup.SystemAccessorInternal.getProxy(SystemAccessorInternal.java:98)
at com.sap.aii.ibrun.server.lookup.SystemAccessorInternal.<init>(SystemAccessorInternal.java:38)
at com.sap.aii.ibrun.server.lookup.SystemAccessorHmiServer.getConnection(SystemAccessorHmiServer.java:270)
at com.sap.aii.ibrun.server.lookup.SystemAccessorHmiServer.process(SystemAccessorHmiServer.java:70)
at com.sap.aii.utilxi.hmis.server.HmisServiceImpl.invokeMethod(HmisServiceImpl.java:169)
at com.sap.aii.utilxi.hmis.server.HmisServer.process(HmisServer.java:178)
at com.sap.aii.utilxi.hmis.web.HmisServletImpl.processRequestByHmiServer(HmisServletImpl.java:296)
at com.sap.aii.utilxi.hmis.web.HmisServletImpl.processRequestByHmiServer(HmisServletImpl.java:211)
at com.sap.aii.utilxi.hmis.web.workers.HmisInternalClient.doWork(HmisInternalClient.java:70)
at com.sap.aii.utilxi.hmis.web.HmisServletImpl.doWork(HmisServletImpl.java:496)
at com.sap.aii.utilxi.hmis.web.HmisServletImpl.doPost(HmisServletImpl.java:634)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:390)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:264)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:347)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:325)
at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:887)
at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:241)
at com.sap.engine.services.httpserver.server.Client.handle(Client.java:92)
at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:148)
at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
at java.security.AccessController.doPrivileged(Native Method)
at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170)
</phoneNumber></ns0:Dest_JDBC_MT></b>
Well, the error now has changed and if you read through it,
<i>Check whether the communication channel exists in the Integration Directory</i>
Please check if you have given the correct Service name and the Communication channel nane in the JDBC look up code, You should have missed or given some extra space or something of that sort.
Make sure that the JDBC adapter is activated.
Regards
Bhavesh
Hi
Yes i have given
Persistence -
Local
Conflict Resolution -
Redor....
But still i am getting the same error.....
Can any one explain one more thing....
what is the difference between persitence LOCAL and DATABASE
and REDO and ERROR.....
I have gone through sap help but i didnt understand that..... can any one explain it please
Best Regards
Ravi Shankar B
Hi
Yes i have given
Persistence -
Local
Conflict Resolution -
Redor....
But still i am getting the same error.....
Can any one explain one more thing....
what is the difference between persitence LOCAL and DATABASE
and REDO and ERROR.....
I have gone through sap help but i didnt understand that..... can any one explain it please
Best Regards
Ravi Shankar B
Ravishankar,
1. What is the current issue that you are facing? Is database lookuop working fine?
2. If the DB lookup issue is solved, close the thread and open a new thread as that way more people are going to be looking into your problem and can provisde you solutions as to understand your problem in this thread is going to take a lot of time and patience in this thread.
Regards
Bhavesh
Hi ,
Read "Exactly once Handling section" in this link..
http://help.sap.com/saphelp_nw2004s/helpdata/en/64/ce4e886334ec4ea7c2712e11cc567c/content.htm
Sekhar
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
80 | |
9 | |
9 | |
7 | |
7 | |
7 | |
6 | |
5 | |
5 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.