JavaOne 2003, San Francisco 10.-13.6.2003

thickbugΛογισμικό & κατασκευή λογ/κού

28 Οκτ 2013 (πριν από 3 χρόνια και 5 μήνες)

56 εμφανίσεις

JavaOne 2003, San Francisco 10.
-
13.6.2003

http://java.sun.com/javaone

Simo Vuorinen

TietoEnator P&H dGov

Agenda


Overview


Topics


Sessions attended


Other interesting stuff

Overview


Estimated 15000(?) attendees


More than
200 technical sessions and 175 Birds
-
of
-
a
-
Feather
sessions (BOFs)


Sponsors & Exhibitors


Every day from 8.30 AM to 00.20 AM


covering topics such as Mobility, J2EE, Core platform, Web tier,
WebServices, Success stories, Desktop, & Networking


Announcements!

Topics
-

Core Technology top 4


TS
-
3708(USA,2003)

-

Concurrency Utilities
--

Multithreading Made Easy


TS
-
3072(USA,2003)

-

Forthcoming Java[tm] Programming
Language Features


TS
-
3063(USA,2003)

-

Adding Generics to the Java[tm]
Programming Language


TS
-
1540(USA,2003)

-

Java[tm] 2 Platform, Standard Edition
(J2SE[tm]) Update and Roadmap


Topics
-

Mobility top 3


Advanced MIDP Programming: Developing High
Performance, Highly Responsive Wireless
Applications

TS
-
2037



Speeding Up MIDlets Without Speeding Up Your Code

TS
-
3129



Getting the Most Out of MIDP 2.0 Security and
Networking

TS
-
2111



Topics
-

Core Enterprise

top 3



Advanced Core Java
TM

2 Platform, Enterprise Edition
(J2EE
TM
) Patterns and Refactoring

TS
-
3235



The Java
TM

2 Platform, Enterprise Edition (J2EE
TM
)
Overview and Roadmap

TS
-
1477



Java
TM

2 Platform, Enterprise Edition (J2EE
TM
) or .NET: An
Objective Technology Comparison

TS
-
1102


Topics


Web Tier top 3


About Faces: The JavaServer
TM

Faces GUI Component
Framework

TS
-
2301


Java
TM

Technology Design Patterns for High
-
Load Web
Sites

TS
-
3588


Overview of Java
TM

Servlet 2.4 API and JavaServer
Pages
TM

(JSP
TM
) 2.0 Specifications

TS
-
1625

Topics


WebServices top 3


BluePrints for Web Services: Recommendations,
Strategies, and Best Practices for Designing Web
Services

TS
-
1636


Java
TM

API for XML
-
based RPC (JAX
-
RPC), Java
TM

Technology Containers, Identity Services, and Secure
Web Services

TS
-
3684


Implementing Web Services with Java
TM

2 Platform,
Enterprise Edition (J2EE
TM
) and Java
TM

API for XML
-
Based
RPC (JAX
-
RPC)

TS
-
1860


+ Labs!

Topics


Desktop top 3


Desktop Client Java
TM

Technology Roadmap

TS
-
1662


Get Rich Quick: Taking Advantage of Java 2D
TM

API in
Your Rich Client Application

TS
-
1493


What's New in Java
TM

Plug
-
in and Java Web Start
Software?

TS
-
1486

Topics


Success Stories top 5


Implementing Large
-
Scale Application Architecture at a
Global 10 Company Using Service Oriented Java
TM

2
Platform, Enterprise Edition (J2EE
TM
) Platform
Frameworks

BUS
-
2862


Inside AA.com: Mastering Large
-
Scale Java
TM

2 Platform,
Enterprise Edition (J2EE
TM
) Application Development and
Deployment

TS
-
3284


Successfully delivering and supporting large scale Java
TM

2 Platform, Enterprise Edition (J2EE
TM

platform)
applications in a distributed mixed
-
language
environment

TS
-
2943


The Brazilian National Health Card Project: Building the
National Health Informatics Infrastructure

BUS
-
2680


The New U.S. Department of Defense Java Card
TM

Platform
-
Based Applet Architecture

TS
-
3724



Topics


Advanced Networking top 3


Beyond Web Services: Combining Jini
TM

Network
Technology and Project JXTA to Take Advantage of
Edge Computing

TS
-
2220


P2P for the Enterprise: A Project JXTA and Java
TM

2
Platform, Enterprise Edition (J2EE
TM
) Connector
Architecture Solution

TS
-
3580


Presence, Availability, and Instant Messaging

TS
-
2022

Sessions
-

tuesday


Keynote 2 with Graham Hamilton & Tim Lindholm


JavaServer Faces


J2SE, J2EE & J2ME Roadmap


1 Billion Transactions per day

Sessions, tuesday: Keynote with Graham
Hamilton & Tim Lindholm


J2SE 1.5 "Tiger" release, targeted at summer 2004
:
Ease of development


Generics


Autoboxing


metadata


annotations (@create)


Ease
-
of
-
Development the main theme for J2EE 1.5


metadata


simplify the development and deployment model for basic
tasks


JSR
-
223 to define how scripting languages can be used in
the J2EE web tier


Sessions, tuesday: JavaServer Faces


JavaServer
TM

Faces 1.0 Specification

under development
in the J
CP

as (JSR
-
127)


A set of APIs for representing UI components and managing their
state, handling events and input validation, defining page
navigation, and supporting internationalization and accessibility.


A JavaServer Pages (JSP) custom tag library for expressing a
JavaServer Faces interface within a JSP page


JavaServer Faces v1.0 Reference Implementation Early
Access 4 is available through the
Java Web Services
Developer Pack 1.2


http://java.sun.com/j2ee/javaserverfaces/docs/JSFTOC.ht
ml

Sessions, tuesday: J2SE Roadmap


J2SE 1.5 ”Tiger” summer ’04


Metadata


Generics


HashMap<String, Mammal> map = new HashMap<String,

Mammal>();

map.put("wombat", new Mammal());


autoboxing of primitive types


simple formatted I/O, such as printf


enum types.


Sessions, tuesday: J2EE Roadmap


1.4


not out yet


J2SE 1.5 planned out: summer ’04
-
> J2EE 1.5 out
after that


Descriptors


JavaServer Faces


JDBC 4.0


Scripting Language Support

on Web Tier


JDO(?)

Sessions, tuesday: J2ME ”Roadmap”


Mobile Information Device Profile (MIDP) 2.0,


richer GUI support, such as sprites for gaming, better server
-
side
push, and security.


Java Technology for the Wireless Industry (JTWI), or JSR
-
185,


industry
-
standard platform for the next generation of Java
technology
-
enabled mobile phones.


Java runtime environment for mobile devices based on


Connected Limited Device Configuration (CLDC) 1.0
(JSR
-
30),


MIDP 2.0 (JSR
-
118),


Wireless Messaging API (WMA) 1.0 (JSR
-
120), and


Mobile Media API (MMAPI; JSR
-
135) where applicable.



An integrated reference implementation and TCK bundle
will be provided for the described technologies.

Sessions, tuesday:
One Billion Transactions a
Day:
A
J2EE
TM

System Architected with the Core
J2EE Patterns

TS
-
3264


eBay


69 M users


1 billion hits a day


legacy: from ISAPI & C++ DLLs to J2EE, a farm of servers


Platform


WAS 4, Tivoli, highly tuned, Sun platform(?)


Client side state (cookies)


Architecture issues


scalability, maintainability, etc.


already fire
-
fighting!


beyond refactoring!


Patterns used


Intercepting filter for authentication


FrontController for request validation


New: Context Object for JNDI context handling


New: ApplicationController


BusinessDelegate


Session Facade


New: Application Service


ValueListHandler


DAO


Changed: Transfer Object

Sessions, tuesday:
One Billion Transactions a Day:
A
J2EE
TM

System Architected with the Core J2EE
Patterns

TS
-
3264

Sessions
-

wednesday


Keynote with Richard Green et co.


Model vs. Code


Patterns for high load websites


EJB 2.1 & 3.0


Optimizing J2EE DW Application

Wednesday


keynote, R.Green


The Java platform will now be shipped on all
Hewlett
-
Packard PCs.


The Java platform will now be shipped on all Dell
computers and laptops running the Linux operating
system


Java technology developers
from

3 million

to
increase to 10 million


corporate developers


project RAVE (see next slide)



Project RAVE


Key features


Increases developer productivity


Decreases deployment time


Reduces application development complexity


Represents a development solution based on Java platform
and J2EE standards


The enabled technologies in Project Rave are:


JavaServer Faces


JDBC Rowsets


NetBeans


Java Web Services Developer Pack

Sessions


wednesday: Model vs. code


Not all concepts are best communicated with
diagrams


code often fails to express the big picture


guidelines for combining rapid prototyping and
formal design into an efficient development process.


Software archeology: discovering the structure


Modeling = communication


Modeling vs. code
-
> Picture books vs. written word


Iteration: design
-
develop
-
design
-
develop
-
...


Sessions Wednesday:
Enterprise
JavaBeans
TM

2.1 and 3.0 Architecture


2.1. is PFD.


J2EE 1.4 Q3/03


New:


WebServices


TimerService


MDB with Connectors


EJB
-
QL modifications


Check JAX
-
RPC specs vs. RMI specs; differences between
serialization of private attributes


EJB 3.0
-
> J2EE 1.5


JSRs: 220, 181, 224, 221, ”TBD J2EE 1.5”


DDs out of the way


JSR 175: metadata
-
> default values


tag
-
like annotations: @create MySLSB;


No need for Home
-

Remote
-

...all in one.

Sessions Wednesday:
Getting the Most Out of
MIDP 2.0 Security and Networking


Security risks


Apps spending user’s money without permission


Apps exposing private information


Security policy


device & market specific


2 Kinds of protection domains


Trusted


Untrusted


1 Protection domain / Midlet Suite


Prompting user


Blanket
-
setting


Session
-
setting


One shot
-
setting


Check J2ME Blueprints

Sessions wednesday:
Optimizing EJB
TM

Performance in High
-
Volume Data
-
Warehousing
Applications
-

Patterns, Strategies and Best
Practices


DW schemas: star / snowflake


Entitybeans useful: read
-
only Entitybeans make an
excellent clustered cache!


EntityBean design differs in DW application


BMP usage faster than CMP in this app: from
seconds to parts of second


JDBC ca 10% faster in bulk inserts than CMP


Use optimistic concurrency & high isolation level


Use surrogate keys
-

> changes in structure won’t
break the design

Sessions
-

thursday


J2ME Architecture Overview


Wireless Messaging API


Java Business Integration


Advanced J2EE Patterns


PD4J


CMP Beyond Specification


CMP Performance Myths demystified


J2EE Application Verification Toolkit


Java Data Objects


Java Business Integration working group

Thursday: J2ME Architecture overview


Challenges


Portability


Security


Provisioning


Fragmentation vs. flexibility


Goals


Identifiable platform targets


Reuse of APIs


Subsets of APIs


J2ME Building Blocks!

Thursday: J2ME Architecture overview


Architecture elements


Configuration: defines VM


Profile: API: defines the environment


Optional Package


CLDC Example


CLDC specs


MIDP profile


eg. MMA spec


CDC Example


CDC spec


Foundation Profile


Personal Basis Profile


Personal Profile


MMA Optional pack


Thursday: J2ME Architecture overview


Optional Packages


MMA (JSR 135)


WMA (JSR 120)


Bluetooth

Thursday: Wireless Messaging API


Goals


Interoperability between


Manufacturers


Networks


Small footprint


Timeline


1.1 finished already


Very simple to use


need an adapter


CDMA


GSM


Apps


Location based services


Chat


Games


News


Send
-
receive


Custom
-
SMS


Java Payment API

Thursday: Java Business Integration


Goal


Provide a standard
-
based environment for execution of
business process


BPEL Engine


TX semantics, unit of work, security, administration



schedule: August: 1st draft, Dec: Community draft


Transformation Engine


Routing Engine


Notion of business process


History


WebServices
-
> Document
-
centric processing emerging


Business messages: data & metadata


Builds on J2EE 1.4

Thursday: Java Business Integration


Business system integration


isolation of message processing from comm. protocols


must account for different comm. infras


web, when possible


robust


WSDL as vocabulary


asynchronous

Thursday: Advanced Core J2EE Patterns &
refactoring


Pattern is the sweet spot of


reuse


design abstractions


From bad practices to good practices: refactoring


New Patterns for Presentation tier


Context Object


Application Controller


New Patterns for Business tier


Application Service


Business Object


New Patterns for Integration tier


Web Service Broker: WebServices


Domain Store: Separate Persistence form object model


JDO
-
implementation! Check the JDO
-
article about domain store!


Check also Martin Fowler’s new Enterprise Architecture
Patters book


Thursday:
Building Business Processes with
Java
TM

Technology: A Forward Glimpse at
Process Definition for Java
TM

(JSR
-
207)


Not defining tools but syntax that tools can use


BPEL:Cross
-
platform standard


PD4J: Java implementation

J2SE

J2EE

JBI

Servlet

EJB

PD4J

BPEL

Thursday: CMP beyond specification


Persistence for J2EE, std features


JDBC: not a persistence framework


JDO: not part of J2EE standard before J2EE 1.5


EntityBean


CMP


BMP


state, persistence


concurrency


tx
-
attributes


o/r
-
mapping


Vendor specific features


pluggable persistence manager

Thursday: J2EE AVK


EJBs, JSPs & servlets


Dynamic verification & static verification


Use it!

Thursday: JDBC Rowsets, EJB CMP, JDO


JDBC Rowsets


SQL
-
based


Exposes DB


EJB


lifecycle handling


no inheritance!


JDO


object
-
oriented view vs. EJB’s component
-
oriented view


maps domain object model; transparent o/r
-
mapping


inheritance!


Persistence models


App
-
managed: EJB
-
BMP & JDBC


System managed: EJB
-
CMP & JDO


EJB vs. JDO


lot of similarities


domain hiding


Thursday: JDBC Rowsets, EJB CMP, JDO

Sessions
-

friday


Keynote with Scott McNealy


WebServices Strategies, Patterns, and Best
Practices


Java Content Repository API


Solving common J2EE Performance problems

Friday: Keynote with Scott McNealy


Self
-
assessment


Overview of so far


Couple of demos