Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
.NET Vs J2EE
1. Comparing J2EE with .NET - ACCU 2002 - Slides (mostly ) by Michael Stal, Senior Principal Engineer SIEMENS AG, Dept. CT SE 2 E-Mail: mailto:Michael.Stal@mchp.siemens.de Web: http:// www.stal.de Markus Voelter, CTO, MATHEMA AG [email_address] http://www.voelter.de
2.
3.
4. Web Frameworks Workflow Engine Web-based and -related Protocols (HTTP, SMTP, ...) Service Description, Discovery, Integration (UDDI) Service Description (WSDL) Service Context (Who, Where, When, Why, ....) Virtual Machine Micro/Macro Services Integration Layer Legacy Backend Server Mainframe Frontend Layer (Web Server) Web Service User/Provider Core Services (Calendar, Preferences, Transactions, ...) Core elements of Web Frameworks Clients
5. .NET – The Microsoft Way of Life .NET Devices TabletPC, PocketPC, .... .NET Servers SQL Server, Biztalk, Commerce, Exchange, Mobile Information, Host Integration, Application Center .NET Foundation Services (Hailstorm) Passport, Calendar, Directory & Search, Notification & Messaging, Personalization, Web-Store/XML, Dynamic Delivery of Software and Services Common Language Runtime (Memory Management, Common Type System, Lifecycle Monitor) .NET Framework & Tools Base Classes (ADO.NET, XML, Threading, IO, ....) ASP.NET (Web Services, Web Forms, ASP.NET Application Services) Windows Forms (Controls, Drawing, Windows Application Services)
6. Sun ONE (Open Net Environment) Service Interface Service Container (J2EE, EJB, JSP, J2SE, J2ME, MIDP, Java Card) Process Management Service Integration (SQL, JDBC, XML, XSLT, XP, JMS, RMI, J2EE Connectors, ...) Service Platform Smart Management (SNMP, CIM, WBEM, JMX) Smart Delivery (XML, HTML, XHTML, WML, VoiceXML, XSLT, HTTP, SSL, XP, SOAP, WSDL, UDDI, ebXML, ...) Web Services Smart Process (ebXML, XAML) Smart Policy (LDAP, Kerberos, PKI, OASIS Security)) Service Creation and Assembly (JB, JSP, EJB)
73. ASP.NET Example (cont‘d) <%@ Page language="c#" Codebehind="WebForm1.aspx.cs" AutoEventWireup="false" Inherits="LoginPage.WebForm1" %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" > <HTML> <body> <form id="Form1" method="post" runat="server"> <asp:Label id="TitleLabel" runat="server">Please specify your name and password</asp:Label> <br> <asp:Label id="LoginLabel" runat="server">Login</asp:Label> <br> <asp:TextBox id="LoginText" runat="server"></asp:TextBox> <asp:RequiredFieldValidator id="RequiredFieldValidator" runat="server" ErrorMessage="You need to specify your name" ControlToValidate="LoginText"></asp:RequiredFieldValidator> <br> <asp:Label id="PasswordLabel" runat="server">Password</asp:Label> <br> <asp:TextBox id="PasswordText" runat="server" TextMode="Password"></asp:TextBox> <br> <asp:Button id="EnterButton" runat="server" Text="Open the entrance" ToolTip="Press this after you have specified login and password"></asp:Button> <br> <asp:Label id="MessageText" runat="server"></asp:Label> </form> </body> </HTML>
74. ASP.NET Example (cont‘d) // lot of details omitted namespace LoginPage { public class WebForm1 : System.Web.UI.Page { protected TextBox PasswordText, LoginText; protected Button EnterButton; protected Label MessageLabel; private void InitializeComponent() { this.EnterButton.Click += new System.EventHandler(this.EnterButton_Click); this.Load += new System.EventHandler(this.Page_Load); } private void EnterButton_Click(object sender, System.EventArgs e) { if (!(LoginText.Text.Equals("aladdin") && PasswordText.Text.Equals("sesam"))) { MessageLabel.Text = " Wrong name or password!"; } else { Session["user"] = "aladdin"; Response.Redirect("UserArea.aspx"); } } } }
96. Management Summary - 1 Currently not yet completely integrated Consistent XML-Support JSP/Servlets ASP.NET Server Pages Enterprise JavaBeans COM+ Server Components RMI/CORBA, JMS, Web Services (standard compliant) .NET Remoting, MSMQ, Web Services (no ebXML) Communication middleware (RPC, Messaging, Web) Java + possibly others C#, C++, Eiffel#, VB, .... Languages Specification and many implementations Product Line Status Sun + JCP-Partner Microsoft Controller/Owner Java .NET
97. Management Summary - 2 CORBA, JMS COM/COM+ (COM Interop) InteropMiddleware JCA Host Integration Server Legacy Integration Swing/AWT Windows.Forms Web.Forms GUI-Libs Java JVM .NET CLR Runtime JNI PInvoke Interop (call-in/call-out) Many many classes on java.* Many many classes on System.* Base libraries JDBC / SQLJ and others ADO.NET (ADO) Database access Java .NET