Solved

Clarification with EJB terminology

Posted on 2006-11-07
7
266 Views
Last Modified: 2013-11-24
hi experts

I have some experience with EJB but need clarification with certain terms :

   >>    Ejb components are 1. scalable 2. Portable 3. Transactional  4. Secure   <<

1  what does scalable mean? Is it refering to the load of the applicaiton? how/where in websphere app server will i able to configure this?

2. what does portable mean? Does it mean system independence? Consider a scenario where i am using websphere application server to deploy my ejb's. Can you give an example scenario where my ejbs' are portable ?

3. what does Transactional mean?how/where in websphere app server will i be able to configure this?

4. what does Secure mean? how/where in websphere app server do i configure this?

any help appreciated..

** Please provide real time experiences.

thanks
J



0
Comment
Question by:jaggernat
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
  • 2
  • 2
  • +1
7 Comments
 
LVL 16

Expert Comment

by:suprapto45
ID: 17895637
Hi J,

This is only my opinion and I am not good in WebSphere :).

1. I think scalable here means that it is able to handle the growth of transactions in your application in the right way. For configuring it, you may not need to configure it but for Session Bean, you may be able to configre the size of the pool for Session Bean.

2. I think that portable means that you can use EJB to switch to any other DB easily and you can just simply export the jar file to another app.

3. Transactional means that it supports rollback, commit and etc. For EJB 2, you do not need to configure it in your WebSphere, it is normally be defined in the ejb-jar.xml or using annotation (if you use it).

4. Secure.....mmmm.....do not really know. Is it secure in the way it manages the data in transactional behavior?

Hope that helps.
David
0
 
LVL 10

Expert Comment

by:mbvvsatish
ID: 17896016
1. For example, if an application was developed to handle 100 concurrent users with a performance of x. After sometime, the number of users/customers get doubled. In this case, we have to increase the current processing capability of the application with no degradation of the performance. We increase the number of application server instances and cluster them or increasing the size of the pool (as suprapto45 said) that would best fit the number of users.

2.The objective of portability in EJB is to allow an Enterprise Bean to be used across EJB servers. Enterprise JavaBeans applications will follow the "write-once, run anywhere" philosophy of the Java programming language. An Enterprise Bean can be developed once, and then deployed on multiple platforms without recompilation or source code modification.

3. Transactional means the declarative transaction management that it supports and the support to  rollback, commit and etc (as suprapto45 said)
http://www.unix.org.ua/orelly/java-ent/ebeans/ch08_02.htm

4. Security settings indicating which users and roles should be able to access secure EJBs or secure EJB methods.
method level security has been provided in ejb.

All the above doesnt depend on application servers, so its absolutely not related to your websphere.
you can set all these in the deployment descriptors of the ejb.
0
 
LVL 8

Expert Comment

by:colr__
ID: 17896741
Just adding to mbvvsatish's comments on question 4 - an example if enhanced security within the java platform (as opposed to EJBs specifically) is the use of PreparedStatement which pretty much eliminates the possibility of SQL injection attacks (if used properly).

It is also not possible to create buffer overflow attacks on java bytecode either, since it is a strong type-safe language that simply wont let you try and stuff 64 bits into a 32 bit integer value (C/C++ would let you do this unless the coder specifically prevents it, which is buffer overflows exist). The only posiboility of buffer overflows is in the JVM itself, hich so far has proven very hard.

As mbvvsatish states, there is additional security aspects delivered by the EJB container, which are avaiable via your application server control panel or the J2EE API's.
0
What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

 
LVL 10

Author Comment

by:jaggernat
ID: 17900383
thanks for the nice explanation guys

1. >>>increasing the size of the pool
Can we programmatically do this or do we have to set this in the application server.


2.>>>, and then deployed on multiple platforms
So that means if I develop my ejb s in WSAD and export the ejb-jar files(or the corresponding ear file). Can I import that ejb-jar file(or the corresponding ear file) in Jbuilder ( a different platform) and run those ejbs.
0
 
LVL 16

Assisted Solution

by:suprapto45
suprapto45 earned 120 total points
ID: 17903137
>>"Can we programmatically do this or do we have to set this in the application server."
As far as I know, this must be in the application server. I think that this is actually configuring one of the xml file.

>>"So that means if I develop my ejb s in WSAD and export the ejb-jar files(or the corresponding ear file). Can I import that ejb-jar file(or the corresponding ear file) in Jbuilder ( a different platform) and run those ejbs."
Yes, you should be able to do that.
0
 
LVL 10

Accepted Solution

by:
mbvvsatish earned 380 total points
ID: 17904224
>>"So that means if I develop my ejb s in WSAD and export the ejb-jar files(or the corresponding ear file). Can I import that ejb-jar file(or the corresponding ear file) in Jbuilder ( a different platform) and run those ejbs."
Yes, you should be able to do that.
but if you want to deploy the same ejbs in a different application server you may may need to change the server specific deployment descriptors (i.e. xml files).
0
 
LVL 10

Author Comment

by:jaggernat
ID: 18000741
>>> change the server specific deployment descriptors (i.e. xml files).

good point.
0

Featured Post

Give Your Engineering Team a Productivity Boost

Learn why container technology is so powerful and how it can provide your team with productivity gains and other benefits.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

For beginner Java programmers or at least those new to the Eclipse IDE, the following tutorial will show some (four) ways in which you can import your Java projects to your Eclipse workbench. Introduction While learning Java can be done with…
Java functions are among the best things for programmers to work with as Java sites can be very easy to read and prepare. Java especially simplifies many processes in the coding industry as it helps integrate many forms of technology and different d…
Viewers will learn about basic arrays, how to declare them, and how to use them. Introduction and definition: Declare an array and cover the syntax of declaring them: Initialize every index in the created array: Example/Features of a basic arr…
Viewers will learn how to properly install Eclipse with the necessary JDK, and will take a look at an introductory Java program. Download Eclipse installation zip file: Extract files from zip file: Download and install JDK 8: Open Eclipse and …

636 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question