Release Notes - Spring Roo - Version 1.1.0.RC1 - HTML format

Sub-task

  • [ROO-925] - Write RequestFactory caching design doc
  • [ROO-927] - Write RequestFactory batching design doc
  • [ROO-934] - Roo should copy JSR 303 annotations to record interfaces
  • [ROO-939] - Write EditorSupport design doc
  • [ROO-1012] - Implement client side validation (gwt-validation 2.0?)
  • [ROO-1439] - This issue is not fixed in 1.1.0.M3 + GWT 2.1 M3

Bug

  • [ROO-876] - Spring Roo + GWT problem display in Internet Explorer
  • [ROO-879] - Fix unit tests for applications running in the Google App Engine
  • [ROO-887] - Make logging compile out of generated scaffold apps
  • [ROO-1229] - RequestFactoryServlet always throws when debugging with Chrome
  • [ROO-1230] - NPE on resume in AbstractRecordListActivity
  • [ROO-1250] - No uncaught exception handler in scaffold app
  • [ROO-1259] - Password field is displayed as plain-text in the roo-generated app.
  • [ROO-1260] - addon-gwt cannot handle enums or booleans
  • [ROO-1271] - Use a publicly accessible DTD for ApplicationCommon.gwt.xml
  • [ROO-1272] - mojo-addon POM contains a duplicate dependency entry
  • [ROO-1273] - database reverse engineer w/ MySQL and foreign keys across multiple schemas/catalogs
  • [ROO-1282] - Banging on the UI can produce NPEs in DevMode window
  • [ROO-1283] - Missing DynaTableRF sample from GWT
  • [ROO-1284] - After saving Record, blue Box appears on top left cell
  • [ROO-1286] - NPE when setting an invalid number in Amount box
  • [ROO-1287] - ValueListBox showing redundant entries
  • [ROO-1288] - The last (>>) button is disabled in the tabular view even though there is a next page.
  • [ROO-1290] - Save/Cancel buttons are cut off in Safari mobile
  • [ROO-1291] - Mobile column heads are unreadable
  • [ROO-1294] - Handle inner classes as JavaType
  • [ROO-1295] - gwt.request.SetRecord errors on a simple one-to-many mapping with gwt
  • [ROO-1300] - STS and Datanucleus are upset by projects generated by addon-gwt
  • [ROO-1301] - exposeJson missing in RooWebScaffold
  • [ROO-1305] - Constraint reporting is broken in M3
  • [ROO-1307] - Generated code in gwt interface records does not compile
  • [ROO-1320] - /home/hatim/Latest/roo/addon-json/src/main/java/org/springframework/roo/addon/json/JsonCommands.java
  • [ROO-1324] - Editing, creating should not be place changes
  • [ROO-1328] - webmvc-config.xml has errors
  • [ROO-1329] - Expenses sample cannot be imported into STS
  • [ROO-1330] - Expenses sample NPEs at launch
  • [ROO-1331] - Add dependency injection to GWT addon
  • [ROO-1332] - Lose the eval statements in RecordJsoImpl#fromJson and RecordJsoImpl#fromResults
  • [ROO-1334] - Roo does not run under jdk5
  • [ROO-1336] - Entity with float field leads to error in gwt setup
  • [ROO-1338] - Maven dependency error when running Roo app with Google App Engine
  • [ROO-1339] - IdentifierMetadata not correctly handling short and char primitives in generated equals and hashCode methods
  • [ROO-1342] - Stacktrace appeared when starting Roo shell
  • [ROO-1344] - AutomaticProjectUpgradeService gives NPE if another bundle is missing
  • [ROO-1346] - Roo 62697a7 shell thrashing in STS 2.5.0.M3
  • [ROO-1351] - Maven dependency not added to project's pom.xml when the jdbc driver is used for more than one database
  • [ROO-1353] - Stale sha info in Roo shell in STS
  • [ROO-1354] - OSGi jTDS JDBC driver shipped with Roo for MSSQL and Sybase does not work when using DBRE
  • [ROO-1357] - Java keywords are generated for entity type variable names.
  • [ROO-1360] - Selenium error reports are delivered in target/target rather than just in target
  • [ROO-1362] - IllegalAccessException in App Engine with Google Web Toolkit Expenses app
  • [ROO-1366] - DBRE generates incorrect 'mappedBy' name in 1-to-many
  • [ROO-1367] - Missing <buildCommand> element from pom.xml for GAE apps
  • [ROO-1369] - addon-gwt should configure app with a single entity manger per HTTP request
  • [ROO-1370] - Columns of type Short generate ShortRecord class incorrectly.
  • [ROO-1371] - Missing Logging sample from GWT
  • [ROO-1374] - NullPointerException adding a method using JavaParserMethodMetadata.addMethod
  • [ROO-1375] - JavaParserMethodMetadata.addMethod allows to add duplicated methods to a class
  • [ROO-1385] - Exception while creating roo addon
  • [ROO-1387] - ConverterNotFoundException: No converter found
  • [ROO-1388] - Security issue with roo 1.1.0.M3
  • [ROO-1391] - GWT samples/expenses ExpensesMobile.html server error on empty database
  • [ROO-1392] - Edits fail on GWT ExpensesMobile sample
  • [ROO-1393] - Fix addon-creator templates to use new Builders in generated artifacts
  • [ROO-1394] - addon-gwt does not compile
  • [ROO-1400] - PlaceChangeRequesteEvent is misspelled!
  • [ROO-1403] - NPE in GwtMetadata for @RooEntity(versionField = "")
  • [ROO-1404] - Roo source code does not compile with Java 5
  • [ROO-1406] - addon-gwt does not support java.math.BigDecimal and java.lang.Character
  • [ROO-1407] - com.google.gwt.app.place.AbstractProxyListView cannot be resolved
  • [ROO-1409] - DBRE should mark repeated column mapping as non-insertable/non-updatable
  • [ROO-1414] - Roo integration tests should declare @TransactionConfiguration annotation
  • [ROO-1415] - Addon create fails on Windows platform
  • [ROO-1418] - Max size of a string field causing test integration to fail
  • [ROO-1419] - controller command fails with: Properties file not found
  • [ROO-1421] - AspectJ very slow in STSM3 after running DBRE
  • [ROO-1422] - All is*, get* and set* methods on ProxyImpl and ProxyJsoImpl must be renamed
  • [ROO-1423] - DataOnDemand code invalid when @Min and @Max annotations are used on an entity field
  • [ROO-1427] - EntityProxyId equality is not reflective
  • [ROO-1428] - Identifiers with String type leads to failed tests and ui
  • [ROO-1429] - Prefix the "meta-data" fields in the request and response with "!" so that they can't collide with an entity propertyName.
  • [ROO-1434] - Negative long ids and class names with dashes break RequestFactory
  • [ROO-1438] - perform test fail with OneToOne relationship
  • [ROO-1442] - Unchecking Favorite does not update Favorite list
  • [ROO-1448] - NPEs in many cases where ProxyFor and stuff is missing
  • [ROO-1450] - ToString ITDs do not update after DBRE-managed ITDs are changed.
  • [ROO-1451] - roo generated controllers and scaffolding is unable to support non-numeric keys
  • [ROO-1452] - Service methods cannot respond with null value
  • [ROO-1453] - NoSuchMethodException for primitive types on domain object
  • [ROO-1454] - @Instance instance-type mismatch failure mode is bad
  • [ROO-1455] - Rename events and fix firing of events.
  • [ROO-1457] - addon-gwt is putting a boolean isChanged method in each proxy, and those don't work
  • [ROO-1458] - addon-gwt bad UI code gen for boolean
  • [ROO-1459] - create events fired at wrong time
  • [ROO-1460] - multiple checkboxes don't seems to work
  • [ROO-1466] - Project creation throws ConcurrentModificationException (locale dependent issue I think)
  • [ROO-1468] - Does the mobile.user.agent property provider actually work?
  • [ROO-1471] - JavaParserMethodMetadata.addMethod doesn't add 'throw exception list' to new method.
  • [ROO-1475] - basic roo m3 GWT/GAE project doesn't run in Eclipse
  • [ROO-1476] - throwsTypes collection from MethodMetada is not well formed
  • [ROO-1479] - DBRE on a DB2400 datasource throwing IllegalArgumentException JDBC driver not available for 'com.ibm.as400.access.AS400JDBCDriver'
  • [ROO-1485] - RequestContext#isChanged doesn't work on existing proxies
  • [ROO-1488] - sub entities are not always deserialized by RequestFactory
  • [ROO-1489] - GWT is not jdk 1.5 compatible due to third party jars
  • [ROO-1490] - Cannot cancel Find and Edit activity
  • [ROO-1491] - Errors in <relativePath> entries in Roo project pom.xml files
  • [ROO-1492] - Roo-generated projects configured with HSQLDB 2.0.0 do not work with JDK 5.0
  • [ROO-1497] - Bad code gen from
  • [ROO-1498] - No update reported when only version number changes
  • [ROO-1499] - Instance methods are not looked up properly in the OperationRegistry
  • [ROO-1502] - Can not create Entity with Reserved SQL keyword class name even when --table is specified
  • [ROO-1507] - Error running controller command in latest Git head
  • [ROO-1508] - RequestFactoryEditorDriver#getPaths doesn't work with complicated composite editors
  • [ROO-1509] - Float fields throw an exception during Roo codegen
  • [ROO-1510] - Entity command does not honor --abstract modifier
  • [ROO-1511] - Scaffold order fields alphabetically instead of by field order
  • [ROO-1512] - Remove web.xml welcome file handling from GWT addon
  • [ROO-1513] - FindAndEditProxy does not supply with() paths
  • [ROO-1515] - Dependencies not added using ProjectOperations.dependencyUpdate when switching ORM provider or databases
  • [ROO-1517] - Solr addon has unnessesary dependency on to string addon
  • [ROO-1520] - GWT Roo app failure when --primitive flag is used
  • [ROO-1521] - Mismatch in Datanucleus Version and App Engine Datanucleus Version causes Enhancement in IDE to Fail
  • [ROO-1522] - Expenses Scaffold App: Saving an Expense or a Report with a blank Created field throws an NPE
  • [ROO-1523] - The supervisor field gets unpopulated on an edit.
  • [ROO-1524] - Bad code gen for GaeUserInformation.java
  • [ROO-1525] - DBRE does not handle slash characters in table and column names
  • [ROO-1527] - Imports missing from new mobile views
  • [ROO-1528] - @JoinColumn "referencedColumnName" attribute incorrectly populated in DBRE
  • [ROO-1529] - parameterTypes collection from MethodMetada is not well formed
  • [ROO-1534] - Mobile edit view doesn't import GWT local typed ValueBoxes, Renderers and Parsers
  • [ROO-1535] - Update Roo for RC1
  • [ROO-1536] - Order of foreign keys in .roo-dbre xml file determines @ManyToOne and @OneToOne field generation
  • [ROO-1539] - Bad code gen in mobile ui when field sets are used
  • [ROO-1547] - Intermittent Roo shell startup issue with JsonMetadataProvider
  • [ROO-1548] - The last schema is null in the bindDatabaseListener method of DbreModelServiceImpl on Mac platforms
  • [ROO-1549] - load-scripts.tagx has several compilation errors
  • [ROO-1554] - set editor doesn't work
  • [ROO-1555] - Undo Functionality Should clean up its temp files?
  • [ROO-1568] - Roo Shell in STS 2.5M3 Endless Loop

Improvement

  • [ROO-469] - Unit test's "data on demand" classes should delete the data they create during unit testing
  • [ROO-510] - Add support for named JPA persistence units
  • [ROO-671] - Add confirmation dialogs to prevent loss of data
  • [ROO-747] - mappedsuperclass implementation
  • [ROO-884] - Add Ajax crawl support to the generated GWT scaffold app
  • [ROO-885] - Add unit tests to generated GWT scaffold app
  • [ROO-890] - UiBinder support for specifying cell views based on bean properties
  • [ROO-891] - Include a client-side cache strategy, or set of strategies, in the generated GWT scaffold app
  • [ROO-892] - The generated GWT scaffold app should use dependency injection
  • [ROO-893] - Add i18n support to the generated GWT scaffold app
  • [ROO-894] - Implement Editor validation framework
  • [ROO-896] - Improve method invocation (instance methods, service objects, all static methods)
  • [ROO-929] - Get rid of all the subclasses of RecordChangedEvent<R, H>
  • [ROO-931] - Give Roo users control over what static and instance methods are called
  • [ROO-932] - Implement RequestFactory protocol versioning
  • [ROO-936] - Add support for embedded / value types
  • [ROO-937] - Support ui.xml round tripping (as opposed to the current clobbering)
  • [ROO-943] - RequestFactoryServlet should insist on X-GWT-Permutation header
  • [ROO-944] - Implement UserAction tracking, logging
  • [ROO-953] - Get rid of json2.js
  • [ROO-956] - Find replacement for velocity
  • [ROO-962] - Allow non-integer versions, more flexible api
  • [ROO-963] - DAO / Service layer support
  • [ROO-965] - Add the custom Expense Report as a sample
  • [ROO-1004] - Productize data importer
  • [ROO-1008] - Move Scaffold sample out of bikeshed
  • [ROO-1009] - Implement Editor data binding framework
  • [ROO-1010] - Route JSR 303 errors from server to client
  • [ROO-1011] - Implement decorator widget that can display validation errors
  • [ROO-1040] - Integration tests fail for RooDbManaged Entity with RooEntity(identifierType = String.class)
  • [ROO-1068] - Roo to support pure embeddable class without id.
  • [ROO-1070] - Implement java.math.BigDecimal support for GWT
  • [ROO-1078] - Fix classloader issues blocking updating GWT's Jetty to 7.1.6
  • [ROO-1084] - delete confirmation dialog
  • [ROO-1108] - add the optional --column option to field other --fieldName --type
  • [ROO-1123] - Drop org.json use and make a GWT client/server json lib to replace it
  • [ROO-1132] - RequestFactory naming convention tweaks
  • [ROO-1133] - Add Password field type to input.tagx
  • [ROO-1139] - Get rid of the Record interface
  • [ROO-1152] - Add field flag for @Value annotation for SpEL
  • [ROO-1163] - TypedQuery in finder and entity
  • [ROO-1204] - A RequestFactory should be able to handle polymorphic entities
  • [ROO-1212] - Preserve entity fields order in the generated code (gwt)
  • [ROO-1213] - Hide Property from public api
  • [ROO-1214] - Throw exception on get<Property>() when <Property> has not been requested.
  • [ROO-1215] - Must be able to set properties to null
  • [ROO-1216] - Make newly created proxies editable by default
  • [ROO-1217] - Ensure that DefaultValueStore is always responsive
  • [ROO-1218] - Ensure that we preserve setter order.
  • [ROO-1228] - Event should be fired on record creation
  • [ROO-1237] - Allow List of primitives as method parameters
  • [ROO-1238] - Implement new update / create / acquire / delete events
  • [ROO-1253] - @RooToString - Add ability to ignore properties
  • [ROO-1256] - Addon creator addon should provide default integration with Google Code projects.
  • [ROO-1262] - Hard coded refusal to send fields named "password" in servlet
  • [ROO-1263] - Move enum picker code gen out of roo and into gwt
  • [ROO-1264] - Clean up the Login widget to gracefully handle the case where authentication is disabled, as well as other edge cases
  • [ROO-1265] - Full list support in return values
  • [ROO-1266] - Make generated GWT classes prettier
  • [ROO-1270] - Post 1.1M3 code refactor and clean up
  • [ROO-1274] - Remove PropertyReference and Value
  • [ROO-1276] - Allow a fallback PlaceTokenizer, or pre-processor
  • [ROO-1277] - Add null checks to clients which call the ObrResourceFinder getKnownResources() and getRepositoryCount() methods
  • [ROO-1278] - Check AspectJ Versions in Roo-generated apps
  • [ROO-1285] - expenses.roo should show off a boolean property
  • [ROO-1293] - Consolidate the 3 public subclasses of RequestObject
  • [ROO-1298] - Make Roo changes in response to GWT's valuestore module being merged into requestfactory.
  • [ROO-1302] - Add annotations to configure Json transformation
  • [ROO-1304] - Don't default to "drop and create" in the JPA config when using reverese engineering
  • [ROO-1311] - Flesh out keyboard support in cell-based widgets
  • [ROO-1312] - Add safe HTML support to cell-based widgets
  • [ROO-1314] - IE support for cell-based widgets
  • [ROO-1315] - ClientBundle support in cell-based widgets
  • [ROO-1316] - Flesh out new event system
  • [ROO-1317] - Make CellBrowser work on mobile devices
  • [ROO-1318] - Add Bidi support for Cells
  • [ROO-1335] - jgw: Get MobileScrollPanel out of bikeshed and into use
  • [ROO-1340] - Seems like the key provider should be an invariant
  • [ROO-1341] - Add runtime enhancement property to persistence.xml for OpenJPA
  • [ROO-1343] - Change shell status notifications to allow optional messages
  • [ROO-1352] - Change maven dependency for MSSQL and Sybase to the open source jTDS JDBC driver
  • [ROO-1355] - put the generated ITDs in a separate directory structure so that it doesn't pollute your main package directories
  • [ROO-1356] - Add means to control for which fields the JavaBeans Addon generates getters and setters
  • [ROO-1364] - Create new TypeLocationService and implementation to locate java types based on the annotations a type contains
  • [ROO-1372] - Joey infrastructure
  • [ROO-1377] - Move RequestData class into shared.impl from shared.
  • [ROO-1378] - Remove EditorSupportGenerator from addon-gwt
  • [ROO-1379] - Implement Editor subscribe feature
  • [ROO-1380] - Get rid of RequestFactory::getProxy(String token) method
  • [ROO-1383] - Mapping enums to sets should be facilitated by the @ElementCollection JPA2 annotation
  • [ROO-1395] - Support for CLOB fields required in DBRE
  • [ROO-1396] - Support for CHAR fields required in DBRE
  • [ROO-1398] - Make keyprovider field immutable
  • [ROO-1402] - Use EntityProxyId instead of ProxyImpl in postChangeEvent.
  • [ROO-1405] - Register Converters on startup
  • [ROO-1412] - DBRE to generate proper nullable, length, precision and scale for all @Column
  • [ROO-1413] - FinderOperationsImpl to use updateTypeAnnotation
  • [ROO-1417] - Add an additional API for setting the request path within RequestFactory
  • [ROO-1426] - Fix dodgy proxy equality semantics
  • [ROO-1430] - Creation broken if the entity id is of type String.
  • [ROO-1433] - Future proof the RequestObject
  • [ROO-1441] - Eliminate version from EntityProxy
  • [ROO-1445] - Update Spring Web Flow addon to 2.2.0.RC1 release
  • [ROO-1447] - Gets on an edited object must return the edited values
  • [ROO-1456] - Bad API for instance methods
  • [ROO-1461] - Move (or deprecate) ProxyListPlace, ProxyPlace, and the AbstractProxy* activities out of trunk and into the expenses sample
  • [ROO-1469] - Add parameter and detection to force expenses app to load mobile interface
  • [ROO-1470] - Add support for Roo required httppgp protocol for generated addons
  • [ROO-1473] - ConcurrentModificationException thrown (in JsonRequestProcessor.involvedKeys) when trying passing an unpersisted child Entity as an arg.
  • [ROO-1477] - Remove the unused requirement that server domain objects provide a version() method
  • [ROO-1480] - Make FileConverter respect Shell.getHome() convention
  • [ROO-1487] - Add examples of Cell Widgets
  • [ROO-1493] - RooJavaBean triggers JSON aspects, why?
  • [ROO-1494] - Refactor gwt-addon to produce GWT applications that better reflect GWT structure guidelines
  • [ROO-1495] - Change name and location of Roo-managed dbre xml file
  • [ROO-1504] - Remove unneeded targetEntity and @JoinColumn from @ManyToOne and @OneToOne
  • [ROO-1506] - Significant performance improvements
  • [ROO-1516] - Update testMerge() method to ensure the identifier of the merged object is equal to the identifier of the original object.
  • [ROO-1540] - --host missing from "persistence setup"
  • [ROO-1541] - Add .roo-dbre file to list of files to be included in Roo backup zip
  • [ROO-1545] - Using Hibernate on JBoss cause problems and does not work out-of-the-box
  • [ROO-1552] - Hide solr and web command before project exists.
  • [ROO-1553] - Updates to the Roo reference guide in preparation for release.
  • [ROO-1556] - Update AspectJ to 1.6.10.RC1

New Feature

  • [ROO-173] - Add ability to define field uniqueness constraints
  • [ROO-926] - Add caching, batching hooks to RequestFactory
  • [ROO-951] - Allow both String and Long keys
  • [ROO-954] - More robust handling of errors and validation failures.
  • [ROO-1186] - Add support for arbitrary service objects
  • [ROO-1240] - Give Record useful equality and hash semantics
  • [ROO-1244] - RequestFactory must provide clients with a general find() mechanism, parallel to create(Class)
  • [ROO-1279] - Allow multiple request factories
  • [ROO-1281] - Optimize (eliminate?) Java RecordImpl class
  • [ROO-1323] - Provide hooks for client side caching
  • [ROO-1325] - Exit activities by posting event, not hard coded place change
  • [ROO-1347] - Editor should make parse errors look to the user just like constraint violations
  • [ROO-1348] - Must be able to edit collections
  • [ROO-1411] - DBRE to support tables w/o PKs in HibernateTools style
  • [ROO-1444] - Add support for DataNucleus 2.1
  • [ROO-1449] - Add support for VMFORCE database
  • [ROO-1543] - RooBot client

Task

  • [ROO-991] - Update the Expenses sample to pull dependencies in via a Maven repo
  • [ROO-1151] - Remove the API warnings from most GWT classes in the requestfactory, valuestore, and app packages.
  • [ROO-1211] - Getting a relation of an editable proxy should return an editable proxy
  • [ROO-1219] - Allow adding a future to a future in a single request
  • [ROO-1268] - Disable Velocity from Roo Wrapping POM
  • [ROO-1275] - 1:m relationships not being generated properly when using the "field set" command
  • [ROO-1319] - Revamp mobile scaffold UI/UX
  • [ROO-1322] - Implement request coalescing
  • [ROO-1386] - Expose new features in addon-gwt
  • [ROO-1401] - Better test coverage for update events
  • [ROO-1424] - Ensure that internal teams have reviewed the SafeHTML changes made to their apps
  • [ROO-1432] - Add ctrl/shift+click support to Cell Widgets
  • [ROO-1435] - Need broader testing of entity id types
  • [ROO-1437] - Add test coverage with integer ids
  • [ROO-1481] - Change Roo Master so next version is 1.1.0.RC1 (not 1.1.0.M4 as previously planned)
  • [ROO-1514] - Update gwt-addon to reflect changes and additions made to GWT
  • [ROO-1546] - Change version identifier from 1.1.0.RC1 to 1.1.0.M4 in preparation for upcoming milestone release
  • [ROO-1550] - Restore bundle version numbers back to 1.1.0.RC1 in master
  • [ROO-1551] - Update the generated pom.xml file to reference the Google snapshot repo
  • [ROO-1558] - Release Spring Roo 1.1.0.RC1

Edit/Copy Release Notes

The text area below allows the project release notes to be edited and copied to another document.