The propeties file will contain a main.class property, maybe an optional main.method property, and a set of description properties.

Size: px
Start display at page:

Download "The propeties file will contain a main.class property, maybe an optional main.method property, and a set of description properties."

Transcription

1 Executables This doc describes the design-in-progress for revamping the command-line execution of openejb. Basic ideas: Commands can be added/removed (start, stop, test, validate, deploy) Adding/removing only requires adding/removing jars from the classpath We can stuff properties files into jars at: META-INF/org.openejb.cli/{name The propeties file will contain a main.class property, maybe an optional main.method property, and a set of description properties. Here is an example of the start command: It would be located at META-INF/org.openejb.cli/start start main.class=org.openejb.server.main description.en=starts the Remote Server description.es=ejecuta el Servidor Remoto We would pull in all these files in the launcher's main method and parse them. If someone typed "openejb --help" then we would list the commands and descriptions. Getting the properties files Hiram wrote some code like this for activeio FactoryFinder.java /** * */ package org.activeio; import java.io.bufferedinputstream; import java.io.ioexception; import java.io.inputstream; import java.util.properties; import EDU.oswego.cs.dl.util.concurrent.ConcurrentHashMap; public class FactoryFinder {

2 private final String path; private final ConcurrentHashMap classmap = new ConcurrentHashMap(); public FactoryFinder(String path) { this.path = path; /** * Creates a new instance of the given key * key * is the key to add to the path to find a text file * containing the factory name a newly created instance */ public Object newinstance(string key) throws IllegalAccessException, InstantiationException, IOException, ClassNotFoundException { return newinstance(key, null); public Object newinstance(string key, String propertyprefix) throws IllegalAccessException, InstantiationException, IOException, ClassNotFoundException { if (propertyprefix == null) propertyprefix = ""; Class clazz = (Class) classmap.get(propertyprefix+key); if( clazz == null ) { clazz = newinstance(dofindfactoryproperies(key), propertyprefix); return clazz.newinstance(); private Class newinstance(properties properties, String propertyprefix) throws ClassNotFoundException, InstantiationException, IllegalAccessException, IOException { String classname = properties.getproperty(propertyprefix + "class"); if (classname == null) { throw new IOException("Expected property is missing: " + propertyprefix + "class"); Class clazz; clazz = Thread.currentThread().getContextClassLoader(). loadclass(classname); catch (ClassNotFoundException e) { clazz = FactoryFinder.class.getClassLoader().loadClass (classname);

3 return clazz; private Properties dofindfactoryproperies(string key) throws IOException, ClassNotFoundException { String uri = path + key; // lets try the thread context class loader first InputStream in = Thread.currentThread().getContextClassLoader(). getresourceasstream(uri); in = FactoryFinder.class.getClassLoader().getResourceAsStream (uri); throw new IOException("Could not find factory class for resource: " + uri); // lets load the file BufferedInputStream reader = null; reader = new BufferedInputStream(in); Properties properties = new Properties(); properties.load(reader); return properties; finally { reader.close(); catch (Exception e) { If we used a class similar to that, we could get the commands like such:

4 Main.java FactoryFinder finder = new FactoryFinder("META-INF/org.openejb.cli/"); Properties props = finder.dofindfactoryproperies("start") commands.put("start",props); // we should try and load them all into properties instances and map them in advance //.. later to list help String local = //get the i18n 2 character local (en, es, fr...) for each commands.entryset()... { Map.Entry entry = commandentries.next(); String command = entry.getkey(); Properties props = (Properties) entry.getvalue(); String description = props.getproperty("description."+local, props. getproperty("description")); System.out.print(" "+command+"\t"+description); //.. later to execute a command Properties props = (Properties)commands.get("start"); String mainclass = props.getproperty("main.class"); Class clazz = getclassloader().loadclass(mainclass); Method mainmethod = clazz.getmethod("main", new Class[]{String[].class); mainmethod.invoke(args); // obviously the "start" arg has been shaved off first Actual implementation I took a different approach. Since we won't use this class to actually return a class loaded from the properties file, I made minor changes. I also made the CommandFinder.java capable of finding all possible command homes so that others wouldn't have to implement it themselves. Also, the CommandFinder will automatically set the openejb.home. The idea is that we may be able to get rid of all of the scripts checking for OPENEJB_HOME for us. This is the initial concept so please make changes or suggestions. CommandFinder.java package org.openejb.cli; import java.io.bufferedinputstream; import java.io.file; import java.io.ioexception; import java.io.inputstream; import java.net.url; import java.util.collections; import java.util.enumeration; import java.util.hashmap; import java.util.map;

5 import java.util.properties; public class CommandFinder { private String path; private Map classmap = Collections.synchronizedMap(new HashMap()); public CommandFinder(String path) { this.path = path; public Properties dofindcommandproperies(string key) throws IOException { String uri = path + key; // lets try the thread context class loader first InputStream in = Thread.currentThread().getContextClassLoader(). getresourceasstream(uri); in = CommandFinder.class.getClassLoader().getResourceAsStream (uri); throw new IOException("Could not find factory class for resource: " + uri); // lets load the file BufferedInputStream reader = null; reader = new BufferedInputStream(in); Properties properties = new Properties(); properties.load(reader); //All is well, set openejb.home URL propsurl = Thread.currentThread().getContextClassLoader(). getresource(uri); String propsstring = propsurl.getfile(); URL jarurl; File jarfile; ("!")); propsstring = propsstring.substring(0, propsstring.indexof jarurl = new URL(propsString); jarfile = new File(jarURL.getFile()); if (jarfile.getname().indexof("openejb-core") > -1) { File lib = jarfile.getparentfile(); File home = lib.getparentfile(); getabsolutepath()); System.setProperty("openejb.home", home.

6 return properties; finally { reader.close(); catch (Exception e) { public Enumeration dofindcommands() throws IOException { return Thread.currentThread().getContextClassLoader(). getresources(path); Current Implementation Usage The usage for this is the same as before but you would use the following approach to run instead of the OPENEJB_HOME/bin/openejb command: Usage java -jar OPENEJB_HOME/lib/openejb-core-<VERSION>.jar Eventually, once David and I talk, we will wrap this in a script, like we do now. Right now, only the core commands are implemented: deploy help start stop validate Current Questions Before Integrating Into Mainstream Classpath - Will the command implementors be responsible for managing their classpath? Logging - Will we log errors in the CommandFinder.java or continue as-is outputting StackTrace and OpenEJB messages Handling non-core command - We should have an OPENEJB_HOME/lib/etc where all 3rd party commands, like tests, can house their jars. We need a standard location so the code can just work without the user having to add things to the classpath manually Wrapping in script - We will eventually wrap our executable jar in a script. Help! openejb --help (list the commands and descriptions) This would be the job of the main class of the launcher. It would find all the commands in the system, and list their names and print their "description" property. openejb start --help (list the start help text)

7 The main class of the launcher would do nothing with this. The start command would need to grab it's help text and print it to the system.out. Yes, this is extra work, but the various commands already support this. Also, at some point we won't have the help text as is and will use commons.cli to create the text.

CS5233 Components Models and Engineering

CS5233 Components Models and Engineering Prof. Dr. Th. Letschert CS5233 Components Models and Engineering - Komponententechnologien Master of Science (Informatik) Working with Jars (and other files using NIO) Seite 1 Jars http://download.oracle.com/javase/tutorial/deployment/jar/index.html

More information

Informatica PIM. Data Lookup via Java Transformations. Version: Date:

Informatica PIM. Data Lookup via Java Transformations. Version: Date: Informatica PIM Data Lookup via Java Transformations Version: Date: 23 July 29, 2014 Table of Contents Introduction 3 Step-by-step example 3 Create a new Java Transformation 3 Include code to retrieve

More information

Using Properties for runtime ICAN 5.0.x JCD Configuration

Using Properties for runtime ICAN 5.0.x JCD Configuration Using Properties for runtime ICAN 5.0.x JCD Configuration Michael Czapski OCTOBER 2004 Page 1 of 13 Table of Contents Introduction... 3 IS JVM Properties... 4 Setting... 4 Propagating to Runtime... 5 Using

More information

OpenClinica: Towards Database Abstraction, Part 1

OpenClinica: Towards Database Abstraction, Part 1 OpenClinica: Towards Database Abstraction, Part 1 Author: Tom Hickerson, Akaza Research Date Created: 8/26/2004 4:17 PM Date Updated: 6/10/2005 3:22 PM, Document Version: v0.3 Document Summary This document

More information

Apache Felix Framework Launching and Embedding

Apache Felix Framework Launching and Embedding Apache Felix Framework Launching and Embedding Apache Felix Framework Launching and Embedding [This document describes framework launching introduced in Felix Framework 2.0.0 and continuing with the latest

More information

Basic Tutorial on Creating Custom Policy Actions

Basic Tutorial on Creating Custom Policy Actions Basic Tutorial on Creating Custom Policy Actions This tutorial introduces the Policy API to create a custom policy action. As an example you will write an action which excludes certain values for an asset

More information

Today. Book-keeping. File I/O. Subscribe to sipb-iap-java-students. Inner classes. Debugging tools

Today. Book-keeping. File I/O. Subscribe to sipb-iap-java-students. Inner classes.  Debugging tools Today Book-keeping File I/O Subscribe to sipb-iap-java-students Inner classes http://sipb.mit.edu/iap/java/ Debugging tools Problem set 1 questions? Problem set 2 released tomorrow 1 2 So far... Reading

More information

Java Cookbook. Java Action specification. $ java -Xms512m a.b.c.mymainclass arg1 arg2

Java Cookbook. Java Action specification. $ java -Xms512m a.b.c.mymainclass arg1 arg2 Java Cookbook This document comprehensively describes the procedure of running Java code using Oozie. Its targeted audience is all forms of users who will install, use and operate Oozie. Java Action specification

More information

/* Copyright 2012 Robert C. Ilardi

/* Copyright 2012 Robert C. Ilardi / Copyright 2012 Robert C. Ilardi Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

More information

Exception Handling. Exception Handling

Exception Handling. Exception Handling References: Jacquie Barker, Beginning Java Objects ; Rick Mercer, Computing Fundamentals With Java; Wirfs - Brock et. al., Martin Fowler, OOPSLA 99 Tutorial ; internet notes; notes:h. Conrad Cunningham

More information

Here is a hierarchy of classes to deal with Input and Output streams.

Here is a hierarchy of classes to deal with Input and Output streams. PART 15 15. Files and I/O 15.1 Reading and Writing Files A stream can be defined as a sequence of data. The InputStream is used to read data from a source and the OutputStream is used for writing data

More information

CS506 Web Design & Development Final Term Solved MCQs with Reference

CS506 Web Design & Development Final Term Solved MCQs with Reference with Reference I am student in MCS (Virtual University of Pakistan). All the MCQs are solved by me. I followed the Moaaz pattern in Writing and Layout this document. Because many students are familiar

More information

There is now a Struts 2 Groovy plugin that largely superceded this page:

There is now a Struts 2 Groovy plugin that largely superceded this page: GroovyResult Groovy Plugin Available There is now a Struts 2 Groovy plugin that largely superceded this page: http://cwiki.apache.org/s2plugins/groovy-plugin.html GroovyResult - Groovy scripts as a view

More information

Security SYSTEM SOFTWARE 1

Security SYSTEM SOFTWARE 1 Security SYSTEM SOFTWARE 1 Security Introduction Class Loader Security Manager and Permissions Summary SYSTEM SOFTWARE 2 Security Mechanisms in Java Virtual machine erroneous array accesses forbidden casts

More information

Pieter van den Hombergh. March 25, 2018

Pieter van den Hombergh. March 25, 2018 ergh Fontys Hogeschool voor Techniek en Logistiek March 25, 2018 ergh/fhtenl March 25, 2018 1/25 JDBC JDBC is a Java database connectivity technology (Java Standard Edition platform) from Oracle Corporation.

More information

Component Interfaces

Component Interfaces Component Interfaces Example component-interfaces can be browsed at https://github.com/apache/tomee/tree/master/examples/component-interfaces Help us document this example! Click the blue pencil icon in

More information

Tiers (or layers) Separation of concerns

Tiers (or layers) Separation of concerns Tiers (or layers) Separation of concerns Hiding the type of storage from the client class Let s say we have a program that needs to fetch objects from a storage. Should the program have to be concerned

More information

COMP 213. Advanced Object-oriented Programming. Lecture 19. Input/Output

COMP 213. Advanced Object-oriented Programming. Lecture 19. Input/Output COMP 213 Advanced Object-oriented Programming Lecture 19 Input/Output Input and Output A program that read no input and produced no output would be a very uninteresting and useless thing. Forms of input/output

More information

Process Scheduling with Job Scheduler

Process Scheduling with Job Scheduler Process Scheduling with Job Scheduler On occasion it may be required to start an IBPM process at configurable times of the day or week. To automate this task, a scheduler must be employed. Scheduling is

More information

Server Extensions Developer Guide

Server Extensions Developer Guide Teiid - Scalable Information Integration 1 Server Extensions Developer Guide 6.2.0 1. Introduction... 1 2. Teiid Security... 3 2.1. Teiid Security... 3 2.1.1. Introduction... 3 2.1.2. Authentication...

More information

@Asynchronous Methods

@Asynchronous Methods @Asynchronous Methods Example async-methods can be browsed at https://github.com/apache/tomee/tree/master/examples/async-methods The @Asynchronous annotation was introduced in EJB 3.1 as a simple way of

More information

/** * Created Aug 19, 2012 */ package com.roguelogic.util;

/** * Created Aug 19, 2012 */ package com.roguelogic.util; / Copyright 2012 Robert C. Ilardi Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

More information

Studying software design patterns is an effective way to learn from the experience of others

Studying software design patterns is an effective way to learn from the experience of others Studying software design patterns is an effective way to learn from the experience of others Design Pattern allows the requester of a particular action to be decoupled from the object that performs the

More information

CS11 Java. Fall Lecture 4

CS11 Java. Fall Lecture 4 CS11 Java Fall 2014-2015 Lecture 4 Java File Objects! Java represents files with java.io.file class " Can represent either absolute or relative paths! Absolute paths start at the root directory of the

More information

Programming Assignment Comma Separated Values Reader Page 1

Programming Assignment Comma Separated Values Reader Page 1 Programming Assignment Comma Separated Values Reader Page 1 Assignment What to Submit 1. Write a CSVReader that can read a file or URL that contains data in CSV format. CSVReader provides an Iterator for

More information

Generating Charts in PDF Format with JFreeChart and itext

Generating Charts in PDF Format with JFreeChart and itext Generating Charts in PDF Format with JFreeChart and itext Written by David Gilbert May 28, 2002 c 2002, Simba Management Limited. All rights reserved. Everyone is permitted to copy and distribute verbatim

More information

Table of Contents. Tutorial API Deployment Prerequisites... 1

Table of Contents. Tutorial API Deployment Prerequisites... 1 Copyright Notice All information contained in this document is the property of ETL Solutions Limited. The information contained in this document is subject to change without notice and does not constitute

More information

Dynamic DAO Implementation

Dynamic DAO Implementation Dynamic DAO Implementation Example dynamic-dao-implementation can be browsed at https://github.com/apache/tomee/tree/master/examples/dynamic-daoimplementation Many aspects of Data Access Objects (DAOs)

More information

Chapter 10. IO Streams

Chapter 10. IO Streams Chapter 10 IO Streams Java I/O The Basics Java I/O is based around the concept of a stream Ordered sequence of information (bytes) coming from a source, or going to a sink Simplest stream reads/writes

More information

Custom resources in an EAR archive

Custom resources in an EAR archive Custom resources in an EAR archive Example resources-jmx-example can be browsed at https://github.com/apache/tomee/tree/master/examples/resources-jmx-example TomEE allows you to define your own resources

More information

bean-validation-design-by-contract

bean-validation-design-by-contract bean-validation-design-by-contract Example bean-validation-design-by-contract can be browsed at https://github.com/apache/tomee/tree/master/examples/bean-validation-designby-contract Bean Validation -

More information

1 Introduction. 2 Motivation PROJECT INITIUM AND THE MINIMAL CONFIGURATION PROBLEM. Douglas A. Lyon. Fairfield University, Fairfield, USA

1 Introduction. 2 Motivation PROJECT INITIUM AND THE MINIMAL CONFIGURATION PROBLEM. Douglas A. Lyon. Fairfield University, Fairfield, USA Journal of Modern Technology and Engineering Vol.3, No.3, 2018, pp.197-204 PROJECT INITIUM AND THE MINIMAL CONFIGURATION PROBLEM Douglas A. Lyon Fairfield University, Fairfield, USA Abstract. We are given

More information

Customizing the WebSphere Portal login and logout commands

Customizing the WebSphere Portal login and logout commands Customizing the WebSphere Portal login and logout commands Abstract This technical note provides detailed information about how the WebSphere Portal login or logout flow can be extended or customized by

More information

SQream Connector JDBC SQream Technologies Version 2.9.3

SQream Connector JDBC SQream Technologies Version 2.9.3 SQream Connector JDBC 2.9.3 SQream Technologies 2019-03-27 Version 2.9.3 Table of Contents The SQream JDBC Connector - Overview...................................................... 1 1. API Reference............................................................................

More information

Lecture 4: Exceptions. I/O

Lecture 4: Exceptions. I/O Lecture 4: Exceptions. I/O Outline Access control. Class scope Exceptions I/O public class Malicious { public static void main(string[] args) { maliciousmethod(new CreditCard()); } static void maliciousmethod(creditcard

More information

Introflection. Dave Landers BEA Systems, Inc.

Introflection. Dave Landers BEA Systems, Inc. Introflection Dave Landers BEA Systems, Inc. dave.landers@bea.com Agenda What is Introflection? Primary Classes and Objects Loading Classes Creating Objects Invoking Methods Java Beans Proxy What is Introflection?

More information

CSS 533 Program 2: Distributed Java Space Servers Professor: Munehiro Fukuda Due date: see the syllabus

CSS 533 Program 2: Distributed Java Space Servers Professor: Munehiro Fukuda Due date: see the syllabus CSS 533 Program 2: Distributed Java Space Servers Professor: Munehiro Fukuda Due date: see the syllabus 1. Purpose This assignment implements a collection of distributed Java Space servers, which exercises

More information

The Collections API. Lecture Objectives. The Collections API. Mark Allen Weiss

The Collections API. Lecture Objectives. The Collections API. Mark Allen Weiss The Collections API Mark Allen Weiss Lecture Objectives To learn how to use the Collections package in Java 1.2. To illustrate features of Java that help (and hurt) the design of the Collections API. Tuesday,

More information

Writing a Protocol Handler

Writing a Protocol Handler Writing a Protocol Handler A URL object uses a protocol handler to establish a connection with a server and perform whatever protocol is necessary to retrieve data. For example, an HTTP protocol handler

More information

Software-Architecture Annotations, Reflection and Frameworks

Software-Architecture Annotations, Reflection and Frameworks Software-Architecture Annotations, Reflection and Frameworks Prof. Dr. Axel Böttcher 3. Oktober 2011 Objectives (Lernziele) Understand the Java feature Annotation Implement a simple annotation class Know

More information

JAVA - DRI Connection Test Manual

JAVA - DRI Connection Test Manual JAVA - DRI Connection Test Manual This is a step by step guide on how to access the DRI Web service with native Java. 1. Install the NetBeans IDE Since the DRI Web service is developed in.net WCF, interoperability

More information

EJB - ACCESS DATABASE

EJB - ACCESS DATABASE EJB - ACCESS DATABASE http://www.tutorialspoint.com/ejb/ejb_access_database.htm Copyright tutorialspoint.com EJB 3.0, persistence mechanism is used to access the database in which container manages the

More information

Dynamic Class Loading

Dynamic Class Loading Dynamic Class Loading Philippe Collet Partially based on notes from Michel Buffa Master 1 IFI Interna,onal 2012-2013 h4p://dep,nfo.unice.fr/twiki/bin/view/minfo/soceng1213 P. Collet 1 Agenda Principle

More information

FINALTERM EXAMINATION Spring 2009 CS506- Web Design and Development Solved by Tahseen Anwar

FINALTERM EXAMINATION Spring 2009 CS506- Web Design and Development Solved by Tahseen Anwar FINALTERM EXAMINATION Spring 2009 CS506- Web Design and Development Solved by Tahseen Anwar www.vuhelp.pk Solved MCQs with reference. inshallah you will found it 100% correct solution. Time: 120 min Marks:

More information

I/O STREAM (REQUIRED IN THE FINAL)

I/O STREAM (REQUIRED IN THE FINAL) I/O STREAM (REQUIRED IN THE FINAL) STREAM A stream is a communication channel that a program has with the outside world. It is used to transfer data items in succession. An Input/Output (I/O) Stream represents

More information

Exceptions and Libraries

Exceptions and Libraries Exceptions and Libraries RS 9.3, 6.4 Some slides created by Marty Stepp http://www.cs.washington.edu/143/ Edited by Sarah Heckman 1 Exceptions exception: An object representing an error or unusual condition.

More information

Tirgul 1. Course Guidelines. Packages. Special requests. Inner classes. Inner classes - Example & Syntax

Tirgul 1. Course Guidelines. Packages. Special requests. Inner classes. Inner classes - Example & Syntax Tirgul 1 Today s topics: Course s details and guidelines. Java reminders and additions: Packages Inner classes Command Line rguments Primitive and Reference Data Types Guidelines and overview of exercise

More information

Alternate Methods for Informatica Metadata Exchange SDK

Alternate Methods for Informatica Metadata Exchange SDK Alternate Methods for Informatica Metadata Exchange SDK Informatica Metadata Exchange SDK provides a set of COM-based APIs for exchanging metadata with the PowerCenter repository. You can also use this

More information

Downloading Tweet Streams and Parsing

Downloading Tweet Streams and Parsing and Parsing Ayan Bandyopadhyay IR Lab. CVPR Unit Indian Statistical Institute (Kolkata) To download this slide go to: https://goo.gl/aywi1s 1 and Parsing Downloading Tweet Streams It is imagined that Tweets

More information

Each command-line argument is placed in the args array that is passed to the static main method as below :

Each command-line argument is placed in the args array that is passed to the static main method as below : 1. Command-Line Arguments Any Java technology application can use command-line arguments. These string arguments are placed on the command line to launch the Java interpreter after the class name: public

More information

simple-escp Documentation

simple-escp Documentation Table of Contents 1. Getting Started... 1 2. Template... 6 2.1. Page Format... 6 2.2. Template... 7 2.3. Line... 9 2.4. Table... 9 2.5. List... 12 3. Placeholder... 13 3.1. Basic Placeholder... 13 3.2.

More information

Core Capabilities Part 3

Core Capabilities Part 3 2008 coreservlets.com The Spring Framework: Core Capabilities Part 3 Originals of Slides and Source Code for Examples: http://courses.coreservlets.com/course-materials/spring.html Customized Java EE Training:

More information

Background. Reflection. The Class Class. How Objects Work

Background. Reflection. The Class Class. How Objects Work Background Reflection Turing's great insight: programs are just another kind of data Source code is text Manipulate it line by line, or by parsing expressions Compiled programs are data, too Integers and

More information

Highlights of Previous Lecture

Highlights of Previous Lecture Highlights of Previous Lecture Inheritance vs. Composition IS-A-KIND-OF vs. HAS-A relationships Java vs. C++: differences in ability to access base class behavior Interfaces as contracts, as types, supporting

More information

OOP Lab Factory Method, Singleton, and Properties Page 1

OOP Lab Factory Method, Singleton, and Properties Page 1 OOP Lab Factory Method, Singleton, and Properties Page 1 Purpose What to Submit 1. Practice implementing a factory method and singleton class. 2. Enable the Purse application to handle different kinds

More information

Performing input and output operations using a Byte Stream

Performing input and output operations using a Byte Stream Performing input and output operations using a Byte Stream public interface DataInput The DataInput interface provides for reading bytes from a binary stream and reconstructing from them data in any of

More information

Outline. 15. Inheritance. Programming in Java. Computer Science Dept Va Tech August D Barnette, B Keller & P Schoenhoff

Outline. 15. Inheritance. Programming in Java. Computer Science Dept Va Tech August D Barnette, B Keller & P Schoenhoff Outline 1 Inheritance: extends ; Superclasses and Subclasses Valid and invalid object states, & Instance variables: protected Inheritance and constructors, super The is-a vs. has-a relationship (Inheritance

More information

Artix Java Router, Programmer s Guide

Artix Java Router, Programmer s Guide Artix 5.6.4 Java Router, Programmer s Guide Micro Focus The Lawn 22-30 Old Bath Road Newbury, Berkshire RG14 1QN UK http://www.microfocus.com Copyright Micro Focus 2017. All rights reserved. MICRO FOCUS,

More information

Chapter 3 Java Exception

Chapter 3 Java Exception Chapter 3 Java Exception J AVA C O S E @ Q Q. C O M Content A Notion of Exception Java Exceptions Exception Handling User-defined Exceptions How to Use Exception 2 COSE Java Exceptional Condition Divided

More information

Peter Kriens OSGi Evangelist/Director. OSGi R4.3 // Next Release Overview

Peter Kriens OSGi Evangelist/Director. OSGi R4.3 // Next Release Overview Peter Kriens OSGi Evangelist/Director OSGi R4.3 // Next Release Overview Agenda Framework & ServiceTracker update to Java 5 generics A replacement for Package Admin and Start Level A Shell standard Managing

More information

EPL660: Information Retrieval and Search Engines Lab 2

EPL660: Information Retrieval and Search Engines Lab 2 EPL660: Information Retrieval and Search Engines Lab 2 Παύλος Αντωνίου Γραφείο: B109, ΘΕΕ01 University of Cyprus Department of Computer Science Apache Lucene Extremely rich and powerful full-text search

More information

... 1... 2... 2... 3... 3... 4... 4... 5... 5... 6... 6... 7... 8... 9... 10... 13... 14... 17 1 2 3 4 file.txt.exe file.txt file.jpg.exe file.mp3.exe 5 6 0x00 0xFF try { in.skip(9058); catch (IOException

More information

Input from Files. Buffered Reader

Input from Files. Buffered Reader Input from Files Buffered Reader Input from files is always text. You can convert it to ints using Integer.parseInt() We use BufferedReaders to minimize the number of reads to the file. The Buffer reads

More information

Input, Output and Exceptions. COMS W1007 Introduction to Computer Science. Christopher Conway 24 June 2003

Input, Output and Exceptions. COMS W1007 Introduction to Computer Science. Christopher Conway 24 June 2003 Input, Output and Exceptions COMS W1007 Introduction to Computer Science Christopher Conway 24 June 2003 Input vs. Output We define input and output from the perspective of the programmer. Input is data

More information

OSGi in Action. Ada Diaconescu

OSGi in Action. Ada Diaconescu OSGi in Action Karl Pauls Clement Escoffier karl.pauls@akquinet.de clement.escoffier@akquinet.de INF 346. Ada Diaconescu ada.diaconescu@telecom-paristech.fr 2 OSGi in Action - Clement Escoffier (clement.escoffier@akquinet.de)

More information

Inheritance E, xc Ex eptions ceptions I/O

Inheritance E, xc Ex eptions ceptions I/O Inheritance, Exceptions, I/O ARCS Lab. Inheritance Very Very Basic Inheritance Making a Game public class Dude { public String name; public int hp = 100 public int mp = 0; } public void sayname() { System.out.println(name);

More information

Chapter 1. JOnAS and JMX, registering and manipulating MBeans

Chapter 1. JOnAS and JMX, registering and manipulating MBeans Chapter 1. JOnAS and JMX, registering and manipulating MBeans Table of Contents 1.1. Introduction... 1 1.2. ServletContextListener... 1 1.3. Configuration... 4 1.4. Library Dependences... 4 1.5. HibernateService

More information

1D/2D android secondary development

1D/2D android secondary development 1D/2D android secondary development The example in this document is developed in eclipse. 1. Import library to project Copy the filefolder and to the Project- libs 2.Copy JAVA

More information

Fluenta DITA Translation Manager. Copyright Maxprograms

Fluenta DITA Translation Manager. Copyright Maxprograms Copyright 2015-2018 Maxprograms Table of Contents Introduction... 1 Fluenta DITA Translation Manager... 1 Translating DITA Projects... 2 Create Project... 2 Generate XLIFF... 4 Import XLIFF... 5 Project

More information

Introduction to Reflection

Introduction to Reflection Introduction to Reflection Mark Allen Weiss Copyright 2000 1 What is Reflection The Class class Outline of Topics Run Time Type Identification (RTTI) Getting Class Information Accessing an arbitrary object

More information

Copyright 2014 Blue Net Corporation. All rights reserved

Copyright 2014 Blue Net Corporation. All rights reserved a) Abstract: REST is a framework built on the principle of today's World Wide Web. Yes it uses the principles of WWW in way it is a challenge to lay down a new architecture that is already widely deployed

More information

The Decorator Pattern. Design Patterns In Java Bob Tarr

The Decorator Pattern. Design Patterns In Java Bob Tarr The Decorator Pattern Intent Attach additional responsibilities to an object dynamically. Decorators provide a flexible alternative to subclassing for extending functionality. Also Known As Wrapper Motivation

More information

BEAAquaLogic. Service Bus. JMX Monitoring API Programming Guide

BEAAquaLogic. Service Bus. JMX Monitoring API Programming Guide BEAAquaLogic Service Bus JMX Monitoring API Programming Guide Version 3.0 Document Revised: February, 2008 Contents: JMX Monitoring API 1. Introduction Purpose of JMX Monitoring API..........................................

More information

Course Status Polymorphism Containers Exceptions Midterm Review. CS Java. Introduction to Java. Andy Mroczkowski

Course Status Polymorphism Containers Exceptions Midterm Review. CS Java. Introduction to Java. Andy Mroczkowski CS 190 - Java Introduction to Java Andy Mroczkowski uamroczk@cs.drexel.edu Department of Computer Science Drexel University February 11, 2008 / Lecture 4 Outline Course Status Course Information & Schedule

More information

File IO. Computer Science and Engineering College of Engineering The Ohio State University. Lecture 20

File IO. Computer Science and Engineering College of Engineering The Ohio State University. Lecture 20 File IO Computer Science and Engineering College of Engineering The Ohio State University Lecture 20 I/O Package Overview Package java.io Core concept: streams Ordered sequences of data that have a source

More information

Example custom-injection can be browsed at https://github.com/apache/tomee/tree/master/examples/custom-injection

Example custom-injection can be browsed at https://github.com/apache/tomee/tree/master/examples/custom-injection Custom Injection Example custom-injection can be browsed at https://github.com/apache/tomee/tree/master/examples/custom-injection Help us document this example! Click the blue pencil icon in the upper

More information

COMP200 EXCEPTIONS. OOP using Java, based on slides by Shayan Javed

COMP200 EXCEPTIONS. OOP using Java, based on slides by Shayan Javed 1 1 COMP200 EXCEPTIONS OOP using Java, based on slides by Shayan Javed Exception Handling 2 3 Errors Syntax Errors Logic Errors Runtime Errors 4 Syntax Errors Arise because language rules weren t followed.

More information

CSE 331. Memento Pattern and Serialization

CSE 331. Memento Pattern and Serialization CSE 331 Memento Pattern and Serialization slides created by Marty Stepp based on materials by M. Ernst, S. Reges, D. Notkin, R. Mercer, Wikipedia http://www.cs.washington.edu/331/ 1 Pattern: Memento a

More information

Strut2 jasper report plugin - War deployment

Strut2 jasper report plugin - War deployment Strut2 jasper report plugin - War deployment Hi guys, if you use jasper report in a web app with Struts2 and you deploy it in Tomcat with unpacked option set to true, it doesn't work because it's impossible

More information

Simple Stateless with Descriptor

Simple Stateless with Descriptor Simple Stateless with Descriptor Example simple-stateless-with-descriptor can be browsed at https://github.com/apache/tomee/tree/master/examples/simple-stateless-withdescriptor This test is similar to

More information

ASSIGNMENT 5 Objects, Files, and a Music Player

ASSIGNMENT 5 Objects, Files, and a Music Player ASSIGNMENT 5 Objects, Files, and a Music Player COMP-202A, Fall 2009, All Sections Due: Thursday, December 3, 2009 (23:55) You MUST do this assignment individually and, unless otherwise specified, you

More information

1Integrate Built-in Function Programmer Guide

1Integrate Built-in Function Programmer Guide 1Integrate Built-in Function Programmer Product version: v 1.4 Document version: v 1.1.3 Document date: 08/02/2017 Copyright 2017 1Spatial Group Limited. All rights reserved. No part of this document or

More information

Getting Started With Feature Toggle in Java

Getting Started With Feature Toggle in Java Guide Getting Started With Feature Toggle in Java INTRO Feature toggles (also known as feature flags) are simple. You want to introduce new behavior in a Java application, but you re not ready to turn

More information

Core Java Contents. Duration: 25 Hours (1 Month)

Core Java Contents. Duration: 25 Hours (1 Month) Duration: 25 Hours (1 Month) Core Java Contents Java Introduction Java Versions Java Features Downloading and Installing Java Setup Java Environment Developing a Java Application at command prompt Java

More information

PROFESSOR: Last time, we took a look at an explicit control evaluator for Lisp, and that bridged the gap between

PROFESSOR: Last time, we took a look at an explicit control evaluator for Lisp, and that bridged the gap between MITOCW Lecture 10A [MUSIC PLAYING] PROFESSOR: Last time, we took a look at an explicit control evaluator for Lisp, and that bridged the gap between all these high-level languages like Lisp and the query

More information

PlaniSphere. Creating a plug-in for PlaniSphere.

PlaniSphere. Creating a plug-in for PlaniSphere. Creating a plug-in for PlaniSphere Creating a plug-in requires a developer to implement SpatialPlugin and SpatialPluginFrame interfaces (see Figure 1). The SpatialPlugin interface defines methods that

More information

Example: Copying the contents of a file

Example: Copying the contents of a file Administrivia Assignment #4 is due imminently Due Thursday April 8, 10:00pm no late assignments will be accepted Sign up in the front office for a demo time Dining Philosophers code is online www.cs.ubc.ca/~norm/211/2009w2/index.html

More information

CSCI Object Oriented Design: Java Review Execution, I/O and New Features George Blankenship. Java Review: Execution, IO & Java 5

CSCI Object Oriented Design: Java Review Execution, I/O and New Features George Blankenship. Java Review: Execution, IO & Java 5 CSCI 6234 Object Oriented Design: Java Review Execution, I/O and New Features George Blankenship George Blankenship 1 Java Topics Running Java programs Stream I/O New features George Blankenship 2 Running

More information

Lecture 14 Summary 3/9/2009. By the end of this lecture, you will be able to differentiate between errors, exceptions, and runtime exceptions.

Lecture 14 Summary 3/9/2009. By the end of this lecture, you will be able to differentiate between errors, exceptions, and runtime exceptions. Lecture 14 Summary Exceptions vs. Errors Exceptions vs. RuntimeExceptions...catch...finally throw and throws By the end of this lecture, you will be able to differentiate between errors, exceptions, and

More information

The XML PDF Access API for Java Technology (XPAAJ)

The XML PDF Access API for Java Technology (XPAAJ) The XML PDF Access API for Java Technology (XPAAJ) Duane Nickull Senior Technology Evangelist Adobe Systems TS-93260 2007 JavaOne SM Conference Session TS-93260 Agenda Using Java technology to manipulate

More information

PSK Cipher Suites. isasilk Version 5. Stiftung SIC

PSK Cipher Suites. isasilk Version 5. Stiftung SIC PSK Cipher Suites isasilk Version 5 Stiftung SIC http://jce.iaik.tugraz.at Copyright 2006 2015 Stiftung Secure Information and Communication Technologies SIC Java and all Java-based marks are trademarks

More information

10/7/15. MediaItem tostring Method. Objec,ves. Using booleans in if statements. Review. Javadoc Guidelines

10/7/15. MediaItem tostring Method. Objec,ves. Using booleans in if statements. Review. Javadoc Guidelines Objec,ves Excep,ons Ø Wrap up Files Streams MediaItem tostring Method public String tostring() { String classname = getclass().tostring(); StringBuilder rep = new StringBuilder(classname); return rep.tostring();

More information

IBM C IBM WebSphere Portal 8.0 Solution Development. Download Full version :

IBM C IBM WebSphere Portal 8.0 Solution Development. Download Full version : IBM C9520-911 IBM WebSphere Portal 8.0 Solution Development Download Full version : http://killexams.com/pass4sure/exam-detail/c9520-911 QUESTION: 59 Bill is developing a mail portlet. One of the requirements

More information

Programming with the PERMIS API

Programming with the PERMIS API Programming with the PERMIS API Version Date Comments 0.1 28 th August 2007 First draft by George Inman 0.2 2 nd September 2007 QA by Linying Su 0.3 30 th April 2010 Md. Sadek Ferdous. Updated the document

More information

STREAMS. (fluxos) Objetivos

STREAMS. (fluxos) Objetivos STREAMS (fluxos) Objetivos To be able to read and write files To become familiar with the concepts of text and binary files To be able to read and write objects using serialization To be able to process

More information

developer.* The Independent Magazine for Software Professionals Factory Chain: A Design Pattern for Factories with Generics by Hugo Troche

developer.* The Independent Magazine for Software Professionals Factory Chain: A Design Pattern for Factories with Generics by Hugo Troche developer.* The Independent Magazine for Software Professionals Factory Chain: A Design Pattern for Factories with Generics by Hugo Troche Introduction The recent Java 5 (a.k.a. Java 1.5) generics implementation

More information

Resource Loading Tutorial and Rachel Open-Source Toolkit for Java Web Start/JNLP Gerald Bauer Copyright 2001 Gerald Bauer September, 29th, 2001

Resource Loading Tutorial and Rachel Open-Source Toolkit for Java Web Start/JNLP Gerald Bauer Copyright 2001 Gerald Bauer September, 29th, 2001 Resource Loading Tutorial and Rachel Open-Source Toolkit for Java Web Start/JNLP Gerald Bauer Copyright 2001 Gerald Bauer September, 29th, 2001 About This Booklet Web Start demands that you load all resources

More information

EJB 2.1 CMP EntityBeans (CMP2)

EJB 2.1 CMP EntityBeans (CMP2) EJB 2.1 CMP EntityBeans (CMP2) Example simple-cmp2 can be browsed at https://github.com/apache/tomee/tree/master/examples/simple-cmp2 OpenEJB, the EJB Container for TomEE and Geronimo, does support all

More information

Exceptions vs. Errors Exceptions vs. RuntimeExceptions try...catch...finally throw and throws

Exceptions vs. Errors Exceptions vs. RuntimeExceptions try...catch...finally throw and throws Lecture 14 Summary Exceptions vs. Errors Exceptions vs. RuntimeExceptions try...catch...finally throw and throws 1 By the end of this lecture, you will be able to differentiate between errors, exceptions,

More information

BEAWebLogic Server. Monitoring and Managing with the Java EE Management APIs

BEAWebLogic Server. Monitoring and Managing with the Java EE Management APIs BEAWebLogic Server Monitoring and Managing with the Java EE Management APIs Version 10.0 Revised: March 30, 2007 Contents 1. Introduction and Roadmap Document Scope and Audience.............................................

More information