cancel
Showing results for 
Search instead for 
Did you mean: 

Receiver JDBC Error : BaseEJBException: Exception in method process

Former Member
0 Kudos

Dear experts,

I have a scenario where the Receiver system is a SQL Server and I have used the JDBC adapter.

I am getting the below error in the AE:

"Message processing failed. Cause: com.sap.engine.services.ejb.exceptions.BaseEJBException: Exception in method process."

What could be the problem?

I have give the following params in my Rx CC:

JDBC Driver : com.microsoft.sqlserver.jdbc.SQLServerDriver

Connection : jdbc:sqlserver://<hostname>:<port number>;Databasename=<DB name>

Please help!

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi

Check if u have installed rigth JDBC Drivers for SQL Server.

rgds

Srini

Answers (2)

Answers (2)

Former Member
0 Kudos

Hi...

In connection Parameters, you are giving like

jdbc:sqlserver://<hostname>:<port number>;Databasename=<DB name>

In the above parameters, replace Databasename to databaseName

as shown below.

jdbc:sqlserver://<hostname>:<port number>;databaseName=<DB name>

Regards,

Leela

Former Member
0 Kudos

Hi Leela

I tried both... same issue...

Former Member
0 Kudos

Please check your Select query...it is working fine..

Former Member
0 Kudos

I used the same query in my db client to insert data into the tables.

It is actually an insert query and my DT(with values passed during mapping) looks like this...

MTI_..

statement

table

action = "SQL_DML"

table = <dbname.tablename>

access = insert into <table> (field1, field2) values ('field1', 'field2')

key

field1

field2

Is this ok?Is the error related to the DT structure/mapping or with the adapter configurations? Please help....

Former Member
0 Kudos

Hi

Check in SXMB_MONI -- Check if u r --> Request Mapping has happended after mapping.

If u have Doubt --> Take Inbound payload goto -- Message Mapping -- test tab -- execute

If it works

Then narrow down it would be problem with JDBC Adapter -- Check if drivers are compatible.

In Receiver JDBC Adapter -- RWB -- see audit log

rgds

srini

Former Member
0 Kudos

Hi Srini,

Message mapping is fine. In RWB IE message is succesful, but AE message is in System error.

How can I find if the drivers are compatible with the Server? I can ask the Basis but incase they have qns...

I got the above error in the Audit log only.

Former Member
0 Kudos

Hi

S u can ask u r basis ,

Ask u r basis guy to log into XI os level and execute ..--> tnsping <DBname>

it will respond.

Also goto --> Visual Admin --> Services --> JDBC Adapter --> Drivers --> u can see u r driver installed.

rgds

srini

Former Member
0 Kudos

Hi,

The structure you have given is wrong as per the help. "table = <dbname.tablename>" is not required and you have to keep the file names in between the place holder"$". Refer the below help to better understanding.

http://help.sap.com/saphelp_nw04/helpdata/en/64/ce4e886334ec4ea7c2712e11cc567c/frameset.htm

Thanks & Regards,

Purushotham

Former Member
0 Kudos

Actually I had given the query with placeholders(with and without quotes- $field1$, '$field1$'...)

MTI_..
   statement
       table
          action = "SQL_DML"
          table = <dbname.tablename>
          access = insert into <table> (field1, field2) values ($field1$, $field2$)
      key
          field1
          field2

Former Member
0 Kudos

Hi Purushotham,

I also tried removed the table name but I am getting the same error...

Former Member
0 Kudos

Hi Srini, it seems <tnsping dbname> can be used for oracle only. As I mentioned earlier I am trying to connect to a SQL server. Do we have something similar fro SQL server?

Former Member
0 Kudos

Is "table" and "key"are at the same level? These should not be at the same level.

Former Member
0 Kudos

Yes they were in the same level.

But I changed it to the same level as "access", but then I am getting the same error.

Former Member
0 Kudos

Hi Experts,

I still have this issue which is open.

My driver and connection parameters seems to be fine. I am able to connect to the db using SAP's DB connectivity tool. I have used the same params in my CC.Is there something additional I need to change in the "Processing" Tab in my CC? I have removed the check from the "Key Tags Mandatory" as I am not using key tags.

Mine is a simple insert query and my DT has been modified to:


MTI...
     statement
        table
             action = INSERT
             access
                field1
                field2

I also tried including a table field in the table tag where I gave the different values like: actualDBname.usr.Tablename, just the tablename, usr.tablename. Still no luck. Please help. Everything else required for a JDBC connection has been set up and tested.

Former Member
0 Kudos

Hi Experts,

We increased the trace level and this is what we found:

005056955D0F0073000002130000146C000469B0EDA02A56#1242108528695#com.sap.engine.services.ejb#sap.com/com.sap.aii.af.app#com.sap.engine.services.ejb#J2EE_GUEST#0#SAP J2EE Engine JTA Transaction : [20ffffffcdffffff8a002effffffbd]#n/a##5bb8ae933ebb11de96e0005056955d0f#SAPEngine_Application_Thread[impl:3]_31##0#0#Path##Java###Exception {0}#1#: Cannot create an instance of the stateless bean.
java.lang.Exception
	at com.sap.exception.BaseExceptionInfo.traceAutomatically(BaseExceptionInfo.java:1175)
	at com.sap.exception.BaseExceptionInfo.<init>(BaseExceptionInfo.java:263)
	at com.sap.engine.services.ejb.exceptions.BaseRuntimeException.<init>(BaseRuntimeException.java:73)
	at com.sap.engine.services.ejb.session.stateless_sp5.BeanFactory.getActiveBean(BeanFactory.java:192)
	at com.sap.engine.services.ejb.session.stateless_sp5.StatelessContainerFP.getActiveBean(StatelessContainerFP.java:183)
	at com.sap.aii.af.mp.module.ModuleLocalLocalObjectImpl0_1.process(ModuleLocalLocalObjectImpl0_1.java:82)
	at com.sap.aii.af.mp.ejb.ModuleProcessorBean.process(ModuleProcessorBean.java:292)
	at com.sap.aii.af.mp.processor.ModuleProcessorLocalLocalObjectImpl0_0.process(ModuleProcessorLocalLocalObjectImpl0_0.java:103)
	at com.sap.aii.af.listener.AFWListenerBean.onMessage(AFWListenerBean.java:343)
	at com.sap.aii.af.listener.AFWListenerLocalObjectImpl0_0.onMessage(AFWListenerLocalObjectImpl0_0.java:103)
	at com.sap.aii.af.ra.ms.impl.ServicesImpl.deliver(ServicesImpl.java:276)
	at com.sap.aii.adapter.xi.ms.XIEventHandler.onDeliver(XIEventHandler.java:1049)
	at com.sap.aii.af.ra.ms.impl.core.queue.consumer.ReceiveConsumer.processMessage(ReceiveConsumer.java:292)
	at com.sap.aii.af.ra.ms.impl.core.queue.consumer.ReceiveConsumer.onMessage(ReceiveConsumer.java:79)
	at com.sap.aii.af.ra.ms.impl.core.queue.Queue.run(Queue.java:917)
	at com.sap.aii.af.ra.ms.runtime.MSWorkWrapper.run(MSWorkWrapper.java:56)
	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:104)
	at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:176)
Caused by: javax.ejb.CreateException: com.sap.engine.services.jndi.persistent.exceptions.NameNotFoundException: Object not found in lookup of SapXIFileAdapterService.
	at com.sap.aii.af.modules.CallAdapterWithMessageBean.ejbCreate(CallAdapterWithMessageBean.java:103)
	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:324)
	at com.sap.engine.services.ejb.session.stateless_sp5.BeanFactory.createObject(BeanFactory.java:113)
	at com.sap.engine.services.ejb.util.pool.ContainerPoolImpl.doResizeOneStepUp(ContainerPoolImpl.java:374)
	at com.sap.engine.services.ejb.util.pool.ContainerPoolImpl.ensureNotEmpty(ContainerPoolImpl.java:343)
	at com.sap.engine.services.ejb.util.pool.ContainerPoolImpl.pop(ContainerPoolImpl.java:291)
	at com.sap.engine.services.ejb.session.stateless_sp5.BeanFactory.getActiveBean(BeanFactory.java:188)
	at com.sap.engine.services.ejb.session.stateless_sp5.StatelessContainerFP.getActiveBean(StatelessContainerFP.java:183)
	at com.sap.aii.af.mp.module.ModuleLocalLocalObjectImpl0_1.process(ModuleLocalLocalObjectImpl0_1.java:82)
	at com.sap.aii.af.mp.ejb.ModuleProcessorBean.process(ModuleProcessorBean.java:292)
	at com.sap.aii.af.mp.processor.ModuleProcessorLocalLocalObjectImpl0_0.process(ModuleProcessorLocalLocalObjectImpl0_0.java:103)
	at com.sap.aii.af.listener.AFWListenerBean.onMessage(AFWListenerBean.java:343)
	at com.sap.aii.af.listener.AFWListenerLocalObjectImpl0_0.onMessage(AFWListenerLocalObjectImpl0_0.java:103)
	at com.sap.aii.af.ra.ms.impl.ServicesImpl.deliver(ServicesImpl.java:276)
	at com.sap.aii.adapter.xi.ms.XIEventHandler.onDeliver(XIEventHandler.java:1049)
	at com.sap.aii.af.ra.ms.impl.core.queue.consumer.ReceiveConsumer.processMessage(ReceiveConsumer.java:292)
	at com.sap.aii.af.ra.ms.impl.core.queue.consumer.ReceiveConsumer.onMessage(ReceiveConsumer.java:79)
	at com.sap.aii.af.ra.ms.impl.core.queue.Queue.run(Queue.java:917)
	at com.sap.aii.af.ra.ms.runtime.MSWorkWrapper.run(MSWorkWrapper.java:56)
	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:104)
	at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:176)

Does it give any information as to what could be wrong? Please help...

Former Member
0 Kudos

I used the same driver to pick data from the db and I am getting the following errror in AE:

"Error during database connection to the database URL 'jdbc:nwmss:sqlserver://<host>:<port>;databaseName=<dbname>' using the JDBC driver 'com.sap.nwmss.jdbc.sqlserver.SQLServerDriver': 'java.sql.SQLException: NWMssSQLServer JDBC DriverThis driver is locked for use with embedded applications.'"

Please help..

Former Member
0 Kudos

My issue is now resolved. We were using the SAP provided drivers. We went to MS site and downloaded the latest drivers and used the same. Now i is working fine. Thank you for all your help and helpful suggestions/answers.