1 Groovy for Java developers and testers How Java developers and testers could use Groovy to increase their efficiency AUGUST 6, 2015.

Slides:



Advertisements
Similar presentations
Lecture plan Information retrieval (from week 11)
Advertisements

Francisco Gonzalez Mario Rincon.  Apache CXF is an open source services framework.  CXF helps you build and develop services using frontend programming.
VAMDC Registry Portal Proof of Concept. Registry VAMDC Registry is available at – ex.jsp
1 Introduction to XML. XML eXtensible implies that users define tag content Markup implies it is a coded document Language implies it is a metalanguage.
G O B E Y O N D C O N V E N T I O N WORF: Developing DB2 UDB based Web Services on a Websphere Application Server Kris Van Thillo, ABIS Training & Consulting.
got ? Research Project – April 1998 Hang Xia, Mark Wang, Richard S. Chang Updated: R Norman, August 1999.
1 Owais Mohammad Haq Department of Computer Science Eastern Michigan University April, 2005 Java Script.
28/1/2001 Seminar in Databases in the Internet Environment Introduction to J ava S erver P ages technology by Naomi Chen.
1 HyCon Framework Overview Frank Allan Hansen and Bent Guldbjerg Christensen ! Run this presentation in presentation mode to watch animations.
UPortal: A framework for the Personalization of Library Services John Fereira: Programmer/Analyst Cornell University Mann Library.
Multiple Tiers in Action
Java Server Pages B.Ramamurthy. Java Server Pages Servlets are pure Java programs. They introduce dynamism into web pages by using programmatic content.
Java Server Team 8. Overview What is a Java Server? History Architecture Advantages Disadvantages Current Technologies Conclusion.
Groovy & Grails Jean Barmash CTO, EnergyScoreCards.com
Web Applications Basics. Introduction to Web Web features Clent/Server HTTP HyperText Markup Language URL addresses Web server - a computer program that.
Introduction to soapUI Presented by Kushan Athukorala.
Introduction to Java web programming Dr Jim Briggs JWP intro1.
Java Enterprise Edition Java Web Development Structure of a web project Introduction to Web Applications The first project Introduction to Java Web Development.
Toward an OpenSocial Life Science Gateway Wenjun Wu, Michael E. Papka, Rick Stevens.
Web Programming Language Dr. Ken Cosh Week 1 (Introduction)
Spring Roo CS476 Aleksey Bukin Peter Lew. What is Roo? Productivity tool Allows for easy creation of Enterprise Java applications Runs alongside existing.
By: Shawn Li. OUTLINE XML Definition HTML vs. XML Advantage of XML Facts Utilization SAX Definition DOM Definition History Comparison between SAX and.
M. Taimoor Khan * Java Server Pages (JSP) is a server-side programming technology that enables the creation of dynamic,
Groovy WHAT IS IT? HOW DOES IT WORK? IS IT USEFUL?
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
Project Implementation for COSC 5050 Distributed Database Applications Lab2.
Joomla! Day France SEBLOD Version 2.0 for Joomla! 1.6.
C Copyright © 2009, Oracle. All rights reserved. Appendix C: Service-Oriented Architectures.
Integrating CM Receipt to Oracle Apps Using Apex and Webservices Anthony Vendhan Sami Vellaiyan Jan 21, 2008.
Groovy in 15 minutes… Johannes Carlén Callista Enterprise AB
Design Patterns Phil Smith 28 th November Design Patterns There are many ways to produce content via Servlets and JSPs Understanding the good, the.
Java Users Group Charleston, SC June 25, 2008 Introduction to Grails by Jason McDonald.
Lecturer: Prof. Piero Fraternali, Teaching Assistant: Alessandro Bozzon, Advanced Web Technologies: Struts–
Cross Site Integration “mashups” cross site scripting.
StockWatch Developers: Nimrod Hagay Hagai Barkan Supervisors: Assaf Solomovitch Viktor Kulikov June 2009.
Web Services with Apache CXF Part 2: JAXB and WSDL to Java Robert Thornton.
Lesson 19: Site Development with FrontPage 2003 – Advanced Features.
Web Services BOF This is a proposed new working group coming out of the Grid Computing Environments Research Group, as an outgrowth of their investigations.
Project Overview Graduate Selection Process Project Goal Automate the Selection Process.
1Computer Sciences Department Princess Nourah bint Abdulrahman University.
1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications.
1 MSCS 237 Overview of web technologies (A specific type of distributed systems)
XML and SVG from PQL By Dave Doulton Computing Services University of Southampton.
ASP (Active Server Pages) by Bülent & Resul. Presentation Outline Introduction What is an ASP file? How does ASP work? What can ASP do? Differences Between.
XML Alyssa Roberts. What is XML? Extensible Markup Language Specification to creating custom mark-up languages Simplified version of SGML, originally.
1 MESSAGE EXCHANGE FOR Web Service-Based Mapping Services AHMET SAYAR INDIANA UNIVERSITY COMMUNITY GRIDS LAB. COMPUTER SCIENCE DEPARTMENT August 17, 2005.
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
August 2003 At A Glance The IRC is a platform independent, extensible, and adaptive framework that provides robust, interactive, and distributed control.
Preface IIntroduction Objectives I-2 Course Overview I-3 1Oracle Application Development Framework Objectives 1-2 J2EE Platform 1-3 Benefits of the J2EE.
Progress Report - Year 2 Extensions of the PhD Symposium Presentation Daniel McEnnis.
STRUCTURE OF JSP PRESENTED BY: SIDDHARTHA SINGH ( ) SOMYA SHRIVASTAV ( ) SONAM JINDAL ( )
Intro to Web Services Dr. John P. Abraham UTPA. What are Web Services? Applications execute across multiple computers on a network.  The machine on which.
Modern Programming Language. Web Container & Web Applications Web applications are server side applications The most essential requirement.
1 Java Server Pages A Java Server Page is a file consisting of HTML or XML markup into which special tags and code blocks are inserted When the page is.
 Before you continue you should have a basic understanding of the following:  HTML  CSS  JavaScript.
Java Programming: Advanced Topics 1 Building Web Applications Chapter 13.
By: Chad Gallati, Melissa Plakyda, Jenny Wilkes References: /a-z_programming_languages_groovy/
Java High level programming language ◦ Sun Microsystems ◦ ORACLE acquired Java Development Kit – JDK Java Runtime Environment – JRE Java Virtual Machine.
A Presentation Presentation On JSP On JSP & Online Shopping Cart Online Shopping Cart.

Added Value to XForms by Web Services Supporting XML Protocols Elina Vartiainen Timo-Pekka Viljamaa T Research Seminar on Digital Media Autumn.
Section 10.1 Define scripting
Web Programming Developing Web Applications including Servlets, and Web Services using NetBeans 6.5 with GlassFish.V3.
Understanding SOAP and REST calls The types of web service requests
Unit – 5 JAVA Web Services
Michael Robertson Yuta Takayama Google Closure Tools.
Automated Automation of REST APIs
Introduction to Grails
Groovy.
Web Application Development Using PHP
Presentation transcript:

1 Groovy for Java developers and testers How Java developers and testers could use Groovy to increase their efficiency AUGUST 6, 2015

2 Life Science Department, Saint-Petersburg, Russia Mikhail Denisov Demo project:

3 WHY GROOVY? Smooth Java integration. Runs on the JVM, 100% compatible with Java bytecode 1 Concise, familiar and easy to learn syntax (“syntactic sugar”) 3 Dynamic language, with static-typing and static compilation capabilities 4 GDK - the extension to the JDK 5 Metaprogramming (Builders, DSL), functional programming, scripting 6 Supported by many systems and frameworks 2

4 AstraZeneca SOA Factory project Over 20 web-services (DB and AD interaction) Service Bus proxy for each service 4 environments: dev, test, preprod, prod 3 regions: Emea, America, Asia 20 * 2 * 3 * 4 = 480 endpoints SOA Factory project

5 GROOVY BY EXAMPLES Working with database and files 1 HTML, JSON and XML parsing 2 JSON and XML generation 3 Working with SOAP-service 4 Groovlets 5 Advanced Groovy 6

6 Maven POM.xml configuration with Groovy-Eclipse-Compiler

7 GROOVY BASICS: variables and collections

8 GROOVY BASICS: closures and GDK

9 GROOVY BASICS: objects and classes

10 Working with database and files Case: update database with data from file

11 GROOVY TESTS: interface implementation with Map

12 HTML parsing with RegExp

13 JSON parsing with JsonSlurper, GPath expressions

14 JSON parsing with JsonSlurper, GPath expressions

15 XML parsing: Google News RSS

16 GROOVY METAPROGRAMMING: working with metaClass

17 GROOVY METAPROGRAMMING: expanding Java classes

18 GROOVY METAPROGRAMMING: missing method interception

19 XML GENERATION: class MarkupBuilder

20 XML GENERATION: class MarkupBuilder

21 JSON GENERATION: class JsonBuilder

22 SOAP Web Service interaction with WSLite SOAP WebService “Magic Square” WSDL: Add WSLite to pom.xml

23 SOAP Web Service interaction with WSLite

24 SOAP Web Service: service MagicSquare.groovy

25 SOAP Web Service: test MagicSquareTest.groovy

26 Groovlet: display results as HTML page web.xml – add groovy.servlet.GroovyServlet

27 Groovlet: display results as HTML page Create script src/main/webapp/scripts/magic1.groovy Build application, run it in the servlet container Browse the link Result would be like this

28 Groovlet: scripts/magic2.groovy - params,, application, context javax.servlet.ServletContext sessionjavax.servlet.HttpSession requestjavax.servlet.HttpServlet responsejavax.servlet.HttpResponse outresponse.getWriter() Groovlet implicit objects:

29 Groovlet: add parameters and HTML markup: results

30 Groovlet: script/magic3.groovy - add CSS

31 Groovlet: scripts/magic3.groovy - result

32 SOAFactory PROJECT UTILS

33 SOAFactory PROJECT UTILS

34 How many lines are needed to run it as a DSL script? please show the square_root of 1024

35

36 Case: we have to collect data from many independent sources (collect all jokes about Chuck)

37

38 Groovy for Java developers and testers Q & A AUGUST 6, 2015