Bug 779956 (SOA-2316)

Summary: Schema tool fails with IBM 1.6 JDK
Product: [JBoss] JBoss Enterprise SOA Platform 5 Reporter: Len DiMaggio <ldimaggi>
Component: Tooling, Build ProcessAssignee: Julian Coleman <jcoleman>
Status: CLOSED NEXTRELEASE QA Contact:
Severity: urgent Docs Contact:
Priority: urgent    
Version: 5.1.0.ER1   
Target Milestone: ---   
Target Release: 5.1.0.ER2   
Hardware: Unspecified   
OS: Unspecified   
URL: http://jira.jboss.org/jira/browse/SOA-2316
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-02-25 05:56:56 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description Len DiMaggio 2010-09-13 20:48:52 UTC
project_key: SOA

The error is:

Buildfile: build.xml

execute:
   [groovy] JBoss SOA Platform Database Configuration Script
   [groovy] ------------------------------------------------
   [groovy]  
   [groovy] This script is used to configure the SOA platform and all its
   [groovy] constituent components against a new RDBMS.  Deployment scripts
   [groovy] are currently available for the following databases:
   [groovy]   DB2 9.7, MS SQL 2005, MS SQL 2008, MySQL 5.0, MySQL 5.1,
   [groovy]   Oracle 10g, Oracle 11g, Oracle 11RAC, PostgresSQL 8.2.4, PostgresSQL 8.3.7
   [groovy] 
   [groovy] ** Warnings **
   [groovy]   This script may not work correctly if you have made manual
   [groovy]   changes to the database configuration.
   [groovy]   This script is only intended to do initial configuration.
   [groovy]   It is not intended to be used multiple times.
   [groovy] 
   [groovy] Which server configuration are you changing?
   [groovy]   all, production, production_orig, standard, web,
   [groovy]   minimal, default [default]:
production
   [groovy] Using profile directory:
   [groovy]   /jboss/local/51_ER1_temp/jboss-soa-p.5/jboss-as/server/production/
   [groovy] 
   [groovy] Profile is clustered
   [groovy] 
   [groovy] 
   [groovy] Please enter the database you wish to configure:
   [groovy]   db2-97, mssql2005, mssql2008, mysql50, mysql51,
   [groovy]   oracle10g, oracle11g, oracle11RAC, postgresql824, postgresql837
mysql
   [groovy] ** Error: unknown database: mysql
   [groovy] Please enter the database you wish to configure:
   [groovy]   db2-97, mssql2005, mssql2008, mysql50, mysql51,
   [groovy]   oracle10g, oracle11g, oracle11RAC, postgresql824, postgresql837
mysql50

BUILD FAILED
/jboss/local/51_ER1_temp/jboss-soa-p.5/jboss-as/tools/schema/build.xml:19: groovy.lang.MissingPropertyException: Exception evaluating property 'size' for java.util.ArrayList, Reason: groovy.lang.MissingPropertyException: No such property: size for class: java.io.File

Total time: 13 seconds

Comment 1 Len DiMaggio 2010-09-13 20:50:02 UTC
See:  http://jira.codehaus.org/browse/GROOVY-4094

'...On Sun JVM, the ArrayList class has a private property called size, that's why list.size returns you the value of that property.

On IBM JVM, the ArrayList class does not have any property called size, in that case groovy behavior is to apply the property on each member of the collection and collect values of all member.property in a collection and return. So, it now expects "size" property on each collection member, but that also fails because String class also does not have any size property.

If you are interested in getting the size of the list then list.size is not the groovy-way to get it anyway - it is list.size().



Comment 2 Len DiMaggio 2010-09-14 01:32:24 UTC
To fix this - change line 387 in build.xml from:

            if (db_driver.size == 0) {

to

            if (db_driver.size() == 0) {




Comment 3 Julian Coleman 2010-09-14 09:17:33 UTC
Fixed with revision 6558 of:
  build-tools/resource/schema-tool/build.xml

Commit message:
  SOA-2316
  Use list.size(), not list.size.
  From Len DiMaggio.


Comment 4 Len DiMaggio 2010-10-04 15:32:05 UTC
Verified fixed in ER2 build.

Comment 5 David Le Sage 2011-02-25 05:56:34 UTC
Temporarily reopening to update release note info.

Comment 6 David Le Sage 2011-02-25 05:56:47 UTC
Release Notes Docs Status: Added: Not Required
Writer: Added: dlesage