®
WebSphere Application Server
Migration/Interoperability v7.0
Dana Duffield
[email protected], Rochester Mn.
WebSphere Application Server Migration Architect
September 2010
© 2007/2008/2009/2010 IBM Corporation
Disclaimer
THE INFORMATION CONTAINED IN THIS DOCUMENTATION IS
PROVIDED FOR INFORMATIONAL PURPOSES ONLY. WHILE
EFFORTS WERE MADE TO VERIFY THE COMPLETENESS AND
ACCURACY OF THE INFORMATION CONTAINED IN THIS
DOCUMENTATION, IT IS PROVIDED “AS IS” WITHOUT
WARRANTY OF ANY KIND, EXPRESS OR IMPLIED. IN
ADDITION, THIS INFORMATION IS BASED ON IBM’S CURRENT
PRODUCT PLANS AND STRATEGY, WHICH ARE SUBJECT TO
CHANGE BY IBM WITHOUT NOTICE. IBM SHALL NOT BE
RESPONSIBLE FOR ANY DAMAGES ARISING OUT OF THE
USE OF, OR OTHERWISE RELATED TO, THIS
DOCUMENTATION OR ANY OTHER DOCUMENTATION.
NOTHING CONTAINED IN THIS DOCUMENTATION IS
INTENDED TO, NOR SHALL HAVE THE EFFECT OF, CREATING
ANY WARRANTIES OR REPRESENTATIONS FROM IBM (OR
ITS SUPPLIERS OR LICENSORS), OR ALTERING THE TERMS
AND CONDITIONS OF THE APPLICABLE LICENSE
AGREEMENT GOVERNING THE USE OF IBM SOFTWARE
2 WebSphere Application Server Migration – September 2010
Agenda
Migration overview
Migration roadmap
Improving migration story
Runtime migration support
Version specific highlights
3 WebSphere Application Server Migration – September 2010
Appendices
References
Information for the most common migration
scenarios
Changes in v6.0 (cumulative and specific)
Changes in v6.1 (cumulative and specific)
Changes in v7.0 (cumulative and specific)
Other information
Moving from v4.0
Moving to JRE 1.4 or later (for migrating from versions prior to v5.1)
Mixed version cell support
Using the runtime Migration tools
RAD/RSA migration support
Migrating from legacy DB2 JDBC driver to the Universal JDBC
Change History
4 WebSphere Application Server Migration – September 2010
Section
Migration Overview
5 WebSphere Application Server Migration – September 2010
Introduction
This presentation is intended to educate and assist in
performing WebSphere Application Server Version to
Version Migrations
It contains overall planning guidelines as well as
detailed migration concerns for your awareness
It does not prescribe one Migration path
Varies with customer policies
Varies with versions involved
Varies with customer procedures
Use this information as a guide to build your own plan
Get assistance if needed
6 WebSphere Application Server Migration – September 2010
Overview
Migration considerations
More than just software development
Must consider the applications, infrastructure, education
and culture
Migration process should not compromise day-to-day
business
Manage complexity, expectations, expense and risk
Careful planning is required
Each situation is unique
There is no one standard plan
7 WebSphere Application Server Migration – September 2010
Section
Migration Roadmap
8 WebSphere Application Server Migration – September 2010
Migration Plan Roadmap Assessment
Assessment Planning
Planning Skills
Skills Development
Environment
Runtime
Environment
Development Environment Code
Migration
Runtime
Migration
Application Code Migration Unit Test
Test
Systems
Runtime Environment Migration
Test
Test
Production
Production
Review
results
Review the results
9 WebSphere Application Server Migration – September 2010
Assessment Assessment
Gather the people
Planning
Consider a core Migration team
Identify education requirements Skills
Developer, Administrator…
Development Runtime
Hardware requirements Environment Environment
Possible Upgrades, All levels Code Runtime
Migration Migration
Topology assessment
Downtime tolerance, Failover support Test
Unit Test
Systems
Application architecture
Tightened specifications Test
Dependencies between apps
API removal, JDK changes
Production
Review Testing practices
Standard practices and automation Review
results
Vendor apps and WebSphere products
J2EE/JDK/WebSphere version requirements
10 WebSphere Application Server Migration – September 2010
Transition slide for speaker notes of previous chart
11 WebSphere Application Server Migration – September 2010
Transition slide for speaker notes of previous chart
12 WebSphere Application Server Migration – September 2010
Planning Assessment
Build a plan based on assessment Planning
Hardware requirements
Skills
Prerequisite software upgrades Development Runtime
Environment Environment
Educational needs
Code Runtime
Identify early adopters Migration Migration
Identify Pilot projects Test
Unit Test
Systems
Application rollout
Test
• “Stealth”, “Train”, voluntary…
Consider risk factors Production
Create an execution timeline
Review
Include a rollback plan results
13 WebSphere Application Server Migration – September 2010
Skills Assessment
Plan for education Planning
New development tooling
Skills
Changes in WebSphere administration
Development Runtime
model Environment Environment
Changes in the latest WebSphere Code Runtime
version Migration Migration
New standards Unit Test
Test
Systems
Test
Production
Review
results
14 WebSphere Application Server Migration – September 2010
Runtime Environment Assessment
Most likely will need to support Planning
parallel development
Skills
Migrate some test systems Development Runtime
iteratively Environment Environment
Integration Code Runtime
Migration Migration
System test
Test
Unit Test
Systems
Performance
Pre-Production Test
Production
Production
Based on your environment Review
results
15 WebSphere Application Server Migration – September 2010
Development Environment Assessment
Likely require a change in IDE
Progress iteratively, expand outward Planning
Assume application compatibility
Assess apps, based on known issues Skills
If no changes required, perform standard regression Development Runtime
Environment Environment
If development is required do it iteratively
Initially make changes that are required to support version Code Runtime
migration Migration Migration
• Reduces complexity of planning, diagnosis and debug - “Keep it
Simple”
Test
Test to the depth of test environment that fits your comfort Unit Test
Systems
level
Then do any necessary new code development and iterate
following your standard practices Test
Address Deprecations at some point
Ideally later as part of application updates Production
Take advantage of Migration tools Review
results
WebSphere Application Server Migration Toolkit
Available starting August 2010
16 WebSphere Application Server Migration – September 2010
Transition slide for speaker notes of previous chart
17 WebSphere Application Server Migration – September 2010
Test/Production/Review Assessment
Run your standard test processes Planning
Progress applications normally
through the test environments Skills
Development Runtime
Ensure Performance is measured Environment Environment
Differences exist between Code Runtime
Migration Migration
WebSphere versions
Test
JDK changes may have occurred Unit Test
Systems
Have a rollback plan for production Test
Practice on another system earlier in
Production
the cycle
Review the results of the Migration Review
results
Update the plan for next time
18 WebSphere Application Server Migration – September 2010
Section
Improving migration story
19 WebSphere Application Server Migration – September 2010
Administration
Administration model changed starting in v5.0
Transition from DB repository to file based
Administration scripting tools changed
Scripting model changed starting in v5.0
Stable scripting strategy starting v5.0
No changes moving from v5.0 to v5.1
Small number of changes when in v6.0, v6.1 and v7.0
Used to differ in migration tooling and support
between Distributed, iSeries and zOS platforms
Improvement starting in v5.0, with same underlying
migration tooling, support and experiences
20 WebSphere Application Server Migration – September 2010
Administration impacts
From\To 3.02 3.5 4.0 5.0 5.1 6.0 6.1 7.0
6.1 Easier
6.0 Easier Easier
5.1 Easier Easier Easier
5.0* Easier Easier Easier Easier
4.0 Difficult Difficult Difficult Difficult Difficult
3.5 Easier Easier Difficult Difficult Difficult Difficult
3.02 Easier Easier Difficult Difficult Difficult Difficult Difficult
2.03 Difficult Difficult Difficult Difficult Difficult Difficult Difficult Difficult
* The runtime migration tools are supported for migrating from v5.1, v6.0 and v6.1 to v7.0
21 WebSphere Application Server Migration – September 2010
Administration scripting choices
JACL or Jython?
JACL is currently used more often
Jython is the preferred direction
More industry support
Better performance
Priority in future deliverables
No need to convert JACL
No longer deprecated!
It is now “Stabilized” – meaning it will not be removed but it will not
have further investment
Conversion tool included since v6.1 and available in RAD Assembly
and Deploy tool or via download (see speaker notes)
Suggest an evolution
Create new scripts using Jython
22 WebSphere Application Server Migration – September 2010
Application Migration
J2EE compatibility
Newer J2EE versions intend to support older J2EE versions
But in some cases breaking clarifications do exist
J2EE supports incremental upgrade
Modules within an application can be earlier versions
In general WebSphere APIs very compatible
Many v4.x Applications interfaces unchanged (except for zOS)
Most v5.0/v5.1/v6.0/v6.1 interfaces unchanged
However, no guarantees applications will run unchanged
Changes maybe required for Java, J2EE or WebSphere APIs
23 WebSphere Application Server Migration – September 2010
Deprecation policy
v5.0.x
•New API introduced
v5.1.x
v6.0.x
•Deprecated but still supported
•Deprecated but still supported
Deprecation policy in place for all WebSphere Application
Server APIs
API supported for 2 full releases from the point of deprecation
or 3 full years whichever is longer
API may be removed at such point
Deprecations and Removals are documented in InfoCenter
5+3 support statement as of March 2007
Five for standard, three for extended support.
Updated April 2008 to include selected products within the Information
Management, IBM Lotus, IBM Rational, IBM Tivoli and WebSphere
See references for link to specifics
24 WebSphere Application Server Migration – September 2010
Development impacts
From\To 3.02 3.5 4.0* 5.0 5.1 6.0* 6.1* 7.0*
6.1 Easier
6.0 Easier Easier
5.1 Easier Easier Easier
5.0 Easier Easier Easier Easier
4.0z Varies Varies Varies Varies Varies
3.5 Difficult Difficult Difficult Difficult Difficult Difficult
3.02 Easier Difficult Difficult Difficult Difficult Difficult Difficult
2.03 Difficult Difficult Difficult Difficult Difficult Difficult Difficult Difficult
Note: ”*” Does require a change to use different Development IDE
“z” Scenarios are difficult for this row, “Easier” for all other platforms
25 WebSphere Application Server Migration – September 2010
Impacts summary
v3.5 v4.0 v5.x v6.0 v6.1 v7.0
Development VisualAge for WebSphere WebSphere Rational Rational Rational
Java Studio 5.0 Studio 5.1 Application Application Application
Developer Developer Developer
WebSphere
v6.0 v7.0 v7.5
Studio “Classic”
Code Pre-J2EE J2EE 1.2 J2EE 1.3 J2EE 1.4 J2EE 1.4 JEE 5
JRE 1.3 (v5.0)
JRE 1.2 JRE 1.3 JRE 1.4 JRE 5 JRE 6
JRE 1.4 (v5.1)
Packaging and Ad hoc J2EE J2EE J2EE J2EE JEE
Deployment packaging packaging packaging packaging packaging
Manual or
scripted EAR deploy EAR deploy EAR deploy EAR deploy EAR/BLA
deploy
Configuration Configuration
in the EAR in the EAR Configuration
in the EAR
Administration Plug-in OSE Plug-in HTTPx Plug-in HTTPx Plug-in HTTPx Plug-in HTTPx Plug-in HTTPx
and Administration Admin db for XML XML XML XML
Operations db AE configuration configuration configuration configuration
WSCP, WSCP, JMX/TCL JMX/TCL JMX/TCL JMX/TCL
XMLConfig XMLConfig
26 WebSphere Application Server Migration – September 2010
Migration impacts (worst case scenario)
Potential Impact areas v6.0 v6.1 v7.0
Java Runtime n/a 6 2
JSP 8 n/a 4
Servlet 5 n/a 0
3rd party packages 2 0 1
WAS Specific development 1 6 2
Other development 3 0 1
Development total 19 12 10
Administrative script 4 3 2
WAS directory 1 1 0
Other administrative 5 2 7
Total administrative 10 7 9
Total potential impact areas 29 19 19
27 WebSphere Application Server Migration – September 2010
Choosing the “right” version
Question: “Which WebSphere Application Server
version should I migrate to?”
Answer: “It depends”
End of Service date for your current version
• For example WebSphere Application Server v5.1 was September 2008
• For example WebSphere Application Server v6.0.2 is September 2010
End of Service date for the targeted version
Stability in lifecyle of targeted version
JEE/JDK levels relative to targeted version
New WebSphere Application Server features you want
Version requirements of vendor or other WebSphere products that
you have or want
The Version your Enterprise has committed towards
What about fixpack level? – do what makes the most sense…
28 WebSphere Application Server Migration – September 2010
WebSphere Application Server Migration Toolkit
Assists Application Developers migrating between WebSphere
Application Server versions!
Supports moving to v7.0 from
• V5.1.x, V6.0.x, and V6.1.x
Assists by automatically identifying and change assist of code
impacts in all the key areas
• Changes to the Java™ Runtime environment
• Changes to the level of supported Java Enterprise Edition version
• Removal of previously deprecated features
• Behavior changes in the product
• Appendix in this deck will note changes addressed by the Toolkit ->
Free download
Eclipse plug-in
• Support for pure Eclipse (3.4.2 and 3.5) as well as RAD/RSA
See http://www.ibm.com/developerworks/websphere/downloads/migration_toolkit.html
29 WebSphere Application Server Migration – September 2010 29
Section
Runtime migration support
30 WebSphere Application Server Migration – September 2010
Tools and techniques
Cross version plug-in support
Web Server plug-in can work to multiple HTTP
WebSphere versions
•The URI for a machine must be unique in the
V5.1 v6.0 v6.1 v7.0
routing rules for the plug-in
•E.g. v7.0 supports v5.1, v6.0, v6.1 and v7.0
Coexistence
Running different versions of WebSphere
on a machine at the same time
v5.1, v6.0, v6.1and v7.0
•Requires port conflict resolution of
concurrently running servers
•Requires hardware capable of running all
images
•E.g. v7.0 supports v5.1, v6.0, v6.1 and v7.0
31 WebSphere Application Server Migration – September 2010
Tools and techniques… v6.1
Interoperability
Different versions of WebSphere can
communicate
• Support for applications that are
Secure, Transactional, EJB WLMable v7.0 v5.1
• E.g. v7.0 supports v5.1, v6.0, v6.1
and v7.0
v6.0
Runtime migration tools
Merge existing configurations
between versions
• zOS - zMMT – create customized
5.1.y,6.x.y Server Configuration
jobs “Profile”
WASPreUpgrade 5.1.y,6.x.y
Backup Applications
Files
Resources
• iSeries
–Use commands directly
• Distributed –
–Migration Wizard Create V7.0 Profile
V7.0
Profile WASPostUpgrade
Migrated
V7.-0
–Or use commands directly Profile
32 WebSphere Application Server Migration – September 2010
Runtime migration tools
Migrated data
New configuration is used as the starting point
All Servers, TCP ports, IP names, resources etc. are migrated
Applications are migrated by default but can be just built to be
deployed later if desired
• An option for larger topologies
zOS migration is only within the same LPAR
5.1.y,6.x.y 5.1.y,6.x.y Server Configuration
“Profle” WASPreUpgrade Applications
Backup
Files Resources
Migrated
V7.0 V7.0
Create V7.0 Profile Profile WASPostUpgrade Profile
33 WebSphere Application Server Migration – September 2010
Tools and techniques…
v7.0 Mixed cell support
Nodes at different versions are
supported in the same cell. V7.0 Deployment
Manager
Different OS platforms are supported
\in the same cell
Deployment Manager must always be
at highest version and PTF level. V7.0 v5.1 or v6.x
Node Agent Node Agent
Must use Runtime migration tools to
create mixed version cell for v5.1 nodes V7.0 V7.0 v5.1/v6.x v5.1/v6.x
App App Cluster App
v6.0.2.x and v6.1.x nodes can be Server Server Server
App
Server
added directly V7.0 Node v5.1 or v6.x Node
Supports v5.1, v6.0, v6.1 and v7.0
Some limitations exist Cell
• Cannot add v5.1 nodes directly
• Cannot add v6.0.0.x or v6.0.1.x nodes
• Cannot use some re-deployment when
installing applications
34 WebSphere Application Server Migration – September 2010
Five Network Deployment strategies
1. Manual
Create a new cell and populate with scripts or manually
Old Old v7.0 v7.0
Node Node Node Node
No runtime migration tools
2. “Copy” and replace the cell X
Recreates the exact v5.1/v6.1 configuration in v7.0
Old Old v7.0 v7.0
DMgr and nodes are migrated Node Node Node Node
X
3. “Copy” and replace the DMgr
Recreates the exact v5.1/v6.x configuration in v7.0
Old Old v7.0 v7.0
Node Node Node Node
Add new v7 nodes and move incrementally
4. “Copy” and coexist
Recreates the exact v5.1/v6.1 configuration in v7.0 Old Old v7.0 v7.0
Node Node Node Node
Modify the ports in the new cell and coexist
5. Fine Grained
Create a new cell and incrementally copy existing configuration
Old Old v7.0 v7.0
Uses an intermediate profile, runtime migration and PBC tools Node Node Node Node
35 WebSphere Application Server Migration – September 2010
Manual
Ignores the existing configuration
Create a new cell and populate with
administration scripts or manually
Best results with a comprehensive set of scripts
Pros
No dependencies on tooling
Least risk assuming existing scripts are comprehensive
Can easily migrate applications singly
Cons
Comprehensive set of scripts and ongoing maintenance
of those scripts can be expensive
Any required changes to these scripts must be done
before migrating
Any tuning of the old configuration is not carried forward Old Old v7.0 v7.0
Node Node Node Node
36 WebSphere Application Server Migration – September 2010
Copy and replace Cell
Use Runtime migration tools on DMgr
Old Old
Recreates the exact v5.1/v6.x configuration in v7.0 Node Node
Later migrate the existing v5.1/v6.x nodes using
the runtime migration tools
All applications on a managed node are migrated at the Old Old
Node Node
same time
Pros
Does not require comprehensive set of scripts
All configuration is moved forward v7.0
Node
Old
Node
Cons
Dependency on using the runtime migration tools
Requires all applications on a node be ready to migrate at
v7.0 v7.0
the same time Node Node
Limited value if you are refactoring your topology
Does not enable some upgraded features – can be
X
enabled after migration of all nodes is complete
Old Old v7.0 v7.0
Node Node Node Node
37 WebSphere Application Server Migration – September 2010
Copy and replace DMgr
Use Runtime migration tools on DMgr
Recreates the exact v5.1/v6.x configuration in v7.0
Add new v7.0 nodes Old
Node
Old
Node
Applications can be migrated singly when ready
Consider using Properties-based configuration to augment
this approach
Remove old nodes when no longer needed Old
Node
Old
Node
Pros
Does not require comprehensive set of scripts
All configuration is moved forward
Cell level accessible by v6.1 nodes Old
Node
Old
Node
v7.0
Node
v7.0
Node
Cons
Dependency on using the runtime migration tools X
Limited value if you are refactoring your topology
Does not enable some upgraded features – can be enabled Old Old v7.0 v7.0
Node Node Node
after migration of all nodes is complete Node
38 WebSphere Application Server Migration – September 2010
Copy and coexist
Same steps as “Copy and replace Cell” except: Old Old
Node Node
Use the options of the runtime Migration tools to
not disable the DMgr
Turn off the old DMgr (the federated nodes Old Old
should be able to continue running) Node Node
Migrate all the nodes
Modify the new v7 cell to resolve port conflicts
v7.0 Old
Start old DMgr, new DMgr and all nodes in the Node Node
new cell
v7.0 v7.0
Node Node
See latest WebSphere Application Server
Migration Guide for more details
• http://www.redbooks.ibm.com/redpieces/pdfs/redp4635.pdf Old Old v7.0 v7.0
Node Node Node Node
39 WebSphere Application Server Migration – September 2010
Fine Grained
Uses a combination of tools
An intermediate profile
The runtime migration tools with the
v7 Properties based configuration tool
Approach
Migrate the existing data to an intermediate profile
Extract portions of the configuration from that profile
Import them into the final DMgr profile
Is very flexible but can also be labor intensive
Properties-based configuration has these limitations:
• Business Level Applications (BLA), Federated repository
configuration, Security certificates, Service Integration
Bus (SIB), and Web Services Policy Sets
See latest WebSphere Application Server Migration
Guide for more details
• http://www.redbooks.ibm.com/redpieces/pdfs/redp4635.pdf Old
Node
Old
Node
v7.0
Node
v7.0
Node
40 WebSphere Application Server Migration – September 2010
Section
Version specific Highlights
41 WebSphere Application Server Migration – September 2010
Enablement
This information and more is
now available online!
Includes general planning with
detailed notes and
WebSphere AppServer
version specific information
Updated with timely
information
IBM Migration Knowledge
collection
http://www-
1.ibm.com/support/docview.wss?rs
=180&uid=swg27008724
42 WebSphere Application Server Migration – September 2010
New
Explanation of Migration impacts October
2008
There are two kinds of impacts documented here
“Specific” – impacts only those migrating TO that version
“Cumulative” – impacts when migrating TO or PAST that version
The information assumes a starting point of v5.1 or later
Additional information is provided in the appendices for earlier versions like
v4.0 and v5.0
v6.0 v6.0 v6.1 v6.1 v7.0 v7.0
Specific Cumulative Specific Cumulative Specific Cumulative
v5.1->v6.0 Yes Yes
v5.1->v6.1 Yes Yes Yes
v5.1->v7.0 Yes Yes Yes Yes
v6.0->v6.1 Yes Yes
v6.0->v7.0 Yes Yes Yes
v6.1->v7.0 Yes Yes
43 WebSphere Application Server Migration – September 2010
Changes in v6.0
Specific to v6.0
Development tool changes
Cumulative starting with v6.0
J2EE 1.4 impacts
WebSphere API migration details
Administration script required changes
Port usage
Profiles
CoreGroup considerations
44 WebSphere Application Server Migration – September 2010
Changes in v6.1
Specific to v6.1
Development tool changes
Migration and Feature Packs
zOS Migration tool
Cumulative starting with v6.1
JRE 5 impacts
WebSphere changes and removed features
Administration script required changes
Install response file format changes
Port usage
Profile directory structure
New administrative tool IDE
Migration tools and v6.1 Security model
45 WebSphere Application Server Migration – September 2010
Changes in v7.0
Specific to v7.0
Development tool changes
SessionInitiationProtocol(SIP) Migration Considerations
zOS Migration tool
Cumulative starting with v7.0
JRE 6 impacts
JEE 5 impacts
WebSphere removed features
Administration script required changes
Port usage
Security Migration considerations
Mixed version considerations
46 WebSphere Application Server Migration – September 2010
New resources
47 WebSphere Application Server Migration – September 2010
Summary
Migration needs to be a pragmatic, well designed
and repeatable process
WebSphere Application Server migration is
becoming easier!
More tools
More techniques
Minimizing required Application changes
48 WebSphere Application Server Migration – September 2010
®
Questions?
September 2010
© 2007/2008/2009/2010 IBM Corporation
®
September 2010
© 2007/2008/2009/2010 IBM Corporation
®
References
September 2010
© 2007/2008/2009/2010 IBM Corporation
References
WebSphere Training and Technical Enablement
http://www.ibm.com/developerworks/websphere/education/enablement/
IBM Education Assistant
Online education modules,Integrates narrated presentations, demos, and
tutorials
http://www.ibm.com/software/info/education/assistant/
The Ideal WebSphere Development Environment
http://www.ibm.com/developerworks/websphere/techjournal/0312_beaton/beat
on.html
Supported software information
http://www.ibm.com/software/webservers/appserv/doc/latest/prereq.html
IBM Support Policy Change: Announcing the "5 plus 3" support policy
http://www-1.ibm.com/support/docview.wss?uid=swg21256700
Web Server plug-in technotes
http://www-1.ibm.com/support/docview.wss?uid=swg21160581
http://www-01.ibm.com/support/docview.wss?uid=swg21139573
52 WebSphere Application Server Migration – September 2010
References
Systems Management for Version 6
Overview of enhancements:
http://www.ibm.com/developerworks/websphere/techjournal/0501_williamson/0501_williamson.html
Incremental cell upgrade:
http://www.ibm.com/developerworks/websphere/techjournal/0502_cheng/0502_cheng.html
Profiles explained:
http://www.ibm.com/developerworks/websphere/techjournal/0505_wang/0505_wang.html
New AdminTask support:
http://www.ibm.com/developerworks/websphere/techjournal/0509_wang/0509_wang.html
Enhanced Application Deployment:
http://www.ibm.com/developerworks/websphere/techjournal/0510_apte/0510_apte.html
zOS references
Migrating to Version 6.1
• http://www-03.ibm.com/support/techdocs/atsmastr.nsf/WebIndex/WP100771
Heterogeneous cell support for zOS
• http://www.ibm.com/support/techdocs/atsmastr.nsf/WebIndex/WP100644
JDBC migration utility for Legacy to Universal DB2 drivers
• http://www-1.ibm.com/support/docview.wss?uid=swg27007826
Migrating to Version 7.0 - zOS
• http://www-03.ibm.com/support/techdocs/atsmastr.nsf/WebIndex/WP101329
WSADMIN Primer
• http://www.ibm.com/support/techdocs/atsmastr.nsf/WebIndex/WP101014
53 WebSphere Application Server Migration – September 2010
References
JDK Compatibility
http://java.sun.com/javase/technologies/compatibility.jsp
WebSphere AppServer API Deprecations and removals
http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/topic/com.ibm.websphere.nd.doc/info/ae/ae/rmi
g_deprecationlist.html
Script changes for wsadmin
http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/topic/com.ibm.websphere.nd.doc/info/ae/ae/tx
ml_migrate5to6.html
J2EE class loading
www.ibm.com/developerworks/websphere/library/techarticles/0112_deboer/deboer.html
WebSphere Application Server V6 Migration Guide (updated for zOS, v6.1)
IBM Redbook http://w3.itso.ibm.com/ – SG24-6369
A quick guide for migrating to WebSphere Application Server V6.1
http://www.ibm.com/developerworks/websphere/library/techarticles/0608_chalmers/0608_chalmers.h
tml
Planning an iterative migration for v6.1
http://www-
128.ibm.com/developerworks/websphere/library/techarticles/0702_luchini/0702_luchini.html
A quick guide for migrating to WebSphere Application Server V7.0
http://www.ibm.com/developerworks/websphere/library/techarticles/0812_luchini/0812_luchini.html
54 WebSphere Application Server Migration – September 2010
References
CCF-to-J2C Architecture Migration
IBM Redbook http://w3.itso.ibm.com/– SG24-6362
developerWorks 5 part series
• http://www.ibm.com/developerworks/websphere/library/techarticles/0403_searle/0403_se
arle1.html
Migration of CICs and IMS to RAD article
• http://www.ibm.com/developerworks/rational/library/07/0410_mah-ho/index.html
Developing Connector Applcations for CICS (latest redbook)
• http://www.redbooks.ibm.com/abstracts/sg247714.html
JMS Listener to Message Driven Bean migration
http://publib.boulder.ibm.com/infocenter/ws51help/topic/com.ibm.websphere.base.doc/info/aes/
ae/tmb_migmb.html.
Rational Application Developer Performance Tips
http://www.ibm.com/developerworks/rational/library/05/517_radtip/index.html
http://www.redbooks.ibm.com/abstracts/sg246449.html
Sample scripts for WebSphere Application Server
http://www.ibm.com/developerworks/websphere/library/samples/SampleScripts.html
Includes updates for v6.1 Security
Security changes for v6.1
http://www-128.ibm.com/developerworks/websphere/techjournal/0612_birk/0612_birk.html
XML reference
http://www.w3.org/TR/REC-xml/#sec-guessing
55 WebSphere Application Server Migration – September 2010
References
Manual Migration references
UDDI
• http://publib.boulder.ibm.com/infocenter/wasinfo/v6r0/index.jsp?topic=/com.ibm
.websphere.nd.doc/info/ae/ae/twsu_migrate.html
WSGW
• http://publib.boulder.ibm.com/infocenter/wasinfo/v6r0/index.jsp?topic=/com.ibm
.websphere.pmc.nd.doc/tasks/twsg_coex_migrate.html
Data replication domains
• http://publib.boulder.ibm.com/infocenter/wasinfo/v6r0/index.jsp?topic=/com.ibm
.websphere.nd.doc/info/ae/ae/trun_drs_migrate.html
Message Broker Migration
• http://publib.boulder.ibm.com/infocenter/wasinfo/v6r0/topic/com.ibm.websphere
.pmc.nd.doc/tasks/tjn0040_.html
Conversion from HTTP Transports to Channels
http://publib.boulder.ibm.com/infocenter/wasinfo/v6r0/topic/com.ibm.websphere.bas
e.doc/info/aes/ae/rxml_mhttptransport.html
JACL to Jython conversion assistant
http://www-1.ibm.com/support/docview.wss?rs=180&uid=swg24012144
http://www-
128.ibm.com/developerworks/websphere/library/samples/SampleScripts.html
56 WebSphere Application Server Migration – September 2010
References New
February
2008
Migration from Apache SOAP to WebServices
http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/topic/com.ibm.websphere.base.doc/info/aes/
ae/twbs_migratewbs.html
Software and Hardware prerequisites
http://www.ibm.com/software/webservers/appserv/was/network/requirements/?S_CMP=rnav
Introducing the Visual Configuration Explorer
http://www.ibm.com/developerworks/websphere/techjournal/0710_supauth/0710_supauth.html
http://www.ibm.com/developerworks/forums/forum.jspa?forumID=1139
IBM Support Assistant V4.0 Tools
http://www-01.ibm.com/software/support/isa/isa40/tools.html
Best Practices for Configuring and Managing Large WebSphere
Topologies
http://www.ibm.com/developerworks/websphere/library/techarticles/0710_largetopologies/0710_lar
getopologies.html
http://www-1.ibm.com/support/docview.wss?uid=swg27010606
High Availability Manager Tuning Technote
http://www.ibm.com/support/docview.wss?rs=180&context=SSEQTP&dc=DB520&q1=High+Avail
ability&uid=swg21251873&loc=en_US&cs=utf-8&lang=en
CORBA Interoperability Samples
http://www.ibm.com/developerworks/websphere/library/samples/corba.html
IBM Mixed Platform Stack WebSphere migration
http://www-03.ibm.com/support/techdocs/atsmastr.nsf/WebIndex/WP101455
57 WebSphere Application Server Migration – September 2010
References Updated
March
2010
v6.1 Problem Determination Guide
http://www-01.ibm.com/support/docview.wss?uid=swg21418764&myns=swgws&mynp=OCSSEQTP&mync=E
What's new in WebSphere Application Server V7
http://www.ibm.com/developerworks/websphere/library/techarticles/0809_alcott/080
9_alcott.html
JDK 6 Compatibility
http://java.sun.com/javase/6/webnotes/compatibility.html
Version 7.0 removed features
http://publib.boulder.ibm.com/infocenter/wasinfo/v7r0/topic/com.ibm.websphere.nd.d
oc/info/ae/ae/rmig_remfeat.html
WebSphere Application Server Migration - Best Practices and
Sources
WebSphere Technical Exchange Webcast – replay
http://www-01.ibm.com/support/docview.wss?rs=180&uid=swg27013190
WebSphere supported Specification levels and pointers to JEE
specifications
http://publib.boulder.ibm.com/infocenter/wasinfo/v7r0/topic/com.ibm.websphere.bas
e.doc/info/aes/ae/rovr_specs.html
58 WebSphere Application Server Migration – September 2010
References New
September
2009
JDK 5/6 Tuning
http://www.ibm.com/support/docview.wss?uid=swg27013824
JavaServer Pages specific Web container custom properties
http://publib.boulder.ibm.com/infocenter/wasinfo/v7r0/index.jsp?topic=/com.ibm.websphere.expres
s.doc/info/exp/ae/rweb_jsp_custom_props.html
IBM Techdocs Whitepapers on WAS Migration case studies, including
other IBM products
http://www-03.ibm.com/support/techdocs/atsmastr.nsf/WebIndex/WP101455
Systems Management for Version 7
Overview of enhancements:
http://www.ibm.com/developerworks/websphere/techjournal/0811_apte/0811_apte.html
New administrative topologies:
http://www.ibm.com/developerworks/websphere/techjournal/0901_cundiff/0901_cundiff.html
Administering a flexible management topology:
http://www.ibm.com/developerworks/websphere/techjournal/0903_khalil
Properties base configuration:
http://www.ibm.com/developerworks/websphere/techjournal/0904_chang/0904_chang.html
Business Level applications:
http://www.ibm.com/developerworks/websphere/techjournal/0905_edwards/0905_edwards.html
59 WebSphere Application Server Migration – September 2010
References Updated
April 2010
WAS z/OS Migration Performance Study
http://www-03.ibm.com/support/techdocs/atsmastr.nsf/WebIndex/WP101589
Case study: Tuning WebSphere Application Server V7 for
performance
http://www.ibm.com/developerworks/websphere/techjournal/0909_blythe/0909_blythe.html
WebSphere Application Server V7 Migration Guide
http://www.redbooks.ibm.com/redpieces/abstracts/redp4635.html?Open
60 WebSphere Application Server Migration – September 2010
®
v6.0 specific changes
September 2010
© 2007/2008/2009/2010 IBM Corporation
Development tool overview
IBM Rational development tools
RAD v6.0 is the development tool WAS v6.0
Very compatible with WSAD
Based on Eclipse 3.0
“Similar” hardware requirements to WSAD
• Available RAM (768Min, 1G recommended)
Supports J2EE 1.2, 1.3 and 1.4 applications
Test support for WebSphere v5.0, v5.1 and v6.0
Migration of WSAD v5.1 workspace to RAD v6.0
Projects import directly from WSAD v5.1
• Project import from WSAD v5.0 may work
– Alternatively create a new project and import the source
62 WebSphere Application Server Migration – September 2010
®
v6.0 cumulative changes
September 2010
© 2007/2008/2009/2010 IBM Corporation
v6.0 cumulative
J2EE 1.4 migration details
64 WebSphere Application Server Migration – September 2010
J2EE 1.4 impacts
Some changes may be required due to tightening
of J2EE levels
More deployment descriptor errors are found during
application installation
• Typically the problems are hand-edited changes and used
to work or were ignored in prior versions
Some JSP behavior and interface changes
Some Servlet behavior and interface changes
Some Web Services behavior changes
65 WebSphere Application Server Migration – September 2010
JSPs useBean tag
JSP useBean tag
Tightened conformance to JSP 1.2
Behavior change starting in v5.1
Old: <jsp:useBean id="pg" class="exp.ObjExp.exampleTbl" scope="request"
/>
New: <jsp:useBean id="pg" type="exp.ObjExp.exampleTbl" scope="request"
/>
http://www-
1.ibm.com/support/docview.wss?rs=180&context=SSEQTP&q1=jsp%3ausebean&uid=swg
21163939&loc=en_US&cs=utf-8&lang=en
66 WebSphere Application Server Migration – September 2010
JSPs and unnamed packages
In JDK 1.4, importing classes from the unnamed package is
not valid
See http://java.sun.com/j2se/1.4/compatibility.html#source
As of JSP 2.0, it is illegal to refer to any classes from the
unnamed (a.k.a. default) package
Surfaces as a translation error
This also affects older applications that run on v6.0
For example, if myBeanClass is in the unnamed package,
and you reference it in a jsp:useBean tag
<%@page import="myBeanClass" %> . . .
<jsp:useBean id="myBean" class="myBeanClass" scope="session"/>
67 WebSphere Application Server Migration – September 2010
Updated
JSP page encoding May
2008
Prior to JSP 2.0, JSP pages in XML syntax determined their
encoding by
Examining the pageEncoding or contentType attributes of their page
directive,
Defaulting to ISO-8859-1
JSP 2.0 encoding is controlled by the XML specification.
These JSP documents must be changed to include an appropriate XML
encoding declaration prolog.
<?xml version="1.0" encoding=“UTF-8"?>
68 WebSphere Application Server Migration – September 2010
JSP page encoding scope
Page encodings are determined differently
In JSP 1.2, on a per translation unit basis
In JSP 2.0, on a per-file basis.
Example: if a.jsp statically includes b.jsp, and a page encoding is
specified in a.jsp but not in b.jsp,
In JSP 1.2 a.jsp’s encoding is used for b.jsp,
In JSP 2.0, the default encoding is used for b.jsp.
69 WebSphere Application Server Migration – September 2010
JSP request.getAttribute() behavior
JSP Engine in v5.1 and earlier
Casts the returned value to “String”
JSP Engine in v6.0
No longer does the cast, returns “Object”
Impacts those applications dependant on the old behavior
Fix available in 6.0.2.11 and later (PK20187)
Configurable settings
• Webcontainer CustomProperty “com.ibm.wsspi.jsp.useStringCast ”
• JSPAttribute in the extensions file (useStringCast)
70 WebSphere Application Server Migration – September 2010
JSP Tag Library change
Change in how stringently tags are validated
“teiclass” is now checked for valid class defintion
<tag> <name>StateFinder</name>
<tagclass>com.company.sample.tags.SomeFinder</tagclass>
<teiclass>empty</teiclass>
<bodycontent>Jsp</bodycontent>
<info>
…
“empty” is now checked for existence, produces a warning
message
71 WebSphere Application Server Migration – September 2010
Updated
JSP fragments and tags May
2008
JSP fragments within an If-Else condition no longer compile
Used to assume that the same tag variables to be declared twice
in an If-Else condition
Configurable setting
• com.ibm.wsspi.jsp.usescriptvardupinit
• PK29373 - v6.0.2.17, v6.1.0.5 and later
Tag <tsx:repeat> using “index” attribute now produces
“java.lang.Integer” instead of “int”
Configurable setting
• com.ibm.wsspi.jsp.userepeatint
• PK26741- v6.0.2.15, v6.1.0.9 and later
72 WebSphere Application Server Migration – September 2010
Updated
WebContainer changed settings May
2008
The “+” sign is treated incorrectly in a URI
The plus sign character is incorrectly treated as a special character that
needs to be decoded when it appears in the request URI.
Configurable setting
• com.ibm.ws.webcontainer.decodeURLPlusSign
• PK23481 – v5.1.1.11, v6.0.2.11 and later
PathInfo omitted while redirecting by response.sendRedirect()
With this fix the extra path information until the last trailing slash will be
appended to the uri and then redirected to the resource.
Configurable setting
• com.ibm.ws.webcontainer.RedirectWithPathInfo
• PK23779 – v6.0.2.13 and later
73 WebSphere Application Server Migration – September 2010
Updated
WebContainer configurable settings May
2008
Different behavior for trailing "/" in uri.
In 5.x, if the default URI mapping for "/" is not overridden by an application,
a request for a URI matching the context root of a web application that
does NOT end with "/" will, as a convenience, redirect to "/"
Configurable setting
• com.ibm.ws.webcontainer.redirectcontextroot
• PK27974 – v6.0.2.15, v6.1.0.3 and later
Default content-type setting on v6 is "text/plain“; in v5 is
"text/html."
Configurable setting
• com.ibm.ws.webcontainer.contenttypecompatibility
• PK27527 – v6.0.2.13, v6.1.0.2 and later
74 WebSphere Application Server Migration – September 2010
Servlet URL requirement
Slash prepend required for getResourcePath(…) or and
getResourceAsStream(…) to avoid MalformedURLException
Support of Servlet 2.3 requirement
Even if your own in-house code makes correct usage of this method other
3rd party packages may not(ex: Apache Struts Framework)
Custom property in WebContainer avoids this
• Property=“prependSlashToResource”
• Setting is global to all Applications running on a server
75 WebSphere Application Server Migration – September 2010
Java Server Faces (JSF) New
February
2008
Java Server Faces is included in v6.0 and later
For v6.0 the level is JSF 1.0
For v6.1 the level is JSF 1.1
This may conflict with other JSF enablers you have used
in prior versions of WebSphere Application Server
One example is MyFaces
Either convert to use the shipped level of JSF
Or you can continue to use your JSF support in most cases by
using classloader support
• Set Classloader to PARENT_LAST
See the following for more information
http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/topic/com.ibm.websphere.nd.doc/in
fo/ae/ae/cweb_javaserver_faces.html
76 WebSphere Application Server Migration – September 2010
JSP reserved character sequence
JSP reserved character sequence due to JSF inclusion
“The character sequence '#{' is now reserved by JSP. So If you are
using '#{' in template text or as a literal in an attribute value for a
taglib, the sequence will have to be escaped.”
77 WebSphere Application Server Migration – September 2010
Client datasource access New
May
2008
The client container support was added in v6.0
Prior to this you could look up a datasource from a non-
server process
• Required override a security setting in j2c.properties tag
In v6.0 and later, the expectation is to configure the
datasource, and it's security data, in the client
configuration tool.
• The setting in the j2c.properties file is no longer used and
there is no equivalent.
See the following for more information
http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/index.jsp?topic=/com.ib
m.websphere.nd.doc/info/ae/ae/tcli_launchclient.html
http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/index.jsp?topic=/com.ib
m.websphere.nd.doc/info/ae/ae/ucli_tconfigclient.html
78 WebSphere Application Server Migration – September 2010
New
Restriction creating threads May
2008
Applies to programs running in the Application server process
The Client container has no restrictions
In v5.0 and v5.1 (J2EE 1.3) there was a restriction that you
could not create threads in EJBs
Alternative is to use MessageDrivenBeans (MDBs)
In v6.0 and later (J2EE 1.4) the restriction was clarified to
include not being able to create threads in either the Web or
EJB containers
Alternative is to use the WorkManager
79 WebSphere Application Server Migration – September 2010
Web Services SOAP change New
August
2008
Additional SOAP message validation has been added
in v6.0 and later
May result in some messages that were originally
invalid to no longer work
For example:
• Bad XML: https://216.94.21.10/demo-api/services/TransactionInitiator
• Should have been: <hdr1>https://216.94.21.10/demo-
api/services/TransactionInitiator</hdr1>
Now results in: org.xml.sax.SAXException: WSWS3700E:
Error: Non-whitespace character content
The only alternative is to correct the invalid messages
80 WebSphere Application Server Migration – September 2010
v6.0 cumulative
WebSphere API migration details
81 WebSphere Application Server Migration – September 2010
JNDI direct references New
November
2007
JNDI direct references were deprecated in v6.0
However, this has been reversed and the pattern is no longer
deprecated
Starting with v6.0.2.19 and v6.1.0.5
JNDI indirect references are the recommended pattern
Settings are created in application resource references
Another level of indirection that can be set instead of changing
code
Some Security credential settings are defaulted using the JNDI
direct pattern
For more information see
http://www-1.ibm.com/support/docview.wss?uid=swg21220886
http://publib.boulder.ibm.com/infocenter/wasinfo/v6r0/index.jsp?topic=/com.ibm.we
bsphere.base.doc/info/aes/ae/rdat_jnditips.html
82 WebSphere Application Server Migration – September 2010
WebSphere removed APIs
Usually few or no impacts to applications
Admin (EARUtils only)
Als
Anttasks
Ras
Security
PME components
Activity Session
AsyncBeans
Dynacache
ObjectPool
Scheduler
Userprofile
See InfoCenter for full details
http://publib.boulder.ibm.com/infocenter/ws60help/topic/com.ibm.websphere.base.doc/info/aes/ae/rmig_
deprecationlist.html
83 WebSphere Application Server Migration – September 2010
v6.0 cumulative
Administration Scripting changes details
84 WebSphere Application Server Migration – September 2010
Administration script required changes
Parsing the string output of the ObjectName class:
configID used in v6 contains a vertical bar character ('|")
instead of a colon character (':')
In general try and use a different technique such as
queryNames
regexp Jacl command
Version of Jacl is different in v6.
• 1.3.1 versus 1.2.6
regexp command supports only tcl 8.0 command syntax.
Some of your existing scripts may fail, e.g.
• “error while eval'ing Jacl expression: couldn't compile
regular expression pattern: ?+* follows nothing”
85 WebSphere Application Server Migration – September 2010
Administration script evolutionary
Transaction log directory change:
Old: ApplicationServer:TransactionService
New: ServerEntry:RecoveryLogs
Uses old location until new location is set
HttpTransports (n/a to zOS v6.0)
HTTP Transports replaced by ChannelFramework
Affects all scripts accessing HTTP Transports
Conversion example in InfoCenter
ProcessDefinition (n/a to zOS)
“processDef” changed to “processDefs”
Migration runtime tools can be used to maintain
script compatibility with:
HttpTransports and processDef
86 WebSphere Application Server Migration – September 2010
Transition slide for speaker notes of previous chart
87 WebSphere Application Server Migration – September 2010
Administration script zOS only changes
Several bugs in zOS scripting were fixed when
moving to v6.0 – causes some breakage
New exceptions are thrown for some conditions
E.g. stopping server and starting applications when conditions
are already met
Fix by catching the exceptions:
if { [catch {“yourCommandHere”}] }
{ puts "it failed" }
else
{ puts "it was ok" }
taskInfo command keywords changed
Old: "module", "EJB", "uri", …
New: "Module", "EJB", "URI", …
88 WebSphere Application Server Migration – September 2010
Administration console port
The administrative console port number changed.
from 9090 to 9060
Changed in order to minimize port conflicts on some
operating systems
Runtime Migration tooling will add v5.x value to the
configuration
89 WebSphere Application Server Migration – September 2010
Port usage
V6.0 uses more ports than previous versions
Can be an impact to those that tightly control port access
Can also cause more port conflicts
See
• http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/index.jsp?topic=/com.ibm.websphere.base.do
c/info/aes/ae/rmig_portnumber.html
Server Type V4.0 V5.x V6.0
Application 8 16 19
DMgr n/a 11 17
Node Agent n/a 9 11
90 WebSphere Application Server Migration – September 2010
Profiles
Increased flexibility and other benefits
Beware that some scripts may break
Use USER_INSTALL_ROOT\logs
Not WAS_HOME\logs
config, bin log… directories now exist
under each profile
/lib and jar locations may
also change
Avoid building your own
install images – use the
supported ones
91 WebSphere Application Server Migration – September 2010
JMS Support
J2EE 1.3 applications run unchanged
Benefits can be found by upgrading
• http://www.ibm.com/developerworks/java/library/j-jms11/.
J2EE 1.4 upgrade
Biggest change in in MDB descriptors
• http://www.ibm.com/developerworks/java/library/j-getmess/.
Consider best practice of upgrade to Activation
Specifications instead of Listener Port
• http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/topic/com.ibm.websphere.pm
c.nd.doc/ref/rjn0040_.html
Scripts that make use of MDB’s listener port retry
count must be changed to use maximum failed
deliveries
92 WebSphere Application Server Migration – September 2010
JMS Support
Embedded messaging implementation changed
Existing JMS resources are still supported unchanged but
not optimal
Should upgrade to v6 JMS Resources when feasible
JMS Server configuration changed
• JMSServer object no longer exists
Data on v5.x queues are not migrated automatically
• See SibMsgMigrationUtility.ear
DIRECT no longer supported on ConnectionFactories
instead it should be changed to QUEUED
http://publib.boulder.ibm.com/infocenter/wasinfo/v6r0/topic/com.ibm.websphere.pmc.doc/
tasks/tjn0040_.html
93 WebSphere Application Server Migration – September 2010
CoreGroup considerations
Each Application Server, NodeAgent and DMgr are added to the
default CoreGroup by Migration tools
Performance concerns for larger cells
v6.0 - recommend maximum around 50 objects per CoreGroup
V6.1/7.0 - recommend maximum around 100 objects per CoreGroup
Mitigate by managing CoreGroups manually
Each CoreGroup must contain at least one NodeAgent or DMgr process
(requirement removed in v7.0)
Put all members in the same cluster in the same CoreGroup
2 Processes 3 Processes 4 Processes 5 Processes
1 Connections 3 Connections 6 Connections 10 Connections
CoreGroup CoreGroup CoreGroup CoreGroup
94 WebSphere Application Server Migration – September 2010
Updated
HA Manager disablement March
2006
If necessary and meets your environment, HA Managers can be disabled by
using a wsadmin script
For v6.0 This also disables:
Memory-to-memory replication (any of the following)
• Http Session memory-memory replication
• Dynacache cache replication
• EJB statefull session bean failover
Singleton failover when WebSphere JMS provider is configured in a cluster
Workload management routing for EJB IIOP and JMS components
On-demand configuration routing for Proxy server and Web services
For v7.0 This also disables:
Workload management routing for Proxy Server (HTTP and WS-Addressing) and
SIP requests
Resource adapters configured for high availability
Be sure to disable all HA Managers within a CoreGroup
For more information see
http://publib.boulder.ibm.com/infocenter/wasinfo/v7r0/topic/com.ibm.websphere.nd.doc/inf
o/ae/ae/trun_ha_ham_enable.html
95 WebSphere Application Server Migration – September 2010
®
v6.1 specific changes
September 2010
© 2007/2008/2009/2010 IBM Corporation
Development tool overview New
January
2007
IBM Rational development tools
RAD v7.0 is the new development toolset
RAD v7.0 has similar requirements as RAD v6.0
• Performance improvements in key scenarios
Based on Eclipse v3.2
Support for SOA, Web Services and Portal development
Support for Java5
Previous supported runtimes
• WebSphere Application Server v5.1 and v6.0
New supported runtimes
• WebSphere Application Server v6.1
• DB2 Universal Database™ (UDB) V9
• Portal V6
97 WebSphere Application Server Migration – September 2010
New
Positioning of the Tool Offerings December
2006
RSA, WID, WebSphere Developer for Z, …
• RAD, RWD, RSA provide the first
class IBM design/construction tools
Rational: RAD, RSA for the WebSphere Application Server
UML modeling & visualization,
• Focus is on the graphical construction
Graphical application construction of applications and code generation
for maximum developer productivity
Component test automation & mgmnt
Code analysis, complexity & • AST ships with WAS, and provides
WebSphere: AST complete WebSphere support (new
correctness v6.1)
WAS app creation, assembly, • It is focused at a more basic (textual)
Application trace & profiling level than RAD, but provides support
deployment & unit test support
Eclipse: Base & WTP to create & deploy WAS apps
• Eclipse WTP (Web Tools Platform) is
Basic framework, Web a new open source project
Tools, Models & Wizards
98 WebSphere Application Server Migration – September 2010
Development tool overview New
October
2006
AST is a proper subset of RAD
No Embedded WebSphere Test Environments
• Must use an installed WebSphere Application Server v6.1
environment to test
No support for previous versions of WebSphere
Application Server
No Page designer and site designer (web site tools)
No JSF tools
No Code review tools
No Component testing tools
99 WebSphere Application Server Migration – September 2010
JDK 5 feature usage and JSPs New
November
2007
If JSP's use any JDK 1.5 specific code, will get an
error during compile
The default runtime compiler setting for JSPs is JDK 1.3
There are two possible solutions
1. (Ok) Application installation
The option to specify the JDK Source level when installing
2. (Better) Inside RAD
The Web Extension tab
In JSP Attributes table add “jdkSourceLevel
jdkSourceLevel” as name and 15 as value.
Adds an entry to Web Project/WEB-INF/ibm-web-ext.xmi
• E.g. <jspAttributes xmi:id="JSPAttribute_1"
name="jdkSourceLevel" value="15"/>
100 WebSphere Application Server Migration – September 2010
New
Migration and Feature Packs February
2008
Some restrictions exist with Feature Pack usage
Cannot migrate to any v6.1.x profile that has been augmented for any v6.1 feature
pack
Can only augment a new v6.1.x standalone server or custom profile
Deployment Manager profiles
1. Migrate a v5.x or v6.0.x deployment manager to a v6.1.x deployment manager
profile
2. Migrate all the federated nodes to v6.1
3. Augment the v6.1.x deployment manager profile with the Feature Pack that you
want to use
Standalone server or custom profiles
Can either Migrate or augment for Feature Pack usage but cannot do both
Alternatives if you want both:
• Migrate as you normally would
• Add a new cell specifically for Feature Packs
• Add a new node in an existing cell for Feature Packs
101 WebSphere Application Server Migration – September 2010
New
z/OS Migration Management Tool February
2008
New alternative for
generating zOS Migration
JCL jobs
Available with Application
Server Toolkit (AST) 6.1.1 or
later
Launch from Preferences
window
102 WebSphere Application Server Migration – September 2010
®
v6.1 cumulative changes
September 2010
© 2007/2008/2009/2010 IBM Corporation
v6.1 cumulative
Moving to JRE 5
104 WebSphere Application Server Migration – September 2010
JRE 5 impacts
For an introduction, see the "J2SE 5 in a Nutshell“
http://java.sun.com/developer/technicalArticles/releases/j2se15/
Applications using the new language features and JRE 5 can
be deployed only to v6.1 nodes.
When compiling applications can specify '-source' and '-target' modes for earlier
JDK targets
E.g. '-source 1.4', and 'target 1.4'
Java Serialization
Serialization is not compatible across JRE 1.4 and earlier releases –
force UUIDs as a general practice
105 WebSphere Application Server Migration – September 2010
JRE
5 source compatibility
JRE 5 is generally upwards source-compatible with JRE 1.4.2 except for:
Some APIs in the sun.* packages have changed. These APIs are not intended for
use by developers. Developers importing from sun.* packages do so at their own risk
Variables named 'enum.‘ - The word 'enum' has become a language keyword
• NOTE – Some IBM WebServices generated code may include “enum” as package names – should regen
(change com.ibm.ws.webservices.engine.enum… to com.ibm.ws.webservices.engine.enumtype…)
Generification – Most source code that uses generified classes, constructors,
methods, and fields will continue to compile in 5.0, though some will not.
Ambiguous references to classes with base names of 'Proxy,' 'Queue,' or 'Formatter.‘
– these are new classes in some JDK 5 packages
JAXP – a variety of changes, some Binary incompatibility
• See http://java.sun.com/j2se/1.5.0/docs/guide/xml/jaxp/JAXP-Compatibility_150.html
JDBC 5.0 - comparing a java.sql.Timestamp to a java.util.Date by invoking
compareTo on the Timestamp results in a ClassCastException. Binary incompatibility
BigDecimal's toString() method behaves differently than in earlier versions. J2SE 5.0
added toPlainString() to BigDecimal, which behaves exactly like the toString()
method in earlier versions. Binary incompatibility
Direct use of private implementations of XML and XSL parsers is strongly
discouraged
• Can use existing classloader support to use an application class path, not the Java virtual machine bootstrap
class path
106 WebSphere Application Server Migration – September 2010
JRE 5 verboseGC output New July
2010
The GC output format varies depending on the garbage
collection policy that you use
Title Description URL
MustGather: Analysing Format of verbose GC http://www-
Verbose GC Output output from the 01.ibm.com/support/docview.wss
for -Xgcpolicy:gencon gencon GC policy ?uid=swg21222486
MustGather: Analysing Format of verbose GC http://www-
Verbose GC Output output from 01.ibm.com/support/docview.wss
for - optavgpause GC ?rs=727&uid=swg21222459
Xgcpolicy:optavgpaus policy
e
MustGather: Analysing Format of verbose GC http://www-
Verbose GC Output output from optthruput 01.ibm.com/support/docview.wss
for - GC policy ?rs=727&uid=swg21222443
Xgcpolicy:optthruput
107 WebSphere Application Server Migration – September 2010
JRE 5 and JSSE2
Package com.ibm.net.ssl (JSSE)
Affects classes related to creating and configuring secure socket factories
• E.g KeyManager, TrustManager, X509KeyManager, X509TrustManager
Deprecated since JRE 1.4 and replaced with javax.net.ssl package
Removed as from JRE 5
See these references
http://www.ibm.com/developerworks/java/jdk/security/50/ (See “IBMJSSE2 Guide”
and samples)
• http://www.ibm.com/developerworks/java/jdk/security/50/secguides/jsse2Docs/JS
SE2RefGuide.html#knowndiff (known differences between JSSE and JSSE2)
http://www.ibm.com/developerworks/java/jdk/security/142/secguides/jssedocs/api/co
m/ibm/net/ssl/package-summary.html
ftp://ftp.software.ibm.com/s390/java/zOSSecurityRefGuide.html (zOS unique
aspects)
108 WebSphere Application Server Migration – September 2010
v6.1 cumulative
WebSphere API migration details
109 WebSphere Application Server Migration – September 2010
WebSphere removed features
Common Connector Framework (CCF) is removed
Deprecated since v5.1
Use J2C instead (see Resources for more information)
SAS and zSAS are no longer supported
Deprecated since v5.1
It was used for Interoperability with older versions
Use CSIv2 instead
zOS specific configuration changes
DB2 for zOS Local JDBC Provider (RRS) is removed
• Use DB2 Universal driver instead
• Migration tooling for JDBC Provider conversion
– See Resources under “zOS Specific”
System SSL supported for Daemon only
• Use JSSE/JSSE2 support instead
110 WebSphere Application Server Migration – September 2010
WebSphere removed features…
Support for Cloudscape v10.1 instead of v5.1
Cloudscape is not supported for direct customer production use
Is Derby v10.1 plus NLS and QA
Affects JDBC driver configuration
Changes in some DB types; some conversions required
Mozilla Rhino Javascript is removed
Required licensing agreement
Download from the Web instead
Java Document Object Model (JDOM) is removed
Download from the Web instead
Log Analyzer is removed
Use the Log and Trace Analyzer tool for Eclipse in the Application Server Toolkit (AST)
111 WebSphere Application Server Migration – September 2010
WebSphere removed APIs
Security
Removed com.ibm.websphere.security.CustomRegistry,
• Use: com.ibm.websphere.security.UserRegistry
See InfoCenter for full details
• http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/topic/com.ibm.
websphere.nd.doc/info/ae/ae/rmig_deprecationlist.html
112 WebSphere Application Server Migration – September 2010
New
Change in EJB setRollbackOnly() February
2009
EJB setRollbackOnly() change description:
EJB1:method1 and EJB2:method2 have Container Managed Transactions and are defined with a
transaction attribute of 'TX_REQUIRED'.
EJB1 and EJB2 are hosted in the same WebSphere Application Server
HTTP request invokes EJB1:method1 outside of any transaction. (The Enterprise JavaBeans
Container for EJB1 creates a new transaction) EJB1:method1 invokes EJB2:method2.
(EJB2:method2 runs under the same transaction)
EJB2:method2 invokes setRollbackOnly(). EJB2:method2 returns normally. The HTTP request
receives a RemoteException org.omg.CORBA.TRANSACTION_ROLLEDBACK.
In WebSphere Application Server V6.0 and earlier, the HTTP request receives the business result of
EJB1:method1, not a RemoteException.
• In each case the transaction is rolled back, but in V6.1 the HTTP request does not receive the
business results returned by EJB1:method1.
PK69197
Available in v6.1.0.21 and later
Behavior can be reverted back via custom property:
• 'com.ibm.websphere.ejbcontainer.extendSetRollbackOnlyBehaviorBeyondInstanceFor'
113 WebSphere Application Server Migration – September 2010
v6.1 cumulative
Administration Scripting changes details
114 WebSphere Application Server Migration – September 2010
Administration script required changes
Administration scripting changes SIB Bus creation
Securing requires a new parameter (busSecurity) instead of the the
previous parameter (secure)
Changes for removed features
Support for the Secure Authentication Service (SAS) IIOP security
protocol.
Support for the Common Connector Framework (CCF).
Support for the IBM Cloudscape Version 5.1.x database.
Simplified Certificate/Key Management
Movement away from dummy key files to new certificate model
Property file changes
• New file: ssl.client.props
• Reorganized files: soap.client.props, soap.server.props
SSL configuration changes
• SSL repertoire changed, but old model still supported as well
115 WebSphere Application Server Migration – September 2010
Administration script required changes
Foreign cell names bootstrapAddress change
Foreign cell name bindings enables your applications to
access other applications in other cells
“bootstrapAddress” has changed to
“bootstrapAddresses”
Existing bootstrapAddress attribute is still
supported and is deprecated
116 WebSphere Application Server Migration – September 2010
Security script changes New
March
2007
Security model has been enhanced
Existing scripts will still work with existing model
• But you are not able to take advantage of new model
At some point you will want to rework these scripts to
use the newly provided AdminTasks
Additional documentation has been provided on the new
model
• Commands for the security enablement group of the AdminTask object
– http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/index.jsp?topic=/com.ibm.websphere.base.do
c/info/aes/ae/rxml_atsecurityenable.html
• Automating SSL configurations using scripting
– http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/index.jsp?topic=/com.ibm.websphere.nd.doc/i
nfo/ae/ae/txml_automatessl.html
• Creating self-signed certificates using scripting
– http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/index.jsp?topic=/com.ibm.webspher
e.nd.doc/info/ae/ae/txml_managecert.html
• See Others in Speaker notes
117 WebSphere Application Server Migration – September 2010
v6.1 cumulative
Other Miscellaneous changes details
118 WebSphere Application Server Migration – September 2010
Profiles
Increased flexibility and other benefits
Beware that some scripts may break
Use USER_INSTALL_ROOT\logs
Not WAS_HOME\logs
config, bin, log… directories now exist under
each profile
/lib and jar locations have
changed
Avoid building your own install
images – use the supported ones
Classes directory is removed
Use Shared libraries
119 WebSphere Application Server Migration – September 2010
Directory structure changes New
March
2007
Direct references to WebSphere jar files
The structure of WebSphere jar files changes in v6.1
Some of the jars have moved from
• /lib to /plugins
If you referenced these jars directly in scripts you will
have to make changes
However, it is not always as easy as finding the classes
in the new location
• OSGI needs to be initialized
The safest approach is to call the
appserver/bin/setupCmdLine shell in your scripts
This will setup the correct classpaths for you
120 WebSphere Application Server Migration – September 2010
New
JNI on Solaris 10 x86_64 December
2006
Changes between v6.0.x versus v6.1.x on 64 bit
In v6.0.x WebSphere Application Server is a 32bit application
• The JVM is a 32 bit application
• JNI calls performed by customer applications are also 32 bit
In v6.1.x WebSphere Application Server is a 64bit application
• JNI calls performed by customer applications are also 64 bit
• Reference:
– http://www-1.ibm.com/support/docview.wss?uid=swg27007527
121 WebSphere Application Server Migration – September 2010
New
Install response file changes March
2007
For all but zOS, the response files have changed
The standard ISMP option format (-W option=value and –P option=value) is
being replaced with an -OPT option that takes “sub-options”
V6.0 option V6.1 option
-W silentInstallLicenseAcceptance.value=”true” -OPT silentInstallLicenseAcceptance.value=”true”
-W detectedexistingcopypanelInstallWizardBean.choice=”installnew” -OPT installType="installNew"
(used for new installs)
-P samplesProductFeatureBean.active=”true” (only used if -OPT feature="samplesSelected" for samples when –OPT
detectedexistingcopypanelInstallWizardBean.choice="addFeaturesAnd installType=”installNew” or –OPT installType=”addFeature”
Fixes") (used for incremental installs)
-OPT feature="noFeature"for no samples, when -OPT
installType="installNew"(installType cannot equal addFeature if you
don’t select to install any features)
-P javadocsProductFeatureBean.active=”true” No equivelant
-P wasProductBean.installLocation= -OPT installLocation=Note this format will vary based on OS
-W ndsummarypanelInstallWizardBean.launchPCT=”false” -OPT createProfile="false"
-W ndsummarypanelInstallWizardBean.launchPCT=”true” -OPT createProfile="true"And see the next entry in this table
-W pctresponsefilelocationqueryactionInstallWizardBean.fileLocation See Speaker notes for this entry
122 WebSphere Application Server Migration – September 2010
New
Profile management tools replaced March
2007
zOS support is unchanged from v6.0 to v6.1
Profile creation is supported by two types of commands
Scripts
• V6.0 is wasprofile.sh(bat)
• V6.1 is manageprofiles.sh(bat)
– Note that wasprofile.sh(bat) is deprecated but still supported
• Same command line parameters
Graphical User Interface (GUI)
• V6.0 is bin\ProfileCreator\pctXXX.exe
– “xxx” varies based on the Operating System
• V6.1 is bin\ProfileManagement\pmt.sh(bat)
123 WebSphere Application Server Migration – September 2010
Port usage
V6.1 uses more ports than previous versions
Can be an impact to those that tightly control port access
Can also cause more port conflicts
See
• http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/index.jsp?topic=/com.ibm.websphere.base.do
c/info/aes/ae/rmig_portnumber.html
Server Type V4.0 V5.x V6.0 V6.1
Application 8 16 19 21
DMgr n/a 11 17 17
Node Agent n/a 9 11 10
124 WebSphere Application Server Migration – September 2010
New
Administrative script tools December
2006
WebSphere admin automation tools for the creation and
maintenance of wsadmin Jython files
Includes an editor with an outline view, color syntax highlighting
and context sensitive code completion
Integration with the new "command assist" function
available in the admin console
•Intercepts generated commands for easy insertion into Jython Script
Jython debug support provides an
integrated debugger for stepping
through the execution of a wsadmin
Jython script
Jacl2Jython conversion assistant
125 WebSphere Application Server Migration – September 2010
®
v7.0 specific changes
September 2010
© 2007/2008/2009/2010 IBM Corporation
WAS v7 Tools Packaging
RAD RAD for WebSphere Features
RADfor forWebSphere
WebSphere
Programming Model Tools
Programming Model Tools
• EJB3 productivity features
• EJB3 productivity features
• Domain Modeling (visual edit)
• Domain Modeling (visual edit)
• Java, EJB, XSD, WSDL, Data, • Comprehensive tools to improve
• Java, EJB, XSD, WSDL, Data,
• Web Development (visual edit)
• •Web
Web2.0Development (visual edit) developer productivity…targeting IBM
• Web 2.0
• REST Style Services, Javascript, Dojo
• REST Style Services, Javascript, Dojo
• Web Services productivity features
Middleware
• Web Services productivity features
• Basic Code Review, Java & EJB
• Basic Code Review, Java & EJB
• Portlet and Portal Tools
• Portlet and Portal Tools
• Full-featured Integrated Dev Environment
Miscellaneous
Miscellaneous
• Extra Debuggers (XSLT, stored proc…) (IDE)
• Extra Debuggers (XSLT, stored proc…)
• XML productivity features
• XML productivity features
• Code Coverage
• Code Coverage
• Relational Data
• Tutorials, demos, wizards and sample
• •Crystal
Relational Data(tools only)
Reports
• Crystal Reports (tools only) code
• WAS n-2 support
• WAS n-2 support
• WAS test servers v6.0, v6.1, v7.0
• WAS test servers v6.0, v6.1, v7.0
• JCA
• JCA
• CICS and IMS Adapters
• CICS and IMS Adapters
• WAS Adapters
• WAS Adapters
RAD Assembly and Deploy Features
• SAP, Siebel, JDE, Oracle, PeopleSoft
• SAP, Siebel, JDE, Oracle, PeopleSoft
• RTC Client
• RTC Client
• CC SCM Adapter • Perpetual license as part of WAS
• CC SCM Adapter
• ReqPro
• ReqPro
• RUP
• RUP • Support for creating, building, testing
RAD
RADAssembly
Assemblyand
andDeploy
Deploy
and deploying J2EE 1.4 applications
• Jython tools
• Jython tools
• J2EE 1.4 (same level as AST 6.1)
• J2EEXML-form
• JEE5
1.4 (samebased
level DD
as AST 6.1)
editors
• Basic support for Java EE 5 applications
• JEE5 XML-form based DD editors
• JEE5 application support
• JEE5 application support
• WAS 7.0 support only
• WAS 7.0 support only • Support for building, testing and
• WAS debug extensinos
• WAS debug extensinos
• Application Deployment Support (WAS7.0)
• Application Deployment Support (WAS7.0)
deploying Java EE 5 applications
• RAC
• RAC
127 WebSphere Application Server Migration – September 2010
Development tool overview
IBM Rational development tools
RAD v7.5 is the new development toolset
RAD v7.5 has similar requirements as RAD v7.0
• Footprint and performance improvements in key scenarios
Based on Eclipse v3.4
Support for SOA, Web Services and Portal development
Support for Java6
Previous WebSphere Application Server supported runtimes
• WebSphere Application Server v6.0
– Includes support for Web 2.0 Feature Pack
• WebSphere Application Server v6.1
– Includes support for EJB 3.0, Web Services and Web 2.0 Feature Packs
Other supported runtimes
• WebSphere Application Server v7.0
• DB2 Universal Database™ (UDB) V9
• Portal v6.0 and v6.1
128 WebSphere Application Server Migration – September 2010
SIP Migration steps
1. Target node A for migration. Quiesce A1, A2
and their replication partners B1 and D1.
• This leaves node A ready for migration because
it has no replication partners active (so we won't
Initially SIP will require
hit our replication bytes versioning issue)
• Stop those 4 servers once quiesce is complete additional steps for live
• Migrate node A to 7.0 and get it up and running.
2. Target node B for migration. Quiesce B2 and
migration
its replication partner C1. Note B1 was
stopped already.
• Stop B2 and C1 once quiesce is complete
• Migrate node B to 7.0 and get it up and running A C
1 2 1 2
3. Target node C for migration. Quiesce C2 and
its replication partner D2. Note C1 was
stopped already
• Stop C2 and D2 once quiesce is complete
• Migrate node C to 7.0 and get it up and running D
B 1 2 1 2
4. Target node D for migration
• Note that D1 and D2 were already stopped
• Migrate node D to 7.0 and get it up and running
129 WebSphere Application Server Migration – September 2010
z/OS Migration Management Tool
Only alternative for
generating zOS Migration
JCL jobs
Available via WebSphere
Configuration Tool (WCT)
Launch from Main menu
130 WebSphere Application Server Migration – September 2010
®
v7.0 cumulative changes
September 2010
© 2007/2008/2009/2010 IBM Corporation
v7.0 cumulative
Moving to JRE 6
132 WebSphere Application Server Migration – September 2010
JRE 6 impacts
For an introduction, see the “Java SE 6“
http://java.sun.com/javase/6/
Applications using the new language features and
JRE 6 can be deployed only to v7.0 nodes.
When compiling applications can specify '-source' and '-target'
modes for earlier JRE targets
E.g. '-source 1.4', and 'target 1.4'
Java Serialization
Serialization is not compatible across JRE 1.4 and earlier
releases – force UUIDs as a general practice
133 WebSphere Application Server Migration – September 2010
Updated
JRE 6 source compatibility November
2009
JRE 6 is generally upwards source-compatible with JRE 5 except for some
minimal factors:
Some APIs in the sun.* packages have changed. These APIs are not intended for use by developers.
Developers importing from sun.* packages do so at their own risk
Java SE 6 In some cases, javac can now reject previously accepted, yet incorrect programs.
Properly Rejects Illegal Casts
EJB business methods which were not declared as public
FilterMapping that was mapped to a non-existing servlet
Debug and Profiler interfaces have changed
Java Virtual Machine Debug Interface (JVMDI) have been removed, Java Virtual Machine Profiler
Interface (JVMPI) has been disabled
Non class files have been moved from rt.jar in Java SE 6
Java applications that specify -Xbootclasspath:<path to rt.jar> and request any resource files will
fail since these resources now reside in a different jar file called resources.jar.
Miscellaneous API changes
The Duration and XMLGregorianCalendar equals() methods now return false for null parameter
java.beans.EventHandler Enforces Valid Arguments
Relatively minor impacts – see the sun site for a complete list.
http://java.sun.com/javase/6/webnotes/compatibility.html
134 WebSphere Application Server Migration – September 2010
v7.0 cumulative
Moving to JEE 5
135 WebSphere Application Server Migration – September 2010
Some JEE minor specification changes
This page focuses on those interfaces in v7.0 that have been upgraded
to JEE5 with no alternative to using the older support in J2E 1.4. For
example:
JSP has been upgraded to 2.1 from 2.0 – there is no way to run at JSP
2.0 level
EJB has been upgraded to 3.0, however EJB 2.1 applications are still run
at 2.1
See this link for complete details of specification level options:
• http://publib.boulder.ibm.com/infocenter/wasinfo/v7r0/index.jsp?topic=/com.ibm
.websphere.base.doc/info/aes/ae/rovr_specs.html
Portlet 2.0
getProtocol for included servlets / JSPs no longer returns null, but
‘HTTP/1.1’
136 WebSphere Application Server Migration – September 2010
New
Some JSP 2.1 changes March
2010
New reserved character
The character sequence '#{' is now reserved by JSP. So If you are using
'#{' in template text or as a literal in an attribute value for a 1.2-based
taglib, the sequence will have to be escaped.
Resource injection can cause some JSPs to no longer
compile
Large JSPs may now be over the 64K limit due to new Resource injection
support
Can turn this off via setting in ibm-ext-web.xmi in 7.0.0.11 and later
• JSP attribute "disableResourceInjection" to true
137 WebSphere Application Server Migration – September 2010
Some JSP 2.1 changes…
New July
2010
Redefining taglibs in a current scope no longer supported
Set the following JSP attribute: .
• <jsp-attribute name="allowTaglibPrefixRedefinition" value="true"/> .
Or set a webcontainer custom property for the server (note this will affect all
apps on the server):
• com.ibm.wsspi.jsp.allowtaglibprefixredefinition=true
A tag library directive that defines a prefix must occur before that prefix is
used in a custom tag
Set a webcontainer custom property for the server (note this will affect all
apps on the server):
• com.ibm.wsspi.jsp.allowtaglibprefixusebeforedefinition=true
Multiple occurrences of properties in the jsp:output element no longer
supported
Set a webcontainer custom property for the server (note this will affect all
apps on the server):
• com.ibm.wsspi.jsp.allowjspoutputelementmismatch=true
138 WebSphere Application Server Migration – September 2010
Updated
Differences from v6.1 Feature Packs February
2009
EJB 3.0 Feature Pack for v6.1
EJB 3.0 binding file errors - some applications may fail to start on
WebSphere Application Server V7.0 because uniqueness checks are
now performed on names used in the EJB 3.0 bindings file
Using runtime jars implicitly - When you deploy your Enterprise
JavaBeans™ (EJB) applications, you might receive a runtime
ClassNotFoundException exception because the class path entry
Java™ archive (JAR) file is not exported or published and uses one or
more runtime jars. This is a warning only.
V7.0 Does not support the use of bean managed persistence (BMP)
and container managed persistence (CMP) entity beans in EJB 3.0-
level modules. BMP entity beans are supported in the Feature Pack
for EJB 3.0
139 WebSphere Application Server Migration – September 2010
Differences from v6.1 Feature Packs…
WebServices Feature Pack for v6.1
In v7.0, JAX-WS annotations are supported only in
modules whose version is Java™ EE 5 or later.
Both WebServices and EJB Feature packs
To preserve compatibility with v6.1 Feature Packs you
must enable one of the following properties to request
scanning during application installation and server
startup:
• UseWSFEP61ScanPolicy property for Feature Pack
for Web Services
• UseEJB61FEPScanPolicy property for Feature Pack
for EJB 3.0
140 WebSphere Application Server Migration – September 2010
JSF 1.2 impacts Updated
March
2010
JSF 1.2 rendering differences
Some fixes to resolve some previous problems with content-
interweaving between JSF and non-JSF tags
Affects ViewHandler extenders, some custom scripting and
some 3rd party packages that now need to support JSF 1.2
• E.g. Tiles
And maybe others like
• Tomahawk, Trinidad, IceFaces, Facelets, etc
Unified Expression Language (EL) has some compatibility
changes around #{ which are not supported in JSP 1.2
Will now have to escape it or set an EL setting to act like JSP 2.0
141 WebSphere Application Server Migration – September 2010
JSF 1.2 impacts… New
March
2010
JSF Portlets
Higher memory consumption is reported, may result in
larger sessions
JSF 1.0 application impacts
Will either need to change to JSF 1.2 or restructure the
application
If restructuring the application will need to pull the JSF 1.0
modules out of the application and into a shared library
See Speaker notes for more details
142 WebSphere Application Server Migration – September 2010
Scanning for annotations…
New June
2009
JEE5 introduces support for annotations
Requires a new step to scan Java annotations during application installation which can
take significant amount of time
For a Web module, that includes both the classes packaged directly within the WAR file
(under the WEB-INF/classes directory), and classes that are packaged in JAR files
within the WAR file
Improvements made in fixpacks. In some cases 50% degradation in v7.0.0.7
Ways to optimize:
1. Only mark modules as JEE5 level when they contain JEE 5 content
2. If the module is known to have no annotations, use the "metadata-complete" flag
• See speaker notes for more details
3. Restructure the application to place utility JAR files, which are known to contain no
annotations information, into shared libraries
• These are not scanned for annotations
4. Move the utility jars to the root of the EAR.
• Nested archives (for example, a JAR within a WAR, within an EAR) are very cumbersome to
search through because of the multiple levels of compression
See for more information:
http://publib.boulder.ibm.com/infocenter/wasinfo/v7r0/index.jsp?topic=/com.ibm.websphere.nd.doc/info/ae/ae/urun_rapp
_metadata_lockdd.html
http://www-01.ibm.com/support/docview.wss?uid=swg1PK87053
143 WebSphere Application Server Migration – September 2010
New
Scanning for annotations November
2009
More files are now processed (e.g. .zip files)
There have been some problems now that additional file types are
processed as part of the scanning
One example is encrypted zip files that used to be ignored prior to v7.0
Some problems can be avoided starting in v7.0.0.7 by the following:
1. Go to the AdminConsole of the Deployment Server, navigate to:
– Application servers --> <deployment server name> --> Java and Process
Management --> process Definition --> control --> Java Virtual Machine -->
Custom Properties
– Add com.ibm.websphere.application.migration.disabled, to list with its value
set to true and save the configuration
2. Go to <profile_home>/properties/wsadmin.properties
– Edit and add com.ibm.websphere.application.migration.disabled=true
See for more information:
http://www-01.ibm.com/support/docview.wss?uid=swg1PK92880
144 WebSphere Application Server Migration – September 2010
v7.0 cumulative
WebSphere API migration details
145 WebSphere Application Server Migration – September 2010
WebSphere removed support Updated
September
2009
Derby Network Server Provider using the Universal JDBC driver
Use the Derby Network Server using Derby Client instead.
• Support for the DB2 legacy CLI-based Type 2 JDBC Driver and the DB2 legacy CLI-
based Type 2 JDBC Driver (XA) has been removed
Instead, use the DB2 Universal JDBC Driver
The following Java Database Connectivity (JDBC) drivers
WebSphere Connect JDBC driver, Microsoft® SQL Server 2000 Driver for JDBC , WebSphere SequeLink
JDBC driver for Microsoft SQL Server
Alternatively use the DataDirect Connect JDBC driver or Microsoft SQL Server 2005 JDBC driver
Also see the WebSphereConnectJDBCDriverConversion command to convert data sources from the
WebSphere Connect JDBC driver
Integrated Cryptographic Services Facility (ICSF) authentication mechanism
Alternatively use the Lightweight Third-Party Authentication (LTPA) mechanism
Support for the following Security custom properties
Old Property New Property
com.ibm.security.SAF.unauthenticatedId com.ibm.security.SAF.unauthenticated
com.ibm.security.SAF.useEJBROLEAuthz com.ibm.security.SAF.authorization
com.ibm.security.SAF.useEJBROLEDelegation com.ibm.security.SAF.delegation
146 WebSphere Application Server Migration – September 2010
WebSphere removed interfaces
All classes in the com.ibm.websphere.servlet.filter package
ChainedRequest , ChainedResponse , ChainerServlet and ServletChain
Alternatively use javax.servlet.filter classes
Web services gateway customization API
Alternatively replace your existing filters with a combination of JAX-RPC handlers and service
integration bus mediations
The following miscellaneous classes
Old Class New class
com.ibm.websphere.servlet.session.UserTransactionW Store a UserTransaction directly into the HTTP session
rapper
com.ibm.websphere.rsadapter.DataDirectDataStoreHel com.ibm.websphere.rsadapter.ConnectJDBCDataStoreH
per elper
com.ibm.websphere.rsadapter.MSSQLDataStoreHelpe com.ibm.websphere.rsadapter.MicrosoftSQLDataStoreH
r elper
147 WebSphere Application Server Migration – September 2010
Port usage
v7.0 uses more ports than some previous versions
Can be an impact to those that tightly control port access
Can also cause more port conflicts
See
• http://publib.boulder.ibm.com/infocenter/wasinfo/v7r0/topic/com.ibm.websphere.migration.nd.do
c/info/ae/ae/rmig_portnumber.html
Server V4.0 V5.x V6.0 V6.1 V7.0
Type
Application 8 16 19 21 21
DMgr n/a 11 17 17 11
Node Agent n/a 9 11 10 11
148 WebSphere Application Server Migration – September 2010
v7.0 cumulative
Administrative considerations
149 WebSphere Application Server Migration – September 2010
WSAdmin jython support New June
2009
Change to the string returned for “__name__” system variable
This system variable is set based on whether a file has been passed directly
on the jython command line
• Allows you to create a “main” program
Change was made to be compatible with standard Jython behavior
• Prior to v7.0 the returned string was “main”
• In v7.0 it is now “__main__”
Can check both for mitigation:
• if __name__ == ‘__main__’ or ‘main’:
150 WebSphere Application Server Migration – September 2010
WSAdmin differences New April
2010
Checking for existence of resources
In some cases when checking for existence of a resource an exception
would be thrown if the object did not exist
Now a return code will be returned and not an exception
E.g. if {[catch {set jp_name [$AdminConfig showAttribute $jp_tpl_id name]}]}
Some Datasource definitions now require
relationalResourceAdapter field
Either correct the connection factory defintion, or delete the data source with
a wsadmin command and recreate it with the relationalResourceAdapter
properly set
See http://www-01.ibm.com/support/docview.wss?uid=swg21317655
151 WebSphere Application Server Migration – September 2010
Security default changes Updated
January
2009
Old style LTPA version1 is disabled by default
In Prior versions both LTPA version 1 and 2 were sent for full
interoperability
Can turn back on for interoperability needs is required
• Set “com.ibm.ws.security.ssoInteropModeEnabled” = true instead of false
WebSeal TAI interceptor is deprecated and discouraged
Available if the Migration tools are used to build the new cell
• Migration ensures the old environment is carried forward
Not available by default as an option in the console otherwise
• Can be added through the console only if necessary
– Global security > Trust association > Interceptors
– Add the interceptor using the “Add” capability and
“com.ibm.ws.security.web.WebSealTrustAssociationInterceptor”
You should move to using
com.ibm.ws.security.web.TAMTrustAssociationInterceptorPlus
152 WebSphere Application Server Migration – September 2010
Security logout servlet New
February
2009
The ibm_security_logout servlet allows the specification of a web
page to be displayed after the logout processing completes. This
web page was unrestricted so the user can be redirected
anywhere. This was a security exposure and the behavior has
changed
The behavior now defaults to within the same host that the
request is currently executing on
Properties are provided to revert behavior
See APAR 71126
Also included in fixpacks 6.0.2.33 and 6.1.0.23.
153 WebSphere Application Server Migration – September 2010
Security server level security New
February
2009
For server-level security users
If you’re migrating from WAS v6.1 to either v7.0.0.0 or v7.0.0.1
AND you are using a server-level security.xml file
AND Using the “appEnabled” flag instead of the “enabled” flag
The “appEnabled” setting will not be carried forward, it will need to
be set to “true” as it as in v6.1
Fixed in v7.0.0.3 via APAR PK7990
154 WebSphere Application Server Migration – September 2010
Security Cipher changes New June
2009
Cipher strength changes in v7.0
Could affect interoperability between v6.1 and v7.0 systems
• Appears as a security handshake error
Some have been removed and some have been changed
• See the Speaker notes for detailed changes
Can mitigate by using one of the supported ciphers
• Configured via the ssl.client.props file
See for more information:
• http://publib.boulder.ibm.com/infocenter/wasinfo/v7r0/topic/com.ibm.websphere.base.doc/info
/aes/ae/rsec_sslclientpropsfile.html
• See table in Speaker notes
155 WebSphere Application Server Migration – September 2010
JSP class reloading New
February
2009
"JSP enable class reloading" was added in v6.1 and was
defaulted to “on”
This was different than v6.0 and earlier and sometimes caused
performance problems due to the JSP reload rate
In v7.0 this value is reverted to “false”
Can be controlled via a custom property
See APAR PK71698
156 WebSphere Application Server Migration – September 2010
WebSphere MQ maintenance concern Updated
Nov 2009
For zOS make sure the key APARs are installed
Information APAR II14484
• http://www-
01.ibm.com/support/docview.wss?rs=1083&context=SSGMGV&dc=DB550&uid=isg1II14484&loc=en_US&cs=UTF-
8&lang=en&rss=ct1083other
Be careful to use the correct MQ queue manager level in the correct mode
(bindings or client)
See for more information:
• http://www-
01.ibm.com/support/docview.wss?rs=171&context=SSFKSJ&dc=DB540&uid=swg21316899&loc=en_US&cs=UTF-
8&lang=en&rss=ct171websphere
WMQ Version BINDINGS mode CLIENT Mode
IBM WebSphere MQ Not supported Supported
v6.0.0.0 – v6.0.2.4
IBM WebSphere MQ Supported WebSphere MQ v6.0.2.5 or Supported
later must be installed on the same
V6.0.2.5 or later
machine as the application server
IBM WebSphere MQ Supported WebSphere MQ v7.0.0.1 or Supported
later must be installed on the same
V7.0.0.1 or later
machine as the application server
157 WebSphere Application Server Migration – September 2010
WebSphere MQ usage and v7.0.0.0 New June
2009
Adjusting the WebSphere MQ resource adapter configuration
for profiles between maintenance level 7.0.0.0 and later levels
Profiles created at WebSphere Application Server maintenance level
7.0.0.0, the WebSphere MQ resource adapter binary files are located in
each profile.
In profiles created at WebSphere Application Server maintenance level
7.0.0 Fix Pack 1 or later, these binary files are located in the
app_server_root directory
For profiles created at v7.0.0.0 level you must manually adjust
the resource adapter configuration so that the profiles use the
set of WebSphere MQ resource adapter binary files from the
app_server_root directory
See for more information
• http://publib.boulder.ibm.com/infocenter/wasinfo/v7r0/index.jsp?topic=/com.ibm.websphere.express.doc/info/
exp/ae/tmm_mig.html
• http://www-01.ibm.com/support/docview.wss?rs=171&uid=swg21266535
158 WebSphere Application Server Migration – September 2010
Plugin Server Timeout Default Value
New
November
2009
The HTTP Server default value of serverIOTimeout
changed from “0” to “60” in v7.0
Affects behavior of GET requests
Can cause unexpected behavior because the old default
reverted to the setting dictated by the OS
• Varies between 5 and 30 minutes
Can simply change setting back to “0” if required
See for more information
http://www.ibm.com/developerworks/websphere/techjournal/0802_webcon/0802_we
bcon.html
159 WebSphere Application Server Migration – September 2010
®
Moving from v4.0
September 2010
© 2007/2008/2009/2010 IBM Corporation
Moving from v4.0
Application changes
161 WebSphere Application Server Migration – September 2010
JMS Listener
JMS Listener within servlet or EJB container
Not supported in J2EE 1.4 – v6.0 and later
Must use Message Driven Beans instead
• http://publib.boulder.ibm.com/infocenter/ws51help/topic/com.ibm.websphere.base.
doc/info/aes/ae/tmb_migmb.html.
162 WebSphere Application Server Migration – September 2010
JSPs must be recompiled
Application installation and JSPs
JSP package names changed in v5.0 and later
Use the option to precompile JSPs when installing
enterprise applications
• Otherwise runtime errors will occur
163 WebSphere Application Server Migration – September 2010
Servlet changes
Standard Servlet package name changes
The package name that contains the
DefaultErrorReporter, SimpleFileServlet, and
InvokerServlet servlets has changed for v5.0
• In v4.0.x, the servlets are in the
com.ibm.servlet.engine.webapp class
• In v5.0 and later, the servlets are in the
com.ibm.ws.webcontainer.servlet class.
Handled automatically in v6.0 during application install.
Restrictions on .init() method
Some components such as Naming and Work Load
Management may not be fully started yet when init() is called
Some Application server related calls may not work since all of
the application server components may not yet be ready
164 WebSphere Application Server Migration – September 2010
New
HttpResponse.sendRedirect change October
2006
Default behavior has changed for ContextRoot
In v4.0 the ContextRoot is automatically added
For v5.0 and later it is not.
Example, given that ContextRoot is "/webapp/examples"
And you do a response.sendRedirect ("/me.jsp");
In v4.0:
• http://localhost/webapp/examples/me.jsp
In v5.0 and later:
• http://localhost/me.jsp
This behavior can be changed with JVM setting
com.ibm.websphere.sendredirect.compatibility set to true
For more information see:
http://www-1.ibm.com/support/docview.wss?uid=swg21084187
http://publib.boulder.ibm.com/infocenter/wasinfo/v5r1/topic/com.ibm.websphere.ba
se.doc/info/aes/ae/xrun_jvm_sendredirect.html
165 WebSphere Application Server Migration – September 2010
Transaction Isolation level
Cannot specify isolation level at method or bean level on
EJB 2.x modules
For JDBC application, a bean-managed persistence
(BMP) bean, or a servlet to participate in global
transactions, any connection that is shared cannot
accept a user-specified isolation level.
If you do not specify isolation level on the resource
reference, or if you specify TRANSACTION_NONE, the
WebSphere Application Server run time uses a default
isolation level for the data source. Application Server
uses a default setting based on the JDBC driver.
166 WebSphere Application Server Migration – September 2010
Transaction Isolation level
Be especially careful on this for WebModules coming
from v4.0, does not change for EJBs
Default transaction isolation level
v4 transaction level set to TRANSACTION_READ_COMMITTED
v5 and later transaction level set to
TRANSACTION_REPEATABLE_READ for all DB except Oracle
For most drivers, WebSphere Application Server uses
an isolation level default of REPEATABLE_READ
For more see:
http://publib.boulder.ibm.com/infocenter/ws60help/topic/com.ibm.websphere.ba
se.doc/info/aes/ae/cdat_isolevel.html
167 WebSphere Application Server Migration – September 2010
Class loader differences
Summary:
v4 Web Modules classes
searched first by default V4.0 Mode Application WAR policy
policy
v4 EJB Modules classes
searched last by default Server SINGLE Application
v5 and later Web and EJB
Modules classes searched
last by default Compatiblity SINGLE Module
References
http://www.ibm.com/developerw Application MULTIPLE Application
orks/websphere/library/techartic
les/0112_deboer/deboer.html
http://publib.boulder.ibm.com/in J2EE MULTIPLE Module
focenter/ws51help/topic/com.ib
m.websphere.base.doc/info/aes
/ae/trun_migr_classload.html
168 WebSphere Application Server Migration – September 2010
Differences in Naming
Name space is distributed
Every Application server is a name server
But the context is scoped to that application server
Better to work with bootstrap port (2809 by default)
NodeAgent for NetworkDeployment configurations
Application Server for standalone configurations
Bindings can be used to assist with the transition
For more see:
http://www-128.ibm.com/developerworks/websphere/library/techarticles/0305_weiner/weiner.html
Be aware of jndi-name specification for ejb-ref
Application Server version The jndi-name specification for EJB1's ejb-ref entry
v3.5 and v4.0 EJBHome1
v5.0 and later Single Server cell/nodes/h01Node/servers/server1/EJBHome1
v5.0 and later Server cluster cell/clusters/cluster1/EJBHome1
169 WebSphere Application Server Migration – September 2010
New
Webcontainer auto-encoding change May
2008
In v4.0 automatically sets request and response encodings, and response content types
In v5.0 and later need to set these values using available methods in the Servlet 2.3 Specification
or later.
Or you can specify the autoRequestEncoding and autoResponseEncoding extensions
For more information see:
http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/index.jsp?topic=/com.ibm.websphere.nd.doc/info/ae/ae/cweb_autoreq.html
http://www.ibm.com/software/globalization/j2ee/encoding.jsp
170 WebSphere Application Server Migration – September 2010
References
Transaction Isolation level change
http://publib.boulder.ibm.com/infocenter/ws60help/topic/com.ibm.websphere.base.doc/info/aes/
ae/cdat_isolevel.html
Class loader behavioral difference
www.ibm.com/developerworks/websphere/ library/techarticles/0112_deboer/deboer.html
http://publib.boulder.ibm.com/infocenter/ws51help/topic/com.ibm.websphere.base.doc/info/aes/
ae/trun_migr_classload.htm
Connection sharing and new datasource sharing
http://publib.boulder.ibm.com/infocenter/wasinfo/topic/com.ibm.websphere.base.doc/info/aes/a
e/rdat_conmig.html
http://www-
1.ibm.com/support/docview.wss?rs=0&q1=ConnectionWaitTimeoutException&uid=swg211926
66&loc=en_US&cs=utf-8&cc=us&lang=en
171 WebSphere Application Server Migration – September 2010
Moving from v4.0
Administration changes
172 WebSphere Application Server Migration – September 2010
Administration scripts
The administration model changed in v5.0
XMLConfig and wscp are no longer supported
Use wsadmin instead
For migration from wscp to wsadmin see:
• http://publib.boulder.ibm.com/infocenter/wasinfo/v6r0/topic/com.ibm.websphere.n
d.doc/info/ae/ae/txml_migrate4to6.html
Note, the information is the same for moving to v5.0,
v5.1 or v6.x
173 WebSphere Application Server Migration – September 2010
Packages and Bootstrap port
WebSphere Application Server Network
Deployment is the equivalent of a multiple-node
v3.02, v3.5 or v4.0 environment
WebSphere Application Server standalone is not
sufficient
• Naming - name space is not shared
• Administration - full support is not provided for multiple
application servers
Bootstrap port default changes
Prior versions it was 900, for v5.0 and later it is 2809
174 WebSphere Application Server Migration – September 2010
Using v5.0 style datasources
Considerations moving from v4.0 style datasource
Behavior differ when using JSPs, servlets, and EJB
session beans with bean managed transactions
Connection Sharing
• Connections are now defaulted Sharable connections. Can
cause Connections to be held longer and cause the
ConnectionPool to empty
– http://publib.boulder.ibm.com/infocenter/wasinfo/topic/com.ibm.websphere.base.doc/info/aes/ae/rda
t_conmig.html
– http://www-
1.ibm.com/support/docview.wss?rs=0&q1=ConnectionWaitTimeoutException&uid=swg21192666&l
oc=en_US&cs=utf-8&cc=us&lang=en
Statement Cache Size
• In v4.0, the maximum number of possible prepared statements are cached for
the data source within an application server.
• In v5.0, statement cache size is defined on a physical connection.
• Can surface as application problems or affect performance
175 WebSphere Application Server Migration – September 2010
New
Transaction Isolation level October
2006
An option if using the new v5 datasources at some point
Not applicable on v4 datasources
Added an option on the datasources that allow users to set the
default isolation level in WebSphere using a DataSource
custom property (webSphereDefaultIsolationLevel)
Provided by PK05841
Available in v6.0.2
For more information see
http://www-1.ibm.com/support/docview.wss?rs=180&uid=swg21224492
176 WebSphere Application Server Migration – September 2010
HTTP Session defaults
Default write frequency mode changes
In Version 4.0.x it is END_OF_SERVICE
In Version 5.0 and higher it is TIME_BASED_WRITES
See
http://publib.boulder.ibm.com/infocenter/wasinfo/v5r1//index.jsp?topic=/
com.ibm.websphere.base.doc/info/aes/ae/tprs_migrate_sessions.html
177 WebSphere Application Server Migration – September 2010
®
Moving to JDK 1.4 or later
September 2010
© 2007/2008/2009/2010 IBM Corporation
JDK 1.4 impacts
v5.1 and v6.0 support JDK 1.4
JDK 1.4 is very compatible with prior levels
http://java.sun.com/j2se/1.4/compatibility.html
JDK 1.4 includes it’s version of the XML libraries
This may cause conflicts with migrated v4 and v5.0
Applications that make use of their own XML libraries
WAS_HOME/lib/xerces.jar no longer exists
Additions in JDK 1.4 interfaces broke one existing
WebContainer API
public String getStackTrace()
http://publib.boulder.ibm.com/infocenter/ws60help/topic/com.ibm.websphere.base.doc/inf
o/aes/ae/rmig_deprecationlist.html
179 WebSphere Application Server Migration – September 2010
JDK 1.4 impacts
Some changes may be required due to tightening
of J2EE levels
More compiler warnings based on JDK 1.4 additions
(e.g. assert)
Some JDK methods that should not have been used in
the past have been removed
• E.g. java.text.resources.*
180 WebSphere Application Server Migration – September 2010
JDK 1.4 binary compatibility
General compatibility standard
Maintenance releases within a family (1.4.x) will maintain both upward and
downward binary-compatibility with each other.
Functionality releases (for example 1.3, 1.4) within a family (1.x) will
maintain upward but not necessarily downward binary-compatibility with
each other.
Some early compilers issues
Class files that violated the class file format. These class files will not
run on the JDK 1.4, though some of them may have run on earlier
versions of the virtual machine.
To remedy this problem, regenerate the class files
JDK 1.4 is generally upwards binary-compatible
with JDK 1.3 except for some key factors:
Serialization is not compatible across JDK releases – force UUIDs
Several Awt changes
181 WebSphere Application Server Migration – September 2010
JDK 1.4 source compatibility
General compatibility standard
Maintenance releases do not introduce any new language features or
APIs, so they maintain source-compatibility in both directions.
Functionality releases and major releases maintain upwards but not
downwards source-compatibility
JDK 1.4 is generally upwards source-compatible
with JDK 1.3 except for some key factors:
Several Swing and Awt changes
Some Corba APIs have changed
Stricter handling of incorrect Html document layouts
Stricter handling of incorrect source code
Default target for compiled bytecodes is now 1.2 instead of 1.1
New required interfaces in JDBC 3.0
“Assert” is now a keyword, a compatibility mode is provided
SocketImpl is a new required class when using Socket API
182 WebSphere Application Server Migration – September 2010
®
Mixed version cell support
September 2010
© 2007/2008/2009/2010 IBM Corporation
Mixed version support and Clusters
Support mixed version nodes in the same cluster
v5.0, v5.1 and v6.0 for v6.0
v5.0, v5.1, v6.0 and v6.1 for v6.1
v5.1, v6.0, v6.1 and v7.0 for v7.0
Compatibility mode is provided to make this work
(affects all platforms except zOS) for Versions prior to
v5.1.0
After all nodes have been upgraded then this
compatibility can be turned off
Performance improvement for workload balancing and fail-over
com.ibm.websphere.ObjectIDVersionCompatibility property set
to “2” (“1” is for compatibility mode)
http://publib.boulder.ibm.com/infocenter/wsdoc400/topic/com.ibm.websphere.iseries.doc/info/ae/ae/rorb_setg.html
184 WebSphere Application Server Migration – September 2010
Wsadmin client support restrictions Updated
February
2009
For v5.x client connecting to v6.x level versions
Supported and favored scenario
v6.x attributes cannot be edited from a v5.x admin client
For v6.x client connecting to v5.x client
Not all commands are supported
• New v6.x JMX objects cannot be passed back to v5.x
• Occurs infrequently, usually involves serialization and exceptions
Can modify applications except cannot:
• Map Message Destination References to Enterprise Beans
• Binding J2CObjects to JNDI name
• Binding J2CActivation to Destination JNDI name
For v6.0 client connecting to v6.1 or v7.0 client
Serialization differences between v6.0 and v6.1 or v7.0 cause errors
• To avoid set the jmx.serial.form Java virtual machine (JVM) custom property
on the v6.1 or v7.0 servers being connected to from v6.0
• Set the value to ”1.2.0” for interoperability or “1.2.1” for pure v6.1
Reference:
http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/topic/com.ibm.websphere.nd.doc/info/ae/
ae/rjmx_interoperability.html
185 WebSphere Application Server Migration – September 2010
Mixed version limitations
Other restrictions
A v5.x node cannot be directly removed from a v6.x or v7.0
cell.
• However, it can be done indirectly
Some application install options cannot be used for
applications to be installable on both mixed version nodes
• deployejb
• deployws
• precompileJSP
• useMetaDataFromBinary
– Note, this is fixed in v6.1.0.1 and later via PK27243
zOS v5.0.x nodes were not supported in the same cell and
in the same LPAR as v6.x nodes
• Limits options available for Migration planning
• Not a problem in v5.1 and later!
186 WebSphere Application Server Migration – September 2010
Core Group protocol versions New
February
2009
Core Group protocol versions
New protocol versions can be added to the product if new messages,
or new algorithms are required to support new product features, or to
improve core group performance.
Use wisely in mixed version:
You cannot update to a newer protocol version until all of the members
of this core group are upgraded to a code level that supports the
newer protocol version.
You do not have to restart the core group members when you move
from an older protocol version to a newer protocol version. However,
you must restart all of the core group members if you move from a
newer protocol version to an older protocol
See
http://publib.boulder.ibm.com/infocenter/wasinfo/v7r0/topic/com.ibm.websphere.zseries.doc/info/zserie
s/ae/crun_ha_protocol_ver.html
187 WebSphere Application Server Migration – September 2010
®
Mixed version cell support – v6.x
September 2010
© 2007/2008/2009/2010 IBM Corporation
Mixed version support
Category Supported actions v6.x
Adding V6.0.2.x and later node Yes
new node
v5.x node No
Adding V6.x servers in a v6.x node for v6.0.2.x and later Yes
new
server
v5.x servers in a v5.x node Yes
Adding v5.x server in a v5.x-only cluster Yes
new
cluster
member v5.x server in a v6.x-only cluster (support has been added) Yes
v6.x server in a v5-only cluster No
v5 server in mixed (v5.x and v6.x) cluster Yes
V6.x server in mixed (v5.x and v6.x) cluster Yes
189 WebSphere Application Server Migration – September 2010
®
Mixed version cell support – v7.0
September 2010
© 2007/2008/2009/2010 IBM Corporation
Mixed version support New
February
2009
Category Supported actions V7.0
Adding V6.0.2.x and later node Yes
new node
v5.1 node No
Adding V6.x servers in a v7.0 node for v6.0.2.x and later Yes
new
server
v5.1 servers in a v5.1 node Yes
Adding v5.1 server in a v5.1-only cluster Yes
new
cluster
member v5.1 server in a v7.0-only cluster Yes
V7.0 server in a pre-v7.0-only cluster Yes
V5.1 server in mixed (v5.1 and v7.0) cluster Yes
V7.0 server in mixed (v5.1 and v7.0) cluster Yes
191 WebSphere Application Server Migration – September 2010
Mixed version clusters New
February
2009
Mixed version clusters
Since a cluster can contain members from nodes that run on different
versions of the product, one template will be stored for each version of
the application server node that is configured as a cluster member.
The cluster member template will not exist for a given node version
until you create a first member in a node of the same version
192 WebSphere Application Server Migration – September 2010
Mixed version + v6.1 Feature Packs New
February
2009
WS-Transaction
For a Version 6.1 Feature Pack for Web Services server, you can
enable the WS-Transaction policy type by including it in a policy set,
but you cannot configure it.
For a Version 7.0 server, you can both enable and configure the WS-
Transaction policy type. Configuration information is written to the WS-
Transaction policy type file
Side effects
• If a Version 6.1 Feature Pack for Web Services server reads a WS-
Transaction policy type file that is generated by a Version 7.0 server, the
server enables the WS-Transaction policy type, but ignores any
configuration information in the file.
• If a Version 7.0 server reads a WS-Transaction policy type that is generated
by a Version 6.1 Feature Pack for Web Services server, the server enables
the WS-Transaction policy type using a value of Supports for the WS-
AtomicTransaction and WS-BusinessActivity protocols. This value is
equivalent to the existing behavior of a Version 6.1 Feature Pack for Web
Services server.
193 WebSphere Application Server Migration – September 2010
Mixed version + v6.1 Feature Packs… New
February
2009
WS-Transaction
v6.x server supports WS-Transaction 1.0. A v7.0 server supports WS-
Transaction 1.0 and 1.1.
Considerations for failover in a mixed version cluster
In a mixed-version cluster, a Version 7.0 server might fail over to an
earlier version server that does not support WS-Transaction 1.1, and
that therefore cannot recover WS-Transaction 1.1 protocol messages.
In this situation, there are the following implications:
• For a cluster of Version 7.0 servers that are configured to fail over and that
are configured to use WS-Transaction 1.1, you cannot add an earlier
version server to the cluster.
• For a mixed-version cluster, where the servers are configured to fail over,
any Version 7.0 server in the cluster must not use WS-Transaction 1.1.
• For a cluster of servers that are configured to fail over, any Version 7.0
server in the cluster that is configured to use WS-Transaction 1.1 cannot
start if there are also servers at an earlier version.
194 WebSphere Application Server Migration – September 2010
Mixed version + v6.1 Feature Packs… New
February
2009
Enabling Web Services secure conversations
To run Web services security applications utilizing secure conversation in
this environment, enable the following property for the V7.0 nodes in the
cluster: “com.ibm.ws.wssecurity.distributedcache.PreV70InteropMode” of
“true”
This property ensures that the method for adding entries in the cache is
consistent between the different nodes, and also allows the applications
to interoperate
See
http://publib.boulder.ibm.com/infocenter/wasinfo/v7r0/topic/com.ibm.websphere.nd.doc/info/ae/ae/t
wbs_enableappsmixedcluster.html
195 WebSphere Application Server Migration – September 2010
®
Using the runtime Migration tools
September 2010
© 2007/2008/2009/2010 IBM Corporation
Migration using the tools
V5.1/V6.x Cell -> V7 Cell
Uses runtime V5.1/V6.x
Deployment
V7
Deployment
Manager Manager
migration tools to 1. Migrate DMgr
migrate both
Deployment
Manager and
federated nodes … …
V5.1/V6.x V7
federated nodes federated nodes
2. Migrate nodes
197 WebSphere Application Server Migration – September 2010
Runtime Migration tools
Migration tools do a reversible disablement of old nodes
during migration
Deployment Manager
Managed nodes
Can be reversed by migrationDisablementReversal.jacl
in bin directory
Migration support is not part of Install
Cannot migrate as part of silent install, use the Migration
commands directly
198 WebSphere Application Server Migration – September 2010
Migration tools and memory usage Update
March
2007
OutOfMemory conditions within WASPostUpgrade
Large applications
Large number of files can cause problems
• Edit WAS_HOME/bin/WASPostUpgrade.xxx
• Add a memory setting appropriate to your hardware:
– From: "%JAVA_HOME%\bin\java" %WAS_LOGGING%...
– To: "%JAVA_HOME%\bin\java" -Xmx512m %WAS_LOGGING%...
Run Migration task again after changes
OutOfMemory conditions within wsadmin
Large applications
Modify the wsadmin memory settings as above
For more see:
http://www-1.ibm.com/support/docview.wss?uid=swg21199311
199 WebSphere Application Server Migration – September 2010
Migration tools and connections Update
March
2007
For federated migrations (migrating managed nodes)
For large configurations you may run into a limit on the
number of allowable open connections on the DMgr
Easily fixed by setting “Max open connections”, a script is
provided in the following technote
For more see:
http://www-1.ibm.com/support/docview.wss?rs=180&uid=swg21214124
200 WebSphere Application Server Migration – September 2010
Cell and Node names
Deployment Manager migrations
Cell names must match between old and new
configurations
Recommend using same Deployment Manager node
name
Managed node migrations
Node names match between old and new configuration
Standalone or Custom profiles can be used
• Recommend Custom profiles – it starts empty
201 WebSphere Application Server Migration – September 2010
Administration script changes
Migration tools provide script compatibility support
HTTPTransports and ProcessDef
Default mode of the runtime Migration tools
Pre-v6.1 Security model
Once scripts are converted then switch to new mode
using the convertScriptCompatibility command
Recommend wait until all nodes are converted
202 WebSphere Application Server Migration – September 2010
Migration tools disk usage New
October
2006
Directories used
Backup directory stores old configuration in a temporary directory
Target profile receives this data from the old configuration
Sizes to allocate or expect
zOS
• Backup directory - Typically 100 cylinders typically enough, if not see below
• Target profile - Calculated automatically by Customization
Distributed and i5/OS – add up the following for both Backup and Target
profile
• ${USER_INSTALL_ROOT}/installableApps
• ${USER_INSTALL_ROOT/installedApps
• ${USER_INSTALL_ROOT}/config
• ${USER_INSTALL_ROOT}/properties
• Shared Libraries referenced in the libraries.xml configuration files
• RAR (connector) files referenced in the resources.xml configuration files
• 200MBs for Trace; depending on the size and complexity of your configuration
203 WebSphere Application Server Migration – September 2010
Migration tools disk usage New
October
2006
For Deployment Manager and Standalone migrations it is
simply what is on the previous page
For Federated/Managed node Migrations there is one more
complexity (Note, this is not applicable to v6.1 and later)
Each federated node requires more temporary storage in the
Deployment Manager
This is created in
${DMGR_USER_INSTALL_ROOT}/temp/${FEDERATED_NODE}_migr
ation_temp
These are created but not deleted, they contain trace files if Service is
required as a FirstFailureDataCapture
You can/should delete these after you have migrated the federated node
204 WebSphere Application Server Migration – September 2010
Migration tools ulimit –n setting New
May
2010
The migration tools need to modify the new configuration
based on the old configuration files
As a result more files may be opened than other tools might
If the ulimit –n (number of files) setting is set too low this will
cause errors
This is especially true for larger configurations
Recommended starting points:
• WAS – at least 8192
• Other stack products (e.g. Portal) – at least 10240
See references for more information
• http://www-01.ibm.com/support/docview.wss?rs=180&uid=swg21141284
• http://publib.boulder.ibm.com/infocenter/wpdoc/v6r0/index.jsp?topic=/com.ibm.
wp.ent.doc/wpf/mig_intr.html
205 WebSphere Application Server Migration – September 2010
Migration tools and Security Update
October
2008
The default for handling Security settings when migrating in
v6.1 or later is to retain the old/existing Security model.
Support is provided in v6.1 via APAR PK62140 and v7.0 to
convert the old Security model to the new model
To be used after all nodes in the cell are at the same level.
Now supported via wsadmin command tasks
convertSSLConfig
convertSelfSignedCertificatesToChained (v7 only)
See for more details:
http://www-01.ibm.com/support/docview.wss?uid=swg1PK62140
http://publib.boulder.ibm.com/infocenter/wasinfo/v7r0/topic/com.ibm.webspher
e.express.doc/info/exp/ae/rxml_7sslmigration.html
206 WebSphere Application Server Migration – September 2010
Migration tools and other products Update
October
2008
Migration tools integration with other products such as
Tivoli and other WebSphere products
There may be problems if you are migrating a cell that has
other IBM products installed as well
Some of these products have integrated their runtime
Migration tools with WebSphere Application Server and some
have not.
For example, some versions of Portal and BPM have such
integration and are supported
At this point ITCAM must be uninstalled before running the
WebSphere Application Server migration tools and then
installed in the v7 cell afterwards.
207 WebSphere Application Server Migration – September 2010
zOS Migration New
February
2009
z/OS Migration
Management Tool Generated
Define or zmmt.sh
variables JCL jobs
Generate CNTL and scripts,
customization jobs customized
DATA with
variables
V7 Migrated Node
z/HFS
Instructions:
JCL
procs
Run jobs BBOxxINS
Directory structure Can run as one
created and large job or
populated with XML three smaller
and properties files jobs
208 WebSphere Application Server Migration – September 2010
New
Migration jobs March
2010
Create HFS or zFS BBOMxZFS or BBOMxHFS
Copies tailored JCL to PROCLIB BBOMxCP
Clear the transaction logs (for XA connectors only) BBOWMG1x
Disable Peer Restart and Recovery (PRR) mode (for XA connectors only) BBOWMG2x
Perform migration BBOWMG3x
209 WebSphere Application Server Migration – September 2010
New
BBOWMG3x job… March
2010
May be run as three steps:
Create working directory (/tmp/migrate/nnnnn) Common tasks
WRCONFIG – copy dialog generated variables to the HFS
WRRESP – create a profile creation response file from dialog
generated variables
MKCONFIG – gather information from existing configuration (for
instance, cell name, server name)
VERIFY – verify the variables generated from dialog
CRHOME – create a V7 WAS_HOME structure 1
CRPROF – create V7 default profile
2
PREUPGRD – backup some files in the HFS to be used by
WASPostUpgrade
UPGRADE – run WASPostUpgrade to perform the migration
(serverindex.xml renamed to serverindex.xml__disabled)
FINISHUP – run Config2Native, update file permissions and 3
attributes
210 WebSphere Application Server Migration – September 2010
New
BBOWMG3x job… March
2010
BBOWxPRO
• Common tasks +1 (CRHOME, CRPROF)
BBOWxPRE
• Common tasks +2 (PREUPGRD)
BBOWxPRO
Common tasks 3
• + (UPGRADE, FINISHUP)
211 WebSphere Application Server Migration – September 2010
New
General recommendations March
2010
Keep the same procedure names
Backup (save) your previous procedures
If you use different procedure names, RACF® profile updates
required:
• STARTED class profiles
• Automation changes required
Use separate z/HFS for each V7 node (even if you did not in prior versions)
This may require new procedure names if you had a shared HFS in
the previous version
Review information in the ‘Premigration considerations’ article found in
the information center:
http://publib.boulder.ibm.com/infocenter/wasinfo/v7r0/topic/com.ibm.websphere.migration.zseries.doc/info/zseries/ae/cmig_pre.html
212 WebSphere Application Server Migration – September 2010
New
Migration troubleshooting March
2010
Check the BBOWMG3x output for errors:
/tmp/migrate/nnnnn/BBOWMG3x.out and
/tmp/migrate/nnnnn/BBOWMG3x.err written to JOBLOG
Check the /tmp/migrate/nnnnn/logs directory for logs named
WAS*Upgrade*<timestamp>.log
Turn traces on for more information about failure
‘xxxx.DATA(BBOWMxEV)’ can be updated to enable:
• TraceState=enabled
• profileTrace=enabled
If job fails in the VERIFY step, correct error and rerun job
Most likely incorrect data was entered
If job fails after the VERIFY step, correct error and rerun job
Must delete WAS_HOME directory that was created in CRHOME step first
Possibly need to rename serverindex.xml_disabled file back to
serverindex.xml in original configuration
213 WebSphere Application Server Migration – September 2010
New
zOS Migration best practices March
2010
Product file system mounted as ReadOnly
Migration job run on the same system that owns the configuration file
systems
Increase Java Heap for larger topologies or larger number of applications
Set BPX_SHAREAS = NO so spawned processes run in a separate address
space.
Ensure Virtual Storage Limit is sufficient so address z/OS UNIX file systems
use of cache
Eliminate duplicate logging by the runtime migration jobs
Consider Migration without applications – can easily be done later
Java –Xquickstart option to enable fast startup time
Use 64bit Java runtime for large topologies
See WP101589 (see references) for details
214 WebSphere Application Server Migration – September 2010
®
RAD/RSA migration support
September 2010
© 2007/2008/2009/2010 IBM Corporation
Development tool migration
Migration documentation in RAD is very good
WebSphere Studio workspace converted by RAD
v5.1.0 or newer workspace converted to v6/v7 automatically
V6/v7 workspace not compatible with earlier versions
Projects within workspace remain compatible
WebSphere Studio projects converted by RAD
v5.1.0 and v6/7 projects start off compatible
v5.1.0 project must be imported into v6/v7 using the project
interchange option to maintain compatibility with v5.1.0
v5.1.0 compatibility will be maintained until any new v6/v7
feature is included in the v5.1.0 project.
Compatibility can be removed manually from projects
216 WebSphere Application Server Migration – September 2010
J2EE migration support
J2EE specification level migration and project
structure migration may be performed
independently.
J2EE Migration Wizards are provided in RAD
J2EE 1.2 to 1.4
• EJB 1.1 to EJB 2.1 (some manual steps required)
• Servlet 2.2 to Servlet 2.4
J2EE 1.3 to 1.4
• EJB 2.0 to EJB 2.1
• Servlet 2.3 to Servlet 2.4
• JCA 1.0 to JCA 1.5
• Web Services (Secure Web Services are not migrated)
217 WebSphere Application Server Migration – September 2010
J2C migration support
J2EE Connectors (J2C)
Delivered in April 2005 as a RAD 6.0.0.1 optional feature
Support for CICS ECI and IMS
Migration support from WSAD-IE
Creates J2C beans from WSDL/XSD
Some manual steps may be required
• See “Migration Paths and Known Limitations ” in Help
Post Migration Steps
• Retrofit any user customization code
• If you are using message format handler in your client application
code, you will need to replace them with the new J2C input/output
beans.
• If you want to generate additional aritifacts like JSPs, EJBs or Web
Services, you will invoke the “Web Page, Web Service, EJBs from J2C
Java Bean” wizard.
218 WebSphere Application Server Migration – September 2010
Migrating legacy DB2 JDBC Type2 New July
2010
When migrating to the Universal JDBC Driver
The legacy JDBC river did not enforce all JDBC
specification
The Universal JDBC driver does fully enforce those
rules
Some code may need to change as a result (e.g.)
Should use executeUpdate() instead of executeQuery() when
calling stored procedures
Various differences when working with ResultSets
Different Security and connection mechanisms
…
Reference:
http://publib.boulder.ibm.com/infocenter/db2luw/v9r5/index.jsp?topic=/com.ibm.db
2.luw.qb.migration.doc/doc/t0024117.html
219 WebSphere Application Server Migration – September 2010
®
Change History
September 2010
© 2007/2008/2009/2010 IBM Corporation
New
Changes – October 2006 October
2006
RAD v7 and AST v6.1
Disabling HA Manager if required
Transaction level setting on v5 datasources for v4 compatibility
Webcontainer configurable settings
JSP configurable settings
v4.0 JSP response.sendRedirect() default difference
Migration tools disk requirements
221 WebSphere Application Server Migration – September 2010
New
Changes – December 2006 December
2006
More on AST v6.1
Solaris 10 x86_64 and JNI support
Clarification on mixed node and admin commands
222 WebSphere Application Server Migration – September 2010
New
Changes – March 2007 March
2007
Online availability
Silent Install response files have changed
Some scripts may break in v6.1 if you reference jars directly
New Security model may affect scripts
Migration tools and memory usage
Migration tools and open connections
223 WebSphere Application Server Migration – September 2010
New
Changes – November 2007 November
2007
JSPs using Java 5 specific language features
JNDI Direct lookup undeprecation
224 WebSphere Application Server Migration – September 2010
New
Changes – February 2008 February
2008
New references
z/OS Migration Management Tool
Migration and Feature Packs
Java Server faces (JSF)
225 WebSphere Application Server Migration – September 2010
Changes – May 2008
New May
2008
More Support statement updates
Expanded explanations of JSP and Servlet changes in J2EE 1.4
Client access to datasources
Auto-encoding change starting in v5.0
Restriction on starting threads in containers
226 WebSphere Application Server Migration – September 2010
New
Changes – August 2008 August
2008
Additional explanation for using migration tool options for large
topologies
Web Services incompatibility in v6.0 and later
227 WebSphere Application Server Migration – September 2010
New
Changes – October 2008 October
2008
Restructuring and explanation of specific and cumulative changes
V7 changes
More references
Migration tools, other products and Security
228 WebSphere Application Server Migration – September 2010
New
Changes – February 2009 February
2009
Security information updated
Added more EJB 3.0 details
Information on the zOS zMMT options for v7
Security logout page behavior change
JSP Class reloading behavior change
EJB setRollbackOnly v6.1 change
Added restrictions in mixed version for v7.0
229 WebSphere Application Server Migration – September 2010
Changes – June 2009
New June
2009
v7.0 Administration script required changes
v7.0 Security cipher change
v7.0 potential JSF impact on some widget libraries
v7.0 Slow deployment of JEE5 applications
v7.0 WebSphere MQ maintenance concerns
v7.0 WebSphere MQ usage and v7.0.0.0
230 WebSphere Application Server Migration – September 2010
New
Changes – September 2009 September
2009
v7.0 and impact to JSF 1.0 support
Additional References for CCF and Java 5/6 Garbage Collection
References for WebSphere v7 System Management concepts
Support for the DB2 legacy CLI-based Type 2 removed
231 WebSphere Application Server Migration – September 2010
New
Changes – November 2009 November
2009
Updates on IBM WebSphere v7.0 recommended level
Updates on JRE 6 javac inproved checking
Whitepaper on Migration tools performance
CCF migration references
More on annotations impacts
Plugin Server Timeout Default Value changed
232 WebSphere Application Server Migration – September 2010
New
Changes – March 2010 March
2010
Large JSP compilation problems
JSP redefine tag behavior
v6.1 Problem determination guide
Updates to JSF impacts in v7
New configuration migration options
Updated Coregroup details
Performance tuning article link
More information on zOS migration
233 WebSphere Application Server Migration – September 2010
New
Changes – April 2010 April
2010
Additional script behavior differences
Added reference to latest WebSphere Application Server Migration
redpiece
234 WebSphere Application Server Migration – September 2010
New
Changes – May 2010 May
2010
uLimit recommendations when using runtime Migration tools
Additional documents new for v7.0
Security considerations and runtime migration tools highlighted
235 WebSphere Application Server Migration – September 2010
New
Changes – July 2010 July
2010
JSP specification tightening
Java verboseGC output is different for different policies
Migrating from legacy DB2 JDBC driver to the Universal JDBC
236 WebSphere Application Server Migration – September 2010
New
Changes – September 2010 September
2010
WebSphere Application Server Migration Toolkit
237 WebSphere Application Server Migration – September 2010
Legal Disclaimer
THE INFORMATION CONTAINED IN THIS PRESENTATION IS PROVIDED FOR
INFORMATIONAL PURPOSES ONLY. WHILE EFFORTS WERE MADE TO VERIFY THE
COMPLETENESS AND ACCURACY OF THE INFORMATION CONTAINED IN THIS
PRESENTATION, IT IS PROVIDED “AS IS” WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED. IN ADDITION, THIS INFORMATION IS BASED ON IBM’S
CURRENT PRODUCT PLANS AND STRATEGY, WHICH ARE SUBJECT TO CHANGE BY
IBM WITHOUT NOTICE. IBM SHALL NOT BE RESPONSIBLE FOR ANY DAMAGES
ARISING OUT OF THE USE OF, OR OTHERWISE RELATED TO, THIS PRESENTATION
OR ANY OTHER DOCUMENTATION. NOTHING CONTAINED IN THIS PRESENTATION IS
INTENDED TO, NOR SHALL HAVE THE EFFECT OF, CREATING ANY WARRANTIES OR
REPRESENTATIONS FROM IBM (OR ITS SUPPLIERS OR LICENSORS), OR ALTERING
THE TERMS AND CONDITIONS OF ANY AGREEMENT OR LICENSE GOVERNING THE
USE OF IBM PRODUCTS AND/OR SOFTWARE.
REFERENCES IN THIS PRESENTATION TO IBM PRODUCTS, PROGRAMS, OR
SERVICES DO NOT IMPLY THAT THEY WILL BE AVAILABLE IN ALL COUNTRIES IN
WHICH IBM OPERATES. PRODUCT RELEASE DATES AND/OR CAPABILITIES
REFERENCED IN THIS PRESENTATION MAY CHANGE AT ANY TIME AT IBM'S SOLE
DISCRETION BASED ON MARKET OPPORTUNITIES OR OTHER FACTORS, AND ARE
NOT INTENDED TO BE A COMMITMENT TO FUTURE PRODUCT OR FEATURE
AVAILABILITY IN ANY WAY. NOTHING CONTAINED IN THESE MATERIALS IS
INTENDED TO, NOR SHALL HAVE THE EFFECT OF, STATING OR IMPLYING THAT ANY
ACTIVITIES UNDERTAKEN BY YOU WILL RESULT IN ANY SPECIFIC SALES, REVENUE
GROWTH OR OTHER RESULTS. PERFORMANCE IS BASED ON MEASUREMENTS AND
PROJECTIONS USING STANDARD IBM BENCHMARKS IN A CONTROLLED
ENVIRONMENT. THE ACTUAL THROUGHPUT OR PERFORMANCE THAT ANY USER
WILL EXPERIENCE WILL VARY DEPENDING UPON MANY FACTORS, INCLUDING
CONSIDERATIONS SUCH AS THE AMOUNT OF MULTIPROGRAMMING IN THE USER'S
JOB STREAM, THE I/O CONFIGURATION, THE STORAGE CONFIGURATION, AND THE
WORKLOAD PROCESSED. THEREFORE, NO ASSURANCE CAN BE GIVEN THAT AN
INDIVIDUAL USER WILL ACHIEVE RESULTS SIMILAR TO THOSE STATED HERE.
238 WebSphere Application Server Migration – September 2010