1 / 47

Web Services and SOA with 2E and WebsydianExpress

Web Services and SOA with 2E and WebsydianExpress. Biography. Søren Madsen Soft Design A/S Chief Consultant Worked with CA 2E since 1990 CA Plex since 1996 Speaker at: CA WORLD and Plex/2E user conferences since 2004 COMMON US since 2007. Websydian and web services.

faraji
Download Presentation

Web Services and SOA with 2E and WebsydianExpress

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Web Services and SOA with 2E and WebsydianExpress

  2. Biography • Søren Madsen • Soft Design A/S • Chief Consultant • Worked with CA 2E since 1990 • CA Plex since 1996 • Speaker at: • CA WORLD and Plex/2E user conferences since 2004 • COMMON US since 2007

  3. Websydian and web services • Working with web services since 2001 • TransacXML for CA Plex • Generate and send XML documents • Receive and consume XML documents • Import WSDL and schemas • Generate schemas • Compliant with XML standards

  4. WebsydianExpress for 2E • Frame for working with web and web services with 2E

  5. WebsydianExpress for 2E Design Login Menu Security 2E Transport layer Authorization system Usermanagment Session control Administration

  6. WebsydianExpress for 2E Design Login Menu Security 2E Transport layer Authorization system Usermanagment Session control Administration

  7. Internal SOA in your 2E application • Keepyourapplicationclean • Ensure the interface contract

  8. 2E SOA and web services • Customer case • Nomeco A/S • A subsidiary to Tamro Ltd. • In turn a subsidiary of the German group Phoenix, the world's fifth largest pharmaceutical wholesaler • 155 distribution centers in 23 countries • 51,500 customers in the wholesale sector • 100,000 different products on the shelves • 650 customers in pre-wholesale • 20,253 employees in Europe • 19.89 billion. Euro in turnover

  9. 2E SOA and webservices • Nomeco • The largest pharmaceutical wholesaler in Denmark • Approx. 70% of the Danish market • Core application is based on the iSeries in a 2E environment. (Astra400) • Approx. 30 people maintains the environment • External access by Java, hand-coded etc.

  10. Traditional Development Every circle is an application area On top come Java objects and handwrittencode • ”Read item” • In one of our applications 109 functions are called => expensive maintenance and vulnerable operation

  11. SOA – Separate application areas

  12. SOA – Separate application areas with services 2E 2E 2E 2E 2E

  13. 2E 2E 2E 2E 2E SOA – Java programs feed of the 2E services Java programs and hand written code Http Requests

  14. Wesuggest… • Let those who know the business logic code the services for the “Java guys” - obtain separation of logic and use. • Let the Java guys retrieve the data via Http requests. • The http requests are received by WebsydianExpress and returned in the desired format: • HTML • XML • Comma separated file • Json(JavaScript Object Notation) • …

  15. Loose coupling Java environment 2E environment

  16. Java environment 2E environment New file layout The Java program is not effected by changes The interface remains unchanged via the template

  17. The response from WebsydianExpress remains unchanged after changes to the file. • The response is determined by the template layout and not a change in the parameter. • Compilation and test are performed in the 2E model • Ordinary compilation and impact analysis in the 2E environment.

  18. Basictechnics of Websydian for 2E

  19. How do we create a page • Twothingsareneeded: • A program • We will use 2E to develop this program. • A HTML template with the layout required • We will use the Page Modeler in WebsydianExpress to create this template and some hand written templates. • First, what the end user will see ….

  20. This is the recordin the database, and thisresembles a DSPRCD function.

  21. This is an HTML template. When the program executes, the replacement markers like/(DMSTAT) willbesubstituted by the actual data. You can think of this as the Screen design for a web function. This HTML template can be edited by any HTML editing tool.

  22. Templatescanbecreated in the Admin Interface or by hand.

  23. Development • In the 2E model wearelooking at the functions for the Show Customer

  24. This is the functionthatwillbuild the page. Thisfunction has beenbuiltfrom a supplied 2E *Templatefunction

  25. The AD of the function. The comments and sequencesarefilled from the 2E *Templatefunction Rememberthis is the name of the HTML templatewelooked at previously. Set a variable to the name of the HTML template we want to use.

  26. Wewill zoom intothissequence and seehow the fieldsareplacedinto the page.

  27. Firstfetch the DB valuesusing a standard RTVOBJ Thenassign the values to the page using an API supplied by Websydian

  28. Remember in the HTML template, the replacement marker for the namewas/(DMSTAT). We set the name of the replacement marker of the HTML template. In this case, the State willbereplacedinto the marker /(DMSTAT). This is the actualvaluewearepassing. Wearepassing the WRK fieldthatwas output from the RTVOBJ. This last parameter is technical – more information in the documentation. This is the name of the HTML template. This name is passed into the function from the EXCEXTFUN we looked at first.

  29. Wearenow done, and by calling the WritePagefunction the page with the data we have readwillbesent to the browser. Wetake a look at the parameters.

  30. Only parameter needed is the name of the HTML template.

  31. Done • Now the Show Customerwillbedisplayed. • Onlyabout15 lines of AD required. • But howaboutthose XML,CVS,JSON …….

  32. Templatescanbeused in many formats

  33. This is an XML template. When the program executes, the replacement markers like /(DMSTAT) will be substituted by the actual data.

  34. This is the same 2E program nowwith a new HTML template, in order to show howthiswill look to the end user.

  35. OR……

  36. This is a CSV template. When the program executes, the replacement markers like/(DMSTAT) willbesubstituted by the actual data.

  37. This is a CSV template. When the program executes, the replacement markers like/(DMSTAT) willbesubstituted by the actual data.

  38. This is a JSON template. When the program executes, the replacement markers like/(DMSTAT) willbesubstituted by the actual data.

  39. This is a JSON template. When the program executes, the replacement markers like/(DMSTAT) willbesubstituted by the actual data.

  40. In the WebsydianExpress environment a template equals a presentation. • To each program it is possible to assign several presentations • Presentations are selected for each menu point. • That means that if you create a series of menu points one for each format (HTML, XML, CVS, JSON ….), it is possible to assign the relevant presentation.

  41. In order to make it useful outside the WE environment • Session, Signing, Menu points………

  42. We use Deep Links. • A way of calling WE functions in an easy way from outside the WE environment

  43. Create 4 menu points that nobody has access to • Done using roles (Authorization) • Create 4 corresponding Aliases (used by Deep Links) • In this case • XMLDEMO = HTML • XMLDEMO1 = XML • XMLDEMO2 = CVS • XMLDEMO3 = JSON

  44. Callusing HTTP client • http://webtst/express20/site/demosite?WSLOAD= XMLDEMO1&WSCONTEXT=N&DMNMBR=3 In thisexampleweareusing XMLDEMO1 Alias = XML

  45. Callusing HTTP client • http://webtst/express20/site/demosite?WSLOAD= XMLDEMO1&WSCONTEXT=N&DMNMBR=3 Use as manyparms as youwant. In this case just the customernumber

  46. Summary • You can start your internal SOA keeping your interfaces ”clean” by separating logic and use with services. • WebsydianExpress for 2E supplies the transport layer and framework for providing web services for others to consume from your 2E application.

  47. Questions

More Related