Can I catch SQLException which raised RemoteException in CMP
I'm following EJB 1.0 specs
Can I catch an SQLException which raised RemoteException? The SQLException was in result of updating a CMP Entity bean. The updation violated a foriegn key constraint.
If I can then how?
Can I throw my own application exception as well in the above mentioned scenario?
If I can then how?
generally speaking, you can just throw one exception a time. you can throw your own application but you can't throw both SQLException and your own.
Similar Messages
-
How to catch SQLException in CMP bean
Hi there,
I am using CMP beans to set columns, one of which has referential integrity.
Because the abstract set() method does not declare to throw SQLException, I
can not catch SQLException in my session bean (which calls local CMP bean
for creating and setting entity beans), the compiler complains "unreachable
block".
I can only try catching RemoteException in my delegate class. I do not like
that, I even tried to catch all exceptions, i.e., catch Exception, in my
session bean, I still did not catch the SQLException.
The update calls are made into DB probably right before the transaction
completes, however, since it is the container generated classes that does DB
calls and throw SQLException, I could not catch it there since I do not have
the source code for generated classes.
Call stack is attached.
Any suggestion is welcome. Basically I would like to catch SQLException in
session bean.
Thanks.
Yan
<Oct 18, 2004 10:09:06 AM EDT> <Error> <EJB> <BEA-010026> <Exception
occurred during commit of transaction Name=[EJB com.med
lus.serviceHub.rx.ejb.pharmacy.PharmacyMgrSession.updatePharmacy(java.util.A
rrayList,long,java.lang.String)],Xid=BEA1-0153A4
2892EE25246C3(29499284),Status=Rolled back.
[Reason=weblogic.utils.NestedRuntimeException: Error writing from
beforeCompleti
n - with nested exception:
[java.sql.SQLException: ORA-02291: integrity constraint
(DX_OWNER.STATEABBR_RXPHARM_FK) violated - parent key not found
]],numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=0,seconds
left=30,XAServerResourceInfo[weblogic.jdbc.wrappe
.JTSXAResourceImpl]=(ServerResourceInfo[weblogic.jdbc.wrapper.JTSXAResourceI
mpl]=(state=rolledback,assigned=myserver),xar=we
logic.jdbc.wrapper.JTSXAResourceImpl@1a7491e,re-Registered =
false),SCInfo[hubservices+myserver]=(state=rolledback),properti
s=({weblogic.transaction.name=[EJB
com.medplus.serviceHub.rx.ejb.pharmacy.PharmacyMgrSession.updatePharmacy(jav
a.util.ArrayL
st,long,java.lang.String)], weblogic.jdbc=t3://172.18.15.54:7001}),local
properties=({modifiedListeners=[weblogic.ejb20.inte
nal.TxManager$TxListener@71de6e]}),OwnerTransactionManager=ServerTM[ServerCo
ordinatorDescriptor=(CoordinatorURL=myserver+172
18.15.54:7001+hubservices+t3+,
XAResources={},NonXAResources={})],CoordinatorURL=myserver+172.18.15.54:7001
hubservicest3+)
java.sql.SQLException: ORA-02291: integrity constraint
(DX_OWNER.STATEABBR_RXPHARM_FK) violated - parent key not found
at
oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:125)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:305)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:272)
at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:623)
at
oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:18
1)
at
oracle.jdbc.driver.T4CPreparedStatement.execute_for_rows(T4CPreparedStatemen
t.java:543)
at
oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java
:1027)
at
oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedSta
tement.java:2885)
at
oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedState
ment.java:2957)
at
weblogic.jdbc.wrapper.PreparedStatement.executeUpdate(PreparedStatement.java
:115)
at
com.medplus.serviceHub.rx.ejb.pharmacy.Pharmacy_i7s2ww__WebLogic_CMP_RDBMS._
WLstore(Pharmacy_i7s2ww__WebLogic_C
P_RDBMS.java:3564)
at
com.medplus.serviceHub.rx.ejb.pharmacy.Pharmacy_i7s2ww__WebLogic_CMP_RDBMS.e
jbStore(Pharmacy_i7s2ww__WebLogic_CMP
RDBMS.java:3390)
at
weblogic.ejb20.manager.DBManager.beforeCompletion(DBManager.java:965)
at
weblogic.ejb20.internal.TxManager$TxListener.beforeCompletion(TxManager.java
:653)
at
weblogic.transaction.internal.ServerSCInfo.callBeforeCompletions(ServerSCInf
o.java:1010)
at
weblogic.transaction.internal.ServerSCInfo.startPrePrepareAndChain(ServerSCI
nfo.java:115)
at
weblogic.transaction.internal.ServerTransactionImpl.localPrePrepareAndChain(
ServerTransactionImpl.java:1184)
at
weblogic.transaction.internal.ServerTransactionImpl.globalPrePrepare(ServerT
ransactionImpl.java:1910)
at
weblogic.transaction.internal.ServerTransactionImpl.internalCommit(ServerTra
nsactionImpl.java:273)
at
weblogic.transaction.internal.ServerTransactionImpl.commit(ServerTransaction
Impl.java:244)
at
weblogic.ejb20.internal.BaseEJBObject.postInvoke(BaseEJBObject.java:299)
at
weblogic.ejb20.internal.StatelessEJBObject.postInvoke(StatelessEJBObject.jav
a:140)
at
com.medplus.serviceHub.rx.ejb.pharmacy.PharmacyMgr_kb6mwa_EOImpl.updatePharm
acy(PharmacyMgr_kb6mwa_EOImpl.java:16
at
com.medplus.serviceHub.rx.ejb.pharmacy.PharmacyMgr_kb6mwa_EOImpl_WLSkel.invo
ke(Unknown Source)
at
weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:477)
at
weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerRef.java
:108)
at
weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:420)
at
weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubjec
t.java:363)
at
weblogic.security.service.SecurityManager.runAs(SecurityManager.java:144)
at
weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:415)
at
weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:3
0)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
--------------- nested within: ------------------Hi there,
I am using CMP beans to set columns, one of which has referential integrity.
Because the abstract set() method does not declare to throw SQLException, I
can not catch SQLException in my session bean (which calls local CMP bean
for creating and setting entity beans), the compiler complains "unreachable
block".
I can only try catching RemoteException in my delegate class. I do not like
that, I even tried to catch all exceptions, i.e., catch Exception, in my
session bean, I still did not catch the SQLException.
The update calls are made into DB probably right before the transaction
completes, however, since it is the container generated classes that does DB
calls and throw SQLException, I could not catch it there since I do not have
the source code for generated classes.
Call stack is attached.
Any suggestion is welcome. Basically I would like to catch SQLException in
session bean.
Thanks.
Yan
<Oct 18, 2004 10:09:06 AM EDT> <Error> <EJB> <BEA-010026> <Exception
occurred during commit of transaction Name=[EJB com.med
lus.serviceHub.rx.ejb.pharmacy.PharmacyMgrSession.updatePharmacy(java.util.A
rrayList,long,java.lang.String)],Xid=BEA1-0153A4
2892EE25246C3(29499284),Status=Rolled back.
[Reason=weblogic.utils.NestedRuntimeException: Error writing from
beforeCompleti
n - with nested exception:
[java.sql.SQLException: ORA-02291: integrity constraint
(DX_OWNER.STATEABBR_RXPHARM_FK) violated - parent key not found
]],numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=0,seconds
left=30,XAServerResourceInfo[weblogic.jdbc.wrappe
.JTSXAResourceImpl]=(ServerResourceInfo[weblogic.jdbc.wrapper.JTSXAResourceI
mpl]=(state=rolledback,assigned=myserver),xar=we
logic.jdbc.wrapper.JTSXAResourceImpl@1a7491e,re-Registered =
false),SCInfo[hubservices+myserver]=(state=rolledback),properti
s=({weblogic.transaction.name=[EJB
com.medplus.serviceHub.rx.ejb.pharmacy.PharmacyMgrSession.updatePharmacy(jav
a.util.ArrayL
st,long,java.lang.String)], weblogic.jdbc=t3://172.18.15.54:7001}),local
properties=({modifiedListeners=[weblogic.ejb20.inte
nal.TxManager$TxListener@71de6e]}),OwnerTransactionManager=ServerTM[ServerCo
ordinatorDescriptor=(CoordinatorURL=myserver+172
18.15.54:7001+hubservices+t3+,
XAResources={},NonXAResources={})],CoordinatorURL=myserver+172.18.15.54:7001
hubservicest3+)
java.sql.SQLException: ORA-02291: integrity constraint
(DX_OWNER.STATEABBR_RXPHARM_FK) violated - parent key not found
at
oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:125)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:305)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:272)
at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:623)
at
oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:18
1)
at
oracle.jdbc.driver.T4CPreparedStatement.execute_for_rows(T4CPreparedStatemen
t.java:543)
at
oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java
:1027)
at
oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedSta
tement.java:2885)
at
oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedState
ment.java:2957)
at
weblogic.jdbc.wrapper.PreparedStatement.executeUpdate(PreparedStatement.java
:115)
at
com.medplus.serviceHub.rx.ejb.pharmacy.Pharmacy_i7s2ww__WebLogic_CMP_RDBMS._
WLstore(Pharmacy_i7s2ww__WebLogic_C
P_RDBMS.java:3564)
at
com.medplus.serviceHub.rx.ejb.pharmacy.Pharmacy_i7s2ww__WebLogic_CMP_RDBMS.e
jbStore(Pharmacy_i7s2ww__WebLogic_CMP
RDBMS.java:3390)
at
weblogic.ejb20.manager.DBManager.beforeCompletion(DBManager.java:965)
at
weblogic.ejb20.internal.TxManager$TxListener.beforeCompletion(TxManager.java
:653)
at
weblogic.transaction.internal.ServerSCInfo.callBeforeCompletions(ServerSCInf
o.java:1010)
at
weblogic.transaction.internal.ServerSCInfo.startPrePrepareAndChain(ServerSCI
nfo.java:115)
at
weblogic.transaction.internal.ServerTransactionImpl.localPrePrepareAndChain(
ServerTransactionImpl.java:1184)
at
weblogic.transaction.internal.ServerTransactionImpl.globalPrePrepare(ServerT
ransactionImpl.java:1910)
at
weblogic.transaction.internal.ServerTransactionImpl.internalCommit(ServerTra
nsactionImpl.java:273)
at
weblogic.transaction.internal.ServerTransactionImpl.commit(ServerTransaction
Impl.java:244)
at
weblogic.ejb20.internal.BaseEJBObject.postInvoke(BaseEJBObject.java:299)
at
weblogic.ejb20.internal.StatelessEJBObject.postInvoke(StatelessEJBObject.jav
a:140)
at
com.medplus.serviceHub.rx.ejb.pharmacy.PharmacyMgr_kb6mwa_EOImpl.updatePharm
acy(PharmacyMgr_kb6mwa_EOImpl.java:16
at
com.medplus.serviceHub.rx.ejb.pharmacy.PharmacyMgr_kb6mwa_EOImpl_WLSkel.invo
ke(Unknown Source)
at
weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:477)
at
weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerRef.java
:108)
at
weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:420)
at
weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubjec
t.java:363)
at
weblogic.security.service.SecurityManager.runAs(SecurityManager.java:144)
at
weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:415)
at
weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:3
0)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
--------------- nested within: ------------------ -
Catching SQLException in CMP Entity Bean
I wana catch an SQLException which is raised while updating a record in DB through a CMP Entity bean method (violating a Foriegn key constraint). It throws to the client a RemoteException which contains a RollbackException which further contains an EJBException and finally it contains the required SQLException. The containment of exceptions is like RemoteException contains RollbackException contains EJBException contains SQLException.
I know I can parse out the SQLException, but what if I wana know that which foriegn key constraint raised this excepton while updation.
I'm naive in EJB's and I hope the forum will not turn down my trivial question.
Regards
RanaFor example I have a table "Emplyee" having a field key "DeptID", "DeptID" is a foriegn key from table Department.
I have a user interface which can update "Employee" table and another user interface for updating "Departments" table. I can try to update employee A's "DeptID" to 3 whereas somebody else has deleted "DeptID" 3 from the "Department" table, this results in a foriegn key constraint violation at DB level. Now I wana catch this exception and report it to the client that the updation was not successful. How I can catch this exception.
The current situation is that the container throws a RemoteException. This RemoteException contains the following nested hierarchy of exceptions
RollbackException>> EJBException>> SQLException.
At client side I'm not sure which exception caused the RemoteException until and unless I can find the Deepest exception (SQLException in this case) in the nested hierarchy.
How I can write the code for handling exception as RemoteException from the container can be in the result of many other Exceptions as well.
Regards
Rana -
How can I catch and display the "cent" symbol (Alt+0162)?
Hi,
I have a jTextArea field in which it supposes to be able to catch a special
character, money cent symbol by Alt+0162 from the keyboard. Does anyone know
how I can catch it and display it in money cent symbol in the jTextArea field?
Thanks for your help.
-JohnThe CATCH-ENDCATCH statement is obsolete as of release was620. You should use TRY. CATCH. ENDCATCH.
The exception that will be raise is CX_SY_CONVERSION_NO_NUMBER, so you have to catch that exception or a super class of this exception class.
REPORT zfsl_sum_functions.
DATA: cin(50),
cout(50),
iin TYPE i,
iout TYPE i,
etext TYPE string.
DATA: rf_cx_error TYPE REF TO CX_SY_CONVERSION_NO_NUMBER,
errortxt TYPE string.
TRY.
cin = '123ABC'. " how can i catch this
iout = cin.
WRITE: iout.
CATCH CX_SY_CONVERSION_NO_NUMBER INTO rf_cx_error.
errortxt = rf_cx_error->get_text( ).
WRITE errortxt.
ENDTRY. -
How can i catch the jsp checking event ?
As we know, there are three parameters which is about checking in the weblogic.xml, pageCheckSeconds,*servlet-reload-check-secs*,*resource-reload-check-secs*, but how can i catch the checking event when the webapp is active.
The fellowing is my simple test, i deployed a webapp on a weblogic server instance, and it was actived. I wrote a simple bash shell to try to catch the event, but fail. i througnt it may be dependent on the webapp's stage mode. but i change the mode, and try again, it was fail too.
[weblogic@tdy218 ~]$ ls
getLastAccessTime.sh webapps
[weblogic@tdy218 ~]$ ./getLastAccessTime.sh ~/webapps/Test/login.jsp
The file's last access time is: 2011-05-22 11:10:21.000000000 +0800
The file's last access time is: 2011-05-22 11:10:21.000000000 +0800
The file's last access time is: 2011-05-22 11:10:21.000000000 +0800
The file's last access time is: 2011-05-22 11:10:21.000000000 +0800
The file's last access time is: 2011-05-22 11:10:21.000000000 +0800
The file's last access time is: 2011-05-22 11:10:21.000000000 +0800
The file's last access time is: 2011-05-22 11:10:21.000000000 +0800
[weblogic@tdy218 ~]$ ./getLastAccessTime.sh
/bea/wls924/user_projects/domains/base_domain/servers/AdminServer/stage/Test/Test/login.jsp
The file's last access time is: 2011-05-22 11:11:37.000000000 +0800
The file's last access time is: 2011-05-22 11:11:37.000000000 +0800
The file's last access time is: 2011-05-22 11:11:37.000000000 +0800
The file's last access time is: 2011-05-22 11:11:37.000000000 +0800
The file's last access time is: 2011-05-22 11:11:37.000000000 +0800
The file's last access time is: 2011-05-22 11:11:37.000000000 +0800
The file's last access time is: 2011-05-22 11:11:37.000000000 +0800
The file's last access time is: 2011-05-22 11:11:37.000000000 +0800
[weblogic@tdy218 ~]$ stat
/bea/wls924/user_projects/domains/base_domain/servers/AdminServer/stage/Test/Test/login.jsp
File: `/bea/wls924/user_projects/domains/base_domain/servers/AdminServer/stage/Test/Test/login.jsp'
Size: 634 Blocks: 8 IO Block: 4096 regular file
Device: 804h/2052d Inode: 583725 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 502/weblogic) Gid: ( 500/ bea)
Access: 2011-05-22 11:11:37.000000000 +0800
Modify: 2010-05-24 14:49:08.000000000 +0800
Change: 2011-05-22 11:10:21.000000000 +0800
The jsp file's last access time didn't changed in the past.
[weblogic@tdy218 ~]$ more getLastAccessTime.sh
#!/bin/bash
declare -i m=1
declare -i n=100
while [ $m -le $n ]; do
echo "The file's last access time is: $(stat -c %x $1)"
m=m+1
sleep 3
done
weblogic.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE weblogic-web-app PUBLIC "-//BEA Systems, Inc.//DTD Web Application 8.1//EN" "http://www.oracle.com/technology/weblogic/servers/wls810/dtd/weblogic810-web-jar.dtd">
<weblogic-web-app>
<jsp-descriptor>
<jsp-param>
<param-name>pageCheckSeconds</param-name>
<param-value>2</param-value>
</jsp-param>
</jsp-descriptor>
<container-descriptor>
<servlet-reload-check-secs>2</servlet-reload-check-secs>
<resource-reload-check-secs>2</resource-reload-check-secs>
</container-descriptor>
<context-root>/jdbc</context-root>
</weblogic-web-app>
env :
WebLogic 9.2 MP4、Redhat Linux AS 4 Update 8 x86.I tested on WLS 11g ps2(10.3.3) which is running in Development Mode also, but it was the same as WLS 9.2 MP4.
During the weblogic server running, it don't check the application resources , but it will check the $Domain_Home/autodeploy directory every three seconds in Development Mode , the following is the result.
[weblogic@tdy218 ~]$ ./getLastAccessTime.sh /bea/wls924/user_projects/domains/base_domain/autodeploy
The file's last access time is: 2011-05-22 12:01:43.000000000 +0800
The file's last access time is: 2011-05-22 12:01:43.000000000 +0800
The file's last access time is: 2011-05-22 12:01:43.000000000 +0800
The file's last access time is: 2011-05-22 12:01:46.000000000 +0800
The file's last access time is: 2011-05-22 12:01:46.000000000 +0800
The file's last access time is: 2011-05-22 12:01:46.000000000 +0800
The file's last access time is: 2011-05-22 12:01:49.000000000 +0800
The file's last access time is: 2011-05-22 12:01:49.000000000 +0800
The file's last access time is: 2011-05-22 12:01:49.000000000 +0800
The file's last access time is: 2011-05-22 12:01:52.000000000 +0800
Ctrl + ^
[weblogic@tdy218 ~]$ ./getLastAccessTime.sh ~/webapps/Test
The file's last access time is: 2011-05-22 17:26:25.000000000 +0800
The file's last access time is: 2011-05-22 17:26:25.000000000 +0800
The file's last access time is: 2011-05-22 17:26:25.000000000 +0800
The file's last access time is: 2011-05-22 17:26:25.000000000 +0800
The file's last access time is: 2011-05-22 17:26:25.000000000 +0800
The file's last access time is: 2011-05-22 17:26:25.000000000 +0800
The file's last access time is: 2011-05-22 17:26:25.000000000 +0800
The file's last access time is: 2011-05-22 17:26:25.000000000 +0800
The file's last access time is: 2011-05-22 17:26:25.000000000 +0800
Ctrl + ^
[weblogic@tdy218 ~]$ ./getLastAccessTime.sh ~/webapps/Test/
insert.jsp login.jsp query.jsp tdy218.sql WEB-INF/
[weblogic@tdy218 ~]$ ./getLastAccessTime.sh ~/webapps/Test/login.jsp
The file's last access time is: 2011-05-22 11:44:31.000000000 +0800
The file's last access time is: 2011-05-22 11:44:31.000000000 +0800
The file's last access time is: 2011-05-22 11:44:31.000000000 +0800
The file's last access time is: 2011-05-22 11:44:31.000000000 +0800
The file's last access time is: 2011-05-22 11:44:31.000000000 +0800
The file's last access time is: 2011-05-22 11:44:31.000000000 +0800
The file's last access time is: 2011-05-22 11:44:31.000000000 +0800
The file's last access time is: 2011-05-22 11:44:31.000000000 +0800
The file's last access time is: 2011-05-22 11:44:31.000000000 +0800
The file's last access time is: 2011-05-22 11:44:31.000000000 +0800
Ctrl + ^
I set the frequency to every one seconds this time by using sleep method in my Bash Shell script.
#!/bin/bash
declare -i m=1
declare -i n=100
while [ $m -le $n ]; do
echo "The file's last access time is: $(stat -c %x $1)"
m=m+1
sleep 1
done -
OC4J 10.1.3: EJB3 - How to catch SQLExceptions in a SessionBean
Hi,
originally I posted this a few minutes ago in the toplink forum, but I'm
unsure if this better suits here. So exceptionally, I post it here as well with a
reference to:
EJB3 - How to catch SQLExceptions from within a stateful session bean
I would like to catch any exception while persisisting the data right in my stateful
session bean and don't have to wait until the client receives an SQLException
wrapped in a bunch of other exceptions.
Here some code fragments to illustrate my problem:
// in Client:
InitialContext ctx = new InitialContext();
statefulWork = (StatefulWork) ctx.lookup("StatefulWork");
try {
statefulWork.doIt();
} catch (Throwable t) {
// don't want to implement db-failover here, even though this works
// in SSB
@Resource
private EntityManager em;
public void doIt() {
try {
// create some entites here, do some loops, long running transaction
em.persist(oneOfMyEntityObjects);
// set some state in the SSB here
} catch (Throwable t) {
// I want to catch all exceptions the persistence provider (toplink) gets
// but I don't get any here :-(
// this should be to implement proper retry after reconnect (RAC with TAF)
}In my testcase I issue a shutdown abort while insert statements are executed.
The client receives an EJBException, but within the SSB nothing...
How to change this behavior?
Here is what one can find in the OC4J log:
[TopLink Warnung]: 2006.03.27 03:25:32.220--UnitOfWork(13386)--Thread(Thread[RMICallHandler-0,5,RequestThreadGroup])--Exception [TOPLINK-4002] (Oracle TopLink - 10g Release 3 (10.1.3.0.0) (Build 060118)): oracle.toplink.exceptions.DatabaseException
Interne Exception: java.sql.SQLException: ORA-25402: transaction must roll back
Fehlercode:25402
Call:INSERT INTO T_RUN_DETAILS (ID, INS_TIME, COUNTER, RUN_ID) VALUES (105781, '2006.03.27 03:23:55', 450, 801)After that the transaction is properly rolled back (automatically) and the client
could implement the failover code, but I could not find a possibility to control this
at server side. Even with BMT I could not manage to catch this exception. I
wouldn't have a problem if I had to call ctx.setRollbackOnly() myself.
Hope someone can help. I'm getting a little desperate here.
Thanks,
EricThanks to the help of James Sutherland I managed to get this working.
I had to add a call to em.flush() and use BMT for the SSB. For details please follow my link to the toplink-forum!
James thinks OC4J can handle automatic transaction retries but wasn't sure about how to configure this in OC4J. Anyone can help?
Regards,
Eric -
Can we catch keyboard event triggered by an inputfiled?
Hi all,
I have a question here:
When we are doing the web dynpro abap development, if I want to catch the keyboard triggered by an
input help and handle it, how can I achieve this?
e.g. I have an inputfield on the UI, if user click "F10" on the keyboard, can I catch this kind of event?
Thanks and Regards,
AaronHi Thomas,
Yes, I'm trying to acomplish an input help for an inputfield.But, the free programmed value or OVS or dictionary search help can fullfill my needs.Here is the situation:
I have a inputfield on the UI, and next to that , I have another textview, which should be changed according inputfield. e.g. the inputfield is a user name, and next to that , is the user id. but we only want the input help for user name. so when user select one row iof the search result table, I want that two fields both filled.
1. the OVS can't meet my need because I can't change the layout of the search result table, I need a table with a tree in it.
2. free programmed value help can only send back the value of the inputfield. although maybe I can get the user_id's context attribute name and by hardcoding and send back also the user id. but I don't like hardcoding.
So, I'm wondering whether I could catch the keyboard event. and handle the F4 help all by myself.
Do you have some suggestion on this?
Thanks and Regards,
Aaron -
How to catch SQLException in the hibernate ?
Hi ~ , I am a newbie to java , recently I do a project that need to use hibernate to do insert data into database(db2) , but my program always encounter a DB deadlock problem , which throw an exception indicated that
"{code}DB2 SQL error: SQLCODE: -911, SQLSTATE: 40001, SQLERRMC: 2{code}"
so, in this case , i want to try catch block handle this exception , and the code is as follows:
public static void main(String[] args){
try {
Configuration cfg =
new Configuration().configure();
SessionFactory sf = cfg.buildSessionFactory();
Session session = sf.openSession();
Transaction tx = session.beginTransaction();
try {
session.save(obj1);
session.save(obj2);
tx.commit();
session.close();
}catch (SQLException se) {
// ***** here it indicate an error that "This exception is never thrown from the try statement body" *****
}catch (HibernateException e) {
e.printStackTrace();
}but in fact , while running the programe , it does throw a SQLException that abend the program , how would I not be able to catch it ? , here I provide the error info :
Hibernate: insert into TBCUSRPQ (CUST_NAME, CUST_SALUT, LAST_UPDT_BY, LANG, VER, FNL_RSK_LVL_CDE, SYS_RSK_LVL_CDE, CUS_RSK_LVL_CDE, NO_OF_ANS, ANS_REF_ID, DTL_INFO, BANK_NO, CTRY_CDE, RPQ_GP, CUST_ID_TYPE, CUST_ID_NO, LAST_UPDT_DT, LAST_UPDT_TM) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
Hibernate: insert into TBCUSANS (ANS_LIST, ANS_REF_ID, QUEST_NUM) values (?, ?, ?)
Nov 5, 2008 12:04:17 PM net.sf.hibernate.util.JDBCExceptionReporter logExceptions
WARNING: SQL Error: -911, SQLState: 40001
Nov 5, 2008 12:04:17 PM net.sf.hibernate.util.JDBCExceptionReporter logExceptions
SEVERE: DB2 SQL error: SQLCODE: -911, SQLSTATE: 40001, SQLERRMC: 2
Nov 5, 2008 12:04:17 PM net.sf.hibernate.impl.SessionImpl execute
SEVERE: Could not synchronize database state with session
net.sf.hibernate.exception.GenericJDBCException: could not insert: [com.hsbc.rpq.importer.vo.ris.CustomerAnswer#com.hsbc.rpq.importer.vo.ris.CustomerAnswer@87235980]
at net.sf.hibernate.exception.SQLStateConverter.handledNonSpecificException(SQLStateConverter.java:80)
at net.sf.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:69)
at net.sf.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:29)
at net.sf.hibernate.persister.AbstractEntityPersister.convert(AbstractEntityPersister.java:1331)
at net.sf.hibernate.persister.EntityPersister.insert(EntityPersister.java:472)
at net.sf.hibernate.persister.EntityPersister.insert(EntityPersister.java:436)
at net.sf.hibernate.impl.ScheduledInsertion.execute(ScheduledInsertion.java:37)
at net.sf.hibernate.impl.SessionImpl.execute(SessionImpl.java:2449)
at net.sf.hibernate.impl.SessionImpl.executeAll(SessionImpl.java:2435)
at net.sf.hibernate.impl.SessionImpl.execute(SessionImpl.java:2392)
at net.sf.hibernate.impl.SessionImpl.flush(SessionImpl.java:2261)
at net.sf.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:61)
at com.hsbc.rpq.importer.TestDB.main(TestDB.java:78)
{color:#ff0000}Caused by: com.ibm.db2.jcc.c.SqlException: DB2 SQL error: SQLCODE: -911, SQLSTATE: 40001, SQLERRMC: 2{color}
at com.ibm.db2.jcc.c.fg.e(fg.java:1596)
at com.ibm.db2.jcc.b.gb.o(gb.java:727)
at com.ibm.db2.jcc.b.gb.g(gb.java:143)
at com.ibm.db2.jcc.b.gb.a(gb.java:39)
at com.ibm.db2.jcc.b.w.a(w.java:34)
at com.ibm.db2.jcc.b.vb.g(vb.java:139)
at com.ibm.db2.jcc.c.fg.n(fg.java:1177)
at com.ibm.db2.jcc.c.gg.eb(gg.java:1862)
at com.ibm.db2.jcc.c.gg.d(gg.java:2295)
at com.ibm.db2.jcc.c.gg.W(gg.java:457)
at com.ibm.db2.jcc.c.gg.executeUpdate(gg.java:440)
at net.sf.hibernate.impl.NonBatchingBatcher.addToBatch(NonBatchingBatcher.java:22)
at net.sf.hibernate.persister.EntityPersister.insert(EntityPersister.java:462)
... 8 moreI tried a lot , but couldn't solve the problem, could anyone help me , how to catch a SQLExcepion in this case , thanks in advance !!Hi,
as corlettk said, you may only catch exceptions that are thrown at you directly (at least for checked exceptions...). If you really want to handle this specific error situation in any reasonable way, there is the possibility to catch what is thrown at you and inspect the cause of the exception provided.
try {
// some hibernate calls
} catch (GenericJdbcException ge) {
if(ge.getCause() != null && ge.getCause() instanceof SQLException) {
SQLException se = (SQLException)ge.getCause();
if(se.getErrorCode() == -911) {
// your error handling for this case
}else{
throw ge; // do not swallow unhandled exceptions
}else{
throw ge // do not swallow unhandled exceptions
}But such things quickly get quite ugly, e.g. if the SQLException is not the direct cause of the GenericJdbcException...so you should be aware what you are doing.
Bye. -
How can I catch the exception type c = type i?
How can I catch the exception and display the error message when I assign the u2018ABC123u2019 value to an int data type.
Code is as follow.
REPORT zfsl_sum_functions.
DATA: cin(50),
cout(50),
iin TYPE i,
iout TYPE i,
etext TYPE string.
cin = '123ABC'. " how can i catch this
iout = cin.
WRITE: iout.The CATCH-ENDCATCH statement is obsolete as of release was620. You should use TRY. CATCH. ENDCATCH.
The exception that will be raise is CX_SY_CONVERSION_NO_NUMBER, so you have to catch that exception or a super class of this exception class.
REPORT zfsl_sum_functions.
DATA: cin(50),
cout(50),
iin TYPE i,
iout TYPE i,
etext TYPE string.
DATA: rf_cx_error TYPE REF TO CX_SY_CONVERSION_NO_NUMBER,
errortxt TYPE string.
TRY.
cin = '123ABC'. " how can i catch this
iout = cin.
WRITE: iout.
CATCH CX_SY_CONVERSION_NO_NUMBER INTO rf_cx_error.
errortxt = rf_cx_error->get_text( ).
WRITE errortxt.
ENDTRY. -
How can I catch Client Application crash?
Hi all.
I'm developing a client application, which makes several long-time operations on its server.
These server-operations are started, monitored and stopped by my cllient, during a "normal" lifecycle.
The problem is: if my client unexpectedly shut down (i.e. system crash or interruption by task manager), how can I catch this event, in order to send the "interrupt" to the server and stop the current thread?
I tried to add a WindowListener on the Main Window of my client app, but it doesn't work... any other idea?
Thanks in advance for any help.But if you "pull the plug" how can the "finalize" method in the client be called?
It's like asking your wife if she is sleeping.
If she answers "yes" she is lying because she must be awaken to answer your question.
The server must manage disconnections (for instance, you can devise a "ping" transaction that all clients must execute periodically.
If the client stops to send the "ping" you can assume that the client was disconnected.) -
How can I catch Application crash ?
Hi all.
I'm developing a client application, which makes several long-time operations on its server.
These server-operations are started, monitored and stopped by my cllient, during a "normal" lifecycle.
The problem is: if my client unexpectedly shut down (i.e. system crash or interruption by task manager), how can I catch this event, in order to send the "interrupt" to the server and stop the current thread?
I tried to add a WindowListener on the Main Window of my client app, but it doesn't work... any other idea?
Thanks in advance for any help.The client is a simple Swing GUI, and I'm using HttpURLConnection to send requests to the Server, which is a web application running on Tomcat.
Thus, the communication works through I/O ObjectStream and that's the reason why I need to have something on the client able to send an interrupt to the server.
Infact, after the server received the request, the long-time thread executes until its end or until the client sends an interrupt... -
Can't catch execeptions under Suse 9.0
Hi Forum,
I compiled a small testprogramm under Suse 9.0
with the GCC 2.9.5.3 Version. The Programm works fine if
nothing goes worong!
If e.g a wrong user name is entered the programm does exit without a detailed exception description. But the code is in an try-catch loop:
try
mpOraConnection =mpOraEnvironment->createEnvironment(iUser,iPasswd,iService);
catch (SQLException &e)
cout << e.what() << endl;
a catch (...) also does not work.
Maybe somebody has some hints.
Greetings
AndreasWhich version of OCCI are you using ? Can you try to link with the static library : libocci9.a ? This problem may be something to do with exceptions across shared libraries.
Thanks. -
Can't catch the exception when transaction rollback ,BPEL/SOA 11G,updated!
Hi Guys ,
I have two insert/update invoke actions through dbadpter in my BPEL process .
When I set the GetActiveUnitOfWork property of those two db adapters to true ,it successfully makes the global transaction work . any of them failed will cause the other rollback.
But the CatchAll brunch can't catch the exception in that case,
I can only see exception message from the system output :
02/11/2009 11:36:46 AM oracle.toplink.transaction.AbstractSynchronizationListener beforeCompletion
WARNING:
Local Exception Stack:
Exception [TOPLINK-4002] (Oracle TopLink - 11g Release 1 (11.1.1.1.0) (Build 090527)): oracle.toplink.exceptions.DatabaseException
Internal Exception: java.sql.SQLIntegrityConstraintViolationException: ORA-00001: unique constraint (Table1_PK) violated
from BPEL console , you can't even see the error , the process finished with no exception.
When I set GetActiveUnitOfWork to false, CatchAll brunch is able to catch the exception , but global rollback is not working .
I try all the other method like set the transaction property of BPEL to required , using checkpoint() in java embedding . it looks like only way is set GetActiveUnitOfWork to true, but can't catch exception.
Here are some updated:
Here is my process
Main Sequence
Invoke (dbadapter update)
Invoke (dbadapter insert)
Global CatchAll
Invoke(jmsAdapter sendjms)
if I disable the CatchAll branch , when insert failed , the insert will rollback as well, even GetActiveUnitOfWork set to false.
enable CatchAll branch , even doing nothing in this branch , the update won't rollback when insert failed. it looks like when catch the exception , bpel seems not rollback , I try to add throw rollback in catchall branch, no any effect.
any clue ?
Kevin
Edited by: kyi on Nov 5, 2009 10:10 AMHi All,
We are also facing a similar kind of issue.
We have a simple BPEL which will makes use of JAva embedding to call an end point to check its availibility.
The Java code for cheking the enpoint connectivity is below
try{
boolean endpointAvailable = false;
long start = System.currentTimeMillis();
int endpointTestURL_port = 8445 ;
int endpointTestURL_timeout = 500;
String endpointTestURL_queryString = "" ;
String endpointTestURL_protocol = (String)getVariableData ("endpointProtocol");
addAuditTrailEntry("endpointTestURL_protocol: " + endpointTestURL_protocol);
String endpointTestURL_host = (String)getVariableData ("endpointHost");
addAuditTrailEntry("endpointTestURL_hostl: " + endpointTestURL_host);
URL endpoint = new URL(endpointTestURL_protocol, endpointTestURL_host, 8445, endpointTestURL_queryString);
addAuditTrailEntry("endpoint object is created" );
String endpointTestURL = endpoint.toExternalForm();
addAuditTrailEntry("Checking availability of endpoint at URL: " + endpointTestURL);
// Configure connection
HttpURLConnection connection = (HttpURLConnection)endpoint.openConnection();
connection.setRequestMethod("GET");
addAuditTrailEntry("The Method is Get");
connection.setConnectTimeout(5000);
addAuditTrailEntry("Timeout is 500 ms");
// Open connection
connection.connect();
addAuditTrailEntry("Open Connection");
String responseMessage = connection.getResponseMessage();
addAuditTrailEntry("Recieved availability response from endpoint as: " + responseMessage);
// Close connection
connection.disconnect();
endpointAvailable = true;
if (endpointAvailable)
setVariableData("crmIsAvailable", "true");
else
setVariableData("crmIsAvailable", "false");
catch(Exception e)
System.out.println ("Error in checking endpoint availability " + e) ;
addAuditTrailEntry("error message is : " +e);
When we run the above as a seperate java program it runs fine i.e goes to the catch block and catches the exception.
But when we run it within the java embedding in BPEL(11G) it gives us the follwoing error.
The reason was The execution of this instance "490001" for process "default/GMDSSalesLeadsBackMediationInterface!1.0*soa_e1a6362f-c148-417c-819c-9327017ebfa4" is supposed to be in an active jta transaction, the current transaction status is "ROLLEDBACK" .
Consult the system administrator regarding this error.
at com.oracle.bpel.client.util.TransactionUtils.throwExceptionIfTxnNotActive(TransactionUtils.java:119)
at com.collaxa.cube.engine.CubeEngine.store(CubeEngine.java:4055)
at com.collaxa.cube.engine.CubeEngine.endRequest(CubeEngine.java:4372)
at com.collaxa.cube.engine.CubeEngine.endRequest(CubeEngine.java:4281)
at com.collaxa.cube.engine.CubeEngine._createAndInvoke(CubeEngine.java:713)
at com.collaxa.cube.engine.CubeEngine.createAndInvoke(CubeEngine.java:545)
at com.collaxa.cube.engine.delivery.DeliveryService.handleInvoke(DeliveryService.java:654)
at com.collaxa.cube.engine.ejb.impl.CubeDeliveryBean.handleInvoke(CubeDeliveryBean.java:355)
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:597)
at com.bea.core.repackaged.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310)
at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
at com.bea.core.repackaged.springframework.jee.intercept.MethodInvocationInvocationContext.proceed(MethodInvocationInvocationContext.java:104)
at oracle.security.jps.ee.ejb.JpsAbsInterceptor$1.run(JpsAbsInterceptor.java:88)
at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313)
at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:414)
at oracle.security.jps.wls.JpsWeblogicEjbInterceptor.runJaasMode(JpsWeblogicEjbInterceptor.java:61)
at oracle.security.jps.ee.ejb.JpsAbsInterceptor.intercept(JpsAbsInterceptor.java:106)
at oracle.security.jps.ee.ejb.JpsInterceptor.intercept(JpsInterceptor.java:106)
at sun.reflect.GeneratedMethodAccessor960.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.bea.core.repackaged.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310)
at com.bea.core.repackaged.springframework.jee.intercept.JeeInterceptorInterceptor.invoke(JeeInterceptorInterceptor.java:69)
at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
at com.bea.core.repackaged.springframework.jee.spi.MethodInvocationVisitorImpl.visit(MethodInvocationVisitorImpl.java:37)
at weblogic.ejb.container.injection.EnvironmentInte
we also get
BEA1-108EA2A88DAF381957FF
weblogic.transaction.internal.TimedOutException: Transaction timed out after 301 seconds
BEA1-108EA2A88DAF381957FF
at weblogic.transaction.internal.ServerTransactionImpl.wakeUp(ServerTransactionImpl.java:1733)
at weblogic.transaction.internal.ServerTransactionManagerImpl.processTimedOutTransactions(ServerTransactionManagerImpl.java:1578)
at weblogic.transaction.internal.TransactionManagerImpl.wakeUp(TransactionManagerImpl.java:1900)
at weblogic.transaction.internal.ServerTransactionManagerImpl.wakeUp(ServerTransactionManagerImpl.java:1488)
at weblogic.transaction.internal.WLSTimer.timerExpired(WLSTimer.java:35)
at weblogic.timers.internal.TimerImpl.run(TimerImpl.java:273)
at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:528)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
javax.ejb.EJBException: Transaction Rolledback.: weblogic.transaction.internal.TimedOutException: Transaction timed out after 301 seconds
BEA1-108EA2A88DAF381957FF
We tried the following
Increase the JTA timeout in the EM console to a larger value like 600 secs.
The BPEL instance is not getting created.
Any help would be appreciated
Thanks
Lalit -
ROCANCEL field in R3 extraction program can't catch the LOEKZ (deletion ind
Why the ROCANCEL field in R3 extraction program can't catch the LOEKZ (deletion indicator) value in EKPO for some item (not all item) deletions in a purchasing doc?
We deleted some purchasing document items on R3, e.g.,
doc 1
item 1 deleted
item 2
item 3
item 4 deleted
item 5
doc 2
item 1 deleted
item 2 deleted
Run RSA3 on the datasource 2LIS_02_ITM, find the extraction program field ROCANCEL(Indicator: Cancel Data Record) for doc1 are all null for each doc1 item that this field ROCANCEL fails to catch EKPO deletion indicator field LOEKZ value for these two deleted item 1 and item 4 showed in table EKPO with value of 'L' for item 1 and item 4.
However this extraction program field ROCANCEL does catches the correct values for doc2 though. Sounds like if all the doc items get deleted then ROCANCEL shows correct value 'R', if only deleting some items of a doc, then ROCANCEL doesn't indicate the deletion!
Any idea? We have searched OSS Notes, but find something which are only for BW other than for R3. The problem starts at R3 extraction program!
Thanks
Message was edited by: Kevin Smithhi AHP,
There is sth wrong with the website that I can't see the Reply button next to your post.
I check the System Status on our R3, it lists quite a few below:
Software Comp. Release Level
SAP_BASIS 620 0051
SAP_ABA 620 0051
SAP_APPL 470 0024
SAP_HR 470 0046
EA-IPPE 110 0019
PI 2003_1_470 0009
PI_BASIS 2003_1_620 0007
EA-APPL 110 0020
BTW, I checked the OSS Note 886716, find the 4th tab called "Correction Instructions" contains the following lines below. Which line should we use in our system?
Correction Instruction Valid from Valid to Installation Soft. Component ID
Ref. Correction Modification Status Last Changed on
0000419802 600 600 0120031469 SAP_APPL 1
P7DK006929 Released 07.10.2005 07:43:39
0000420067 500 500 0120031469 SAP_APPL 1
P6DK060509 Released 09.10.2005 22:50:11
0000420068 470 470 0120031469 SAP_APPL 1
P6BK206659 Released 09.10.2005 23:02:38
0000420253 46C 46C 0120031469 SAP_APPL 1
P9CK458509 Released 10.10.2005 00:33:01
Download
Thanks
Message was edited by: Kevin Smith
hi AHP,
I run se38 to check the form XMCEKPO_ERGAENZEN_LIS_NEW, but find it doesn't exist at all in our R3 system!
Thanks -
i want to update my phone, but i purchased many apps and music on the phone. it won't let me authorize my computer so i cannot update. i don't want to deauthorize all my computers. how can i find out which 5 computers i have authorized? also how can i update the software?
This is a tedious solution, which is stupid! And some users report an inability to reauthorize a computer after an "en masse” deauthorization. I can’t believe Apple doesn’t provide a list or menu to find out which computers you’ve authorized! Obviously, APPLE knows (or else they couldn’t tell us how many computers we have authorized)--so why can’t they give us access to that information about our own computers??!!!
And for an already-authorized computer with a hard drive that’s since been replaced and upgraded from Mavericks to Yosemite, would it be recognized as a “new computer” and require authorization? Would its previous incarnation (i.e., with the old hard drive and OS) be considered a separate computer? Some users report they can’t authorize a computer after an OS upgrade because of that. Can’t believe we have to do such a bass-ackwards kludge!
Maybe you are looking for
-
Can you restore from Time Machine backup to a smaller drive?
My 2008 Air's original hard-drive just died. I have a recent Time Machine backup. Since the laptop isn't under warranty, I am looking at buying a replacement hard-drive on my own (either SSD or 'standard'). My question is, if I was using ~70Gigs (and
-
Custom reports do not run with error message: Routine FDPREP cannot read ..
Hi Can anybody help me with this issue pls? The dev system is cloned from production a few days ago. After running the post clone procedure, the dev is working fine except when we are trying to run custom reports, it errorred out with error message -
-
Implementing real time networking into existing app
Its been some time since I have delved into the depths of networking. Hopefully someone can direct me in the right direction. I have a desktop application with a MySQL backend. The application manages athletes, events, competitions etc for an athleti
-
JPA and database error handling
Can anyone point me towards any information or discussions on methods of handling database initiated exceptions with JPA? Specifically, I'm trying to handle common data exceptions, like primary/foreign key violations etc., so I don't have to duplicat
-
Print form with dynamic dropdown
Dear all, I have a form (xdp) with dynamic dropdown inside. (i.e. The value list is empty in design time) And I have a problem that the print out (via the sendToPrinter service) will have the data value (e.g. EN) instead of the display value (e.g. En