IBM Products + Java

.

IBM Websphere Application Server

WAS 3.5

31 Aug 2000 - 12 Aug 2001

WebSphere Application Server 3.5

  • first widely used version of WebSphere

before:
* WAS 2.0 - IBM adds JavaBean, CORBA and Linux support
* WAS 1.0 - initial release in June, 1998. Was primarily a Java Servlet engine

WAS 4.0

15 Aug 2001 - 16 Nov 2002

WebSphere Application Server 4.0

  • J2EE 1.2 certified application server
  • inherited the database-based configuration model from V3.x for all but the single-server edition, which already used an XML datastore

WAS 5.0

19 Nov 2002 - 13 Jan 2004

WebSphere Application Server 5.0

  • J2EE 1.3 certified application server
  • Servlet 2.3
  • JSP 1.2
  • EJB 2.0
  • Now WAS across all deployment platforms, from Intel x86 to the mainframe, are substantially the same code. The database-based configuration repository was replaced with a replication XML file-based configuration repository. A service called the Deployment Manager had the master copy of the cell configuration, and nodes had the file(s) they needed copied from this master server whenever they changed.
  • included a miniature version of MQ 5.3 called the embedded Java Message Service (JMS) server

WAS 5.1

16 Jan 2004 - 28 Dec 2004

WebSphere Application Server 5.1

  • J2EE 1.4 compliant application server
  • Servlet 2.3
  • JSP 1.2
  • EJB 2.0
  • JMS 1.02

WAS 6.0

31 Dec 2004 - 28 Jun 2006

WebSphere Application Server 6.0

  • J2EE 1.4 compliant application server
  • Servlet 2.4
  • JSP 2.0
  • JSF 1.0
  • EJB 2.1
  • JMS 1.1
  • JDBC 3.0
  • some of the functionality previously found in WebSphere Business Integration Server Foundation (WBISF) moved into the new IBM WebSphere Process Server.

WAS 6.1

30 Jun 2006 - 14 Oct 2008

WebSphere Application Server 6.1

  • J2EE 1.4 compliant application server
  • Servlet 2.4
  • JSP 2.0
  • JSF 1.1
  • EJB 3.0
  • JMS 1.1
  • JDBC 3.0
  • JPA 1.0
  • support for running JSR 168 Portlets in the application server
  • session Initiation Protocol (SIP) Servlets
  • simplified Administration
  • improved Certificate and Key Management
  • security Enhancements

WAS 7.0

17 Oct 2008 - 14 Jun 2011

WebSphere Application Server 7.0

  • Java EE 5 compliant application server
  • J2SE/Java SE 6
  • Servlet 2.5
  • JSP 2.1
  • JSF 1.2
  • EJB 3.0
  • JMS 1.1
  • JDBC 4.0
  • JPA 2.0
  • Flexible Management facilitates administration of a large number of WebSphere Application Server base edition and Network Deployment topologies that might be geographically distributed
  • Business-Level Application is used for managing application artifacts independent of packaging or programming models
  • The Property Based Configuration feature simplifies the experience of automating administration: an administrator can update the WebSphere Application Server Version 7 configuration using a simple property file
  • Feature Pack to be added (see WAS 8.0)

WAS 8.0

17 Jun 2011 - 12 Jun 2012

WebSphere Application Server 8.0

  • Java EE 6 compliant application server
  • J2SE/Java SE 6
  • Servlet 3.0
  • JSP 2.2
  • JSF 2.0
  • EJB 3.1
  • JMS 1.1
  • JDBC 4.0
  • JPA 2.0
  • incorporates the capabilities originally delivered as feature packs with WebSphere Application Server V7: Feature Pack for Modern Batch Feature Pack for OSGi Applications and JPA 2.0 Feature Pack for SCA Feature Pack for Web 2.0 and Mobile Feature Pack for XML Feature Pack for Communication Enabled Applications
  • installed using the IBM Installation Manager

WAS 8.5

15 Jun 2012 - 1 Jan 2014

WebSphere Application Server 8.5

  • Java EE 6 compliant application server
  • J2SE/Java SE 7
  • Servlet 3.0
  • JSP 2.2
  • JSF 2.0
  • EJB 3.1
  • JMS 1.1
  • JDBC 4.1
  • JPA 2.0
  • Liberty profile of WebSphere Application Server: a functional subset of the full profile of WebSphere Application Server, for both development and production use, with an install size of under 50 MB, a startup time of around 3 seconds and a new XML-based server configuration which can be treated as a development artefact to aid developer productivity
  • Intelligent management capability: integrates operational features that were previously available in the separate WebSphere Virtual Enterprise (WVE) offering: application editioning, server health management, dynamic clustering and intelligent routing

IBM Websphere Portal

WSP 1.0

01 Jan 2001 - 23 Jul 2002

WebSphere Portal for Multiplatforms 1.0

WSP 4.1

26 Jul 2002 - 27 Sep 2003

WebSphere Portal for Multiplatforms 4.1

  • introduces the concept of Web clipping: allows portal administrators to build portlets that consume external content and filter it to present a view of only the relevant portions of that content. To facilitate this, several new administrative portlets have been added to the suite of built-in portlets
  • the portlets created by the Web clipping portlet, called Web clippers or simply cliplets, are based on one of two templates provided by the portal

WSP 5.0

30 Sep 2003 - 21 Dec 2004

WebSphere Portal for Multiplatforms 5.0

  • document Manager is a new document repository and management system which replaces Portal Content Organizer
  • components provide text editing, spreadsheet, and presentation functions. They allow authoring of documents directly within the portal
  • Lotus Collaboration Center includes components that WebSphere Portal can use to find, connect, and work with people. Includes the following:
    • People Finder portlet provides an online directory for finding, contacting, and working with colleagues.
    • My Lotus Team Workplaces includes support for QuickPlace.
    • Lotus Web Conferences includes support for Sametime.

WSP 5.1

24 Dec 2004 - 22 Jul 2006

WebSphere Portal 5.1

  • Improvements for managing documents
  • Web Content Management fully integrates with WebSphere Portal user management, access control, and the portlet user interface
  • virtual portals enable you to quickly deploy additional portals on an existing infrastructure. With virtual portals, you can use a single installation of portal to deploy multiple portals with different URLs, anonymous pages, user groups, and themes and skins
  • the MyTasks portlet enables users to view their work items, and then launch transient portal pages that contain portlets that are used for completing the selected task
  • new tools allow you to move your test portal or development portal to a production environment
  • allows you to define user groups within the database user registry with members (users or groups) contained within your LDAP user registry

WSP 6.0

26 Jul 2006 - 26 Feb 2009

WebSphere Portal 6.0

  • new features included Workflow (introduced a new workflow builder),
  • Content Management (unveiled IBM Workplace Web Content Management Version 6.0, now IBM Lotus Web Content Management),
  • Electronic Forms (incorporated IBM Workplace Forms, now IBM Lotus Forms)
  • Alignment with Bowstreet Portlet Factory (Now WebSphere Portlet Factory)

6.1

01 Mar 2009 - 28 Oct 2009

WebSphere Portal 6.1

  • upgrade that enhanced Web 2.0 capabilities,
  • support for REST-based services,
  • improved Atom and RSS consumption

6.1.5

01 Nov 2009 - 28 Aug 2010

WebSphere Portal 6.1.5

  • new features that can be added to the version 6.1 platform, including new page builder and template capabilities, platform startup optimization
  • expanded Enterprise Content Management (ECM) and Web analytics integration support

WSP 7.0

01 Sep 2010 - 28 Apr 2012

WebSphere Portal 7.0

  • web 2.0 innovations and technologies that made it easier and faster for organizations to deliver personalized, rich and highly responsive web portal applications
  • user and line-of-business (LOB) page customization features
  • integrated and seamless mashup creation capability
  • support for external web programming and development tools and techniques
  • third-party site analytics integration and new platform optimization capabilities
  • continued leadership and development of important portal open standards, such as Java Specification Request (JSR) 286 and Web Services for Remote Portlets (WSRP) 2.0 standards

WSP 8.0

01 May 2012 - 01 Jan 2014

WebSphere Portal 8.0

  • Managed Pages - this is probably the biggest change in V8 as it ties Portal and WCM together more closely than ever before
  • supports JSF 2.0 and MyFaces
  • Module Theme Framework: started in V7.0.0.2, the new theme is very modular and can dramatically improve page load times
  • V8 is now installed using IBM Installation Manager that speeds up the installation process.
  • supports WebSphere Application Server V8

IBM Web Content Manager

1.0

01 Sep 2003 - 28 Apr 2004

IBM Workplace Web Content Management

WCM 2.0

01 May 2004 - 27 May 2005

IBM Workplace Web Content Management

WCM 2.5

01 Jun 2005 - 27 Jul 2006

IBM Workplace Web Content Management

  • designed to accelerate development and delivery of critical business information.
  • enables end-to-end collaboration for content creation, approvals, management, retention, and publishing across Internet, intranet, extranet, and portal assets
  • despite its power, it is remarkably easy to use

WCM 6.0

01 Aug 2006 - 28 May 2008

IBM Workplace Web Content Management

  • fully integrated into IBM WebSphere Portal Version 6.0
  • manage corporate content from the creation of the first draft to the final Web presentation.
  • to design your Web site. Because Web Content Management separates the design from content, you can create content independently from the Web design and then combine the content and design in a flexible fashion at run time

WCM 6.1.0

01 Jun 2008 - 28 Aug 2010

IBM Lotus Web Content Management

  • social software capabilities such as blogs and wikis to convert website visitors to participants and customers
  • reduced integration costs with Enterprise Content Management (ECM) solutions through out-of-the-box Document Picker to access content from ECM repositories such as FileNet, IBM Content Manager, and Quickr

WCM 7.0

01 Sep 2010 - 28 Apr 2012

IBM Web Content Manager

  • new and improved user interface for creating and editing content
  • enhanced authoring forms for easier content creation
  • projects optimize publishing and change management
  • enhanced Web site analytics help improve user conversion rates
  • new features such as Tagging and Ratings, and improved Blogs and Wikis, empowers expertise of communities and end-users
  • new and enhanced Web site templates help speed time-to-value
  • leverage the power of Lotus Symphony to simplify round-trip editing of Web site content
  • virtualization support for platform optimization
  • serviceability enhancements improve cost of ownership

WCM 8.0

01 May 2012 - 01 Jan 2014

IBM Web Content Manager

  • content Template Catalog: Expanded set of prebuilt, high-value content types enables users to create new microsites and web pages in minutes.
  • managed Pages: A new, contextually aware toolbar and enhanced project management feature makes it easier to create, approve, version, publish, and syndicate web content.
  • analytics overlays: In-context analytic overlays provide users with the real-time insight needed to improve conversion rates.
  • home page: New authoring start page provides a customizable and user-friendly view of frequent activities and tasks.
  • content Management Interoperability Services (CMIS) integration: New support for CMIS standard allows content authors to leverage documents and files from CMIS repositories directly from the authoring experience.

IBM Rational Application Developer

4.0

07 Nov 2001 - 17 Mar 2002

WebSphere Studio Application Developer 4.0

  • IBM donated the Eclipse Platform into Open Source to enable community-driven development of a Java workbench and tools
  • IBM replaced the VisualAge for Java and WebSphere Studio products with WSAD

4.0.3

20 Mar 2002 - 07 Jan 2003

WebSphere Studio Application Developer 4.0.3

5.0

10 Jan 2003 - 26 Aug 2003

WebSphere Studio Application Developer 5.0

  • added a Java Visual Editor, an XSL debugger, and test and analysis tools
  • applications could be deployed to WebSphere Application Server version 5.0
  • new supported programming standards included J2EE 1.3

WSAD 5.1

29 Aug 2003 - 04 Jan 2005

WebSphere Studio Application Developer 5.1

  • IBM completed the purchase of Rational Software

RAD 6.0

07 jan 2005 - 18 Dec 2006

Rational Application Developer for WebSphere Software 6.0

  • supported WebSphere Application Server version 6.0
  • J2EE 1.4.
  • included tools for visual portlet and portal development.

RAD 7.0

22 Dec 2006 - 30 Sep 2008

Rational Application Developer for Websphere Software 7.0

  • IBM donated the Web Tools Platform (WTP) to Eclipse. WTP included tools for developing Web and Java EE applications
  • new features supporting Java Server Faces, and tools for XSD and WSDL visualization and transforms
  • could be installed in a single workbench with other Rational tools

RAD 7.5

03 Oct 2008 - 30 Aug 2010

Rational Application Developer for Websphere Software 7.5

  • based on Eclipse 3.4
  • supported WebSphere Application Server version 7.0
  • supported Java EE 5 programming standard
  • included tools for Service Component Architecture (SCA), a component-based programming model, and tools for communication enabled applications

RAD 8.0

02 Sep 2010 - 02 Jul 2012

Rational Application Developer for WebSphere Software 8.0

  • based on Eclipse 3.6
  • supported WebSphere Application Server version 8.0
  • supported Java EE 6 programming standard
  • included tools supporting the OSGi applications framework and cloud computing. The cloud computing support included the ability to instantiate and manage virtual machines running application servers and also inclusion of virtual machine appliances for Rational Application Developer in the IBM SmartCloud Enterprise image catalog

RAD 8.5

06 Jul 2012 - 01 Jan 2014

Rational Application Developer for WebSphere Software 8.5

  • Web 2.0 and mobile - Build applications on the latest Web 2.0 technologies, like HTML 5, CSS3, JavaScript, Dojo and JSON. New Rich Page Editor . Combined with the Mobile Browser Simulator, development and unit testing of mobile web applications based on the dojox.mobile framework is a snap.
  • WebSphere Application Server 8.5 & WebSphere Application Server V8.5 Liberty Profile Support
  • Most of the programming models under the Java EE umbrella are supported by RAD and WDT, such as Servlets, JSP, EJB, JPA, JAX-RS, JAX-WS and JAXB
  • SOA - Bring order to Java in the form of "bundles" and "Blueprint" beans with the OSGi tools in WDT and RAD
  • Cloud - RAD allows for provisioning and use of virtual instances of WAS or WebSphere Portal on IBM SmartCloud Enterprise
  • RAD integrates with team repositories like the just released Rational Team Concert (RTC) V4.0. Unique to RAD + RTC are features that transform debugging and dynamic code coverage into team activities

Eclipse

Eclipse 3.0

2 Jun 2004

Eclipse 3.0

Eclipse 3.1

28 Jun 2005

Eclipse 3.0

Eclipse 3.2

30 Jun 2006

Eclipse 3.2
(codename: Calisto)

Eclipse 3.3

29 Jun 2007

Eclipse 3.3
(codename: Europa)

Eclipse 3.4

25 Jun 2008

Eclipse 3.4
(codename: Ganymede)

Eclipse 3.5

24 Jun 2009

Eclpse 3.5
(codename: Galileo)

Eclipse 3.6

23 Jun 2010

Eclpise 3.6
(codename: Helios)

Eclipse 3.7

22 Jun 2011

Eclipse 3.7
(codename: Indigo)

Eclipse 4.2

27 Jun 2012

Eclipse 4.2
(codename: Juno)

Oracle Database

Oracle 7.0

01 Jun 1992 - 01 May 1994

Oracle 7.0

  • Database Integrity Constraints (primary keys, foreign keys, check constraints, default values)
  • stored procedures and functions, procedure packages
  • database Triggers
  • view compilation
  • user defined SQL functions
  • enhanced Distributed database functionality: INSERTS, UPDATES, DELETES, 2PC
  • TRUNCATE tables
  • datatype changes (i.e VARCHAR2, CHAR, VARCHAR)

7.1

01 May 1994 - 01 May 1995

Oracle 7.1

  • Oracle Advanced Replication - Symmetric Data replication
  • Snapshot Refresh Groups
  • Parallel Recovery
  • Dynamic SQL - DBMS_SQL
  • Parallel Query Options - query, index creation, data loading
  • Server Manager introduced
  • Read Only tablespaces

7.2

01 May 1995 - 01 Feb 1996

Oracle 7.2

  • Resizable, autoextend data files
  • Shrink Rollback Segments manually
  • Create table, index UNRECOVERABLE
  • Subquery in FROM clause (Inline view)
  • PL/SQL wrapper
  • PL/SQL Cursor variables
  • Checksums - DBBLOCKCHECKSUM, LOGBLOCKCHECKSUM
  • Job Queues - DBMS_JOB
  • Sorting Improvements - SORTDIRECTWRITES

7.3

01 Feb 1996 - 28 May 1997

Oracle 7.3

  • Partitioned Views
  • Bitmapped Indexes
  • Asynchronous read ahead for table scans Standby Database
  • Deferred transaction recovery on instance startup
  • Updatable Join Views (with restrictions)
  • Tablespaces changes - Coalesce, Temporary/ Permanent,
  • Trigger compilation, debug
  • Hash Joins, Antijoins
  • Histograms
  • Dependencies
  • Oracle Trace
  • Advanced Replication Object Groups

Oracle 8.0

01 Jun 1997 - 28 Jan 1999

Oracle 8

  • Object Relational database (ORDBMS) features Object types (not just date, character, number as in v7)
  • SQL3 standard
  • Call external procedures
  • LOB >1 per table
  • Partitioned Tables and Indexes (new partitioning option)
  • partitions in multiple tablespaces
  • export/import individual partitions
  • Online/offline, backup/recover individual partitions merge/balance partitions
  • Advanced Queuing for message handling
  • Index Organized tables (IOTs)
  • Reverse Key indexes
  • Any VIEW updateable (INSTEAD OF triggers on views)

  • upgrade: If you are running Oracle 7.1, 7.2 or 7.3, you can use the Oracle8 Migration Utility to upgrade the data dictionary

8.1.5

01 Feb 1999 - 28 Oct 1999

Oracle 8i (8.1.5)

  • fast start recovery
  • reorganize indexes/index only tables which users accessing data - Online index rebuilds
  • Virtual Private Database: provides added security capabilities to the Oracle database by masking data so that users only see their private information
  • integrated JavaVM (called Aurora) in the database kernel allowing one to execute Java stored procedures
  • integrated support for EJB (Enterprise JavaBeans)
  • JSQL: a specification for Java-based SQL database statements
  • Oracle iFS (Internet File System)
  • new partitioning features: merge partitions into one, updatable partition keys
  • Enterprise Manager v2 delivered - completely rewritten in Java
  • NLS - Euro Symbol supported
  • analyze tables in parallel
  • temporary tables supported (Tables that will be truncated at the end of a transaction or session)
  • Net8 support for SSL, HTTP, HOP protocols
  • transportable tablespaces, copy tablespaces with datafiles between databases
  • Drop column on table (finally!!!!!)
  • index key compression: duplicate keys are combined to save space

8.1.6

01 Nov 1999 - 28 Jul 2000

Oracle 8i (8.1.6)

  • PL/SQL Server Pages (PSP's)
  • DBA Studio Introduced
  • many new SQL analytical functions like lag, lead and rank ALTER FREELISTS command (previously done by DROP/CREATE TABLE)
  • Checksums always ON for SYSTEM tablespace allowing many possible corruptions to be fixed before writing to disk (DBBLOCKCHECKING).
  • XML Parser for Java
  • New PL/SQL encrypt/decrypt package introduced
  • JServer Accelerator (Native Java compiler for each platform), Java programs can run as machine code, not interpreted as with 8.1.5
  • Native support for Java2
  • New CASE statement in SQL similar to the Decode() function
  • User and Schemas separated

8.1.7

01 Aug 2000 - 28 May 2001

Oracle 8i (8.1.7)

  • Static HTTP server included (Apache)
  • JVM Accelerator to improve performance of Java code
  • Java Server Pages (JSP) engine
  • MemStat - A new utility for analyzing Java Memory footprints
  • OIS - Oracle Integration Server introduced.
  • PLSQL Gateway introduced for deploying PL/SQL based solutions on the Web
  • Enterprise Manager Enhancements - including new HTML based reporting and Advanced Replication functionality included.
  • New Database Character Set Migration utility included.

9i r1

01 Jun 2001 - 28 Apr 2002

Oracle 9i Release 1 (9.0.1)

  • Flashback query (dbms_flashback.enable) - one can query data as it looked at some point in the past. This feature will allow users to correct wrongly committed transactions without contacting the DBA to do a database restore
  • scrolling cursor support. Oracle9i allows fetching backwards in a result set
  • Dynamic Memory Management - Buffer Pools and shared pool can be resized on-the-fly. This eliminates the need to restart the database each time parameter changes were made
  • On-line table and index reorganization
  • Build in XML Developers Kit (XDK). New data types for XML (XMLType), URI's
  • Deep data protection - fine grained security and auditing
  • ETL (eXtract, transformation, load) Operations - with external tables and pipelining
  • Oracle OLAP - Express functionality included in the DB
  • Data Mining - Oracle Darwin's features included in the DB

Oracle 9i r2

01 May 2002 - 28 Dec 2003

Oracle 9i Release 2 (9.2.0)

  • Locally Managed SYSTEM tablespaces
  • Oracle Streams - new data sharing/replication feature (can potentially replace Oracle Advance Replication and Standby Databases)
  • XML DB (Oracle is now a standards compliant XML database)
  • Data segment compression (compress keys in tables - only when loading data)
  • Cluster file system for Windows and Linux (raw devices are no longer required).
  • Create logical standby databases with Data Guard
  • Java JDK 1.3 used inside the database (JVM)
  • Oracle Data Guard Enhancements (SQL Apply mode - logical copy of primary database, automatic failover
  • Security Improvements - Default Install Accounts locked, VPD on synonyms, AES, Migrate Users to Directory

Oracle 10g r1

01 Jan 2004 - 27 Aug 2005

Oracle 10g Release 1 (10.1.0)

  • Grid computing - an extension of the clustering feature (Real Application Clusters)
  • Manageability improvements (self-tuning features)
  • Performance and scalability improvements
  • Automated Storage Management (ASM)
  • Automatic Workload Repository (AWR)
  • Automatic Database Diagnostic Monitor (ADDM)
  • Flashback operations available on row, transaction, table or database level
  • Ability to UNDROP a table using a recycle bin
  • Ability to rename tablespaces
  • Ability to transport tablespaces across machine types (E.g Windows to Unix)
  • New 'drop database' statement
  • New database scheduler - DBMS_SCHEDULER

Oracle 10g r2

01 Sep 2005 - 4 Aug 2007

Oracle 10g Release 2 (10.2.0)

  • Transparent Data Encryption
  • Async COMMITs
  • The CONNECT ROLE can now only connect (CREATE privs removed)
  • Passwords for DB Links are encrypted
  • New asmcmd utility for managing ASM storage
  • Support for regular expressions in SQL and PL/SQL

  • upgrade: Direct upgrade to Oracle 10g is only supported if your database is running one of the following releases: 8.0.6, 8.1.7, 9.0.1, or 9.2.0. If not, you will have to upgrade the database to one of these releases or use a different upgrade option (like export/ import)

Oracle 11g r1

9 Aug 2007 - 28 Aug 2009

Oracle 11g Release 1 (11.1.0)

  • Oracle added about "482 new features"http://www.orafaq.com/wiki/Oracle_11gR1 in the Oracle Database 11g version
  • new data types available: Binary XML type - up to 15 x faster over XML LOBs, DICOM Medical Images, 3D Spatial Support, RFID tag data types
  • tables can have Virtual columns (calculated from other columns)
  • online rebuilding of indexes with no pause on DML activity
  • ability to mark a table as "read only"
  • New "SIMPLEINTEGER" data type - always NOT NULL, wraps instead of overflows and is faster than PLSINTEGER
  • Compound triggers - a trigger can be before, after, row and statement all in one
  • new CONTINUE statement - starts the next iteration of the loop
  • ability to reference sequences
  • OLAP-based Materialized Views for fast OLAP CUBE building
  • Flashback Transaction/ Oracle Total Recall
  • support for case sensitive and multi-byte passwords
  • upgrade: Oracle database versions at or above 9.2.0.4 can be upgraded directly to Oracle 11g. Versions previous to 9.2.0.4 must first be upgraded to Oracle 9i or 10g before they can be upgraded to Oracle 11g

Oracle 11g r2

01 Sep 2009 - 01 Jan 2014

Oracle 11g Release 2 (11.2.0)
* Improved data compression ratios (up to 20x).
* ability to upgrade database applications while users remain online.
* new ease-of-use features that make Grid computing more accessible.
* automation of key systems management activities

JAVA

JDK 1.0

23 Jan 1996 - 19 Feb 1997

Java Developer Kit 1.0
(codename: Oak)

  • in versions of Java and the JDK up to 1.0.1, you could use private and protected together to create yet another form of protection that would restrict access to methods or variables solely to subclasses of a given class
  • as of 1.0.2, this capability has been removed from the language

JDK 1.1

19 Feb 1997 - 04 Dec 1998

Java Developer Kit 1.1

  • an extensive retooling of the AWT event model
  • inner classes added to the language
  • JavaBeans
  • JDBC
  • RMI
  • reflection which supported Introspection only, no modification at runtime was possible.

J2SE 1.2

08 Dec 1998 - 05 May 2000

Java 2 Platform, Standard Edition 1.2
(codename: Playground)

  • "J2SE" (Java 2 Platform, Standard Edition) replaced JDK to distinguish the base platform from J2EE (Java 2 Platform, Enterprise Edition) and J2ME (Java 2 Platform, Micro Edition)
  • very significant release of Java as it tripled the size of the Java platform to 1520 classes in 59 packages. Major additions included
  • strictfp keyword: ensure that calculations are performed as in the earlier versions
  • the Swing graphical API was integrated into the core classes
  • Java plug-in: Java applet is an applet delivered to users in the form of Java bytecode. Java applets can be part of a web page and executed by the Java Virtual Machine (JVM) in a process separate from the web browser
  • Collections framework

J2SE 1.3

08 May 2000 - 03 Feb 2002

Java 2 Platform, Standard Edition 1.3
(codename: Kestrel)

  • RMI was modified to support optional compatibility with CORBA
  • JavaSound
  • Java Naming and Directory Interface (JNDI) included in core libraries (previously available as an extension): a Java API for a directory service that allows Java software clients to discover and look up data and objects via a name
  • Java Platform Debugger Architecture (JPDA): a collection of APIs to debug Java code
  • Synthetic proxy classes

J2SE 1.4

06 Feb 2002 - 27 Sep 2004

Java 2 Platform, Standard Edition 1.4
(codename: Merlin)

  • the first release of the Java platform developed under the Java Community Process as JSR 59
  • assert keyword: a predicate (a true–false statement) placed in a program to indicate that the developer thinks that the predicate is always true at that place
  • regular expressions modeled after Perl regular expressions
  • exception chaining allows an exception to encapsulate original lower-level exception
  • Internet Protocol version 6 (IPv6) support
  • logging API (Specified in JSR 47)
  • image I/O API for reading and writing images in formats like JPEG and PNG
  • integrated XML parser and XSLT processor (JAXP) (Specified in JSR 5 and JSR 63.)
  • integrated security and cryptography extensions (JCE, JSSE, JAAS)
  • Java Web Start included
  • Preferences API (java.util.prefs)

J2SE 5.0

30 Sep 2004 - 08 Dec 2006

Java 2 Platform, Standard Edition 5.0
(codename: Tiger)

  • originally numbered 1.5, which is still used as the internal version number
  • this version was developed under JSR 176
  • generics provides compile-time (static) type safety for collections and eliminates the need for most typecasts (type conversion)
  • metadata Also called annotations; allows language constructs such as classes and methods to be tagged with additional data, which can then be processed by metadata-aware utilities. (Specified by JSR 175.)
  • enumerations: The enum keyword creates a typesafe, ordered list of value
  • varargs: The last parameter of a method can now be declared using a type name followed by three dots (e.g. void drawtext(String... lines)). In the calling code any number of parameters of that type can be used and they are then placed in an array to be passed to the method, or alternatively the calling code can pass an array of that type
  • enhanced for each loop: for (Widget w: widgets) { w.display(); }
  • static imports

Java SE 6

11 Dec 2006 - 24 Jul 2011

Java SE6
(codename: Mustang)

  • Sun replaced the name "J2SE" with Java SE and dropped the ".0" from the version number.
  • internal numbering for developers remains 1.6.0; developed under JSR 270
  • JDBC 4.0 support (JSR 221)
  • upgrade JAXB to 2.0: Java Architecture for XML Binding (JAXB) allows Java developers to map Java classes to XML representations
  • update 9: last to support Windows 9x line
  • update 10: Java Deployment Toolkit, a set of JavaScript functions to ease the deployment of applets and Java Web Start applications
  • Java Kernel, a small installer including only the most commonly used JRE classes. Other packages are downloaded when needed

Java SE 7

28 Jul 2011 - 01 Sep 2013

Java SE 7
(codename: Dolphin)

  • JVM support for dynamic languages
  • compressed 64-bit pointers
  • Strings in switch: you can use a String object in the expression of a switch statement:
  • Automatic resource management in try-statement: he try-with-resources statement is a try statement that declares one or more resources. A resource is as an object that must be closed after the program is finished with it
  • Improved type inference for generic instance creation
  • Simplified varargs method declaration
  • Binary integer literals
  • Allowing underscores in numeric literals: any number of underscore characters (_) can appear anywhere between digits in a numerical literal. This feature enables you, for example, to separate groups of digits in numeric literals, which can improve the readability of your code
  • Catching multiple exception types and rethrowing exceptions with improved type checking: a single catch block can handle more than one type of exception
  • new platform APIs for the graphics features

Ant + Maven

Ant 1.1

19 Jul 2000

Apache Ant 1.1

  • requires Java 1.1
  • a software tool for automating software build processes.
  • similar to Make but is implemented using the Java language, requires the Java platform, and is best suited to building Java projects.
  • the most immediately noticeable difference between Ant and Make is that Ant uses XML to describe the build process and its dependencies, whereas Make uses Makefile format
  • by default the XML file is named build.xml.

Ant 1.4

03 Sep 2001

Apache Ant 1.4

  • requires Java 1.1

Ant 1.5

10 Jul 2002

Apache Ant 1.5

  • 1.5.1 (3 Oct 2002)
  • 1.5.2 (3 Mar 2003)
  • 1.5.3 (9 Apr 2003)
  • 1.5.4 (12 Aug 2003)
  • requires Java 1.1

Ant 1.6

18 Dec 2003

Apache Ant 1.6

  • 1.6.1 (12 Feb 2004)
  • 1.6.2 (16 Jul 2004)
  • 1.6.3 (28 Apr 2005)
  • 1.6.4 (19 May 2005)
  • 1.6.5 (2 Jun 2005)
  • requires Java 1.2
  • most prominently support for XML namespaces as well as a new concept of Ant libraries that makes use of namespaces to avoid name clashes of custom tasks
  • import build files - and maybe even override targets in the imported files with targets of your own
  • new naming conventions for methods have been added that make writing and using custom selectors, filters or conditions a lot easier

Maven 1.0

01 Jul 2004

Maven 1.0

  • a build automation tool used primarily for Java projects. Maven serves a similar purpose to the Apache Ant tool, but it is based on different concepts and works in a different manner
  • it can also be used to build and manage projects written in C#, Ruby, Scala, and other languages
  • uses an XML file to describe the software project being built, its dependencies on other external modules and components, the build order, directories, and required plug-ins. It comes with pre-defined targets for performing certain well-defined tasks such as compilation of code and its packaging
  • dynamically downloads Java libraries and Maven plug-ins from one or more repositories such as the Maven 2 Central Repository, and stores them in a local cache. This local cache of downloaded artifacts can also be updated with artifacts created by local projects. Public repositories can also be updated

Maven 2.0

01 Oct 2005

Maven 2.0

Main Goals
* to be simple to use - it should be more obvious and consistent about how things are working
* fast - a new architecture and smaller memory footprint make it as fast as possible
* to be able to implement the features demanded were not possible under the Maven 1.0 architecture
* no backwards compatibility: Instead of making many small incremental changes that would break compatibility often over time, we decided to build on a new, solid base that can be reliable for the future, and also to maintain the existing Maven 1.x product to ensure that existing users are not left out in the cold

Ant 1.7

19 Dec 2006

Apache Ant 1.7

  • 1.7.1 (27 Jun 2008)
  • requires Java 1.3
  • introduces a resource framework. Some of the core ant tasks such as are now able to process not only file system resources but also zip entries, tar entries, paths, ... Resource collections group resources, and can be further combined with operators such as union and intersection.
  • starts outsourcing of optional tasks to Antlibs

Ant 1.8

8 February 2010

Apache Ant 1.8

  • 1.8.1 (7 May 2010)
  • 1.8.2 (27 Dec 2010)
  • 1.8.3 (29 Feb 2012)
  • 1.8.4 (23 May 2012 )
  • requires Java 1.4
  • lexically scoped local properties, i.e. properties that are only defined inside a target, sequential block or similar environment. This is very useful inside of s where a macro can now define a temporary property that will disappear once the task has finished
  • can now import from any file- or URL-providing resource - this includes . This means can read build file snippets from JARs or fixed server URLs
  • the way developers can extend Ant's property expansion algorithm has been rewritten (breaking the older API) to be easier to use and be more powerful
  • new task include provides an alternative to that should be preferred when you don't want to override any targets

Maven 3.0

01 Oct 2010

Apache Maven 3.0

  • software project management and comprehension tool. Based on the concept of a project object model (POM)
  • can manage a project's build, reporting and documentation from a central place.
  • aims to ensure backward compatibility with Maven 2, improve usability, increase performance, allow safe embedding, and pave the way to implement many highly demanded features

Ant 1.9

07 Mar 2013

Apache Ant 1.9

  • requires Java 1.5
  • support for @Ignore annotation in JUnit 4 testcases
  • the zip, bzip2 and tar tasks are improved
  • removal of the Perforce Ant tasks; users of these tasks can use the tasks supplied by Perforce Inc. instead, which contain more functionality and connect natively to the Perforce servers

Java Spring

Spring 1.0

01 Mar 2004 - 03 Oct 2006

Spring 2.0

03 Oct 2006 - 01 Nov 2007

Spring 2.0

  • Simplified Configuration - you will find you write much less code overall to configuration your applications
  • JSR 220 Java Persistence Archtecture (JPA) - to provide you choice in persistence provider implementation. Spring is the first to support JPA in both JEE and JSE environments with full portability between the two
  • Asynchronous JMS Messaging - Message-Driven POJOs bring you lightweight asynchronous components
  • Spring Portlet MVC delivers a framework for developing JSR 168 portlets which includes integration with Spring Web Flow for orchestrating user interactions
  • provides backwards compatability with the Spring 1.x series
  • conventions-based web MVC: controller mappings, model attribute names
  • JSP form tag library for use with Spring Web MVC and Spring Web Flow
  • full support for Portlet environments, including Portlet-style MVC based on a DispatcherPortlet

Spring 2.5

01 Nov 2007 - 09 Jan 2008

Spring 2.5

  • full Java 6 and Java EE 5 support (JDBC 4.0, JTA 1.1, JavaMail 1.4, JAX-WS 2.0, etc)
  • full-featured annotation-driven dependency injection
  • built-in support for for AspectJ load-time weaving
  • further XML configuration namespaces ("context", "jms") for maximum convenience
  • completely revised framework for integration tests (with support for JUnit 4 and TestNG)
  • new annotation-based controller style for Servlet MVC and Portlet MVC
  • officially certified WebSphere support (support for the WebSphere 6 UOWManager facility)
  • JCA 1.5 message endpoint management (for Spring-managed JMS and CCI message listeners)
  • is still compatible with JDK 1.4.2+ and J2EE 1.3+. Java 1.4 users, for example on WebLogic 8.1 or WebSphere 5.1/6.0, are very welcome to upgrade to Spring 2.5 as well

Spring 2.5.1

09 Jan 2008 - 03 mar 2008

Spring 2.5.1

  • Java-5-specific Model interface for use with MVC handler methods
  • @ModelAttribute's default attribute names are consistently derived from the declared parameter/return type
  • support for last-modified handling in @RequestMapping handler methods (through the WebRequest interface)
  • SpringBeanAutowiringSupport class for self-autowiring classes within a web app (e.g. JAX-WS endpoints)
  • EJB3-compliant SpringBeanAutowiringInterceptor for processing Spring's @Autowired in EJB3 SBs/MDBs
  • Remoting support for the HTTP server that is included in Sun’s JDK 1.6 (covering HTTP invoker, Hessian and Burlap)
  • "jms:listener-container" tag supports a concurrency range (e.g. "3-5"), for specifying a minimum number of consumers
  • Tiles2 support works on JDK 1.4 as well

Spring 2.5.2

03 mar 2008 - 01 Dec 2009

Spring 2.5.2

  • Restored full Spring 2.0 compatibility for specific extension points
  • Extended SQL error code mappings for MS SQL, MySQL, PostgreSQL and Oracle
  • Revised JDBC BeanPropertyRowMapper with refined value extraction logic
  • Support for the GlassFish/JBoss JCA WorkManager as TaskExecutor backend
  • Support for Eclipse Persistence Services 1.0 M4 (the EclipseLink JPA provider)
  • Compatibility with the WebSphere JPA provider (derived from OpenJPA)
  • @RequestMapping supports "!myParam" expressions for non-presence of a parameter
  • @RequestMapping's "params" attribute supported at the type level as well
  • Revised JSP CheckboxesTag and RadioButtonsTag (for strict HTML compliance)

Spring 3.0

01 Dec 2009 - 01 Dec 2011

Spring 3.0

  • Spring Expression Language
  • IoC enhancements/Java based bean metadata
  • general-purpose type conversion system and field formatting system
  • object to XML mapping functionality (OXM) moved from Spring Web Services project
  • comprehensive REST support
  • @MVC additions
  • declarative model validation
  • early support for Java EE 6
  • embedded database support

Spring 3.1

01 Dec 2011 - 29 May 2012

Spring 3.1

  • Bean definition profiles
  • Enhancements to Java-based container configuration
  • Caching abstraction
  • new c: XML namespace
  • Improvements to Spring MVC

Spring 3.2

29 May 2012 - 24 jan 2013

Spring 3.2

  • initial support for asynchronous @Controller methods
  • early support for JCache-based cache providers
  • significant performance improvements in autowiring of non-singleton beans
  • initial delay support for @Scheduled and task:scheduled
  • ability to choose between multiple executuors with @Async
  • enhanced bean profile selection using the not (!) operator

Spring 3.2.1

24 Jan 2013 - 14 mar 2013

Spring 3.2.1

  • myBatis was added as a module to the parent
  • DisposableBeanAdapter detects "shutdown" as a destroy method as well (for EHCache CacheManager setup)
  • introduced NoUniqueBeanDefinitionException as a dedicated subclass of NoSuchBeanDefinitionException
  • JDBC parameter binding uses JDBC 3.0 ParameterMetaData (if available) for type determination
  • Spring MVC Test framework supports HTTP OPTIONS method as well

Java Persistance

iBatis, Hibernate, JPA

iBatis 1.0

1 Jul 2002

iBATIS Database Layer 1.0

  • ORM: Object/Relational Mapping

iBatis 1.2

13 May 2003

iBATIS Database Layer 1.2

Hibernate 2.0

9 Jun 2003

Hibernate 2.0

  • id generator framework
  • configuration APIs
  • interceptor
  • callbacks
  • collections
  • package organization
  • naming exception model
  • new mapping format
  • new "cool" features

iBatis 2.0

01 Jun 2004

iBATIS for java 2.0

  • only for Spring 2

Hibernate 3.0

28 Feb 2005

Hibernate 3.0
(aquired by jBoss, member of RedHat)

  • Hibernate3 filters
  • Unchecked exceptions
  • Hibernate Tools
  • Second-level cache browser
  • XML integration
  • JBoss EJB 3.0 preview: support for annotation-based O/R mappings, full support for EJB-QL 3.0, support for EJB 3.0 persist()/merge() lifecycle, JACC-based security model

iBatis 2.1

16 May 2005

iBATIS for java 2.1

Hibernate 3.1.1

19 Jan 2006

Hibernate 3.1.1

  • SQL Server support
  • DML-style HQL (UPDATE, DELETE, INSERT INTO... SELECT)
  • Native Query support
  • Connection handling

iBatis 2.2

16 Aug 2006

iBATIS for java 2.2

iBatis 2.3.1

01 Apr 2008

iBATIS for java 2.3.1

Hibernate 3.5.0

01 Apr 2010

Hibernate 3.5.0

  • Support for JDBC 4 such that Hibernate can be used in JDK 1.6 JVMs and make use of JDBC4-compliant drivers
  • certified implementation of the Java Persistence API 2.0 specification via a wrapper for the Core module which provides conformity with the JSR 317 standard
  • far better "read only" / "immutable" support
  • ntegration of hibernate-annotations, hibernate-entitymanager and hibernate-envers into the core project

MyBatis 3.0

19 May 2010

MyBatis 3.0
(renamed from iBATIS 3.0 )

  • requires Java 5 or higher
  • the development team decided to continue the development of the framework at Google Code
  • given the iBATIS name was donated to the ASF the project acquired its new name MyBatis
  • it was the first time a TLP (Top Level Project) moved from Apache

Hb 4.0.0

01 Dec 2011

Hibernate Core 4.0.0

  • Spring 3.0
  • initial multi-tenancy support
  • ntroduction of ServiceRegistry (which is a major change in how Hibernate builds and manages "services")
  • clean up of Session opening from SessionFactory
  • improved integration via org.hibernate.integrator.spi.Integrator and auto discovery
  • improved logging with i18n support and message codes
  • initial work on more clear split between API, SPI and implementation classes
  • clean up of deprecated methods, classes

MyBatis 3.1.0

11 Mar 2012

MyBatis 3.1.0

  • if you are using MyBatis-Spring 1.0.x upgrade it to 1.1.0
  • multi-db support, improved Jdbc3 key generation support,
  • Scala support, selective logging,
  • child-parent relations on joins, performace optimizations
  • Transaction/TransactionFactory -> new method to create a
  • Transaction out of a DataSource
  • ObjectFactory -> new method isCollection()
  • TypeHandler -> new method to get values by index

MyBatis-Spring 1.1

12 Mar 2012

MyBatis-Spring 1.1

  • offers support for MyBatis 3.1.0
  • lazy loads do not execute within Spring-managed transactions
  • prevent class loading / add zero-method mappers while scanning for mappers

Hibernate 4.1.9

13 Dec 2012

Hibernate ORM 4.1.9

MyBatis 3.2.0

21 Feb 2013

MyBatis 3.2.0

  • requires Jdk 1.6 while previous versions required Jdk 1.5
  • support for plugable scripting engines.
  • upport pluggable bytecode providers & Javassist.
  • cached nested queries.
  • logging improvements.
  • more than 40 bug fixes

MyBatis-Spring 1.2.0

21 Feb 2013

MyBatis-Spring 1.2.0

  • New @MapperScan annotation.
  • New namespace.
  • @Autowired has been removed from SqlSessionDaoSupport (and MapperFactoryBean).
  • Dependencies to Spring-Jdbc & MyBatis are now "provided" so you may need to include them explicitly in your pom.xml

Web Tools

HTML 2.0

24 Nov 1995

HTML 2.0

JavaScript 1.0

01 Mar 1996

JavaScript 1.0

CSS 1.0

17 Dec 1996

CSS 1.0

HTML 3.2

14 Jan 1997

HTML 3.2

HTML 4.0

24 Apr 1998

HTML 4.0

  • the most important feature of HTML 4.0 was the introduction of style sheets (CSS).

CSS 2.0

12 May 1998

CSS 2.0

JavaScript 1.3

01 Oct 1998

JavaScript 1.0

HTML 4.0.1

24 Dec 1999

HTML 4.0.1

JavaScript 1.5

01 Nov 2000

JavaScript 1.5

  • runtime errors are now reported as exceptions
  • number formatting has been enhanced to include Number.prototype.toExponential, Number.prototype.toFixed, and Number.prototype.toPrecision methods
  • Quantifiers - +, *, ? and {} - can now be followed by a ? to force them to be non-greedy
  • positive and negative lookahead assertions are supported

JavaScript 1.6

01 Nov 2005

JavaScript 1.6

  • array extras
  • array and string generics
  • E4X: ECMAScript for XML (E4X) is a programming language extension that adds native XML support to ECMAScript (which includes ActionScript, JavaScript, and JScript

JavaScript 1.7

01 Oct 2006

JavaScript 1.7

  • Pythonic generators
  • iterators
  • let

JavaScript 1.8

01 Jun 2008

JavaScript 1.8

  • generator expressions
  • expression closures
  • native JSON support (1.8.1)

JavaScript 1.8.5

27 Jul 2010

JavaScript 1.8.5

  • ECMAScript 5 compliance: scripting language widely used for client-side scripting on the web, in the form of several well-known dialects such as JavaScript, JScript and ActionScript

CSS 2.1

07 Jun 2011

CSS 2.1

CSS 3

29 Sep 2011

CSS 3

  • CSS3 is about breaking CSS into smaller modules.
  • CSS3 builds on CSS2, module by module, using the CSS2.1 specification as the core.
  • each module adds functionality and/or replaces part of the CSS2.1 specification
  • Namespaces Module (29. Sep 2011)
  • Selectors (29. Sep 2011)
  • User Interface Module (17. Jan 2012)
  • Fonts Module (12. Feb 2013)
  • Color Module (07. Jun 2011)
  • Backgrounds and Borders Module (24. Jul 2012)
  • Text Module (13. Nov 2012)
  • Line Module (15. May 2002)
  • Basic Box model (09. Aug 2007)
  • Multi-column Layout Module (12. Apr 2011)
  • Ruby Module (30. Jun 2011)
  • Speech Module (20. Mar 2012 )
  • Paged Media Module (10. Oct 2006)
  • Generated content for Paged Media Module (29. Nov 2011)
  • Values and Units Module (28. Aug 2012)
  • Cascading and Inheritance (03. Jan 2013)
  • Template Layout Module (29. Nov 2011)
  • Media Queries (19. Jun 2012)
  • Mobile Profile 2.0 (10. Dec 2008)
  • TV Profile 1.0 (14. May 2003)
  • Print Profile 1.0 (13. Oct 2006)

HTML 5

17 Dec 2012

HTML 5

  • 2008 – First Public Working Draft
  • as of 5 January 2009, HTML5 also includes Web Forms 2.0
  • Timed media playback
  • Offline Web Applications
  • Document editing
  • drag-and-drop
  • Cross-document messaging
  • browser history management
  • MIME type and protocol handler registration
  • microdata
  • web Storage, a key-value pair storage framework that provides behaviour similar to cookies but with larger storage capacity and improved API
  • geolocation
  • Web SQL Database, a local SQL Database (no longer maintained)
  • HTML5 File API, handles file uploads and file manipulation
  • Web Audio API, a high-level JavaScript API for processing and synthesizing audio in web applications
  • HTML5 alone cannot provide animation within web pages. Either JavaScript or CSS3 is necessary for animating HTML elements. Animation is also possible using JavaScript and HTML 4