Display SQL generated by Entity CMP Bean - WebLogic 9
All:
How can I display the actual SQL which CMP Entity beans are generating and running against the database?
I am running WebLogic Server 9.2
If you pre-compile the EJB using weblogic.ejbc or weblogic.appc, you can use
the '-keepgenerated' option which will keep the source files of the
generated RDBMS .java file of the entity bean. You can find the SQLs in this
source file.
At run time, if you want to see the SQL that are being fired, you can add
the following option in the java command line:
-Dweblogic.ejb20.cmp.rdbms.verbose=true
--Sathish
<Rama V> wrote in message news:[email protected]..
Hi,
I am using WLS 8.1 SP4, how can I view the SQL that is generated by the
EJB CMP container for my Entity beans. Is there any setting that I need to
enable?
Thanks
Rama
Similar Messages
-
CMP Bean - weblogic.transaction.internal.TimedOutException
Hi,
I have two CMP beans. Bean1 is stateless bean and Bean2 is stateful. I am
using a method of Bean2 from Bean1 and later on call Bean1.remove(). Now, I
am getting the following error in my application. I would appreciate any
help.
Thanks,
SamK
weblogic.transaction.internal.TimedOutException: Transaction timed out
after 62 seconds
2240:505a02f68bbeb855
java.rmi.RemoteException: Transaction Rolledback.; nested exception is:
weblogic.transaction.internal.TimedOutException: Transaction timed out
after 62 seconds
2240:505a02f68bbeb855
weblogic.transaction.internal.TimedOutException: Transaction timed out after
62 seconds
2240:505a02f68bbeb855
at
weblogic.transaction.internal.ServerTransactionImpl.wakeUp(ServerTransaction
Impl.java:1214)
at
weblogic.transaction.internal.ServerTransactionManagerImpl.processTimedOutTr
ansactions(ServerTransactionManagerImpl.java:888)
at
weblogic.transaction.internal.TransactionManagerImpl.wakeUp(TransactionManag
erImpl.java:1695)
at
weblogic.transaction.internal.ServerTransactionManagerImpl.wakeUp(ServerTran
sactionManagerImpl.java:813)
at
weblogic.transaction.internal.TransactionManagerImpl$1.run(TransactionManage
rImpl.java:1661)
at java.lang.Thread.run(Thread.java:479)Do you really mean to say 'CMP beans'? Usually the terms stateless and
stateful are applied to
session beans.
Seth
"Sameer Karmarkar" <[email protected]> wrote in message
news:[email protected]..
Hi,
I have two CMP beans. Bean1 is stateless bean and Bean2 is stateful. I am
using a method of Bean2 from Bean1 and later on call Bean1.remove(). Now,I
am getting the following error in my application. I would appreciate any
help.
Thanks,
SamK
weblogic.transaction.internal.TimedOutException: Transaction timed out
after 62 seconds
2240:505a02f68bbeb855
java.rmi.RemoteException: Transaction Rolledback.; nested exception is:
weblogic.transaction.internal.TimedOutException: Transaction timed out
after 62 seconds
2240:505a02f68bbeb855
weblogic.transaction.internal.TimedOutException: Transaction timed outafter
>
62 seconds
2240:505a02f68bbeb855
at
weblogic.transaction.internal.ServerTransactionImpl.wakeUp(ServerTransaction
>
Impl.java:1214)
at
weblogic.transaction.internal.ServerTransactionManagerImpl.processTimedOutTr
>
ansactions(ServerTransactionManagerImpl.java:888)
at
weblogic.transaction.internal.TransactionManagerImpl.wakeUp(TransactionManag
>
erImpl.java:1695)
at
weblogic.transaction.internal.ServerTransactionManagerImpl.wakeUp(ServerTran
>
sactionManagerImpl.java:813)
at
weblogic.transaction.internal.TransactionManagerImpl$1.run(TransactionManage
>
rImpl.java:1661)
at java.lang.Thread.run(Thread.java:479) -
How to View sql generated by WLS CMP?
Hi,
I am using WLS 8.1 SP4, how can I view the SQL that is generated by the EJB CMP container for my Entity beans. Is there any setting that I need to enable?
Thanks
RamaIf you pre-compile the EJB using weblogic.ejbc or weblogic.appc, you can use
the '-keepgenerated' option which will keep the source files of the
generated RDBMS .java file of the entity bean. You can find the SQLs in this
source file.
At run time, if you want to see the SQL that are being fired, you can add
the following option in the java command line:
-Dweblogic.ejb20.cmp.rdbms.verbose=true
--Sathish
<Rama V> wrote in message news:[email protected]..
Hi,
I am using WLS 8.1 SP4, how can I view the SQL that is generated by the
EJB CMP container for my Entity beans. Is there any setting that I need to
enable?
Thanks
Rama -
O/R tool generates invalid ejb-jar.xml for 1-n cmp bean-to-bean relations
TopLink generates:
<ejb-relation>
<ejb-relation-name>Parent-Child</ejb-relation-name>
<ejb-relationship-role>
<ejb-relationship-role-name>Parent-has-childs</ejb-relationship-role-name>
<multiplicity>One</multiplicity>
<relationship-role-source>
<ejb-name>Parent</ejb-name>
</relationship-role-source>
<cmr-field>
<cmr-field-name>childs</cmr-field-name>
</cmr-field>
</ejb-relationship-role>
<ejb-relationship-role>
<ejb-relationship-role-name>child-owned-by-Parent</ejb-relationship-role-name>
<multiplicity>Many</multiplicity>
<cascade-delete></cascade-delete>
<relationship-role-source>
<ejb-name>Child</ejb-name>
</relationship-role-source>
</ejb-relationship-role>
</ejb-relation>
what's wrong?
it's missing the following tag:
'<cmr-field-type>java.util.Collection</cmr-field-type>'
which should be in the <cmr-field> element after the <cmr-field-name>.
I cannot get the UI tool to add this tag, whenever I manually add it to the ejb-jar.xml it gets removed the next time I generate the ejb-jar.xml. Additionally, if I try to update the project from the ejb-jar.xml, the O/R tool loses ALL my mappings for entity beans.
Expected questions:
TopLink 9.0.3
WebLogic 7.0.1
CMP 2.0
JDK 1.3.1_03
Yes the getter/setter are defined (on the local interface and bean)
FYI,
AndrewThis should take care of it
<ejb-jar>
<enterprise-beans>
<entity>
<ejb-name>IDMaster</ejb-name>
<home>maxateev.mondial.brg.idmaster.IDMasterHome</home>
<remote>maxateev.mondial.brg.idmaster.IDMaster</remote>
<local-home>maxateev.mondial.brg.idmaster.IDMasterLocalHome</local-home>
<local>maxateev.mondial.brg.idmaster.IDMasterLocal</local>
<ejb-class>maxateev.mondial.brg.idmaster.IDMasterEJB</ejb-class>
<persistence-type>Container</persistence-type>
<ejb-local-ref>
<ejb-ref-name>ejb/IDMasterLocalHome</ejb-ref-name>
<ejb-ref-type>Entity</ejb-ref-type>
<local-home>maxateev.mondial.brg.idmaster.IDMasterLocalHome</local-home>
<local>maxateev.mondial.brg.idmaster.IDMasterLocal</local>
</ejb-local-ref>
<prim-key-class>java.lang.String</prim-key-class>
<reentrant>False</reentrant>
<cmp-version>2.x</cmp-version>
<abstract-schema-name>IDMaster</abstract-schema-name>
<cmp-field>
<field-name>idPrefix</field-name>
</cmp-field>
<cmp-field>
<field-name>idValue</field-name>
</cmp-field>
<primkey-field>idPrefix</primkey-field>
<ejb-local-ref>
<ejb-ref-name>ejb/IDMasterLocalHome</ejb-ref-name>
<ejb-ref-type>Entity</ejb-ref-type>
<local-home>maxateev.mondial.brg.idmaster.IDMasterLocalHome</local-home>
<local>maxateev.mondial.brg.idmaster.IDMasterLocal</local>
</ejb-local-ref>
<query>
<query-method>
<method-name>findAllIDMasters</method-name>
<method-params/>
</query-method>
<ejb-ql><![CDATA[SELECT OBJECT (f) FROM IDMaster as f]]></ejb-ql>
</query>
</entity>
</enterprise-beans>
<assembly-descriptor>
<container-transaction>
<method>
<ejb-name>IDMaster</ejb-name>
<method-name>*</method-name>
</method>
<trans-attribute>Required</trans-attribute>
</container-transaction>
</assembly-descriptor>
</ejb-jar> -
Can I use oracle blob by CMP bean in weblogic 6?
I use weblogic 6.1(sp3) and Jbuilder 7.when I try to use oracle blob by CMP bean,the
errors are:
javax.ejb.FinderException: Exception raised in findByPrimaryKey
java.io.StreamCorruptedException: InputStream does not contain a serialized object
What should I do?Is there examples about using oracle blob?
thanks a lot!Great! So what was the problem?
Regards,
Slava Imeshev
"Roger Lee" <[email protected]> wrote in message
news:[email protected]...
>
Finally got it working with CMP, which is my preferred choice (over BMP).
I read the Excel Spreadsheet into a "byte []" array, and the Entity Beanmapped
"byte []" to the Blob column in the Oracle table.
"Slava Imeshev" <[email protected]> wrote:
Roger,
I'm not quite sure I undestand the problem. Could you:
1. Post deployment descriptors in part related to this
CMP bean?
2. Post the piece of code that is failing?
Please post the information above and we will help
you to hunt the problem down.
No, I don't have any problems accessing blobs
from CMP.
Regards,
Slava Imeshev
"Roger Lee" <[email protected]> wrote in message
news:[email protected]...
Yes. I have added;
<dbms_column-type>OracleBlob</dbms-column-type>
It fails because the locater to the blob, obtained by findBYPrimaryKeyis
null.
i.e. an empty_blob() is not created.
Have you got CMP to access Blobs in WLS 6.1?
"Slava Imeshev" <[email protected]> wrote:
Hi Roger,
Have you tried using OracleBlob as dbms-column-type?
Also, could you post that part of your code that is failing?
Regards,
Slava Imeshev
"Roger Lee" <[email protected]> wrote in message
news:[email protected]...
I can access Clobs using CMP. If you are using the Oracle OCI Driveryou
do not
need to add this line.
However if you are using the Oracle Type 4 Thin drivers you need
to
add;
<dbms_column-type>OracleClob</dbms-column-type>
to the file;
weblogic-cmp-rdbms-jar-xml
This DOES NOT work with Blobs.
I am unable to get WebLogic 6.1 sp4 persist a Blob to an Oracle
8.1.x
table and
retrieve it using either CMP or BMP.
Unless any one show me a complete working CMP and BMP example?
Roger Lee
Deepak Vohra <[email protected]> wrote:
BLOB and CLOB DBMS Column Support for the Oracle DBMS
http://edocs.bea.com/wls/docs61/ejb/cmp.html#1061636
shybird wrote:
I use weblogic 6.1(sp3) and Jbuilder 7.when I try to use oracle
blob
by CMP bean,the
errors are:
javax.ejb.FinderException: Exception raised in findByPrimaryKey
java.io.StreamCorruptedException: InputStream does not contain
a
serialized
object
What should I do?Is there examples about using oracle blob?
thanks a lot! -
Generating an Entity Bean from a Database Table
I am following the tutorial "How Do I: Generate an Entity Bean from a Database
Table?" and in that process doing the "Configuring a Data Source". This is the
message I get when I configure a data source per the tutorial and click OK. This
data source exists and the information is correct that I have supplied.
Do I need to put the MS jars somewhere to enable this?
See attached fileI've just figured it out. An input source also takes a Reader in its constructor. I was thinking that it only took an InputStream, and as the Serializer requires you to set a Writer on it, I was finding it impossible to convert between bytes and chars. Now, I have simply set a blank CharArrayWriter on the Serializer, got a char[] from it once the Serializer has written the Document to the stream, and then constructed a CharArrayReader with this char[]. It works fine now. Not that anyone read the problem anyway cos I solved it a few minutes after I posted it. Considering it first cropped up about 4 months ago and it has been niggling ever since, I am pleased!
-
hi all;
i have a uml diagram with two classes (matser-detail). i generated the corresponding tables into oracle 9i database from rational rose.
using jdeveloper. when create cmp beans from this two tables, i deploy it works fine
but when i add my finder method (findByID) in ejbql i wrote:
select object(e) from employees e where e.employee_id=?1
i try to deploy again and i have the following error:
javax.ejb.EJBException: nested exception is: java.lang.StringIndexOutOfBoundsException: String index out of range: -1
java.lang.StringIndexOutOfBoundsException: String index out of range: -1
at java.lang.String.substring(String.java:1525)
at com.sun.ejb.sqlgen.SQLGenerator.generateCreateTableQuery(SQLGenerator.java:530)
at com.sun.ejb.sqlgen.SQLGenerator.<init>(SQLGenerator.java:240)
at com.sun.ejb.sqlgen.SQLGenerator.generateSQL(SQLGenerator.java:360)
at com.sun.ejb.sqlgen.SQLGenerator.generateSQL(SQLGenerator.java:309)
at com.evermind.server.ejb.deployment.EJBPackage.translateEjbqlQeries(EJBPackage.java:2100)
at com.evermind.server.ejb.compilation.Compilation.translateEjbqlQeries(Compilation.java:140)
at com.evermind.server.ejb.compilation.Compilation.compile(Compilation.java:178)
at com.evermind.server.administration.ServerApplicationInstallation.finish(ServerApplicationInstallation.java:526)
at java.lang.reflect.Method.invoke(Native Method)
at com.evermind.server.rmi.RMICallHandler.run(RMICallHandler.java:119)
at com.evermind.server.rmi.RMICallHandler.run(RMICallHandler.java:48)
at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:803)
at java.lang.Thread.run(Thread.java:484)
javax.ejb.EJBException: nested exception is: java.lang.StringIndexOutOfBoundsException: String index out of range: -1
at com.sun.ejb.sqlgen.SQLGenerator.<init>(SQLGenerator.java:255)
at com.sun.ejb.sqlgen.SQLGenerator.generateSQL(SQLGenerator.java:360)
at com.sun.ejb.sqlgen.SQLGenerator.generateSQL(SQLGenerator.java:309)
at com.evermind.server.ejb.deployment.EJBPackage.translateEjbqlQeries(EJBPackage.java:2100)
at com.evermind.server.ejb.compilation.Compilation.translateEjbqlQeries(Compilation.java:140)
at com.evermind.server.ejb.compilation.Compilation.compile(Compilation.java:178)
at com.evermind.server.administration.ServerApplicationInstallation.finish(ServerApplicationInstallation.java:526)
at java.lang.reflect.Method.invoke(Native Method)
at com.evermind.server.rmi.RMICallHandler.run(RMICallHandler.java:119)
at com.evermind.server.rmi.RMICallHandler.run(RMICallHandler.java:48)
at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:803)
at java.lang.Thread.run(Thread.java:484)
com.evermind.compiler.CompilationException: Error translating EJBQL: javax.ejb.EJBException: nested exception is: java.lang.StringIndexOutOfBoundsException: String index out of range: -1
at com.evermind.server.ejb.compilation.Compilation.translateEjbqlQeries(Compilation.java:143)
at com.evermind.server.ejb.compilation.Compilation.compile(Compilation.java:178)
at com.evermind.server.administration.ServerApplicationInstallation.finish(ServerApplicationInstallation.java:526)
at java.lang.reflect.Method.invoke(Native Method)
at com.evermind.server.rmi.RMICallHandler.run(RMICallHandler.java:119)
at com.evermind.server.rmi.RMICallHandler.run(RMICallHandler.java:48)
at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:803)
at java.lang.Thread.run(Thread.java:484)
nb: when i use the HR schema coming with 9i it works fine.
need helpI presume you are getting the problem on application
deploy? This happens when upon initialization of the application using the built-in OC4J container/app server that is part of JDeveloper. Here is the full messaging:
[Starting OC4J using the following ports: HTTP=8989, RMI=23892, JMS=9228.]
C:\OraHome1\jdk\bin\javaw.exe -ojvm -classpath C:\OraHome1\j2ee\home\oc4j.jar com.evermind.server.OC4JServer -config C:\OraHome1\jdev\system\oc4j-config\server.xml
[waiting for the server to complete its initialization...]
Copying default deployment descriptor from archive at Q:\CBTCOF\COF_APPLICATION\COF_Project\classes/META-INF/orion-ejb-jar.xml to deployment directory C:\OraHome1\jdev\system\oc4j-config\application-deployments\current-workspace-app\classes...
Auto-deploying file:/Q:/CBTCOF/COF_APPLICATION/COF_Project/classes/ (No previous deployment found)...
Auto-creating table: create table STREET_TYPE (PK_STYP_ID NUMBER(8), STREET_TYPE VARCHAR2(20), primary key (PK_STYP_ID, STREET_TYPE))
Warning: Error creating table: ORA-00955: name is already used by an existing object
[...OTHER SIMILAR ERROR MESSAGES]
done.
Oracle9iAS (9.0.2.0.0) Containers for J2EE initialized
If so, in the application.xml file of you
OC4J instance the is a setting autocreate-tables,
which by default is true!
Set it to false as below and that should clear up
your problem.
<orion-application autocreate-tables="false"
default-data-Hmm. I found at least a dozen or so files with that name and set everyone that had this attriute to "false", restarted the OC4J server and still got these errors. -
How to implement sql query in cmp bean?
let's say that i want to join two tables and use grouping, counting and sorting expresion. it is no problem with sql query but what about cmp bean?
of course i can make one bmp bean or session bean and run directly sql expresion, but then what is the point of using cmp beans?
thanks
winnickiIf yout need post-query for filling descriptive colums (eg. department name in emploees) you should build a view object which includes the descriptive colums by joining the relevent tables
-
How obtain the serial generated by a Entity CMP+Informix+Sun Appserver 8.2
I am using a data base of informix, my doubt is as I can obtain the serial generated by a Entity CMP deployed in Sun Appserver 8.2 , after of insert to informix data base ? .
thanks for your help.Help me!!!
Thanks.
Smile -
SQL error during CMP bean deployment
Hi,
the following exception occures when I deploy a CMP bean to a remote OC4J server (it works fine when I use the internal OC4J process of JDeveloper using the same JDBC connection):
Auto-unpacking E:\Apps\OC4J\j2ee\home\applications\statful.ear... done.
Auto-deploying statful (Assembly had been updated)...
SQL error: E/A-Exception: The Network Adapter could not establish the connection
Warning: Error creating table: E/A-Exception: The Network Adapter could not esta
blish the connection
Auto-deploying statful.jar (ejb-jar.xml had been touched since the previous depl
oyment)... SQL error: E/A-Exception: The Network Adapter could not establish the
connection
Warning: Error creating table: E/A-Exception: The Network Adapter could not esta
blish the connection
done.
The JDBC connection string is "jdbc:oracle:thin:@guopingc:1521:localdb", and it works well if I use it in another java client, like DBVisualizer.
Thanks!
CU, ChrisChris,
Thanks for that quick little tip! I've been having the same error and just spent close to two hours looking through newsgroups et al. for help. Naturally, they all suggest that the database isn't started or the connection data is incorrect. I did what you suggested and now I'm back in business!
If any Oracle or Atlassian oc4j folks are reading - I was receiving a "Network adaptor could not establish a connection" message when deploying to oc4j from jdeveloper. (To Oracle 8.1.7 w/ jdeveloper 9.0.2.8.2 and ocj4 that came with that.) HOWEVER #1, "test"ing both my app server connnection and database connection worked perfectly from within jdeveloper. I could even open the DB connection and view the db contents. HOWEVER #2, my deployment worked for a while before I started seeing this error. That is, I first created 4 EJBs and deployedc to the container completely successfully. I made some changes and re-deployed successfully. Then I added 3 more beans and started getting the error! This should be fixed..... -
Hi guys
We are having a problem with the migration to WLCS 3.2 SP2 / WLS 5.1 SP10.
We are moving from WLCS 3.2 and WLS SP6. Our CMP beans generate errors when
the container tries to update them. They deploy without error though.
See below for the stack trace
We use the recommended weblogic driver for our Oracle 8.1.7.0 database. WL
runs on w2k, and Oracle on Solaris 7.
Extract from set-environment:
SET DB_CLASSPATH=
SET PATH=%PATH%;%WEBLOGIC_HOME%\bin\oci815_8;%WLCS_ORACLE_HOME%\bin
SET
SQLPATH=C:\WebLogicCommerceServer3.2\db\oracle816;C:\WebLogicCommerceServer3
.2\db\oracle816\event;
Extract from weblogic.properties:
weblogic.jdbc.connectionPool.commercePool=\
url=jdbc:weblogic:oracle,\
driver=weblogic.jdbc.oci.Driver,\
I made a few experiments, and I noticed that generating the CMP classes
(with EJBC) with the old WebLogic_RDBMS.jar (from WLS SP6) is working fine.
Here is what I mean : ejbc uses the library
c:\weblogic\lib\persistence\WebLogic_RDBMS.jar And this library has changed
with SP10. However since that change and after rebuilding our jars, all CMP
entity beans fail to update.
If I just replace that WebLogic_RDBMS.jar with the previous one (from SP6),
and without changing anything else, our CMP beans work fine. I did not
change any driver or xml deployment descriptor.
One of the generated files in the jar (for our bean
VisibilityPSWebLogic_CMP_RDBMS.class) differs, and that seems to be the
cause of the problem.
I jadded that class and here is a difference I notice:
OLD, ejbc ran with SP6 WebLogic_RDBMS.jar : visibilitybean.targetCompanyId =
(BigDecimal)resultset.getObject(5);
NEW, ejbc ran with SP10 WebLogic_RDBMS.jar : visibilitybean.targetCompanyId
= resultset.getBigDecimal(5, 35);
Similar differences for the SETbigdecimal.
Dunno if that will help, but I'm attaching the 2 jar files with explicit
names.
Damn that was long, I hope someone will read it... Thanks for any help on
this, see stack trace attached below
Nicolas Lejeune
Stack trace:
mer. oct. 03 12:16:22 CEST 2001:<I> <EJB JAR deployment
C:/WebLogicCommerceServer3.2/lib/foundation.jar> Exception in
non-transactional EJB invoke:
java.rmi.UnexpectedException: Unexpected exception in
com.b2boost.visibility.VisibilityBean.getVisibilityId():
java.sql.SQLException: ORA-01722: invalid number
at weblogic.db.oci.OciCursor.getCDAException(OciCursor.java:230)
at weblogic.jdbcbase.oci.Statement.executeUpdate(Statement.java:980)
at
weblogic.jdbc20.pool.PreparedStatement.executeUpdate(PreparedStatement.java:
47)
at
com.b2boost.visibility.VisibilityPSWebLogic_CMP_RDBMS.update(VisibilityPSWeb
Logic_CMP_RDBMS.java:446)
at
com.b2boost.visibility.VisibilityPSWebLogic_CMP_RDBMS.store(VisibilityPSWebL
ogic_CMP_RDBMS.java:376)
at
weblogic.ejb.internal.EntityEJBContext.store(EntityEJBContext.java:192)
at
weblogic.ejb.internal.EntityEJBContext.beforeCompletion(EntityEJBContext.jav
a:227)
at
weblogic.ejb.internal.StatefulEJBObject.postInvokeNoTx(StatefulEJBObject.jav
a:355)
at
weblogic.ejb.internal.BaseEJBObject.postInvoke(BaseEJBObject.java:865)
at
com.b2boost.visibility.VisibilityBeanEOImpl.getVisibilityId(VisibilityBeanEO
Impl.java:198)
at
com.b2boost.visibility.pipeline.LoadFirstVisibilityRequestPC.process(LoadFir
stVisibilityRequestPC.java:83)
at
com.beasys.commerce.foundation.pipeline.PipelineExecutorImpl.process(Pipelin
eExecutorImpl.java:193)
at
com.beasys.commerce.foundation.pipeline.PipelineExecutorImplEOImpl.process(P
ipelineExecutorImplEOImpl.java:56)
at
com.beasys.commerce.foundation.pipeline.PipelineExecutorImplEOImpl_ServiceSt
ub.process(PipelineExecutorImplEOImpl_ServiceStub.java:154)
at
com.beasys.commerce.webflow.PipelineProcessor.callPipeline(PipelineProcessor
.java:170)
at
com.beasys.commerce.webflow.PipelineProcessor.process(PipelineProcessor.java
:102)
at
com.beasys.commerce.webflow.WebflowAdvisor.handleTarget(WebflowAdvisor.java:
409)
at
com.beasys.commerce.webflow.WebflowAdvisor.processTarget(WebflowAdvisor.java
:156)
at
com.b2boost.framework.B2boostPortalDestinationDeterminer.determineDestinatio
n(B2boostPortalDestinationDeterminer.java:208)
at
com.beasys.commerce.foundation.flow.FlowManager.service(FlowManager.java:438
at javax.servlet.http.HttpServlet.service(HttpServlet.java:865)
at
weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java
:120)
at
weblogic.servlet.internal.ServletContextImpl.invokeServlet(ServletContextImp
l.java:922)
at
weblogic.servlet.internal.ServletContextImpl.invokeServlet(ServletContextImp
l.java:886)
at
weblogic.servlet.internal.ServletContextManager.invokeServlet(ServletContext
Manager.java:269)
at
weblogic.socket.MuxableSocketHTTP.invokeServlet(MuxableSocketHTTP.java:392)
at
weblogic.socket.MuxableSocketHTTP.execute(MuxableSocketHTTP.java:274)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:129)
[Visibility_generated_with_SP6_weblogic_rdbms_jar.jar]
[Visibility_generated_with_SP10_weblogic_rdbms_jar.jar]You are using WebLogic jDriver for Oracle which needs exact version of OCI API, that comes with the Oracle client installation. Ensure that you have installed the right Oracle client version. And updated the PATH properly.
I notice that you have
bin/oci815_8
oracle816
Thsi looks liek the inconsistency in your environment.
What you need to do is
1. find oci817_8 and place that in the PATH.
2. install oracle 817 and use that client and set the ORACLE_HOME environment variable and the PATH properly.
Try this and see if it helps.
BTW - WLS 5.1 is EOL -
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: ------------------ -
Physical table name - abstract table name mapping in CMP Bean
Hello,
I am using a EJB 2.x bean deployed on a SJSAS 9 server. EJB has problem associating the EJB to the actual table
Details are as follows:
EJB name: AccountCMP
Actual tablename : account
Error
ejb store called
IM: postInvokeentity3.AccountBean145996470_ConcreteImpl@d6be89
EJB5071: Some remote or transactional roll back exception occurred
com.sun.jdo.api.persistence.support.JDODataStoreException: JDO76400: Got a JDBC SQLException while executing the SQL statement:
insert into "ACCOUNTCMP"("DESCRIPTION", "ACCOUNTNAME", "BALANCE", "ACCID") values ( ?, ?, ?, ?).
Please examine the SQLException for more information.
NestedException: java.sql.SQLException: ORA-00942: table or view does not exist
FailedObjectArray: [entity3.AccountBean145996470_JDOState@5332ca]
Please note that the insert statement has the ejb-name (I think so, as my CMP EJB is called ACCOUNTCMP) instead of the actual tablename (account).
I do have the account.dbschema file and sun-cmp-mappings.xml in the NB 5.5 project, but the mappings.xml file is not included in the jar by NB. Is that expected, or an problem.
sun-cmp-mappings.xml
<sun-cmp-mappings>
<sun-cmp-mapping>
<schema>account</schema>
<entity-mapping>
<ejb-name>AccountCMP</ejb-name>
<table-name>account</table-name>
<cmp-field-mapping>
ejb-jar.xml
<enterprise-beans>
<entity>
<ejb-name>AccountCMP</ejb-name>
<local-home>entity3.AccountLocalHome</local-home>
<local>entity3.AccountLocal</local>
<ejb-class>entity3.AccountBean</ejb-class>
<persistence-type>Container</persistence-type>
<prim-key-class>entity3.AccountPK</prim-key-class>
<reentrant>false</reentrant>
<cmp-version>2.x</cmp-version>
<abstract-schema-name>account</abstract-schema-name> Thank you for your help.Hello,
I found out the issue. sun-cmp-mappings.xml file is mandatory, and dont know why, netbeans excludes this file from the jar. I had to edit project.properties file to negate this exclusion.
Another problem was that my table did not have a primary key (and hence by schema file did not have it also). CMP bean code generator did not like this.
Once I fixed these two problems, my CMP started working fine.
Thank you all -
JDEV 10.1.3 EJB 3.0 Is it a way in JDev to monitor the sql generated
Is it a easy way to monitor/log the sql generated by top link (ejb 3.0 with top link as cmp) directly in JDeveloper (embededd oc4j)
Deleting the bean class sources from JDev don't delete the compiled class and the wizard will add a sequential number to the entity bean name and source file. This is not very convenient. As workaround you will have to delete the class file.
-
Can't invalidate the CMP bean's cache. Please help
Dear all,
The ClassCastException raised while calling:
(weblogic.ejb.CachingLocalHome)home).invalidate (Arrays.asList(primaryKeys));
The CMP bean uses optimistic concurrency and caching between transactions.
<b> Please advice what weblogic-ejb-jar.xml attributes may be set to cause Weblogic generate proper Home stub that may be cast to CachingLocalHome?</b>
P.S. weblogic-ejb-jar.xml :
<weblogic-enterprise-bean>
<ejb-name>MyEntity</ejb-name>
<entity-descriptor>
<entity-cache>
<concurrency-strategy>Optimistic</concurrency-strategy>
<cache-between-transactions>True</cache-between-transactions>
</entity-cache>
</entity-descriptor>
</weblogic-enterprise-bean>check the documentation for invalidation of RO entity beans there is example code to invalidate on OCE.
http://e-docs.bea.com/wls/docs81/ejb/entity.html#ChoosingaConcurrencyStrategy
Maybe you are looking for
-
Moved itunes folder to external drive and now lost playlists
To free space on my hard drive, I moved the folder to my external drive. Now, I successfully can access my music library, but my playlists aren't listed and I can't figure out how to get them/point to them. Any ideas? Thanks! Compaq Windows XP
-
Trying to update my ipod software so I can use my Bose Sounddock remote
Hi, I have a 30 GB 5th Gen ipod that is running Version 1.2, apparently I need version 2.2 to use my Bose Sounddock remote. After searching the Apple website to find a way to download version 2.2, Apple kept bringing me back to the latest itunes 7 do
-
I'm having this problem where some of the pages on the site I'm building cut off prematurely. When I look at the pages in iWeb I can see the problem: The main text box isn't big enough to accomodate the type on the page. The problem is, I can't get t
-
Missing Folder in "PeopleTools Portal Structure & Content"
Greeting, Previously i have imported a project(created by other developers) and build it, it will automatically exist in fronted. But this time i have no luck, i do the same step in another enviroment and it's not exist in frontend, i try to goto "Pe
-
How do I import a legally purchased copy controlled cd into itunes?
I have Coldplay's X&Y, and I can't import it into my iTunes library. I have searched and it seems people like me (with a PC) have had success by holding the shift key. What are you supposed to do after holding the shift key? Any other techniques to g