Download presentation
Presentation is loading. Please wait.
Published byErnest Curtis Modified over 9 years ago
1
ASP.NET Leave Request Management Stephan Müller, Christian Tinnefeld Trends and Concepts in the Software Industry II - Exercise March 7th 2007
2
ASP.NET Stephan Müller and Christian Tinnefeld | March 7, 2007 2 Motivation ■ What □ Create, edit and cancel leave requests □ Approve and reject leave requests ■ How □ Back-end: SAP Web Services □ Front-end: Microsoft ASP.Net Web application ■ Why □ Lower burden for SAP service utilization □ Proof Interoperability □ Reusability of services
3
ASP.NET Stephan Müller and Christian Tinnefeld | March 7, 2007 3 Architecture
4
ASP.NET Stephan Müller and Christian Tinnefeld | March 7, 2007 4 Creating a new Leave Request ■ Input fields □ Type / Reason □ Start and end dates □ Start and end times □ Notes
5
ASP.NET Stephan Müller and Christian Tinnefeld | March 7, 2007 5 Creating a new Leave Request Reply.Text = facade.CreateLeaveRequest("1", empId, "3", Reason.SelectedValue, "PT0S", fromDate, toDate, Notes.Text);
6
ASP.NET Stephan Müller and Christian Tinnefeld | March 7, 2007 6 Live Demonstration
7
ASP.NET Stephan Müller and Christian Tinnefeld | March 7, 2007 7 Using Web Services in.NET ■ The Good: □ Including web services as web references □ Automatic proxy class generation □ Automatic generation of helper classes □ Seamless integration of remote methods ■ The Bad: □ No parameterization of proxy generation □ Individual changes of proxy classes will be discarded ■ The Ugly: □ Proxy classes are completely hidden in ASP.NET □ Absolutely no influence on web service usage methodology
8
ASP.NET Stephan Müller and Christian Tinnefeld | March 7, 2007 8 Reflection Error (1/2) Occurs if… ■ Using a non Microsoft Application Server (e.g. IBM Websphere) ■ Parameters containing arrays or vectors ■ WSDL file in Document-Style (not verified) [return: System.Xml.Serialization.XmlElementAttribute ("EmployeeTimeAccount",Form=System.Xml.Schema.XmlSchemaForm.Unqual ified, Namespace="http://sap.com/xi/EA-HR/SE/Global")]
9
ASP.NET Stephan Müller and Christian Tinnefeld | March 7, 2007 9 Reflection Error (2/2) Solution Approaches ■ IBM: “Avoid using Vector parameters in WebSphere Application Server Web service methods to interoperate with.NET client as well as any Java Collection type.“ ■ RPC was not available ■ Usage of open source generation tools (Mono Rotor) Our Solution ■ Separate proxy generation from Visual Studio ■ Revising the namespace declaration of.NET proxy class ■ Compile proxy classes as library for referencing (optional)
10
ASP.NET Stephan Müller and Christian Tinnefeld | March 7, 2007 10 dotNetWebServiceReviser Reading WSDL file Identify XML Namespace Generate Proxy Class Revise Namespace Declaration Build Dynamic Link Library
11
ASP.NET Stephan Müller and Christian Tinnefeld | March 7, 2007 11 Deployment ■ MS Visual Studio generates MSI Installer File ■ IIS v.6.0 as deployment server ■ Wizard-guided installation
12
ASP.NET Stephan Müller and Christian Tinnefeld | March 7, 2007 12 Conclusion ■ Unexpected SOA interoperability issues ■ Much effort needed for building workaround tool ■ Weak standards ■ BUT: In the end everything works great
13
ASP.NET Stephan Müller and Christian Tinnefeld | March 7, 2007 13 Questions?!
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.