• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 218
  • Last Modified:

Do I need J2EE?

I will credit all helpful comments. I can also increase the points depending on your comments.

I would like to know if my project which is using J2SE can benefit from J2EE. My understanding is that J2EE probably have encapsulated some common low-level functions that I would have to program myself if using J2SE? Following is a description of my project.

An NT running a testing software distributes computation tasks across PC networks. The project is kinda similar to the project SETI (Search for Extraterrestrial Intelligence). "Clients" connecting to the NT server notifies the server that they are available when their screen savers kick off. The server then assigns a task to the client, telling them to run a specific program on a shared drive. The clients notify the server again when finished.

I am doing this using very simple socket programming. I plan to switch to CORBA using Java IDL. Does it make sense to move to J2EE from J2SE? pros and cons? The project might be simple now. What do you see for future enhancement?


  • 2
  • 2
1 Solution
I don't think so that your application will need an Enterprise Server. The most beatiful thing about J2EE are the three level architecture. So it depends what you are doing with your received data from your clients on your nt server. If you wish to had at further time a presentation, business and data layer then it would be a great thing to use j2ee.

If you don't want using CORBA or direct Socket programming. The simpler thing is to use Java RMI. If this is too little for your future plans then you should go up and using enterprise beans. For this you need j2ee (not for RMI). Good book about the overview of j2ee is "Java server Programming" ISBN 1-861004-65-6.If you don't want spend money on books then have a look about the turtorial of j2ee tutorial at javasoft. If you decide to use j2ee make sure you have enough time and enough people which could help you to do this. It wouldn't be easy but nice ( have a look at the tutorial and you will see what I mean).
Jim CakalicSenior Developer/ArchitectCommented:
J2EE assembles a broad range of technologies -- EJB, JSP, Servlet, JMS, CORBA, JDBC, XML, JNDI, JTA, JTS, JavaMail, RMI/IIOP. You don't either "use" J2EE or not use it. When the architecture of a proposed system is specified, you select specific technologies from the J2EE "bag" that would assist you in the development and deployment of the system. J2EE is in fact not a product in its own right but a set of technology specifications. Multiple vendors provide implementations of these technologies in value added products -- WebLogic, WebSphere, etc. The question is, after reviewing the use of the specific technologies in J2EE, do any of them seem to relevant to problems you need to solve in your system?

From the initial description of your problem, I'm thinking that you might want to put aside J2EE for now and look at JavaSpaces. The idea of space-based programming came about in research domains while working on the development of parallel distributed computing systems. Sun describes JavaSpaces as "a simple unified mechanism for dynamic communication, coordination, and sharing of objects between JavaTM technology-based network resources like clients and servers. In a distributed application, JavaSpaces technology acts as a virtual space between providers and requesters of network resources or objects. This allows participants in a distributed solution to exchange tasks, requests and information in the form of Java technology-based objects. JavaSpaces technology provides developers with the ability to create and store objects with persistence, which allows for process integrity." That sounds, to me, a lot moe like what you are doing than constructing a business application with a web interface (the "typical" J2EE application).

A free reference-implementation of JavaSpaces is available. Until recently it was the only one that seemed to be widely available. It is a little difficult to find on the developer connection because of its close association with Jini. Just recently, a commercial implementation has come on line from j-spaces. Here are a few of the relevant links that you'll need to get started:

You'll also want to get into the JavaSpaces-users mailing list. It is quite active and well supported by an expert community.

Best regards,
Jim Cakalic
txholdemAuthor Commented:
There is CORBA and RMI with J2SE. What's different with the CORBA and RMI in J2EE?
Jim CakalicSenior Developer/ArchitectCommented:
Nothing. But this emphasizes the difference between the delivery of technology implementations (which J2SE does) and the specification of a family technologies that must interoperate or be integrated to enable the development of enterprise solutions (which J2EE does). Although Sun provides a reference implementation of J2EE technologies, it is not their intent that this implemenation be used in construction and deployment of commercial systems. Rather like they provide the JDBC-ODBC bridge but strongly discourage its use for anything more than trivial applications. Instead, Sun expects that application server vendors will provide conforming implementations of the J2EE specification. In such implemenations, the RMI implementation provided by Sun would likely be utilized but each vendor could provide their own CORBA ORB.

txholdemAuthor Commented:
>If you wish to had at further time a presentation, business and data layer then it would be a great thing to use j2ee.

How does this layer work, e.g. a data layer? Is this like a computer connected to both the server and clients? How do I apply J2ee in this situation?

We are using an intranet shared drive now for the data. Is speed going to be a problem if the data is on a machine on the Internet?

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

  • 2
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now