Release notes

Release notes for OptimalJ 4.2.00_SP1


This release includes fixes made in : 4.2.00_SP1

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.


Table of resolved bugs

Bug number Severity Summary Reported version Fix version Description Release notes
34015 1-Critical The use of a non-incremental Web copier causes problems for team development 4.2.ITB1 4.2.00_SP1 - Usage of the new pattern (new development) in conjunction
with the Integrated Team Development can result in
unwanted results.
- Customers working with applications migrated from 4.1
will not face this issue because they will use the
OptimalJ 4.1 pattern which does not have this issue.

EXPLANATION: during a model transformation (from domain to
the web model) the web pages are replaced rather than
(incrementally) updated when using the default OptimalJ 42
settings. When users synchronize with the version control
system they will be confronted with model merge conflicts
that should be resolved automatically.
The user will then need to manually correct the resulting
web page element which will contain duplicate elements.
This will only affect customers who:
a. Use the new default Web pattern, and
b. Use integrated support for Team Development

- Users who have migrated their OptimalJ4.1 application
will not be affected, since a migrated application does
not use the new web pattern.
We recommend customers using the new web pattern (new
development) with the default OptimalJ 4.2 settings not to
use Integrated Team Development until the fix for bug
34015 is available
34119 1-Critical Rename domain process and restarting OptimalJ results in corrupted model 4.1.ITB1 4.2.00_SP1 Rename domain process and restarting OptimalJ results in
corrupted model
Fixed
33688 2-Major TeamDev (Eclipse/CVS) - Multi project import hangs sometimes if using a remote CVS repository 4.2.ITB1 4.2.00_SP1 TeamDev (Eclipse/CVS) - Multi-project import hangs
sometimes if using a remote CVS repository
Fixed
33918 2-Major Web code instantiate code generated for abstract classes. 4.2.ITB1 4.2.00_SP1 the cause of the symptom is that web code to create a new
instance was generated for an abstract class, for which
never a new instance (other than of its subclasses) should
be generated.
Fixed by making that code generation conditional, so that
it only happens if the class is not abstract.
33951 2-Major Preview Web Page does not work 4.2.ITB1 4.2.00_SP1 Clicking "Preview Webpage" option results in error message
to Console when using Architecture: JSP/Struts
POJO/Hibernate.
Fixed
34013 2-Major EAR files of used Hibernate subsystems are not always self-contained 4.2.ITB1 4.2.00_SP1 Deploying subsystems does not work in eclipse, classes
cannot be found
Adjusted IDE independent ModuleInfo classes for EJB and
WEB
modules to take using subsystems into account, and change
the launching of the eardef compiler on eclipse.
34022 2-Major Runtime errors for generated WebFlows because of the same name used for WebPAge and WebAction. 4.2.ITB1 4.2.00_SP1 For a DomainService Operation a Flow is Generated together
with a WebPage and WebAction. For the
SinglePageMaintenance Component the generated Page has
name <OperationName> instead of "<OperationName>Page".
Because of this the generated code for the Page or the
WebAction gets lost and on runtime user gets Blank pages.
Fixed
34043 2-Major Enum in key gives NPE. 4.1.00_SP6 4.2.00_SP1 When the key of an object contains an enumeration type,
the JSP does not correctly send a selected object in a
list. It sends the value whereas the receiving Select
action expects the name. This becomes apparent in the
Select action.
Fixed
34089 2-Major NetBeans multilanguage import fails 4.2.ITB1 4.2.00_SP1 In NetBeans multilanguage UML import fails Fixed by bundling xalan 2.6.0 instead of 2.5.2.
34102 2-Major Changes to domain attribute constraints (regular expressions or ranges) via the wizard are not stored in the model 4.2.ITB1 4.2.00_SP1 While using the wizard to edit the values of attribute-
constraints (regular expressions or ranges), OJ will not
catch the new values but keep persist to have the
previous values.
 
34114 2-Major NPE when generating code after importing EJB 4.2.ITB1 4.2.00_SP1 After importing a legacy EJB and then generating code a
NPE occurs.
fixed jarroot resolving in Eclipse based version.
34182 2-Major TeamDev - Model changes no longer persisted after Team->Update OptimalJ Models with a diagram open 4.2.ITB1 4.2.00_SP1 TeamDev - Model changes no longer persisted after "Team-
>Update OptimalJ Models" with a diagram open
 
34210 2-Major properties environmentSupportsManaged* are not described correctly: only generic text exists 4.2.ITB1 4.2.00_SP1   fixed
34217 2-Major New Child menu on TP module displays "bogus" 4.2.ITB1 4.2.00_SP1 When using the the context menu on a technology pattern
module in the software factory model, the menu sometimes
shows "bogus" instead of a list of elements.
Fixed
31167 3-Normal Enhancement requests for "enabled" and "visible" property of web tier 4.0.00_SP6 4.2.00_SP1 Following features should be enhanced:

- "visible" property added to web page elements including
panels. This property would allow run-time hiding of
element the same way as "enabled" property conditionally
disables them.

- Improved Property editor for "enabled" and "visible"
which would allow picking attributes (from different
scopes including request) as property value. Or maybe
even
would allow creation of simple logical expressions for
these properties."
done.
33085 3-Normal Terminology in EntityClass wizard regarding operations unclear 4.2.ITB1 4.2.00_SP1 HTML help text contained a word that is too long for the
wizard panel (HTML viewer) to display
Fixed by adapting HTML helptext.
33121 3-Normal pageiterator buttons duplicated when using scriptlets 4.1.00_SP6 4.2.00_SP1 Web components have property jspTagLib. The default value
is Struts/JSTL and the alternative value is
Struts/Scriptlets. If the latter option is chosen no JSTL
(JavaServer Pages Standard Tag Library) tags (like <c:if
... /> should be generated. Instead the generated code
should use appropriate jsp in order to achieve the
required functionality. Setting the jspTagLib property to
Struts/Scriptlets still generates JSTL code in some jsp
locations.

One resulting problem is the webpanel for the page
iterator in a user defined web component (with code
generation option jspTagLib set to "Struts/Scriptlets")
having a “Prev” and a "Next" button. In the generated jsp
the references <%@ taglib
uri="http://java.sun.com/jstl/core" prefix="c" %>
<%@ taglib uri="http://java.sun.com/jstl/fmt"
prefix="fmt" %>

To the appropriate tag libraries are not present which is
OK. However, the JSTL tags <c:if …./> are still used for
enabling or disabling the “Prev” and “Next” buttons. What
happens in this case is that on runtime the expectation is
that one sees  one “Prev” button and one “Next” button,
either or not disabled. On the actual page however you see
a disabled prev button an enabled prev button a disabled
next button an enabled next button. This is wrong.

Another location where still JSTL tags are generated in
the scriptlet case is alturaTemplate.jsp.
Two "previous" and two "next" buttons are displayed if you
choose Struts/Scriptlets. Reason is that for
enabling/disabling <c:if> are used and the import <%@
taglib uri="http://java.sun.com/jstl/core" prefix="c" %>
is missing.

If you use scriptlets this should only affect the iterator
logic. This means that the <c:forEach> is replaced with
scriptlet code <% for(...) %>. This is mainly because of
performance reasons (which we have to verify again if this
is still the case).

As a solution, we added the import statement.
33613 3-Normal error message is rather cryptic when using Domain Attribute Constraint 4.2.ITB1 4.2.00_SP1 When you entered invalid data according to a Domain
Attribute Constraint , then the error message is rather
cryptic in the architecture J2EE with JSP/Struts, session
beans and POJO on Hibernate , while in the architecture
Lightweight application with JSP/Struts and POJO on
Hibernate a more clear message is given.
Message adapted
33820 3-Normal Data Binding wizard Authorization panel sometimes only shows webButtons 4.2.ITB1 4.2.00_SP1 The data binding wizard Authorization panel sometimes
filters out all widgets apart from WEBButtons, and
displays them with the WEBLabel icon.
Fixed
33949 3-Normal Cannot model constraint on IP Module 4.2.ITB1 4.2.00_SP1 According to OJ Help you should be able to add a
Constraint model element to an IPModule element in the
Software Factory Model. However when you select my
IPModule and choose new, you do not have the option to add
a Constraint.
fixed
33954 3-Normal Some JSPs are generated with invalid tag matching 4.1.00_SP6 4.2.00_SP1 Some JSPs are generated with invalid tag matching.
Specifically, for webComponents based on domainServices
which are based on subtypes have their default browse JSP
created with a <td> without a closing </td>
Fixed
33971 3-Normal enumeration literals need to have char values 4.1.00_SP5 4.2.00_SP1 If you have an enumeration of type "char" the enumeration
literatals need to have char values. '\u0002' would be a
perfectly valid value here, but OptimalJ gives model check
errors in the domain model and in the application common
model. This is because it only checks for the length of
the value.
Fixed by better checking the size of the string (taking
Unicode and special escaped characters into account)
33995 3-Normal in grid, th and td have style="webgridcolumn" - should be class= 4.2.ITB1 4.2.00_SP1 Wrong HTML code is generated for the styleClass property. Fixed
34038 3-Normal Debugging info shown in Output tab when generating code for an AA or TP Module 4.2.ITB1 4.2.00_SP1 If the file is not generated (which is OK in the case of
TP and AA modules) a NetBeans FileObject is accessed that
does not exist. This leads to a CATCHED NPE. This NPE
should NOT be visible for the end-user. It should be
silently ignored.
debuginfo suppressed
34105 3-Normal Model2Code view is continuously refreshed during Update All Models 4.2.ITB1 4.2.00_SP1   Fixed
34118 3-Normal Transient attributes should generate free block in get/set of POJO unspecified 4.2.00_SP1 In order to create a derived property (e.g. totalPrice
that multiplies the quantity with the price of a shopping
cart item) it would be very handy if at least the
get<TransientAttribute> has a free block. Currently it is
guarded, which makes it more difficult to create derived
properties and use them in Web.
Fixed by adding free block.
34133 3-Normal To have icon in UI designer for HTML Importer in 4.2 - Changes needed to Xenon Web Diagrams module and Web Module 4.2.ITB1 4.2.00_SP1 In order to use the HTML-Importer, delivered on Pattern
Plaza, we need to add a button to invoke the importer from
within the UI designer.
Fixed by adding a dynamic button that will appear if the
HTML-Importer is installed.
34206 3-Normal Document Testing and Deployment of Subsystems with DACs / Entity Classes 4.2.ITB1 4.2.00_SP1 Full separation of subsystems at development and
deployment is only supported for EJBs - DACs and entity
classes have limitations that should be documented. (see
also software issue 34013).
documentation implemented.
34229 3-Normal No support for editing oneToOneForeignKeyMapping property 4.2.ITB1 4.2.00_SP1 The 'oneToOneForeignKeyMapping' property in
DBMSFromClassPatternOptions is to allow for correct RDBMS
mappings in the case of one-to-one bidirectional
associations. All non-Hibernate application architectures
require that this property have a value of 'Foreign key on
both sides' while all Hibenate-based architectures will
only work if the property has a value of 'Foreign key on
one side only'. To ensure that the user doesn't
inadvertently change the property's value it has been made
read-only.
Property has been marked read/write again, to facilitate
the documented migration path to using hibernate
persistency.
Total number of records: 29



Generated at: Mon Nov 20 01:55:49 CET 2006