Spring Roo Community Add-Ons
Someone in a separate thread asked if we can create a 'sticky' thread where add-on developers can announce their work.
I think this is a good idea so here is the thread. If possible please provide a short description providing details about your add-on. It would also be useful to point interested forum members to a 'how to install' page and let them know if the add-on is available in the Spring Roo shell (through RooBot).
If you have a newer version available with significant new functionality you can also post a message here.
This primary goal of this thread is to announce add-ons. Please refrain from detailed discussions about the functionality of a given add-on (this is better placed in a separate thread or the add-on's own forum / bug tracker).
Typical Security addon updated
Just a quick note to announce that the typicalsecurity addon has been updated to reflect some of the concerns that have been identified by the community.
Changes:
1) Password encryption
2) Fixed SimpleMailMessage Autowire bug in SignUpController.java and ForgotPasswordController.java
3) Fixed activationDate
4) Fixed the finders
5) Renamed UserModel to User and RoleModel to Role.
6) Renamed the Typicalsecurity command to typicalsecurity
7) Set the default entity package to ~.domain (to align with how the rest of roo works).
We welcome your continued feedback.
Get the latest here: http://code.google.com/p/spring-roo-...ical-security/.
Thanks,
The typicalsecurity team.
SiteMesh2 ROO Addon 0.1.3.RELEASE
Use SiteMesh 2 instead of Tiles.
ROO Commands:
sitemesh setup (Installs SiteMesh)
sitemesh info (Provides information of any steps needed prior to install)
Caviats:
Tiles Configuration files still exist, but are not used.
Waiting on ROO-2179 for a fix. However, this has no impact on the project except for the fact you have still have the tiles xml files that are not used or needed.
Sample usage:
pgp trust --keyId 0xA95E26B1
addon install bundle --bundleSymbolicName org.codeconsole.roo.addon.sitemesh
project --topLevelPackage org.codeconsole.example
persistence setup --provider HIBERNATE --database HYPERSONIC_IN_MEMORY
entity --class ~.Owner
field string --fieldName name --notNull
entity --class ~.Pet
field string --fieldName name --notNull
field reference --fieldName owner --type ~.Owner --cardinality MANY_TO_ONE
field set --fieldName pets --class ~.Owner --type ~.Pet --cardinality ONE_TO_MANY
controller scaffold --class ~.web.OwnerController
controller scaffold --class ~.web.PetController --entity ~.Pet
sitemesh setup
Webapp Analytics and Error Tracking Add on 0.1.1.RELEASE
Webapp Analytics and Error Tracking Add on
ROO Commands:
analytics setup (Installs Webapp Analytics)
analytics info (Provides information of any steps needed prior to install)
This addon will enable your application to email you a detailed report any time an Exception occurs on your site.
The report will show you the last 50 urls hit before the exception as well as the provide the information of the user who experienced it.
It also enables the /analytics url such that you can see your own history as you go.
I will provide detailed documentation on how to unlock more power of this addon in a few weeks when I get some free time, but the add on does give you the ability to filter which urls you do not want to track as well as customize what is sent in the report.
There is also a separate server that can receive these error reports and store them in a database. This server also provides an interface for searching and seeing exception statistics. I will try and make this available as well as soon as I get a chance.
Sample usage:
pgp trust --keyId 0xA95E26B1
addon install bundle --bundleSymbolicName org.codeconsole.roo.addon.webappanalytics
project --topLevelPackage org.codeconsole.example
persistence setup --provider HIBERNATE --database HYPERSONIC_IN_MEMORY
entity --class ~.Owner
field string --fieldName name --notNull
entity --class ~.Pet
field string --fieldName name --notNull
field reference --fieldName owner --type ~.Owner --cardinality MANY_TO_ONE
field set --fieldName pets --class ~.Owner --type ~.Pet --cardinality ONE_TO_MANY
controller scaffold --class ~.web.OwnerController
controller scaffold --class ~.web.PetController --entity ~.Pet
security setup
email sender setup --hostServer smtp.gmail.com --username changeme@changeme.com --password changeme --port 465
analytics setup
mvn tomcat:run
At any point you can see your recorded history:
http://localhost:8080/example/analytics
(This url can also be changed in the web.xml configuration file).
Jasper Reports addon for Spring Roo
Hi all,
I am pleased to announce that I have released an addon for Roo to integrate Jasper Reports.
jasperoo
There is an introduction on my blog at: http://my.digitalface.ca/2011/03/jas...-jasperoo.html
The project is hosted on Google Code at: jasperoo.digitalface.ca.
Synopsis
Install with:
Setup with:
roo> jasperoo setup
Create a report from an entity with:
roo> jasperoo add --type ~.domain.SomeEntity
Create reports for all entities with:
roo> jasperoo all
I would welcome feedback from anyone who tries it out.
There are still a couple of small bugs, and right now it only generates list reports (I plan to add detail reports soon).
Waldo
Roo Addon Development - Not Finding Dependencies
I created an application that reads the Roo Scaffolding information and generates a jquery-mobile application. I'm now trying to build it as a Roo addon but struggling with the dependency jars not getting deployed or bundled with the deployment. I generated an advanced addon template using roo. Tried to test the application in roo using osgi "start --url file:///<path-to-addon-project/target/<addon-bundle-name>.<version>.jar" and i get the error:
org.osgi.framework.BundleException: Unresolved constraint in bundle com.uibinder [76]: Unable to resolve 76.0: missing requirement [76.0] package; (&(package=org.apache.commons.io)(version>=2.1.0)( !(version>=3.0.0)))
It's not finding my dependency:
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.1</version>
</dependency>
I've spent way to much time trying to figure this out. Any help would be greatly appreciated.