One very basic doubt regarding J2EE

Hi Java Gurus
I want to clarify one very basic point regarding J2EE. As per to my understanding a J2EE is a 3 tier system, proposed by Sun for dvelopment and deployment of component based distributed applications. A J2EE based system requires application server as a middle tier, where business logic runs. So far so good.
Suppose i have a system which uses only JSPs and/or Servlets (No more EJBs and Application server). This system is also 3 tier system,(Client tier, Web-Server Tier and DB tier). In this case there is Web Server and no Application Server. So my doubt here is===== Can I call this as a J2EE based solution. (Assuming both the systems are performing the same task).??
Plz help.
Thanx
Jam

A bit of elaboration and clarification. (AKA, the long answer)
The "3-tier" phrase should avoid any technological implication, thus be defined as Presentation Tier, Business Tier, Data Tier. It's meant to convey the clear separation of responsibility. A JSP/Servlet/DAO system, could constitute a 3-tier system, if applied correctly.
The J2EE platform encompases a number of technologies, JSP, Servlet, EJB, etc.
A J2EE compliant application server (i.e. JBoss) supports all the features of J2EE
A Servlet engine (i.e. Tomcat) only supports a sub-set of those technologies, thus it would not correctly be called a J2EE app server.
Calling something a "J2EE Application" really doesn't mean much, since many projects don't use every piece of J2EE technology available. Though I will agree that use of EJB is a key indicator. If it makes some manager feel better to call a JSP/Servlet app a "J2EE Application", fine.
Calling yourself (not you, just the general "you") a J2EE developer, should mean you have experience with developing the breadth of J2EE, so having hacked out some JSPs doesn't count :)

Similar Messages

  • Very basic doubt regarding transporting abap developments

    Hi All,
    It may be very basic doubt, But I need an answer.
    If we develop some objects in the development and transported them to quality and for some reason some errors occured and the for correction of the errors we created some more requests and ported them to Quality.
    the number of requests are say more than 15. and if we lost track of sequece of the requests to be ported to production.
    How can we overcome this problem?
    Can we create a new transport request by right clicking the package (of course all the objects are in only one package) , this will solve the purpose. I mean to say if we transport this single request to quality then to production, all the things will get transported?
    Please give your valuable inputs..
    Thanks and Regards
    KK

    Hi All,
    I really appreciate all your quick replys.
    My question is if we create a new request from the package in SE80, can we leave the old requests,
    That is if I transport a request say req 2 of domain for solving the dependency error of the previous request say req1 ( of data element ). and again transport req 1 after transporting req 2, this will solve the dependency problem. Like this if some dependency related issues are there and we lose track of sequence of request which needs to be transported, what could be the ideal solution?
    So I mean to ask that if I create a new request for the package in SE80, will all the developments will be included in the request or do we need to follow the sequence only?
    Thanks and regards
    KK

  • One very basic question about inheritance

    One very basic question about inheritance.
    Why we need inheritance?
    the benefit of inheritance also achieve by creating instance of base class using it in other class instead of extending the base class.
    Can any one please explain why we are using inheritance instead of creating object of base class????

    SumitThokal wrote:
    One very basic question about inheritance.
    Why we need inheritance?
    the benefit of inheritance also achieve by creating instance of base class using it in other class instead of extending the base class.
    Can any one please explain why we are using inheritance instead of creating object of base class????What did you find out when you looked on Google?
    One example of inheritance comes in the form of a vehicle. Each vehicle has similarities however they differ in their own retrospect. A car is not a bus, a bus is not a truck, and a truck is not a motorbike. If you can define the similarities between these vehicles then you have a class in which you can extend into either of the previous mentioned vehicles. Resulting in a reusable class, dramatically reduces the size of code, creates a single point of definition, increases maintainability, you name it.
    In short there are thousands of benefits from using inheritance, listing the benefits could take a while. A quick Google search should give you a few hundred k if not million links to read.
    Mel

  • A very basic question regarding data block

    Hi All,
    I've a very basic question concerning data blocks in oracle forms 10g.
    I want to make a view only screen (only query allowed, no update, insert or delete).
    I'll have 6-7 fields on the screen but all the fields are not from a single table.
    For e.g, let say we've field names to display on the screen are f1, f2, f3, f4..
    Out of this f1 and f2 will come from table A and f3, f4 will come from table B.
    Now, my question : Is it possible to create a data block using the data block wizard for such situation if we select create data block from table options?
    If no, can you please tell me an approach to do this.
    Regards,
    Navnit

    Hello ,
    First write your query & select datablock property.
    just change the below properties
    Query Data Source Type=From Clause Query
    Query Data Source Name = (Paste query here)
    now you should add the block ITEMs and give their names according to query columns names. shows the column on canvas and run..
    Best Regard
    skyniazi
    Edited by: SKYNIAZI on Mar 29, 2009 1:32 PM

  • Very urgent: Doubts regarding CRM WORKFLOW OF BUSINESS PARTNER CREATION

    HI ,
    I HAVE DOUBTS REGARDING CRM WORKFLOW OF BUSINESS PARTNER CREATION, WHILE I AM CREATING BUSINESS PARTNER THROUGH R/3 , IT REFLECT IT INTO MYSAP CRM ALSO, AT THAT TIME IT SENDING THE MAIL TWICE TO THE RECEIPIENT. IS THERE ANY WAY THROUGH  WHICH I CAN RESTRICT IT TO SEND THE MAIL ONLY ONCE,
    PLZ SEND ME THE REPLY AS SOON AS POSSIBLE,
    THANKS  ADVANCED,

    HI
    WORKFLOW SEETING. SAP MAIL
    MULTIPLE MAILS AND
    ONLY ONCE CHOOSE
    ONLY ONCE OPTION ON WHICH VERSION U R WORKING?
    REWARD IF HELPFUL
    VENKAT

  • Basic doubt regarding Java

    Hi Friends,
    I started to learn Using Java in Oracle.
    My Oracle Version is 9i and i have installed java packages to my database server.
    Now i want to steady about writing Java code for Select,Insert,Delete and Update Statements to my database tables.
    I also want to know about creating stored procedures,stored functions,writing java source code for the required things.
    I have seen one Java Class file in the web and i have a doubt in that..
    Here is the code.
    Test JDBC Connection, JDBC Driver Name and Version
    import java.sql.Connection;
    import java.sql.DatabaseMetaData;
    import java.sql.DriverManager;
    import java.sql.SQLException;
    public class JDBCDriverInformation {
         static String userid="scott", password = "tiger";
         static String url = "jdbc:odbc:bob";     
         static Connection con = null;
         public static void main(String[] args) throws Exception {
         Connection con = getOracleJDBCConnection();
         if(con!= null){
              System.out.println("Got Connection.");
              DatabaseMetaData meta = con.getMetaData();
              System.out.println("Driver Name : "+meta.getDriverName());
              System.out.println("Driver Version : "+meta.getDriverVersion());
         }else{
              System.out.println("Could not Get Connection");
         public static Connection getOracleJDBCConnection(){
              try {
                   Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");     
              } catch(java.lang.ClassNotFoundException e) {
                   System.err.print("ClassNotFoundException: ");
                   System.err.println(e.getMessage());
              try {
                   con = DriverManager.getConnection(url,     userid, password);
              } catch(SQLException ex) {
                   System.err.println("SQLException: " + ex.getMessage());
              return con;
    But i couldnot understand the code, it simply compiles without errors when i execute that to my database.
    But the code was not seen in the Java source and i didn't get any results from that.
    As iam just now starting to learn about Java in oracle, someone help me please.
    Thanks,
    Symon

    Hi,
    I suggest to:
    1/ read the free chapter of my book @http://books.elsevier.com/bookscat/samples/1555583296/Sample_Chapters/02~chapter_one.pdf
    2/ play with OTN codes sample @ http://www.oracle.com/technology/sample_code/tech/java/jsp/oracle9ijsp.html
    3/ play with my book's code samples @
    http://books.elsevier.com/companions/1555583296?country=United+States
    Kuassi http://db360.blogspot.com

  • Basic doubts regarding ssl with tomcat 5.5  and netbeans 5.5 for WSDL?

    I've just started my preparation of web services. I'm using JAX-WS to create my web services and client. I'm using Tomcat 5.5(not apache axis) to deploy my web services over https and i'm able to do that. I've configured my keystore and keystorepassword in tomcat's server.xml. After i've configured my web.xml to choose security type(choosen CLIENT-CERT). I'm able to run my web services over https. I'm using IDE as netbeans 5.5.
    But to access this web service from core java client, i'm unable to do it. I've configure my jvmargs in the project-properties-run tab of netbeans and have given keystore,keystorepassword,keytrust,keytrustpassword. After all this i've also export it to the trustcacerts of tomcat. I want to run this using jax-ws. I've searched for many tutorials of this jax-ws , but all were in vain. Eventhough i've checked in java.dev.net site for tutorial but didn't find for my need. Everywhere they metioned on glassfish,wsit or some other technologies.
    Right now i'm totally confused. I've read some little bit things of all these things and finally land it in the middle of the sea. Could anyone provide me the basic concepts or any url for this.
    After all this i'm getting exception as : https hostname should be <localhost>. I'm totally confused what to do.
    One more thing i just wanted to know that i'm diving into the jax-ws technology, is that right to buil an application on this or should i use JAX-RPC. Which one is better for accessing the url and should be secured from security propects. Also tell me is that possible to build web services on https with using tomcat5.5,jax-ws and netbeans 5.5 or should i need some technology for start up.

    Any kind of help are welcome.

  • Basic doubts Regarding the RFC to File scenario.

    Hi All,
    I'm doing a RFC to File scenario, so before starting the development i went through many blogs and sites to know more the about scenario. I'm confused in the step where we have to create a RFC (type TCP/IP) in sm59.
    I have the following doubts :
    1)whether  to create the RFC in sender (which will be ECC system) or XI.
    i.e., RFC in sender (ECC) pointing to xi system in sm59 of Sender(ECC)
    or
    in XI pointing to sender (ECC) system.
    2) the program id maintained in RFC.
    the program id is any name or the FM which is being imported in XI system.
    Thanks in Advance,
    Kind Regards,
    Lalitkumar.

    Hi Lalitkumar,
    1)whether to create the RFC in sender (which will be ECC system) or XI.
    i.e., RFC in sender (ECC) pointing to xi system in sm59 of Sender(ECC)
    or
    in XI pointing to sender (ECC) system.
      It should be in sender ECC.
    2) the program id maintained in RFC.
    the program id is any name or the FM which is being imported in XI system.
    It can be any name but should be same in RFC destination and RFC adapter.
      As stefen mentioned use ABAP proxy inspite of RFC as its better performance wise.
    Regds,
    Pinangshuk.

  • He I have a very basic question regarding reporting of invoice lines and related receiver lines

    The documentation shows that receiver transaction id and receiver shipment header and line id should be joined to the same columns  in AP invoice lines but these columns are not populated. What is the join for Payables and Purchasing 12.0 and beyond. We are on 12.2.4.
    Please advise.

    Yes, he does not want redirects because it is POF. Also, redirects don't stay in address bar (at the one I created) - once the screen loads you see the same long URL in address bar. He says I should be able to create another public name for the website (made of forms and reports). Maybe I should go with MOD_REWRITE module? I am reading about it now and they say it's more like renaming then redirecting and I think that's more like what my boss is looking for. Key question: if I use MOD_REWRITE to redirect, would the original (long) URL string be displayed once the first screen loads? I am trying to avoid that. I need users to type http://virtualserver/welcome and to STAY that way in address bar.
    Thanks.

  • Very basic question regarding drag/drop files in 10.6.5

    Just (finally) updated to Snow Leopard and the simple way of dragging a file to the bar (just above the list of items in the folder) so as to move it to that folder no longer works.
    I prefer not to drag it to above other files in the folder and hoping that the file won't end up in a folder (which has now happened several times).
    There must be a simple-no-brainer way of doing this as there was before in 10.5 and as far back as I can remember (been using Macs since the mid-90's).
    Why did Apple decide to change this? Did they find a simpler way that I haven't figured out?
    Thanks for any advice.
    RonL

    MacRumors forum answered my question almost immediately... and yes they acknowledged that Apple had changed this in Snow Leopard for no good reason.
    On both my Leopard and Snow Leopard systems, you cannot drag a file to the title bar (not the "name bar"). On both systems, you can drag a file to the empty space in a window. I just tested to make sure. So, either your description of the problem is completely and utterly inadequate, you are misunderstanding what was said on MacRumors, or someone on MacRumors doesn't know what they're talking about.
    How long have you guys been using Macs?
    26 years, like baltwo. As a Mac support professional, programmer, web designer and more. I've forgotten more about Macs than you have ever known, I'm sure. Nobody here is impressed that you have used Macs for a little more than half that time, and your rudeness is most definitely not appreciated.
    It's one thing to not give me an answer... no problem, fine, but it is an entirely different thing to say that what I have done for years, and that has worked easily for me, has never worked.
    You claim that it changed with Snow Leopard. Clearly, it did not. As I've said, I have both Leopard and Snow Leopard systems and have verified that as fact. Once upon a time you could drag to the title bar, but I honestly don't have any idea when that behavior changed. I'd guess in 10.0, but have no way to verify that at this point.

  • One very basic question on Shared Storage

    For setting up 11GR2 in Sun 5.10 SPARC, our sys admins have allocated block devices in shared storage and they sent us a mail mentioning the disks. This is what their mail looks like
    Storage attached to Node1
    /dev/rdsk/c4ikdzs3
    /dev/rdsk/c4ikdzs4
    .Storage attached to Node2
    /dev/rdsk/c5ikdzj2
    /dev/rdsk/c5ikdzj5
    .When i logged in to Node1:/dev/rdsk , i can only see
    /dev/rdsk/c4ikdzs3
    /dev/rdsk/c4ikdzs4
    .as they have mentioned. Same for Node2
    But, all the raw devices mentioned above should be visible from either node's /dev/rdsk. Right? Isn't that whole point of RAC; Shared storage ?

    resistanceIsFruitful wrote:
    But, all the raw devices mentioned above should be visible from either node's /dev/rdsk. Right? Isn't that whole point of RAC; Shared storage ?Not exactly if you are referring to device names..
    Each kernel will do a h/w discovery when booting. When dealing with LUNs via a HBA (or similar), there's absolutely no guarantee that the kernels will detect the LUNs in the same sequence and assign the same scsi device names to these. A LUN can be called device-foo-1 on one server and device-foo-21 on another.
    Also, many HBAs will be dual port and running dual fibre channels. So not only is the same LUN seen as a different scsi device by each kernel, but it is seen more than once. So device-foo-1 and device-foo-33 can be the same physical LUN on server 1.
    To deal with this a logical device name is needed. This will be the same device name on all servers - and it will in turn transparently support the multiple I/O paths to the LUN. This is done by "special driver" software looking at the scsi disk's unique signature - called a WWID or World Wide Name. With that unique signature, the s/w can uniquely recognise a specific LUN, irrespective of which server the s/w runs on.
    This s/w is called Multipath on Linux, Powerpath by EMC and so on. I would expect that you will have something similar on your servers.
    The actual scsi device mapped by the kernel to the LUN is not used. In the case of multipath for example, one will use the relevant +/dev/mpath/mpath<n>+ devices. In the case of Powerpath, these will be +/dev/emcpower<driveletter>+ devices.
    These are the device names that you will use for 11g Grid Infrastructure and Oracle ASM and RAC setup and configuration as shared storage.

  • Basic Doubt regarding string comparision

    I have the following code:
    RegisterForm rf = (RegisterForm)form;
    String user = rf.getUsername();
    DTO ourdto = DBconnection.getDTO();               
    String pass = ourdto.getPword();When I print user,*pass* both the strings print "*pojo*"
    Now the condition I have to satisfy is
    pseudo code ---- if(*user* isequal to pass) { proceed forward }.
    I have used .equals but it is returning false,used equalsIgnoreCase and isContentEquals both are returning false.
    Could someone tell me if there is any method that can compare "pojo" to "pojo" and return a true.
    .

    sidster wrote:
    I have used .equals but it is returning false,used equalsIgnoreCase and isContentEquals both are returning false.Then they're not equal.
    Could someone tell me if there is any method that can compare "pojo" to "pojo" and return a true.
    String str = getUserInputOrWhatever();
    if ("pojo".equals(str)) {
      // the string was "pojo"
    }

  • Oracle Apps - 9iAS : Basic doubts

    Hello,
    I am new to Oracle Apps and 9iAS
    I have few basic doubts regarding the integration of these
    Can anybody please clarify...
    The middle tier of Orcale Apps is the 9iAS Application Server.
    Read that Oracle9i AS Components are :
    - J2EE and Internet Applications (sub-components are Oracle HTTP Server, OC4J, Web services etc)
    - Portals
    - Wireless
    - Web cache
    - Business Intelligence
    - E-Business Integration
    Read that middle tier of Oracle Apps has following servers
    - Web server
    - Forms server
    - Concurrent Processing server
    - Reports server
    - Discoverer server (optional)
    - Admin server
    So, all the components of 9iAS are installed with Oracle Apps ?
    If only some, then which are those ?
    Where do Concurrent Processing server, Reports server etc come from as these are not the components of 9iAS ?
    Are these very specific to Oracle Apps only ?
    As the core database administration knowledge is required for Apps administration (for managing database tier), isn't the 9iAS knowledge required (for managing the middle tier) ?
    If yes, then upto what level ?
    Knowing about Oracle HTTP Server, Apache server, Web cache, OC4J etc etc is required ?
    Please suggest some links / documents related to all these ?
    I found a couple of them on metalink & OTN, but not very useful !
    Thanks

    9iAS consist of Apache and an Oracle database on the middle tier.
    The other components come from the developer suite.
    http://otn.oracle.com/software/products/forms/index.html

  • Doubt regarding SQL execution

    Hi Friends,
    Am using Oracle 10g DB - 10.2.0.3.0
    I have some basic doubts regarding sql query execution by Oracle.
    Say, Am executing a query from a toad/sqlplus session for the first time, it takes 10 secs then 1 sec and so on.
    Same thing happens for every 15 minutes.(Any specific reason for this ??).
    It takes more time when it executes first because of parsing and all those stuff but from then on it picks from the
    shared pool right??.. How long will it be there in Shared Pool does Oracle maintain any specific time period to clear that query from shared pool memory. How does Oracle handle this.
    Another thing is, say, I have a report query, I run this query monthly. What will be the execution time when I run this query each and every month. Will Oracle parse this query everytime I run. How do I improve the performance in this situation (May sound odd :)).
    Regards,
    Marlon

    Say, Am executing a query from a toad/sqlplus session for the first time, it takes 10 secs then 1 sec and so on.
    Same thing happens for every 15 minutes.(Any specific reason for this ??).
    It takes more time when it executes first because of parsing and all those stuff but from then on it picks from the
    shared pool right??.. How long will it be there in Shared Pool does Oracle maintain any specific time period to clear that query from shared pool memory. How does Oracle handle this. Share Pool caches the SQL statement. So when you execute the same SQL for the second time it goes for a soft parse. But this is not the only reason for the query to execute faster the second time. The time difference between a soft parse and hard parse is very minimal. So it really does not matter unless you are executing the same query several number of times.
    The thing that really matters is the Data Buffer Cache. That is the rows that are selected by your query are cached into the Data buffer that is available in the SGA. So for the next time when you run the same query the IO is reduced as the data is available in the memory and you don't have to go to your disk to get the data.
    But the data in Data Buffer is not persistent, meaning it follows the FIFO rule. That is first in first out. When the Data Buffer is full the content of the buffer is removed in the FIFO order.
    Another thing is, say, I have a report query, I run this query monthly. What will be the execution time when I run this query each and every month. Will Oracle parse this query every time I run. How do I improve the performance in this situation (May sound odd :)). Like the Data Buffer the Shared Pool is also maintained in the FIFO order. So if the query is still in the Shared Pool the query will be soft parsed else it will be hard parsed. But its very rare that you will have a query in your Shared Pool for a month.

  • Hi, my current plans and products include Creative Cloud Photography plan (one-year) and Creative Cloud single-app membership for Photoshop (one-year), I only use photoshop occasionally and for very basic things, are these two plans required for basic p

    Hi, my current plans and products include Creative Cloud Photography plan (one-year) and Creative Cloud single-app membership for Photoshop (one-year), I only use photoshop occasionally and for very basic things, are these two plans required for basic photoshop use or am I able to go with one or the other ?

    PS is part of the photography plan, so your single app plan is redundant.
    Mylenium

Maybe you are looking for

  • Open Docs while period end closing..

    Hi All, I just need to knw that,  is it necessary that while performing the period end closing all the documents (sales and purchase) need to be closed.? what if i have a no of purchase and sales orders open.

  • How do I create a backup DNS server?

    Hi All, I've got my production server (Xserve Intel) running 10.6 and it is our primary DNS server. I've gotta take it down to do some work on it, but by doing so, no one in the organization will be able to access the internet. I'd like to set up my

  • CD/DVD Drive

    The CD/DVD Drive on my H215 Desktop takes a while to properly read the disc.  When I insert a music CD to play, the music begins right away bit the CD has not "seated" properly and the music "skips".  The light on the CPU blinks until the CD is seate

  • J2ME in Pocket PC

    Hi Guys! Lets say I run a J2ME application on a Pocket PC. Is it possible to run another application (not MIDP) from within my J2mE application?? Can I also read from a file existing on the Pocket PC file system from within my J2ME application?? Than

  • What is load balancing "stickyness" problem

    We are getting this error " Failed to send alert messages to browser " on the interaction centre after saving the ticket followed by  the END button. There is a similar thread with the same issue [CRM 2007-IC Web Interface Message - Failed to send Al