Release notes

Compuware OptimalJ 4.3.00_SP1

May 28, 2007


General Information
Last minute remarks
Additional Notes
Table of resolved bugs
Contacting Compuware Customer Support

General Information

OptimalJ release4.3.00_SP1
This release includes fixes made in4.3.00_SP1
Release dateMay 28, 2007
Supported Java versionSUN Java SE Development Kit 5.0 / 6.0
Supported Development platformsWindows2000, Windows/XP, Linux RedHat Enterprise Edition 4.0
back to top

Last minute remarks

Java SE 6.0 issues in OptimalJ Architecture Edition

Issue

OptimalJ 4.3 integrates with Eclipse 3.2.x. This release of Eclipse was released into general availability before Java SE 6 had been released. Eclipse announces support for Java 6 SE in combination with Eclipse 3.2.1 on their website.

During testing of OptimalJ Architecture Edition 4.3 built on Eclipse in combination with Java SE 6, we encountered an issue that is specific to this combination. The problem that occurred was a compilation error on java constructs used in the AE code, that are specific to Java JDK 1.4 and above.

After checking the Eclipse preferences, it turned out that Eclipse did notice that a Java SE 6 was used, but switched one of the compiler options to default to “old, pre JDK 1.4, behavior”. When switching this preference manually back to Java SE 5 or 6 behavior, all works well.

Resolution

The resolution is to set the Compiler Compliance Level to "5.0" or "6.0". (Windows->Preferences->Java->Compiler).

More information

For more information, please see the description of bug 35064 on this page: http://frontline.compuware.com/javacentral/members/bugs/default.asp

back to top

Additional Notes

Upgrading to a Maintenance Release

OptimalJ maintenance releases (such as service packs or releases with version number of the pattern #.#.0#) provide updates to generated code and the patterns applied to models. For more information, see the below table.

To take advantage of these changes, you must follow this procedure for each OptimalJ project when upgrading to the maintenance release:

  1. Open the project in the OptimalJ maintenance release, and choose Model > Update All Models.
  2. After Update All Models has completed, choose Model > Generate All > Code.

Version Control Systems

The MCR files used to map generated files to model elements are not stored in version control systems. These MCR files are required when upgrading to a maintenance release. Before upgrading to a maintenance release, you must restore these files by completing steps 1 and 2 in the old version of OptimalJ (Updating all models ensures that all models are synchronized, while generating code creates the MCR files). Then install the maintenance release and follow the procedure described above.

back to top

Table of resolved bugs

Bug number Severity Summary Reported version Fix version Description Release notes
35666 2-Major DAO.Finders: profiling on supertype attributes leads to model check errors GA 3.3.00 4.3.00_SP1 Creating finders that profile on a supertype attribute is
not supported. Such scenarious lead to model check errors.
Consider the following model:

Person 1--* Animal
-name
  ^           ^
  |           |
Child  1--* Turtle
-age

In the architectures where DataAccessComponents are used
for persistance (AA_SSD, AA_SBD, AA_OSD, AA_OBD), we can
not create the following queries:
findTurtleByChildAge, findTurtleByChildName,
findTurtleByChildAgeAndName, findTurtleByPersonName,
findTurtleByAnimalName
DAO templates are enhaced to support querying on
inherited attributes:
- query over multiple level inheritance
- query on multiple inherited attributes
- query on inherited references to the single side
- query on inherited structs in structs
- query over references while the primary key consists of
more than 1 attribute
35685 2-Major store fails of composite record with NULL value given for NOT NULL column 4.2.ITB1 4.3.00_SP1 In a 2 tier application with architecture AA_SBD it is
not possible to store a composite record with values for
ClassJ in the association: classJ 0..1 --<> 1 classK.
The reason is that the foreign key field(s) of the part
key is/are not set when the part is associated to a
composite in case where Domain Unique Constraints are
used.
The Update Objects code is modified so that when
creating an associated record, the Foreign Key attributes
are automatically set to the value of the parent object.
Also when adding / setting an existing record to a parent
object, the FK is modified to keep in sync.
The fix is extended for all mandatory single multiplicity
associations.
36255 2-Major Query Action - Reload doesn't work second time if more than one query operation is defined 4.3.ITB1 4.3.00_SP1 When connecting a query page to an edit flow (e.g. in a
WebMaintenanceComponent), reload flag ensures that the
data is retrieved on return. Edit flow can pass this as
request parameter.
However, when after a query and after editing one record
another record is edited, on return the reload doesn't
work. This is caused by the fact that after first
reload, the QueryComponent loses it's query state and
can not perform another query.
This problem is now resolved. The state is restored and
stored properly after each reload.
36341 2-Major SSH architecture gives compilation errors when using abstract classes 4.3.ITB1 4.3.00_SP1 Compilation errors occur for a SessionBean or Bloc model
that use EntityClasses (Hibernate) if the Domain model
contains abstract classes.
Fixed the compilation errors.
36343 2-Major NPE in BFFromBusinessLogic.java in 4.3 4.3.ITB1 4.3.00_SP1 If the Options node has been removed from the Technology
Pattern node which copies Businesslogic to BusinessFacade,
subsequent Update All Model actions will result in a
NullPointerException.
This bug has been fixed.
36359 2-Major Setting key to null after setting it to a value gives NPE. 4.3.ITB1 4.3.00_SP1 DataObjects have a setter for the key of by reference
singlemultiplicity associations. In case the (key)
parameter is null, an NPE is thrown. The cause is that the
setter attempts to execute a deepCopy() on the key. The
fix is not to do that in case the parameter is null, but
just to set the new value to null.
 
34520 3-Normal Migration of export with webservices fails 4.2.00_SP1 4.3.00_SP1 When copying a DBMS model with Views to the Domain model
an exception can occur when generating the sql scripts:

MESSAGE Error in template
com.compuware.alturadev.dbms.ipattern.DATAMODULE
while generating code for
onezone.application.dbms.onezoneDbms [DBMSModule]
!STACK 0
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
Method)
...
Caused by: java.lang.ClassCastException:
org.omg.cwm.resource.Implrelational.ViewImpl
at
com.compuware.alturadev.dbms.utils.DDLFormatUtils.orderBas
eTables
(DDLFormatUtils.java:640)
The ClassCastException has been fixed.
35966 3-Normal Do not generate Empty Guarded Blocks 4.3.ITB1 4.3.00_SP1 Excessive whitespace in generated code (ex. in POJO
setAttributeInitialValue method). For each empty guarded
block OJ generates two white lines, one containing the
guarded comment (//GEN-GUARD ..) and one white line.
Empty guarded blocks serve no purpose and shouldn't be
generated. They do not have content, and they are ignored
when regenerating a file because they are guarded.
Empty guarded blocks are removed from the output. To
address the introduced incompatibility, the empty guarded
block is not skiped if the block is already generated
previously.
36136 3-Normal Team -> share Project -> OptimalJ CVS multiproject does not properly reports errors 4.2.ITB1 4.3.00_SP1 The "OptimalJ CVS multiproject" sharing wizard does not
properly report errors; when the user selects a cvs
module to share a project in, for which he does not have
the proper access rights, the wizard should report the
error, but instead switches to the location panel of the
sharing wizard.
 
36194 3-Normal Maintenance component in lightweight has wrong elements. 4.3.ITB1 4.3.00_SP1 For a SOH architecture an undocumented model check error
is encountered when a Web maintenance component is added
using the wizard. The newly added component is flagged
with a badge indicating a model check error but the
problem is not listed in the Problems tab.
Furthermore, lightweight components have page iterator
support turned on by default, but the maintenance
component doesn't use a page iterator, so the component
is created in LW architecture, an error message is
thrown, saying that the component does not support page
iteration.
The pattern now recognizes the contenttype and
WebMaintenance components can be connected with standard
WebComponents in LW.
Also, the WebMaintenance components are created with
supportsPageIterator set to false, regardless of the
chosen architecture.
36257 3-Normal DomainView wizard does not show in overview selected Attributes over a Reference of a super type. 4.3.ITB1 4.3.00_SP1   The overview for showing selected Attributes over
References of a super type of a DomainView in the
DomainView wizards itself and in the
DomainMaintenanceService and ServiceQuery wizard is fixed.
36274 3-Normal QueryComponents - Paging  "Last page" functionality not supported 4.3.ITB1 4.3.00_SP1 Query Components handle paging on the web-tier. We
provide automatic first, previous and next page paging
functionaltiy but not Last page paging functionality.
Added "Last page" paging functionality. This is only
possible for the WebQueryComponents and not for other
WEBComponents because of difference in how the data is
retrieved.
36276 3-Normal RENDERWEBBUTTON is not defined as a public joinpoint 4.3.ITB1 4.3.00_SP1 The RENDERWEBBUTTON is defined as a joinpoint, but it was
not defined as public, therefore it couldn't be used.
The joinpoint is now made public.
36285 3-Normal Apply architecture wizard sets initial selection often wrong 4.2.ITB1 4.3.00_SP1 When multiple Modeling Projects are opened in OptimalJ.
The Apply Application Architecture more often then not
chooses the wrong default for the target package of the
application architecture. This can be annoying.
In 4.3.00_SP1 the default selected (parent of-) target
package will be correct in most cases.
36286 3-Normal Closing OJ with open "problem view" and starting it again leads to  an error 4.3.ITB1 4.3.00_SP1 NullPointerException occurs when restarting OptimalJ with
a Problems editor open.
Issue is fixed.
36325 3-Normal Return value of type List for a BEL results in a compile error. 4.2.ITB1 4.3.00_SP1 When List (DataTypes.java.util.List) or Set
(DataTypes.java.util.Set) is used as the parameter type of
a Business Expression, an incorrect import statement is
generated for the Business Expression Library class.
Issue is resolved for both List and Set data types.
36327 3-Normal Compile errors for 'language option' in BEL 4.2.ITB1 4.3.00_SP1 A comiplation error occurs if there is an expression in a
business expression library with unsupported language and
a body with multiple lines.

The body is added verbatim to a file generated from the
business expression library. The body is commented out
with a single line comment.
A comiplation error occurs if there is an expression in a
business expression library with unsupported language and
a body with multiple lines.

The body is added verbatim to a file generated from the
business expression library. The body is commented out
with a single line comment.

The problem is fixed by using multi-line comments around
the body.
Total number of records: 17
back to top

Contacting Compuware Customer Support

Compuware Customer Support can assist you with all of your technical problems, from installation to troubleshooting.

Customer Support Address

USA Emea
Compuware Corporation
One Campus Martius
Detroit, Michigan 48226
USA

(800) 538-7822

Compuware Europe BV
Hoogoorddreef 5
1101 BA Amsterdam Z-O
The Netherlands

Toll Free +800 787 767 88
Local +31 20 3118850

Frontline support Web site

For technical assistance with Compuware products, log onto Compuware's Frontline support Web site. The first time you access Frontline, you are required to register and obtain a password.

Compuware Corporate Web Site

Refer to Compuware's corporate Web site at http://www.compuware.com for information about Compuware technical support policies and problem resolution process.

back to top


Generated at: Thu May 10 19:49:33 CEST 2007    (Build: 44012)

© 2008 Compuware Corporation. All rights reserved. Unpublished rights reserved under the Copyright Laws of the United States.