j2ee by 6zY9rTNb


									                              Sun Professional Services

   J2EE vs. .NET
  Joseph Williams, Ph.D.
Chief Technology Strategist
 Sun Professional Services
Sun vs. Microsoft
   True interoperability is only going to be
    achieved if the major players –
    including Sun and Microsoft – work
   We are trying…
   …. and it really isn’t all that bleak a
    The WS-I Blockade
   The Web Services Interoperability (WS-I) organization
   Sun was only informed of the WS-I's existence by IBM
    48 hours ahead of the WS-I's February 6 launch.
       That's hardly enough time to do the
        necessary due diligence when a chief
        competitor approaches you about joining
        an industry group
   By contrast, Oracle had been invited to join in early
   Sun immediately requested a board seat on the WS-I
   IBM pushing Sun membership
   Last week we announced we were joining after
    Microsoft agreed to the creation of 2 new board seats
The Liberty Alliance
   By sharp contrast to Microsoft’s
    behavior on the WS-I we have
    specifically invited Microsoft to join the
    Liberty Alliance
   Microsoft wants to own everyone’s
    data through its proprietary Passport
   Liberty Alliance, by contrast,
    standardizes identity management
    exchanges but leaves companies free
    to implement and maintain data
The Historic Sun Vision
   Sun has always had a services view of
    the network (part of our “The Network is
    the Computer” vision)
   The concept of building services on and
    around the Web and the network is really
    all that the network is about.
   Java (and J2EE) has always been
    about delivering services via the web
       Which is why Java has always been the
        platform of choice
Apples and Oranges
    Openness of the Platform APIs
    Availability of Vendor Products
    Architectural Dependencies of each
    Can't exactly compare .NET to J2EE
J2EE Environment Facts
 Compatible   across many available
  Platforms- No Vendor Lock-In
 Ample choices of vendors and tools
 Mix and Match of BOB components
  – Freedom of choice
 Open standard & support from the
  industry – Industry Standard
Industry Support of J2EE
 Over 30 J2EE platform providers
 15+ Certified J2EE App Servers on
 500+ JCP members
 SAP, Sybase, Oracle, IBM, BEA, Iona,
  SilverStream, ATG ……
 Best of the Breed approach
Gartner’s Research
 Java  usage has not merely become
  more widespread - it has become a
  mainstream platform for e-business IT
 80% adopted Java, 14% responded "not
 70% of the Java adoptions are > 2 years
   Beyond   experimental and prototyping
Has Sun lagged on Web
    Not really
    If you stack up the facilities available in
     J2EE in the marketplace, it's way
     ahead of .Net and always has been.
    Yes, Microsoft had a way of doing
     XML process-to-process
     communication before Sun shipped
    But we've been shipping one for
J2EE as Web Service

   75% of the developers would choose
    J2EE as the platform for Web Services
    – Web Services Journal
The FUD around the Java Pet Store
   Microsoft picked on demo code that was never
    designed to be benchmarked
   See http://www.ibatis.com/jpetstore/jpetstore.html
   Oracle’s Java Pet Store was 22 times faster than
The Blow-by-Blow
   WSDL: Both J2EE and .NET support
   UDDI
       .NET: first implemented in DISCO, now
        thorugh the .NET UDDI server
       J2EE: implemented in the Java API for
        XML Registries (JAXR)
   SOAP
       .NET: Variously implemented in SOAP
        message classes, MSXML, ASP, ISAPI,
       J2EE: implemented in the Java API for
        XML-based RPC (JAX-RPC)
Comparing .NET to J2EE

                      .NET      J2EE
Programming Language C#         Java
Interpreted Language  MSIL      Java Bytecode
Runtime Environment   CLR       JVM/JRE
Rich-Client           VB.NET    Swing
Web Presentation      ASP.NET   JSP/Servlets
Business Services        ????   EJBs
DB Integration        ADO.NET   EJB-SQL/JDBC
Messaging Integration MSMQ      Msg EJBs/JMS
Legacy Integration    COM TI    JCA
Web Services with J2EE
              J2EE        Sources
           Web Services
              Pack         Other
Java Web Service Model
Platform Layer
Is J2EE XML-friendly?
   One of the things that we hear a lot is people
    saying we don't support XML because it's not
    native in J2EE.
   If you look at the J2EE 1.3 spec, it didn’t say
    you must have XML
   But XML has been available as a drop-in plug-in
    for a very long time
   Sun was one of the authors of the XML spec
   All of the original XML parsers were all written in
   In fact, Microsoft was somewhat late to the
    game in XML.
What about SOAP in JDK
   Just Microsoft FUD
   At a very real level, Native SOAP
    support in Java is meaningless
   It just isn’t bundled in the JDK
   But it is enabled through the plug-in of
    Java APIa
   Besides, SOAP is Native in the Java
    SDK 1.5 edition
A hard look at .NET
    Microsoft.NET (formerly Next Generation
     Windows Services) is the umbrella term
     for the Microsoft strategy to move from a
     client-centric model to a network-centric
    It took Microsoft a while to come around
     to this point of view
    Microsoft’s core services platform didn’t
     appear until late in the Windows 2000
    Sun has been preaching “the network is
     the computer” for the past decade
.NET isn’t working
   On Wednesday, July 24 Bill Gates
    admitted that .NET hasn’t gotten the
    traction he had hoped for against J2EE
       Microsoft customers have called the company's marketing
        plan confusing. Microsoft largely rebranded existing
        products under the .Net label but added little new
       "Maybe the .Net Enterprise servers," launched in
        September 2000, were "prematurely called .Net. The first
        generation of .Net products was putting a layer on top of
        existing functionality," Gates said.
   See
    7-24netstrategy.asp for Bill’s remarks
A Hard look at Microsoft
   A Typical week in the life of a monopolist
       An issue is whether the open-source .Net projects
        will be legal or illegal for commercial use.
        Microsoft is deferring patent questions to the
        European Computer Manufacturers Association (ECMA.
        The danger in all this is that if projects such as
        Mono cannot use the CLI, their products will be
        rendered unable to operate on a cross-platform
        basis. (Reported Aug 5)
       THE FEDERAL TRADE Commission (FTC) said Thursday
        (Aug 8) that it has reached a settlement with
        Microsoft Corp. over misrepresentations of the
        privacy and security of the company’s Passport
        Internet sign-on service, Passport Wallet and Kids
       Microsoft's implementation of SSL (Secure Sockets
        Layer) certificate handling makes it possible for
        anyone with a valid VeriSign SSL site certificate to
        forge any other VeriSign SSL site certificate, and
        abuse Internet Explorer users with impunity.
        (Reported Aug 12)
J2EE vs .NET: The
    J2EE is a market, .Net is a product.
    In the J2EE world there are
     hundreds of companies with
     components and tools and app
    The way it's organized, the
     community actually controls what
    It isn't just dictated to them
Hailstorm: MS’s Original view of Web
Services Implementation
   Users must log in through Microsoft’s
    Passport authentication service
   Services are fee-based
   Runs on Microsoft servers; an issue
    because of Microsoft’s
       famous security weaknesses
       attitudes towards privacy (see current
        MSN flap)
       reliability
   Target here appeared to be AOL
.NET – The world would
have run through Microsoft
What about Performance?
   Microsoft’s Fabio Yeon has published
    (http://www.gotdotnet.com/team/asp/ASP.NET Performance Tips and Tricks.aspx) a

    “how-to” guide for manipulating .NET
    peformance results
   Basically, very easy to manipulate
    performance results in ways that have
    nothing to do with the reality of web
Java Performance
 JSDK  1.3 is 10x faster than JSDK 1.0, and
  ~1.5x slower than C/C++ in average.
 Performance overhead on run-time
  checking, stronger OO support, garbage
  collector …
 Our experience – most of the poor
  performances are due to poor Architecture &
 Proper Architecture design and code
  tweaking – 10% code run 90% of the time.
 For Web applications – network
  communication is the killer
-   Evaluating Java for Game Development – University of Copenhagen
.Net for the front end and
Java on the back end?
   It's certainly the case that Microsoft
    has a monopoly on the client
   Microsoft does have easy tools for the
   It actually is easy it is to write client
    software on the PC in Java.
You say “Po-tay-to, I say Po-tah-to”
    J2EE is an open source solution that
     has a much wider choice of vendor
        Since it was a pre-existing platform it is
         being extended to cover Web Services
        Enormous comfort in doing so by the
         major ISVs
    .NET was in fact engineered with Web
     Services in mind but with a view of the
     world that is Microsoft dominated
   It is a global business standard for
    defining a framework for conducting
    B2B transactions based on XML
   Sponsored by the UN and OASIS
   Sun sees ebXML as foundational to
    B2B web services
   Microsoft vacilates: “ebXML has a
    narrow focus”… “Will ebXML even be
    around in four months?”
Clearing the table
   Louis Columbus, Senior Analyst, AMR
    “The pervasiveness of J2EE on both the
      sell-side and buy-side of e-commerce
      initiatives translates into a challenge of
      execution for Microsoft and their .NET
      strategy. Today J2EE means to many
      people having an agnostic platform;
      Microsoft’s challenge is to promote .NET
      and still have the concept of platform
      freedom ringing true.”
                          Sun Professional Services


To top