File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes EJB and other Java EE Technologies and the fly likes Database Access Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Java » EJB and other Java EE Technologies
Bookmark "Database Access" Watch "Database Access" New topic

Database Access

David Fahy

Joined: Feb 13, 2004
Posts: 6
Is it possible to make a direct database connection from inside a CM bean? I have a bean that registers customers
and stores their details in a database (Oracle 9i). The bean handles all the database access. I now want to enhance
this bean and encrypt the credit card numbers using 3des and a key stored in the database. Can I open a connection
to the database from inside the bean to access the key which is stored in a different table or is this not possible
because of the container managed persistence? If so does anyone have any suggestions on how I could achieve this,
I'm new to EJBs and have run out of ideas. Any help is greatly appreciated. Thanks.
Sergiu Truta
Ranch Hand

Joined: Dec 16, 2003
Posts: 121
You should not make connections to the database from a CMP. You can make connections from inside a Session Bean for example, by looking up the datasource from the app server and then getting a connection from that datasource.
If you want to change some data from inside a CMP into another table than the one the bean is responsible for, you should have an entity bean for the second table and make this responsible for the changes.
For your example you should have two entity beans: CustomerBean and KeyBean.
When registering the customer using the CustomerBean, when you need to encrypt the credit card numbers you call the KeyBean for finding out the key for 3des. You calculate the encrypted key using KeyBean and then you store it using CustomerBean.
[ February 17, 2004: Message edited by: sergiu truta ] I'm walking the path...
I agree. Here's the link:
subject: Database Access
jQuery in Action, 3rd edition