32.
PROJECTS @ NCCT JAVA, J2EE & J2ME
POWERED BY EXPERIENCE & KNOWLEDGE JAVA, J2EE, J2ME, JSP, JWS,
Tomcat, Servlets, RMI, Struts, WAP
JAVA & J2EE
The Java 2 Platform, Enterprise Edition (J2EE) was designed to simplify complex problems with
the development, deployment, and management of multi-tier enterprise solutions. J2EE is an
industry standard, and is the result of a large industry initiative led by Sun Microsystems.
It's important for you to realize that J2EE is a standard, not a product. You cannot "download"
J2EE. Rather you download a set of Adobe Acrobat PDF files which describe agreements
between applications and the containers in which they run. So long as both sides obey the J2EE
contracts, applications can be deployed in a variety of container environments.
The J2EE camp's goal is to give customers choice of vendor products and tools, and to
encourage best-of-breed products to emerge through competition. The only way this would ever
happen is if the industry as a whole were bought-into J2EE.
To secure buy-in, Sun collaborated with other vendors of eBusiness platforms, such as BEA,
IBM, and Oracle, in defining J2EE. Sun then initiated the Java Community Process (JCP) to
solicit new ideas to improve J2EE over time.
The reason Sun did this is because they had to do so to achieve success--the best way to secure
buy-in to an idea is to involve others in defining that idea.
JAVA: THE FOUNDATION FOR J2EE
The J2EE architecture is based on the Java programming language. What's exciting about Java
is that it enables organizations to write their code once, and deploy that code onto any platform.
The process is as follows:
Developers write source code in Java
The Java code is compiled into bytecode, which is a cross-platform intermediary, halfway
between source code and machine language. When the code is ready to run, the Java Runtime
Environment (JRE) interprets this bytecode and executes it at run-time.
J2EE is an application of Java. Your J2EE components are transformed into bytecode and
executed by a JRE at runtime. Even the containers are typically written in Java.
J2EE and Web Services
J2EE has historically been an architecture for building server-side deployments in the Java
programming language. It can be used to build traditional web sites, software components, or
packaged applications.
No.109, 2nd Floor, Bombay Flats, Nungambakkam High Road,
Nungambakkam, Chennai – 600 034.
Near Ganpat Hotel, Above IOB, Next to ICICI, Opp to cakes’n’Bakes
Phone – 044 – 28235816, 0-98411 93224, 0-9380102891
E.Mail – ncctchennai@gmail.com, Visit us at www.ncct.in

33.
PROJECTS @ NCCT JAVA, J2EE & J2ME
POWERED BY EXPERIENCE & KNOWLEDGE JAVA, J2EE, J2ME, JSP, JWS,
Tomcat, Servlets, RMI, Struts, WAP
J2EE has recently been extended to include support for building XML-based web services as
well. These web services can interoperate with other web services that may or may not have
been written to the J2EE standard
J2EE application is hosted within a container, which provides qualities of service necessary for
enterprise applications, such as transactions, security, and persistence services.
The business layer performs business processing and data logic. In large-scale J2EE
applications, business logic is built using Enterprise JavaBeans (EJB) components. This layer
performs business processing and data logic.
It connects to databases using Java Database Connectivity (JDBC) or SQL/J, or existing systems
using the Java Connector Architecture (JCA). It can also connect to business partners using
web services technologies (SOAP, UDDI, WSDL, ebXML) through the Java APIs for XML (the JAX
APIs).
Business partners can connect with J2EE applications through web services technologies
(SOAP, UDDI, WSDL, ebXML). A servlet, which is a request/response oriented Java object, can
accept web service requests from business partners.
The servlet uses the JAX APIs to perform web services operations. Shared context services will
be standardized in the future through shared context standards that will be included with J2EE.
Traditional 'thick' clients such as applets or applications connect directly to the EJB layer
through the Internet Inter-ORB Protocol (IIOP) rather than web services, since generally the thick
clients are written by the same organization that authored J2EE application, and therefore there
is no need for XML-based web service collaboration.
Web browsers and wireless devices connect to JavaServer Pages (JSPs) which render user
interfaces in HTML, XHTML, or WML.
Reference Implementation
In addition to the specifications, Sun also ships a reference implementation of J2EE. Developers
write applications to this to ensure portability of their components.
This implementation should not be used for production, but rather just for testing purposes.
Additional Services
All vendors that offer J2EE platforms provide additional features not found in the standard.
Some of them impact portability, such as extended EAI functionality, E-Commerce components,
or advanced B2B integration.
Other features, such as load-balancing, transparent fail-over, and caching, do not affect
portability of application code, because they are implicit services which are provided behind-
the-scenes by the container
No.109, 2nd Floor, Bombay Flats, Nungambakkam High Road,
Nungambakkam, Chennai – 600 034.
Near Ganpat Hotel, Above IOB, Next to ICICI, Opp to cakes’n’Bakes
Phone – 044 – 28235816, 0-98411 93224, 0-9380102891
E.Mail – ncctchennai@gmail.com, Visit us at www.ncct.in

34.
PROJECTS @ NCCT JAVA, J2EE & J2ME
POWERED BY EXPERIENCE & KNOWLEDGE JAVA, J2EE, J2ME, JSP, JWS,
Tomcat, Servlets, RMI, Struts, WAP
ADVANTAGES OF J2EE AGAINST .NET
• J2EE is being marketed by an entire industry
• J2EE is a proven platform, with a few new web services APIs. .NET is a rewrite and
introduces risk as with any first-generation technology
• Only J2EE lets you deploy web services today
• Existing J2EE code will translate into a J2EE web services system without major
rewrites. Not true for Windows DNA code ported to .NET.
• .NET web services are not interoperable with current industry standards. Their
BizTalk framework has proprietary SOAP extensions and does not support ebXML.
• J2EE is a more advanced programming model, appropriate for well-trained
developers who want to build more advanced object models and take advantage of
performance features
• J2EE lets you take advantage of existing hardware you may have
• J2EE gives you platform neutrality, including Windows. You also get good (but not
free) portability. This isolates you from heterogeneous deployment environments.
• J2EE has a better legacy integration story through the Java Connector Architecture
(JCA)
• J2EE lets you use any operating system you prefer, such as Windows, UNIX, or
mainframe. Developers can use the environment they are most productive in.
• J2EE lets you use Java, which is better than C# due to market-share and maturity.
According to Gartner, there are 2.5 million Java developers. IDC predicts this will
grow to 4 million by 2003. 78% universities teach Java, and 50% of universities
require Java.
• We would not want to use any language other than C# or Java for development of
new mission-critical solutions, such as a hacked object-oriented version of C, VB,
or COBOL.
• We are finding most ISVs and consulting companies going with J2EE because they
cannot control their customers' target platforms. We believe this application
availability will result in J2EE beginning to dominate more and more as time goes
on
No.109, 2nd Floor, Bombay Flats, Nungambakkam High Road,
Nungambakkam, Chennai – 600 034.
Near Ganpat Hotel, Above IOB, Next to ICICI, Opp to cakes’n’Bakes
Phone – 044 – 28235816, 0-98411 93224, 0-9380102891
E.Mail – ncctchennai@gmail.com, Visit us at www.ncct.in