Skip to content

Releases: nowucca/SimpleAffableBean

Fall 2018 Refresh: Better Builds, Tests and Schema

10 Sep 18:13
Compare
Choose a tag to compare
  • Upgraded to Gradle 4.10
  • Added Selenium Testing with Chrome
  • Added test data, set identifiers to start at 1001 to leave room for test data.

Updated Tomcat references

16 Jun 23:04
Compare
Choose a tag to compare

Updated Tomcat references for Summer 2018

REST service support

16 Nov 04:22
50f443b
Compare
Choose a tag to compare

Added some example GET and PUT service operations, accessible at /service/application.wadl using Jackson and Jersey libraries.

Ensured that form validation lives in the CustomerService class.

Ensured that the global error handler handles service request errors differently and appropriately.

Administration Pages use View Models

19 Jul 08:44
Compare
Choose a tag to compare

This release marks inclusion of the administration pages using the view model pattern.

Other changes include:

  • some ApplicationContext code is simpler with fewer dependencies
  • some error messaging for admin pages was improved to recover gracefully

Building and Database sample data work

22 May 08:27
Compare
Choose a tag to compare

Changes

  • Accidentally previously omitted gradle wrapper jar file. Included now.
  • Fixed comment syntax in sampleData.sql so that command-line batch mode can be used to run the file.

Closing the Loop

20 May 16:49
Compare
Choose a tag to compare

This release contains fixes and cleanups that are the result of feedback.
It also includes meta-data caching for products and categories as a final new feature.

Change Summary

  • Simplified gradle build, added license checking and formatting
  • Added docs/ folder using "Feeling Responsive" Jekyll templates.
  • Added skeletal content to docs/ and customized it for being "http://SimpleAffableBean.Info".
  • Removed uses of ex.printStackTrace, replaced with log lines for debugging
  • Use a CustomerForm object for placeOrder
  • Ensure we preserve the licence for ScriptRunner - it has it's own licence already, we should not overwrite that.
  • Added modelobject caching for Product and Category meta-data models.
  • Changed source folder structure to better match gradle's expectations.
  • Thanks to @tippyweb for fixes to the header, and the "Shop Again" button.
  • Fixed Admin View Customer failing with JSP error

Fully Licensed and Gradled

05 May 15:56
Compare
Choose a tag to compare

This release has a gradle build and all license headers updated.
As such it is the first release candidate for wider use.

Notes:

  • Added support for Gradle 3.5 builds and JUnit5 tests without disrupting the file layout
  • Added java source files into the WAR files by default
  • Adjust session timeout to 15 minutes by default
  • Tidy code handling session form values on the checkout page
  • Renamed the "setup" folder to the "db" folder
  • Renamed WEB-INF/view to WEB-INF/jsp to be similar to WEB-INF/jspf
  • Added slf4j facade logging to the service layer with slf4j-simple backing it (can easily use log4j2 or logback later)
  • Fixed lingering CSS issue for category title box
  • Use -Dtest.productivity=true as a JVM argument in your run configuration to stop filling in the form many times during testing
  • Use proper centralized error handling through an Error Servlet, keeping the same error JSPs
  • Added LICENSE.affablebean.txt to satisfy original licence requirements
  • Added and applied BSD 3-clause license and grade license plugin to all files (excluding 3rd-party javascript libraries that are already licensed)

Immutable Models

19 Apr 04:37
Compare
Choose a tag to compare

Update models to remove set* methods and repaired code style.

Introducing MVVM presentation layer

05 Apr 07:32
Compare
Choose a tag to compare

All non-admin pages now use the Model-View-ViewModel (MVVM) pattern for the presentation layer.
Fixed a significant bug with connection objects leaking on placeOrder.
Properly remember form values and orderId on placeOrder errors and success.
The session is cleared when an order is placed but not invalidated.

Introducing services layer

08 Mar 06:04
Compare
Choose a tag to compare

Despite being a pass-through due to SimpleAffableBean's simple nature, this service layer provides a place for re-usable business logic to grow independently of database access. This separation will let us change databases for example in future more easily and keep business logic the same. See also: http://softwareengineering.stackexchange.com/questions/220909/service-layer-vs-dao-why-both