cancel
Showing results for 
Search instead for 
Did you mean: 

AppLockingTechnicalLockException with Entity beans

Former Member
0 Kudos

I have an EJB project with entity beans. Datasource is Oracle.

Functionality was find earlier, but after a refactoring, I keep receiving error

com.sap.engine.services.applocking.exception.AppLockingTechnicalLockException: Table EMPLOYEEBEAN not found in catalog

at com.sap.engine.services.applocking.TableLockingImpl.getTable(TableLockingImpl.java:628)

My ejb-jar.xml and persistent.xml hasn't changed (except the path to the java classes for the Ejbs in the ejb-jar.xml). The table name for the entity bean is set differently in persistent.xml

<entity-bean>

<ejb-name>EmployeeBean</ejb-name>

<table-name>TMP_EMPLOYEES</table-name>

Why does container try to lock record in EMPLOYEEBEAN table? When I disable automatic locking, the container receives an SQL exception "... table does not exist ..". So somehow, it is using EMPLOYEEBEAN as the table instead of TMP_EMPLOYEE.

Can someone help me with that?

Accepted Solutions (0)

Answers (3)

Answers (3)

Former Member
0 Kudos

I tried all three options for the locking, but nothing helps.

If I choose locking, then the exception tells me that table EMPLOYEEBEAN does not exist in the catalog. If I disable locking, then an SQL exception is thrown saying the table does not exist in the database.

So why does the container use EMPLOYEEBEAN as the table name? Where is it taking that from? Not from ejb-jar.xml, because there, the table name is set = TMP_EMPLOYEE (which I'm trying to access).

Lars

Vlado
Advisor
Advisor
0 Kudos

Please follow the discussion in thread.

former_member189631
Active Contributor
0 Kudos

Hi Lars,

Please have a look into it,

/thread/180795 [original link is broken]

Regards,

Ram.

Former Member
0 Kudos

Hai,

try this , but i am not sure

open the persistent.xml

in general tab select the radio button No Automatic Locking

regards,

naga