SlideShare a Scribd company logo
1 of 20
Download to read offline
Andreas Martin - Page 1
Master of Science in Business Information Systems FHNW
Pre-Master Information Systems
2. Infrastructure
Andreas Martin
2. Infrastructure
http://www.flickr.com/photos/muhe-e/2895256535
Andreas Martin - Page 2
Infrastructure / Toolset
 Development Environment: Eclipse IDE for Java EE Developers
& JBoss Tools
 Application Server: JBoss 7 AS
 Build-Management-Software: Maven
 Database: MySQL
 Modelling Tool: Visual Paradigm for UML
2. Infrastructure
Andreas Martin - Page 3
Eclipse IDE for Java EE Developers & JBoss Tools
2. Infrastructure
Andreas Martin - Page 4
Eclipse IDE for Java EE Developers & JBoss Tools
2. Infrastructure
DEMO
http://www.flickr.com/photos/jurvetson/489257240
Andreas Martin - Page 6
JBoss 7 AS – What is an Application Server?
2. Infrastructure
Andreas Martin - Page 7
HTTP (Web) Server vs. Servlet Container vs.
Application Server
 A HTTP (Web) server is manly used to host websites.
 Some HTTP (Web) servers can execute compiled modules
which extend the core functionalities:
 e.g. server-side programming language modules (like PHP, Perl, Phyton
etc.)
 One prominent example:
2. Infrastructure
Apache HTTP Server
Andreas Martin - Page 8
HTTP (Web) Server vs. Servlet Container vs.
Application Server
 A servlet container executes Java Servlets.
 Most servlet containers out there executes Java Server Pages
(JSP) too.
 Pure servlet container:
2. Infrastructure
Apache Tomcat
Jetty – Eclipse Foundation
Andreas Martin - Page 9
Application Server
 Usually an application server runs a generalized framework
(e.g. Java EE).
 Popular Java EE Application Servers:
2. Infrastructure
WildFly (JBoss AS)
Apache TomEE
+
=
GlassFish
IBM WebSphere Oracle Weblogic
Andreas Martin - Page 10
HTTP (Web) Server vs. Servlet Container vs.
Application Server
2. Infrastructure
HTTP (Web) Server
Website hosting
Servlet Container
Website hosting
Java Servlets (& JSP)
Extended
Servlet Container
Website hosting
Java Servlets (& JSP)
Deployed Framework
(e.g. Spring, CXF, Java
EE)
Application Server
Website hosting
Java Servlets (& JSP)
Generalized
Framework
(e.g. Java EE)
Application level
services
(e.g. Connection
Pooling, Object
Pooling, Transaction
Support, Messaging
services)
DEMO
http://www.flickr.com/photos/jurvetson/489257240
Andreas Martin - Page 12
Maven
A software project management and comprehension tool.
2. Infrastructure
Andreas Martin - Page 13
Definition
 Apache Maven is a software project management and comprehension tool.
 Based on the concept of a project object model (POM)
 Maven can manage a project's build, binaries, reporting and documentation from a
central piece of information.
Source and licensing: Arnaud Héritier 2010 – Apache Maven - http://www.slideshare.net/aheritier/20110303-e-xovnapachemaven
2. Infrastructure
Andreas Martin - Page 14
Conventions
 1 project = 1 artefact (pom, jar, war, ear, …)
 Standardized
 project descriptor (POM)
 build lifecycle
 directories layout
 *.java to compile in
src/[main|test]/java
 *.xml, *.properties needed
in classpath and to bundle
in archive in src/[main|test]/resources
 target directory for generated stuffs (sources, classes, …)
 …
Source and licensing: Arnaud Héritier 2010 – Apache Maven - http://www.slideshare.net/aheritier/20110303-e-xovnapachemaven
2. Infrastructure
Andreas Martin - Page 15
POM
 An XML file (pom.xml)
 Describing
 Project identification
 Project version
 Project description
 Build settings
 Dependencies
 …
<?xml version="1.0" encoding="UTF-8"?>
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>net.aheritier.samples</groupId>
<artifactId>simple-webapp</artifactId>
<version>1.1-SNAPSHOT</version>
<packaging>war</packaging>
<name>Simple webapp</name>
<inceptionYear>2007</inceptionYear>
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-struts</artifactId>
<version>2.0.2</version>
</dependency>
...
</dependencies>
</project>
Source and licensing: Arnaud Héritier 2010 – Apache Maven - http://www.slideshare.net/aheritier/20110303-e-xovnapachemaven
2. Infrastructure
Andreas Martin - Page 16
Artefact Repository
 By default :
 A central repository
 http://repo1.maven.org/m
aven2
 Several dozen of Gb of OSS
libraries
 A local repository
 ${user.home}/.m2/reposit
ory
 All artefacts
 Used by maven and its
plugins
 Used by your projects
(dependencies)
 Produced by your
projects
Source and licensing: Arnaud Héritier 2010 – Apache Maven - http://www.slideshare.net/aheritier/20110303-e-xovnapachemaven
2. Infrastructure
Andreas Martin - Page 17
Artefact Repository
 By default Maven downloads
artefacts required by the
project or itself from central
 Downloaded artefacts are
stored in the local repository
 Used to store :
 Project’s binaries
 Project’s dependencies
 Maven and plug-ins
binaries
Source and licensing: Arnaud Héritier 2010 – Apache Maven - http://www.slideshare.net/aheritier/20110303-e-xovnapachemaven
2. Infrastructure
Andreas Martin - Page 18
Dependencies
Without Maven With Maven
2. Infrastructure
Source and licensing: Arnaud Héritier 2010 – Apache Maven - http://www.slideshare.net/aheritier/20110303-e-xovnapachemaven
Andreas Martin - Page 19
Versions
 Project and dependency versions
 Two different version variants
 SNAPSHOT version
 The version number ends with –SNAPSHOT
 The project is in development
 Deliveries are changing over the time and are overridden after
each build
 Artefacts are deployed with a timestamp on remote repositories
 RELEASE version
 The version number doesn’t end with –SNAPSHOT
 Binaries won’t change
Source and licensing: Arnaud Héritier 2010 – Apache Maven - http://www.slideshare.net/aheritier/20110303-e-xovnapachemaven
2. Infrastructure
DEMO
http://www.flickr.com/photos/jurvetson/489257240

More Related Content

What's hot

Deployment with ExpressionEngine
Deployment with ExpressionEngineDeployment with ExpressionEngine
Deployment with ExpressionEngineGreen Egg Media
 
Apache Web server Complete Guide
Apache Web server Complete GuideApache Web server Complete Guide
Apache Web server Complete Guidewebhostingguy
 
Technical Aspects of SLiMS
Technical Aspects of SLiMSTechnical Aspects of SLiMS
Technical Aspects of SLiMShendrowicaksono
 
Web server installation_configuration_apache
Web server installation_configuration_apacheWeb server installation_configuration_apache
Web server installation_configuration_apacheShaojie Yang
 
Hardening Apache Web Server by Aswin
Hardening Apache Web Server by AswinHardening Apache Web Server by Aswin
Hardening Apache Web Server by AswinAgate Studio
 
Java, Eclipse, Maven & JSF tutorial
Java, Eclipse, Maven & JSF tutorialJava, Eclipse, Maven & JSF tutorial
Java, Eclipse, Maven & JSF tutorialRaghavan Mohan
 
Whats new in ASP.NET 4.0
Whats new in ASP.NET 4.0Whats new in ASP.NET 4.0
Whats new in ASP.NET 4.0py_sunil
 
Introduction to Apache Tomcat 7 Presentation
Introduction to Apache Tomcat 7 PresentationIntroduction to Apache Tomcat 7 Presentation
Introduction to Apache Tomcat 7 PresentationTomcat Expert
 

What's hot (13)

Sonar qube
Sonar qubeSonar qube
Sonar qube
 
Deployment with ExpressionEngine
Deployment with ExpressionEngineDeployment with ExpressionEngine
Deployment with ExpressionEngine
 
Apache Web server Complete Guide
Apache Web server Complete GuideApache Web server Complete Guide
Apache Web server Complete Guide
 
Technical Aspects of SLiMS
Technical Aspects of SLiMSTechnical Aspects of SLiMS
Technical Aspects of SLiMS
 
Web server installation_configuration_apache
Web server installation_configuration_apacheWeb server installation_configuration_apache
Web server installation_configuration_apache
 
roswell_it_wiki
roswell_it_wikiroswell_it_wiki
roswell_it_wiki
 
Hardening Apache Web Server by Aswin
Hardening Apache Web Server by AswinHardening Apache Web Server by Aswin
Hardening Apache Web Server by Aswin
 
Maven
MavenMaven
Maven
 
Java, Eclipse, Maven & JSF tutorial
Java, Eclipse, Maven & JSF tutorialJava, Eclipse, Maven & JSF tutorial
Java, Eclipse, Maven & JSF tutorial
 
Whats new in ASP.NET 4.0
Whats new in ASP.NET 4.0Whats new in ASP.NET 4.0
Whats new in ASP.NET 4.0
 
Apache
ApacheApache
Apache
 
Servlets
ServletsServlets
Servlets
 
Introduction to Apache Tomcat 7 Presentation
Introduction to Apache Tomcat 7 PresentationIntroduction to Apache Tomcat 7 Presentation
Introduction to Apache Tomcat 7 Presentation
 

Viewers also liked

Explanation Aware Design And Computing 2009 09 11
Explanation Aware Design And Computing   2009 09 11Explanation Aware Design And Computing   2009 09 11
Explanation Aware Design And Computing 2009 09 11Thomas Roth-Berghofer
 
Integrating an Enterprise Architecture Ontology in a Case-based Reasoning App...
Integrating an Enterprise Architecture Ontology in a Case-based Reasoning App...Integrating an Enterprise Architecture Ontology in a Case-based Reasoning App...
Integrating an Enterprise Architecture Ontology in a Case-based Reasoning App...andreasmartin
 
Case based reasoning technique
Case based reasoning techniqueCase based reasoning technique
Case based reasoning techniqueell_suhaily
 
Risk Analysis On It Assets Using Case Based Reasoning
Risk Analysis On It Assets Using Case Based ReasoningRisk Analysis On It Assets Using Case Based Reasoning
Risk Analysis On It Assets Using Case Based ReasoningAfeef Veetil
 
Problem based learning
Problem based learningProblem based learning
Problem based learningSoumya Sahoo
 
Study: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving CarsStudy: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving CarsLinkedIn
 
Hype vs. Reality: The AI Explainer
Hype vs. Reality: The AI ExplainerHype vs. Reality: The AI Explainer
Hype vs. Reality: The AI ExplainerLuminary Labs
 

Viewers also liked (7)

Explanation Aware Design And Computing 2009 09 11
Explanation Aware Design And Computing   2009 09 11Explanation Aware Design And Computing   2009 09 11
Explanation Aware Design And Computing 2009 09 11
 
Integrating an Enterprise Architecture Ontology in a Case-based Reasoning App...
Integrating an Enterprise Architecture Ontology in a Case-based Reasoning App...Integrating an Enterprise Architecture Ontology in a Case-based Reasoning App...
Integrating an Enterprise Architecture Ontology in a Case-based Reasoning App...
 
Case based reasoning technique
Case based reasoning techniqueCase based reasoning technique
Case based reasoning technique
 
Risk Analysis On It Assets Using Case Based Reasoning
Risk Analysis On It Assets Using Case Based ReasoningRisk Analysis On It Assets Using Case Based Reasoning
Risk Analysis On It Assets Using Case Based Reasoning
 
Problem based learning
Problem based learningProblem based learning
Problem based learning
 
Study: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving CarsStudy: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving Cars
 
Hype vs. Reality: The AI Explainer
Hype vs. Reality: The AI ExplainerHype vs. Reality: The AI Explainer
Hype vs. Reality: The AI Explainer
 

Similar to 2014 Pre-MSc-IS-2 Infrastructure

What's New in AppFuse 2.0
What's New in AppFuse 2.0What's New in AppFuse 2.0
What's New in AppFuse 2.0Matt Raible
 
Gemini WEB and Virgo
Gemini WEB and VirgoGemini WEB and Virgo
Gemini WEB and VirgoHristo Iliev
 
Spring hibernate tutorial
Spring hibernate tutorialSpring hibernate tutorial
Spring hibernate tutorialRohit Jagtap
 
Silverlight Development & The Model-View-ViewModel Pattern
Silverlight Development & The Model-View-ViewModel PatternSilverlight Development & The Model-View-ViewModel Pattern
Silverlight Development & The Model-View-ViewModel PatternDerek Novavi
 
Maven 2.0 - Improve your build patterns
Maven 2.0 - Improve your build patternsMaven 2.0 - Improve your build patterns
Maven 2.0 - Improve your build patternselliando dias
 
eXo Platform SEA - Play Framework Introduction
eXo Platform SEA - Play Framework IntroductioneXo Platform SEA - Play Framework Introduction
eXo Platform SEA - Play Framework Introductionvstorm83
 
Developing Java Web Applications
Developing Java Web ApplicationsDeveloping Java Web Applications
Developing Java Web Applicationshchen1
 
Running Microservices on AWS Elastic Beanstalk
Running Microservices on AWS Elastic BeanstalkRunning Microservices on AWS Elastic Beanstalk
Running Microservices on AWS Elastic BeanstalkAmazon Web Services
 
Running Microservices and Docker on AWS Elastic Beanstalk - August 2016 Month...
Running Microservices and Docker on AWS Elastic Beanstalk - August 2016 Month...Running Microservices and Docker on AWS Elastic Beanstalk - August 2016 Month...
Running Microservices and Docker on AWS Elastic Beanstalk - August 2016 Month...Amazon Web Services
 
Hints and Tips for Modularizing Existing Enterprise Applications (OSGi Commun...
Hints and Tips for Modularizing Existing Enterprise Applications (OSGi Commun...Hints and Tips for Modularizing Existing Enterprise Applications (OSGi Commun...
Hints and Tips for Modularizing Existing Enterprise Applications (OSGi Commun...Graham Charters
 
Maven 2.0 - Project management and comprehension tool
Maven 2.0 - Project management and comprehension toolMaven 2.0 - Project management and comprehension tool
Maven 2.0 - Project management and comprehension toolelliando dias
 
Maven introduction in Mule
Maven introduction in MuleMaven introduction in Mule
Maven introduction in MuleShahid Shaik
 
Chapter6 web apps-tomcat
Chapter6 web apps-tomcatChapter6 web apps-tomcat
Chapter6 web apps-tomcatVenkat Gowda
 
Seven Simple Reasons to Use AppFuse
Seven Simple Reasons to Use AppFuseSeven Simple Reasons to Use AppFuse
Seven Simple Reasons to Use AppFuseMatt Raible
 
Wix Application Framework
Wix Application FrameworkWix Application Framework
Wix Application FrameworkRan Mizrahi
 
NUS-ISS Learning Day 2018- Deploying a microservices app using docker and kub...
NUS-ISS Learning Day 2018- Deploying a microservices app using docker and kub...NUS-ISS Learning Day 2018- Deploying a microservices app using docker and kub...
NUS-ISS Learning Day 2018- Deploying a microservices app using docker and kub...NUS-ISS
 

Similar to 2014 Pre-MSc-IS-2 Infrastructure (20)

bjhbj
bjhbjbjhbj
bjhbj
 
What's New in AppFuse 2.0
What's New in AppFuse 2.0What's New in AppFuse 2.0
What's New in AppFuse 2.0
 
Gemini WEB and Virgo
Gemini WEB and VirgoGemini WEB and Virgo
Gemini WEB and Virgo
 
Spring hibernate tutorial
Spring hibernate tutorialSpring hibernate tutorial
Spring hibernate tutorial
 
Maven
MavenMaven
Maven
 
Silverlight Development & The Model-View-ViewModel Pattern
Silverlight Development & The Model-View-ViewModel PatternSilverlight Development & The Model-View-ViewModel Pattern
Silverlight Development & The Model-View-ViewModel Pattern
 
Maven 2.0 - Improve your build patterns
Maven 2.0 - Improve your build patternsMaven 2.0 - Improve your build patterns
Maven 2.0 - Improve your build patterns
 
eXo Platform SEA - Play Framework Introduction
eXo Platform SEA - Play Framework IntroductioneXo Platform SEA - Play Framework Introduction
eXo Platform SEA - Play Framework Introduction
 
Developing Java Web Applications
Developing Java Web ApplicationsDeveloping Java Web Applications
Developing Java Web Applications
 
Ah java-ppt1
Ah java-ppt1Ah java-ppt1
Ah java-ppt1
 
Running Microservices on AWS Elastic Beanstalk
Running Microservices on AWS Elastic BeanstalkRunning Microservices on AWS Elastic Beanstalk
Running Microservices on AWS Elastic Beanstalk
 
Running Microservices and Docker on AWS Elastic Beanstalk - August 2016 Month...
Running Microservices and Docker on AWS Elastic Beanstalk - August 2016 Month...Running Microservices and Docker on AWS Elastic Beanstalk - August 2016 Month...
Running Microservices and Docker on AWS Elastic Beanstalk - August 2016 Month...
 
Hints and Tips for Modularizing Existing Enterprise Applications (OSGi Commun...
Hints and Tips for Modularizing Existing Enterprise Applications (OSGi Commun...Hints and Tips for Modularizing Existing Enterprise Applications (OSGi Commun...
Hints and Tips for Modularizing Existing Enterprise Applications (OSGi Commun...
 
Maven 2.0 - Project management and comprehension tool
Maven 2.0 - Project management and comprehension toolMaven 2.0 - Project management and comprehension tool
Maven 2.0 - Project management and comprehension tool
 
Maven introduction in Mule
Maven introduction in MuleMaven introduction in Mule
Maven introduction in Mule
 
Chapter6 web apps-tomcat
Chapter6 web apps-tomcatChapter6 web apps-tomcat
Chapter6 web apps-tomcat
 
Seven Simple Reasons to Use AppFuse
Seven Simple Reasons to Use AppFuseSeven Simple Reasons to Use AppFuse
Seven Simple Reasons to Use AppFuse
 
Android Anatomy
Android  AnatomyAndroid  Anatomy
Android Anatomy
 
Wix Application Framework
Wix Application FrameworkWix Application Framework
Wix Application Framework
 
NUS-ISS Learning Day 2018- Deploying a microservices app using docker and kub...
NUS-ISS Learning Day 2018- Deploying a microservices app using docker and kub...NUS-ISS Learning Day 2018- Deploying a microservices app using docker and kub...
NUS-ISS Learning Day 2018- Deploying a microservices app using docker and kub...
 

More from andreasmartin

A Case Modelling Language for Process Variant Management in Case-based Reasoning
A Case Modelling Language for Process Variant Management in Case-based ReasoningA Case Modelling Language for Process Variant Management in Case-based Reasoning
A Case Modelling Language for Process Variant Management in Case-based Reasoningandreasmartin
 
2014 Pre-MSc-IS-6 Presentation Layer
2014 Pre-MSc-IS-6 Presentation Layer2014 Pre-MSc-IS-6 Presentation Layer
2014 Pre-MSc-IS-6 Presentation Layerandreasmartin
 
2014 Pre-MSc-IS-5 Process Layer
2014 Pre-MSc-IS-5 Process Layer2014 Pre-MSc-IS-5 Process Layer
2014 Pre-MSc-IS-5 Process Layerandreasmartin
 
2014 Pre-MSc-IS-4 Business Logic Layer
2014 Pre-MSc-IS-4 Business Logic Layer2014 Pre-MSc-IS-4 Business Logic Layer
2014 Pre-MSc-IS-4 Business Logic Layerandreasmartin
 
2014 Pre-MSc-IS-3 Persistence Layer
2014 Pre-MSc-IS-3 Persistence Layer2014 Pre-MSc-IS-3 Persistence Layer
2014 Pre-MSc-IS-3 Persistence Layerandreasmartin
 
2014 Pre-MSc-IS-1 Java Enterprise Edition and Information Systems Layering
2014 Pre-MSc-IS-1 Java Enterprise Edition and Information Systems Layering2014 Pre-MSc-IS-1 Java Enterprise Edition and Information Systems Layering
2014 Pre-MSc-IS-1 Java Enterprise Edition and Information Systems Layeringandreasmartin
 
2014 Pre-MSc-IS-0 Information Systems Modelling and Design
2014 Pre-MSc-IS-0 Information Systems Modelling and Design2014 Pre-MSc-IS-0 Information Systems Modelling and Design
2014 Pre-MSc-IS-0 Information Systems Modelling and Designandreasmartin
 

More from andreasmartin (7)

A Case Modelling Language for Process Variant Management in Case-based Reasoning
A Case Modelling Language for Process Variant Management in Case-based ReasoningA Case Modelling Language for Process Variant Management in Case-based Reasoning
A Case Modelling Language for Process Variant Management in Case-based Reasoning
 
2014 Pre-MSc-IS-6 Presentation Layer
2014 Pre-MSc-IS-6 Presentation Layer2014 Pre-MSc-IS-6 Presentation Layer
2014 Pre-MSc-IS-6 Presentation Layer
 
2014 Pre-MSc-IS-5 Process Layer
2014 Pre-MSc-IS-5 Process Layer2014 Pre-MSc-IS-5 Process Layer
2014 Pre-MSc-IS-5 Process Layer
 
2014 Pre-MSc-IS-4 Business Logic Layer
2014 Pre-MSc-IS-4 Business Logic Layer2014 Pre-MSc-IS-4 Business Logic Layer
2014 Pre-MSc-IS-4 Business Logic Layer
 
2014 Pre-MSc-IS-3 Persistence Layer
2014 Pre-MSc-IS-3 Persistence Layer2014 Pre-MSc-IS-3 Persistence Layer
2014 Pre-MSc-IS-3 Persistence Layer
 
2014 Pre-MSc-IS-1 Java Enterprise Edition and Information Systems Layering
2014 Pre-MSc-IS-1 Java Enterprise Edition and Information Systems Layering2014 Pre-MSc-IS-1 Java Enterprise Edition and Information Systems Layering
2014 Pre-MSc-IS-1 Java Enterprise Edition and Information Systems Layering
 
2014 Pre-MSc-IS-0 Information Systems Modelling and Design
2014 Pre-MSc-IS-0 Information Systems Modelling and Design2014 Pre-MSc-IS-0 Information Systems Modelling and Design
2014 Pre-MSc-IS-0 Information Systems Modelling and Design
 

Recently uploaded

Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Hyundai Motor Group
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAndikSusilo4
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 

Recently uploaded (20)

Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
The transition to renewables in India.pdf
The transition to renewables in India.pdfThe transition to renewables in India.pdf
The transition to renewables in India.pdf
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 

2014 Pre-MSc-IS-2 Infrastructure

  • 1. Andreas Martin - Page 1 Master of Science in Business Information Systems FHNW Pre-Master Information Systems 2. Infrastructure Andreas Martin 2. Infrastructure http://www.flickr.com/photos/muhe-e/2895256535
  • 2. Andreas Martin - Page 2 Infrastructure / Toolset  Development Environment: Eclipse IDE for Java EE Developers & JBoss Tools  Application Server: JBoss 7 AS  Build-Management-Software: Maven  Database: MySQL  Modelling Tool: Visual Paradigm for UML 2. Infrastructure
  • 3. Andreas Martin - Page 3 Eclipse IDE for Java EE Developers & JBoss Tools 2. Infrastructure
  • 4. Andreas Martin - Page 4 Eclipse IDE for Java EE Developers & JBoss Tools 2. Infrastructure
  • 6. Andreas Martin - Page 6 JBoss 7 AS – What is an Application Server? 2. Infrastructure
  • 7. Andreas Martin - Page 7 HTTP (Web) Server vs. Servlet Container vs. Application Server  A HTTP (Web) server is manly used to host websites.  Some HTTP (Web) servers can execute compiled modules which extend the core functionalities:  e.g. server-side programming language modules (like PHP, Perl, Phyton etc.)  One prominent example: 2. Infrastructure Apache HTTP Server
  • 8. Andreas Martin - Page 8 HTTP (Web) Server vs. Servlet Container vs. Application Server  A servlet container executes Java Servlets.  Most servlet containers out there executes Java Server Pages (JSP) too.  Pure servlet container: 2. Infrastructure Apache Tomcat Jetty – Eclipse Foundation
  • 9. Andreas Martin - Page 9 Application Server  Usually an application server runs a generalized framework (e.g. Java EE).  Popular Java EE Application Servers: 2. Infrastructure WildFly (JBoss AS) Apache TomEE + = GlassFish IBM WebSphere Oracle Weblogic
  • 10. Andreas Martin - Page 10 HTTP (Web) Server vs. Servlet Container vs. Application Server 2. Infrastructure HTTP (Web) Server Website hosting Servlet Container Website hosting Java Servlets (& JSP) Extended Servlet Container Website hosting Java Servlets (& JSP) Deployed Framework (e.g. Spring, CXF, Java EE) Application Server Website hosting Java Servlets (& JSP) Generalized Framework (e.g. Java EE) Application level services (e.g. Connection Pooling, Object Pooling, Transaction Support, Messaging services)
  • 12. Andreas Martin - Page 12 Maven A software project management and comprehension tool. 2. Infrastructure
  • 13. Andreas Martin - Page 13 Definition  Apache Maven is a software project management and comprehension tool.  Based on the concept of a project object model (POM)  Maven can manage a project's build, binaries, reporting and documentation from a central piece of information. Source and licensing: Arnaud Héritier 2010 – Apache Maven - http://www.slideshare.net/aheritier/20110303-e-xovnapachemaven 2. Infrastructure
  • 14. Andreas Martin - Page 14 Conventions  1 project = 1 artefact (pom, jar, war, ear, …)  Standardized  project descriptor (POM)  build lifecycle  directories layout  *.java to compile in src/[main|test]/java  *.xml, *.properties needed in classpath and to bundle in archive in src/[main|test]/resources  target directory for generated stuffs (sources, classes, …)  … Source and licensing: Arnaud Héritier 2010 – Apache Maven - http://www.slideshare.net/aheritier/20110303-e-xovnapachemaven 2. Infrastructure
  • 15. Andreas Martin - Page 15 POM  An XML file (pom.xml)  Describing  Project identification  Project version  Project description  Build settings  Dependencies  … <?xml version="1.0" encoding="UTF-8"?> <project> <modelVersion>4.0.0</modelVersion> <groupId>net.aheritier.samples</groupId> <artifactId>simple-webapp</artifactId> <version>1.1-SNAPSHOT</version> <packaging>war</packaging> <name>Simple webapp</name> <inceptionYear>2007</inceptionYear> <dependencies> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-struts</artifactId> <version>2.0.2</version> </dependency> ... </dependencies> </project> Source and licensing: Arnaud Héritier 2010 – Apache Maven - http://www.slideshare.net/aheritier/20110303-e-xovnapachemaven 2. Infrastructure
  • 16. Andreas Martin - Page 16 Artefact Repository  By default :  A central repository  http://repo1.maven.org/m aven2  Several dozen of Gb of OSS libraries  A local repository  ${user.home}/.m2/reposit ory  All artefacts  Used by maven and its plugins  Used by your projects (dependencies)  Produced by your projects Source and licensing: Arnaud Héritier 2010 – Apache Maven - http://www.slideshare.net/aheritier/20110303-e-xovnapachemaven 2. Infrastructure
  • 17. Andreas Martin - Page 17 Artefact Repository  By default Maven downloads artefacts required by the project or itself from central  Downloaded artefacts are stored in the local repository  Used to store :  Project’s binaries  Project’s dependencies  Maven and plug-ins binaries Source and licensing: Arnaud Héritier 2010 – Apache Maven - http://www.slideshare.net/aheritier/20110303-e-xovnapachemaven 2. Infrastructure
  • 18. Andreas Martin - Page 18 Dependencies Without Maven With Maven 2. Infrastructure Source and licensing: Arnaud Héritier 2010 – Apache Maven - http://www.slideshare.net/aheritier/20110303-e-xovnapachemaven
  • 19. Andreas Martin - Page 19 Versions  Project and dependency versions  Two different version variants  SNAPSHOT version  The version number ends with –SNAPSHOT  The project is in development  Deliveries are changing over the time and are overridden after each build  Artefacts are deployed with a timestamp on remote repositories  RELEASE version  The version number doesn’t end with –SNAPSHOT  Binaries won’t change Source and licensing: Arnaud Héritier 2010 – Apache Maven - http://www.slideshare.net/aheritier/20110303-e-xovnapachemaven 2. Infrastructure