IRMIS3 Status Gabriele Carcassi Oct 15 2008. Web tools architecture IRMIS DB (MySQL) Data service Java applets AJAX components Scripts and CLI (perl,

Slides:



Advertisements
Similar presentations
18 Copyright © 2005, Oracle. All rights reserved. Distributing Modular Applications: Introduction to Web Services.
Advertisements

Architecture of the COREP-XBRL mapper Java based web application Uses only open source packages of Java + struts.jar for the GUI + poi.jar for the reading.
UFCE8V-20-3 Information Systems Development 3 (SHAPE HK)
IRMIS3 Status Gabriele Carcassi 15 Oct IRMIS3 Status  This talk is about: what is currently downloadable from the website what is ready for production.
IRMIS Components Overview Gabriele Carcassi 18 April 2011.
ChannelFinder Directory Service Ralph Lange EPICS Spring Collaboration Meeting, June 2010 Aix-en-Provence.
CSIS0402 System Architecture K.P. Chow University of Hong Kong.
APEX & SOA Best of two worlds. Who am I? Michel van Zoest Consultant at Whitehorses BV Application Express Certified Expert SOA Suite Certified Specialist.
IS 360 Course Introduction. Slide 2 What you will Learn (1) The role of Web servers and clients How to create HTML, XHTML, and HTML 5 pages suitable for.
Outline IS400: Development of Business Applications on the Internet Fall 2004 Instructor: Dr. Boris Jukic Server Side Web Technologies: Part 2.
Multiple Tiers in Action
14 1 Chapter 14 Database Connectivity and Web Development Database Systems: Design, Implementation, and Management, Seventh Edition, Rob and Coronel.
Peoplesoft: Building and Consuming Web Services
Chapter 14 Database Connectivity and Web Technologies
Web Application Architecture: multi-tier (2-tier, 3-tier) & mvc
CRM WEB UI – ARCHITECTURE- DEFINITIONS For More details please go to
Client/Server Architectures
INTRODUCTION TO WEB DATABASE PROGRAMMING
BIT:Mobile platform Ссылка на документацию.
Joel Bapaga on Web Design Strategies Technologies Commercial Value.
Copyright © cs-tutorial.com. Introduction to Web Development In 1990 and 1991,Tim Berners-Lee created the World Wide Web at the European Laboratory for.
Configuration Management and Server Administration Mohan Bang Endeca Server.
SDPL 2001Notes 7: XML Web Sites1 7 XML Web-Site Architectures n How (and why) to apply XML techniques in the implementation of Web sites? 7.1 XML, Databases,
REST.  REST is an acronym standing for Representational State Transfer  A software architecture style for building scalable web services  Typically,
WEB API: WHY THEY MATTER ECOL 453/ Nirav Merchant
Fundamentals of Database Chapter 7 Database Technologies.
Microsoft Visual Studio 2010 Muhammad Zubair MS (FAST-NU) Experience: 5+ Years Contact:- Cell#:
HTML. Principle of Programming  Interface with PC 2 English Japanese Chinese Machine Code Compiler / Interpreter C++ Perl Assembler Machine Code.
IRMIS 2 Overview Andrew Johnson Computer Scientist, AES Controls.
IRMIS Status EPICS 2009 Vancouver D. A. Dohan. Outline IRMIS hardware model cable/cable run channel list Equipment Inventory System RDB Domain separation.
1 Welcome to CSC 301 Web Programming Charles Frank.
Mainframe (Host) - Communications - User Interface - Business Logic - DBMS - Operating System - Storage (DB Files) Terminal (Display/Keyboard) Terminal.
Plant Accession Application Maintenance Manual. Accession Application Website Environment Overview WinHost.com ASP Pages VBScript Procs Constants Style.
Session I Chapter 1 - Introduction to Web Development
Database Systems: Design, Implementation, and Management Eighth Edition Chapter 14 Database Connectivity and Web Technologies.
A FIRST TOUCH ON NOSQL SERVERS: COUCHDB GENOVEVA VARGAS SOLAR, JAVIER ESPINOSA CNRS, LIG-LAFMIA, FRANCE
Session 1 Chapter 1 - Introduction to Web Development ITI 133: HTML5 Desktop and Mobile Level I
14 1 Chapter 14 Web Database Development Database Systems: Design, Implementation, and Management, Sixth Edition, Rob and Coronel.
WEB SERVER SOFTWARE FEATURE SETS
Database Systems: Design, Implementation, and Management Eighth Edition Chapter 14 Database Connectivity and Web Technologies.
Meeting Scheduling System Capstone Project - Team#5 Fall2007.
The Jukebox is a.NET web application that plays streaming music files to it’s clients according to their favorites musical genres. Clients can rate the.
Interstage BPM v11.2 1Copyright © 2010 FUJITSU LIMITED INTERSTAGE BPM ARCHITECTURE BPMS.
1 LM 6 Database Applications Dr. Lei Li. Learning Objectives Explain three components of a client-server system Describe differences between a 2-tiered.
Status Report Hans Wenzel Geant4 Validation repository weekly meeting 13 th April 2016.
Basics Components of Web Design & Development Basics, Components, Design and Development.
IRMIS3 Data Service and Application Layer Gabriele Carcassi Oct
Web Development. Agenda Web History Network Architecture Types of Server The languages of the web Protocols API 2.
Introducing the Microsoft® .NET Framework
The Object-Oriented Thought Process Chapter 13
Web Technologies Computing Science Thompson Rivers University
Understanding SOAP and REST calls The types of web service requests
Unit – 5 JAVA Web Services
Relational Database Collaboration
Multitier Architecture, MySQL & PHP
Copyright Justin C. Klein Keane
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 2 Database System Concepts and Architecture.
Introduction to Web Services and SOA
IS 360 Course Introduction
Web Browser server client 3-Tier Architecture Apache web server PHP
GIFT / Fiscal Data Package Iteration 3
HTML5 Level I Session I Chapter 1 - Introduction to Web Development
Lecture 1: Multi-tier Architecture Overview
$, $$, $$$ API testing Edition
Introduction of Week 11 Return assignment 9-1 Collect assignment 10-1
Database Connectivity and Web Development
Introduction to Web Services and SOA
Web Technologies Computing Science Thompson Rivers University
UFCEUS-20-2 Web Programming
WCF Data Services and Silverlight
Presentation transcript:

IRMIS3 Status Gabriele Carcassi Oct

Web tools architecture IRMIS DB (MySQL) Data service Java applets AJAX components Scripts and CLI (perl, Python, …) Browser (Firefox, IE, …) XML protocol Web server (Glassfish)

Data service The architecture is your typical Service Oriented Architecture (SOA) and service is a Representational State Transfer Web Service (REST-WS) Allows to capture the business logic (all the rules that separate valid transactions from invalid transactions) in one place – Clients can be “stupid” Exposes the data in a well defined xml format – Allows the internals of the database to change – Allows to use any available xml tools

XML protocol (REST style WS) IRMIS software stack Few database utilities: backup, consistency check, etc… Client Server Integration with external tools (i.e. physcs) 3 rd party Perl/Pyton scripts 3 rd party Java apps Jython scripts Web applications JavaScript bridge Applets and Widgets Java Client API Data Service layer Database layer

How you can interact with IRMIS Just use the GUI Run scripts that we develop Read the XML directly Write phyton/perl scripts that consume the XML Write Jython script using the API

XML example: an Oscilloscope...

Importing components from Excel (using Jython) from gov.bnl.irmis.api import * from java.net import URI from java.io import File from jxl import * workbook = Workbook.getWorkbook(File(“components.xls")) sheet = workbook.getSheet(0) nRows = sheet.getRows() nColumns = sheet.getColumns() irmisDB = IrmisDB.getInstance(); irmisDB.setURI(URI(" transaction = irmisDB.createTransaction(); for row in range(1, nRows): componentTypeName = sheet.getCell(0, row).getContents(); componentType = ComponentTypes.getByName(componentTypeName); serialNumber = sheet.getCell(1, row).getContents(); Components.createComponent(transaction, componentType, serialNumber) transaction.save(); print "Operation successful"

Importing from Excel (Jython) from gov.bnl.irmis.api import * from java.net import URI from java.io import File from jxl import * workbook = Workbook.getWorkbook(File(“components.xls")) sheet = workbook.getSheet(0) nRows = sheet.getRows() nColumns = sheet.getColumns() irmisDB = IrmisDB.getInstance(); irmisDB.setURI(URI(" transaction = irmisDB.createTransaction(); for row in range(1, nRows): componentTypeName = sheet.getCell(0, row).getContents(); componentType = ComponentTypes.getByName(componentTypeName); serialNumber = sheet.getCell(1, row).getContents(); Components.createComponent(transaction, componentType, serialNumber) transaction.save(); print "Operation successful" Load excel file

Importing from Excel (Jython) from gov.bnl.irmis.api import * from java.net import URI from java.io import File from jxl import * workbook = Workbook.getWorkbook(File(“components.xls")) sheet = workbook.getSheet(0) nRows = sheet.getRows() nColumns = sheet.getColumns() irmisDB = IrmisDB.getInstance(); irmisDB.setURI(URI(" transaction = irmisDB.createTransaction(); for row in range(1, nRows): componentTypeName = sheet.getCell(0, row).getContents(); componentType = ComponentTypes.getByName(componentTypeName); serialNumber = sheet.getCell(1, row).getContents(); Components.createComponent(transaction, componentType, serialNumber) transaction.save(); print "Operation successful" Connect to the service

Importing from Excel (Jython) from gov.bnl.irmis.api import * from java.net import URI from java.io import File from jxl import * workbook = Workbook.getWorkbook(File(“components.xls")) sheet = workbook.getSheet(0) nRows = sheet.getRows() nColumns = sheet.getColumns() irmisDB = IrmisDB.getInstance(); irmisDB.setURI(URI(" transaction = irmisDB.createTransaction(); for row in range(1, nRows): componentTypeName = sheet.getCell(0, row).getContents(); componentType = ComponentTypes.getByName(componentTypeName); serialNumber = sheet.getCell(1, row).getContents(); Components.createComponent(transaction, componentType, serialNumber) transaction.save(); print "Operation successful" Loop over the rows

Importing from Excel (Jython) from gov.bnl.irmis.api import * from java.net import URI from java.io import File from jxl import * workbook = Workbook.getWorkbook(File(“components.xls")) sheet = workbook.getSheet(0) nRows = sheet.getRows() nColumns = sheet.getColumns() irmisDB = IrmisDB.getInstance(); irmisDB.setURI(URI(" transaction = irmisDB.createTransaction(); for row in range(1, nRows): componentTypeName = sheet.getCell(0, row).getContents(); componentType = ComponentTypes.getByName(componentTypeName); serialNumber = sheet.getCell(1, row).getContents(); Components.createComponent(transaction, componentType, serialNumber) transaction.save(); print "Operation successful" Get data out Create components

Application demos And now, let’s go to our development instance, and check out the web applications!

Component type editor Allows to browse the component types present in the database and to modify them or add new ones

Component browser Allows to browse the installed components, see their position in the hierarchies and how they are cabled.

Component editor Allows to modify the hierarchy and install/remove components