This section describes the capabilities of the Migration Tool for Project GlassFish.
As a design guideline, the Migration Tool migrates only the JDBC data sources. It does not overwrite the configuration parameters of the application server installation. This design implementation protects the configuration work performed by the system administrator on the application server. Therefore, configuration parameters from source application servers have been categorized into the following migration resolutions:
| Category | Item Description | File | Migration Resolution | |
|---|---|---|---|---|
| <virtualHosts> | Application server installation and application directory information | server-cfg.xml | Need Not Be Migrated | |
| <factories> | JDBC Datasource/Connection pool | server-cfg.xml | Migrated | |
| <resourceProviders xmi:type="resources:JDBCDriver"> | JDBC Driver | server-cfg.xml | Migrated | |
| <resourceProviders xmi:type="resources:URLProvider"> | URL provider settings | server-cfg.xml | Cannot Be Migrated | |
| <resourceProviders xmi:type="resources:MailProvider"> | Mail provider settings | server-cfg.xml | Cannot Be Migrated | |
| <defaultMimeEntries xmi:id="resources:MimeEntry> | MIME types | server-cfg.xml | Need Not Be Migrated | |
| <threadPool xmi:id="ThreadPool" | Parameters for thread connection. | server-cfg.xml | Migrated | |
| <ejbContainer xmi:id="EJBContainer" | EJB component parameters | server-cfg.xml | Need Not Be Migrated | |
| <transactionService xmi:id="TransactionService"> | Parameters for Transaction Manager logs | server-cfg.xml | Need Not Be Migrated | |
| <traceService xmi:id="TraceServiceConfig"> | Trace service | server-cfg.xml | Cannot Be Migrated | |
| <namingServiceSettings xmi:id="NamingServiceProvider"> | Name service settings | server-cfg.xml | Need Not Be Migrated | |
| <security xmi:id="Security"> | Security | server-cfg.xml | Should Not Be Migrated | |
| <jvmSettings> | JVM settings | server-cfg.xml | Need Not Be Migrated | |
| <performanceMonitoring> | Performance settings | server-cfg.xml | Should Not Be Migrated | |
| <objectLevelTraceSettings> | Object level tracing | server-cfg.xml | Need Not Be Migrated | |
| <sessionManager> | Session management | server-cfg.xml | Should Not Be Migrated | |
| <tuningParams> | Tuning settings | server-cfg.xml | Should Not Be Migrated | |
| <installedApps> | Installed applications on the application server | server-cfg.xml | Need Not Be Migrated | |
| logging.properties file | Logging Parameters | logging.properties | Need Not Be Migrated | |
| <entries symbolicName="APP_INSTALL"> | Application server root directory | server-cfg.xml | Need Not Be Migrated | |
| <entries symbolicName="LOG_ROOT"> | Log file root directory | server-cfg.xml | Need Not Be Migrated | |
| <entries symbolicName="TRANLOG_ROOT"> | Transaction root directory | server-cfg.xml | Need Not Be Migrated | |
| <entries symbolicName="WAS_ROOT"> | Server root | server-cfg.xml | Need Not Be Migrated | |
| <entries symbolicName="JAVA_HOME"> | Java Home | server-cfg.xml | Need Not Be Migrated | |
| <Log name=""> | Log File Name | plugin-cfg.xml | Cannot Be Migrated | |
| <Transport> | ServerGroup | plugin-cfg.xml | Cannot Be Migrated | |
| <VirtualHostGroup> | Virtual Host group | plugin-cfg.xml | Cannot Be Migrated | |
| <UriGroup> | URI Group | plugin-cfg.xml | Cannot Be Migrated | |
| <Route> | Route | plugin-cfg.xml | Cannot Be Migrated |
| Parameter Name | Item Description | File | Migration Resolution | |
|---|---|---|---|---|
| weblogic.password.system | System user ID and password | weblogic.properties | Need Not Be Migrated | |
| weblogic.httpd.enable =booleanValue | To enable HTTP Server | weblogic.properties | Cannot Be Migrated | |
| weblogic.cluster.ClusterRelatedProperties | Configuring a cluster | weblogic.properties | Should Not Be Migrated | |
| weblogic.home =WebLogic installation directory | WebLogic home | weblogic.properties | Need Not Be Migrated | |
| weblogic.password.username =password weblogic.security.group.groupname =usernames | Setting up users and groups | weblogic.properties | Should Not Be Migrated | |
| weblogic.system.listenPort =integer | Setting up WebLogic's listen port | weblogic.properties | Need Not Be Migrated | |
| weblogic.system.bindAddr =IPaddress or hostname | Setting up multihoming | weblogic.properties | Cannot Be Migrated | |
| weblogic.system.maxLogFileSize =sizeOfFileInKÂ | Configuring the log file | weblogic.properties | Cannot Be Migrated | |
| weblogic.administrator.ContactDetails | Identifying the administrator | weblogic.properties | Cannot Be Migrated | |
| weblogic.system.executeThreadCount =integer | Performance-related properties | weblogic.properties | Migrated | |
| weblogic.system.startupClass(shutdownClass). virtualName =fullPackageName | Registering startup and shutdown classes | weblogic.properties | Migrated | |
| weblogic.system.disableWeblogicClassPath =boolean | Disabling dynamic classloading | weblogic.properties | Cannot Be Migrated | |
| weblogic.httpd.webApp.context =WebAppLocation | Deploying web applications on WebLogic - Support via Ant build script generation | weblogic.properties | Indirect Migration | |
| weblogic.httpd.enableLogFile =boolean | Enabling the access log | weblogic.properties | Need Not Be Migrated | |
| weblogic.httpd.enableEvents =boolean | Tracking HTTPD requests with events | weblogic.properties | Cannot Be Migrated | |
| weblogic.httpd.register.virtualName =fullPackageName | Registering the WebLogic Servlets | weblogic.properties | Cannot Be Migrated | |
| weblogic.httpd.documentRoot =path to directory | Setting up the document root | weblogic.properties | Need Not Be Migrated | |
| weblogic.httpd.mimeType.standardMIMEType =extension | Setting up standard MIME types | weblogic.properties | Cannot Be Migrated | |
| weblogic.httpd.register.virtualName =fullPackageName | Registering user-written Servlets | weblogic.properties | Cannot Be Migrated | |
| weblogic.httpd.initargs.virtualName =nameValuePairs | Setting initialization arguments for user-written Servlets | weblogic.properties | Cannot Be Migrated | |
| weblogic.httpd.postTimeoutSecs =integer | Setting the timeout value for reading HTTP POST data | weblogic.properties | Cannot Be Migrated | |
| weblogic.httpd.errorPage.number =URL | Configuring HTTP error pages | weblogic.properties | Cannot Be Migrated | |
| weblogic.httpd.servlet.lowercaseExtension | Controlling Case Sensitivity | weblogic.properties | Cannot Be Migrated | |
| weblogic.httpd.register.*.jhtml =args | Setting up WebLogic JHTML | weblogic.properties | Cannot Be Migrated | |
| weblogic.httpd.register.*.jsp =args | Setting up WebLogic JSP | weblogic.properties | Cannot Be Migrated | |
| weblogic.httpd.register.cgi-bin | Setting up CGI | weblogic.properties | Cannot Be Migrated | |
| weblogic.httpd.session. SessionRelatedProperties | HTTP session tracking (WebLogic HTTP Servlets) | weblogic.properties | Cannot Be Migrated | |
| weblogic.httpd.defaultServlets =virtualName | Setting a default Servlets | weblogic.properties | Cannot Be Migrated | |
| weblogic.httpd.authRealmName =string | Setting an authentication realm name | weblogic.properties | Cannot Be Migrated | |
| weblogic.httpd.register.proxy | Setting up WebLogic to proxy requests | weblogic.properties | Cannot Be Migrated | |
| weblogic.httpd.servlet.classpath =path | Using the Servlets classpath | weblogic.properties | Cannot Be Migrated | |
| weblogic.httpd.http.keepAliveSecs =integer | Configuring persistent HTTP connections | weblogic.properties | Cannot Be Migrated | |
| weblogic.httpd.tunneling.TunnelingProperties =integer | HTTP Tunneling properties | weblogic.properties | Cannot Be Migrated | |
| weblogic.system.enableReverseDNSLookups =boolean | Tracking client use with WebLogic Events | weblogic.properties | Need Not Be Migrated | |
| weblogic.login.readTimeoutMillis =integer | Setting client timeout | weblogic.properties | Cannot Be Migrated | |
| weblogic.io.fileSystem.virtualName =fullpath | Client read/write access (WebLogic File services) | weblogic.properties | Cannot Be Migrated | |
| weblogic.jms.connectionPool =args | WebLogic JMS | weblogic.properties | Need Not Be Migrated | |
| weblogic.jndi.transportableObjectFactories | WebLogic JNDI | weblogic.properties | Need Not Be Migrated | |
| weblogic.system.startupClass.name =packageName | Remote invocation (WebLogic RMI services) | weblogic.properties | Need Not Be Migrated | |
| weblogic.iiop.user =userIdentity | RMI over IIOP (WebLogic RMI over IIOP services) | weblogic.properties | Need Not Be Migrated | |
| weblogic.allow.permission.ACLname | ACLs in the default WebLogic realm (WebLogic ACLs) | weblogic.properties | Cannot Be Migrated | |
| weblogic.security.urlAclFile =userlist | Setting ACLs on URLs | weblogic.properties | Cannot Be Migrated | |
| weblogic.security.SSLRelatedProperties | Secure communications via SSL (WebLogic SSL) | weblogic.properties | Cannot Be Migrated | |
| weblogic.jdbc.JDBCRelatedProperties | Logging JDBC messages (WebLogic/JDBC) | weblogic.properties | Cannot Be Migrated | |
| weblogic.jdbc.connectionPool.virtualName =args | JDBC connection pools (WebLogic/JDBC) | weblogic.properties | Migrated. | |
| weblogic.jdbc.DataSource.jdbc.virtualName =poolName | JDBC Datasource | weblogic.properties | Migrated. | |
| weblogic.ejb.deploy =fullPathName | Enterprise JavaBeans (WebLogic EJB) | weblogic.properties | Need Not Be Migrated | |
| weblogic.zac.ZACRelatedProperties | Zero Administration Client (ZAC) | weblogic.properties | Cannot Be Migrated | |
| PATHS | Setting Classpath | setEnv.sh | Need Not Be Migrated | |
| PATHS | Setting Application Server home directory | setEnv.sh | Need Not Be Migrated | |
| PATHS | Setting Java Home | startWeblogic.sh | Need Not Be Migrated | |
| PATHS | Setting classpath | startWeblogic.sh | Need Not Be Migrated | |
| PATHS | Setting and starting JRE | startWeblogic.sh | Need Not Be Migrated |
| Parameter Name | Item Description | File | Migration Resolution | |
|---|---|---|---|---|
| Server | System-specific information | config.xml | Need Not Be Migrated | |
| CustomRealm | Setting an custom realm | config.xml | Cannot Be Migrated | |
| JDBCDataSource | JDBC DataSource | config.xml | Migrated | |
| StartupClass | Registering startup classes | config.xml | Migrated | |
| ShutdownClass | Registering shutdown classes | config.xml | Migrated | |
| JDBCConnectionPool | JDBC connection pools (WebLogic/JDBC) | config.xml | Migrated | |
| SNMPAgent | Configuring SNMP settings | config.xml | Cannot Be Migrated | |
| Application | Specific application (EAR, WAR) settings | config.xml | Cannot Be Migrated |
| Parameter Name | Item Description | File | Migration Resolution | |
|---|---|---|---|---|
| JDBCDataSource | JDBC DataSource | *-service.xml | Migrated | |
| JDBCConnectionPool | JDBC connection pools | *-service.xml | Migrated | |
| DriverType | Database Driver Names with associated class and classpath | *-service.xml | Migrated | |
| BootstrapEditors | Property Editors | *-service.xml | Cannot Be Migrated | |
| Properties | System Properties | *-service.xml | Cannot Be Migrated | |
| ConfigurationURL | Log4j Initialization | *-service.xml | Cannot Be Migrated | |
| DownloadServerClasses | Class Loading | *-service.xml | Cannot Be Migrated |
| Parameter Name | Item Description | File | Migration Resolution | |
|---|---|---|---|---|
| Admin | System specific Information | Registry | Need Not Be Migrated | |
| DataSource | JDBC DataSource | Registry | Migrated | |
| CCS0 | Various configuration settings | Registry | Cannot Be Migrated | |
| IASAT | Setting Sun ONE Application Server Administration Tool settings | Registry | Cannot Be Migrated | |
| LOGGING | Configuring authentication settings | Registry | Cannot Be Migrated | |
| Deployment | Setting JAR path | Registry | Need Not Be Migrated | |
| J2EE-Module | Setting custom settings | Registry | Cannot Be Migrated | |
| J2EE-Application | Specific application (EAR, WAR) settings | Registry | Cannot Be Migrated |
| Parameter Name | Item Description | File | Migration Resolution | |
|---|---|---|---|---|
| jdbcDataSource | JDBC DataSource | resource.properties | Migrated | |
| jdbcXADataSource | XA (Transaction Managed) DataSource | resource.properties | Cannot Be Migrated | |
| jmsCnxFactory | JMS settings | resource.properties | Cannot Be Migrated | |
| jmsDestination | JMS settings | resource.properties | Cannot Be Migrated |
| Parameter Name | Item Description | File | Migration Resolution | |
|---|---|---|---|---|
| jdbc-resource | JDBC DataSource | server-config.xml | Migrated | |
| jms-resource | JMS settings | server-config.xml | Migrated | |
| jdbc-connection-pool | JDBC connection pools | server-config.xml | Migrated | |
| connector-resource | Connector Resources | server-config.xml | Cannot Be Migrated | |
| applications | Specific application (EAR, WAR) settings | server-config.xml | Cannot Be Migrated |
The Migration Tool migrates the application server-specific DDs from the source application server to the Application Server.
The following WebSphere-specific DD files are supported:
The following WebLogic specific DD files are supported:
The following WebLogic specific DD files are supported:
The following RI specific DD files are supported:
The following RI specific DD files are supported:
The following JBoss specific DD files are supported:
| Extension Category | Custom JSP Tag | Coverage | |
|---|---|---|---|
| Tags for Database access | <tsx:dbconnect> | Supported | |
| Tags for Database access | <tsx:passwd> | Supported | |
| Tags for Database access | <tsx:dbquery> | Supported | |
| Tags for Database access | <tsx:dbmodify> | Supported | |
| Tags for Database access | <tsx:userid> | Supported | |
| Tags for variable data | <tsx:repeat> | Supported | |
| Tags for variable data | <tsx:getProperty> | Partially supported, database operations supported, beans operations unsupported |
| Extension Category | Custom JSP Tag | Coverage | |
|---|---|---|---|
| Caching JSP output | <wl:cache> | Partially supported, implements a no-operation | |
| Parameter based flow control | <wl:process> | Supported | |
| Loop construct | <wl:repeat> | Supported |
The following custom JSP tags bundled with Sun ONE Application Server 6.5 are fully supported.
| Extension Category | Custom JSP Tag | Coverage | |
|---|---|---|---|
| Parameter | <ias65:getParameter> | Supported | |
| Parameter | <ias65:set> | Supported | |
| Parameter | <ias65:get> | Supported |
All the custom JSP tags bundled with WLS 6.1 are fully supported, except <wl:prefetch> and <wl:beanparam>.
| Extension Category | Custom JSP Tag | Coverage | |
|---|---|---|---|
| Caching JSP output | <wl:cache> | Partially Supported, does not implement cluster scope and administration of cache. | |
| Tag for input validation | <wl:summary> | Supported | |
| Tag for input validation | <wl:form> | Supported | |
| Tag for input validation | <wl:validator> | Supported | |
| Tag for database | <wl:query> | Supported | |
| Encode tag | <wl:encode> | Supported | |
| Anchor tag | <wl:formanchor> | Supported | |
| No output tag | <wl:nooutput> | Supported | |
| Include tag | <wl:include> | Supported |
This version of the Migration Tool supports only a selected set of proprietary APIs.Table 6-8 Supported Proprietary APIs for WAS 4.0
| Package | Coverage | |
|---|---|---|
| com.ibm.websphere.advanced.cm.factory | Supported | |
| com.ibm.websphere.servlet.session | Supported | |
| com.ibm.websphere.servlet.filter | Supported | |
| com.ibm.websphere.servlet.cache | Supported, except for two interfaces CacheEntry and ServletsCacheRequest | |
| com.ibm.websphere.servlet.error | Supported | |
| com.ibm.websphere.servlet.response | Supported | |
| com.ibm.websphere.servlet.request | Supported | |
| com.ibm.websphere.exception | Supported |
| Package | Coverage | |
|---|---|---|
| weblogic.common (t3 services) | Only Timer and Scheduler services supported | |
| weblogic.time.common | Supported | |
| weblogic.db.jdbc.oracle | Supported | |
| weblogic.rmi | Supported | |
| weblogic.rmi.dgc | Supported | |
| weblogic.rmi.registry | Supported | |
| weblogic.rmi.Remote | Supported | |
| weblogic.rmi.server | Supported | |
| weblogic.db.jdbc | Supported, except for EventFulRecord and EventFulTableDataSet classes | |
| weblogic.jndi | Only WLInitialContextFactory supported for supporting Times and Scheduler Services |
| Package | Coverage | |
|---|---|---|
| weblogic.common (t3 services) | Only Timer and Scheduler services supported | |
| weblogic.rmi | Supported | |
| weblogic.rmi.dgc | Supported | |
| weblogic.rmi.registry | Supported | |
| weblogic.rmi.Remote | Supported | |
| weblogic.rmi.server | Supported | |
| weblogic.db.jdbc | Supported, except for Column, DataSet, QueryDataSet, Schema, TableDataSet, EventFulRecord and EventFulTableDataSet classes | |
| weblogic.jndi | Only WLInitialContextFactory supported for supporting Times and Scheduler Services |
The Migration Tool can also be extended to support proprietary APIs that are not already supported for the above mentioned appservers (refer to Broken Link (Target ID: GDYRX)).
This version of the Migration Tool supports IDE integration for
The Migration Tool automatically generates Ant-based build scripts that can be used to compile and package the migrated application. Ant is an open source Java project used by many companies to simplify cross-platform software development. The Migration Tool generates three types of scripts for Solaris and Windows:
If the input application contains .class files only, then the generated build scripts do not do any compilation, they only package the class files back with the migrated DDs. If the input application contains Java source files along with class files, the generated build scripts invoke the javac Ant target and package only the compiled classes, not the orignal classes. The Limitations section discusses this requirement in greater detail.
The Migration Tool generates debug and user logging information. These logs, found in the <INSTALL_DIR>\asmt\logsdirectory, are called ASMTDebug.log and ASMTUser.log. The ASMTDebug.log file contains debugging information generated during migration. A developer may find this information useful for tracking the migration flow, since the log is designed to enable tracing of errors and other unexpected behavior that may result in bugs. The log contains migration implementation details indicating how things were done during migration. Although information in this log may not be understood by users, it is imperative that users provide this log when reporting bugs or other unexpected behavior. The ASMTUser.log is a heavily-filtered form of the ASMTDebug.log file. This log, which contains information specific to areas of migration that interest the user, indicates what things were done during migration. For example, when migrating deployment descriptors, the Migration Tool may find that certain deployment descriptors do not adhere to their DTDs. Since in these cases the Migration Tool modifies the deployment descriptors as required, it uses the ASMTUser.log file to notify the user about the modified files. In addition to notifications, this log contains information about the generation of build scripts, automatic generation of the build process, brief descriptions of exceptions encountered, and so forth. You need to provide this log when you report bugs or other unexpected behavior.