[
https://issues.jboss.org/browse/FORGE-1479?page=com.atlassian.jira.plugin...
]
George Gastaldi commented on FORGE-1479:
----------------------------------------
Here is a sample output of the behavior implemented in the pull-request:
{code}
_____
| ___|__ _ __ __ _ ___
| |_ / _ \| `__/ _` |/ _ \ \\
| _| (_) | | | (_| | __/ //
|_| \___/|_| \__, |\___|
|___/
JBoss Forge, version [ 2.0.1-SNAPSHOT ] - JBoss, by Red Hat, Inc. [
http://forge.jboss.org
]
[bin]$ project-new --named mydemo
***SUCCESS*** Project named 'mydemo' has been created.
[mydemo]$ jpa-new-entity --named Customer --
--jpaVersion --container --provider --configureMetadata --targetPackage --idStrategy
[mydemo]$ jpa-new-entity --named Customer
***SUCCESS*** Persistence (JPA) is installed.
***SUCCESS*** Entity org.mydemo.model.Customer created
[Customer.java]$ rest-
rest-generate-endpoints-from-entities rest-setup
[Customer.java]$ rest-generate-endpoints-from-entities --
--jaxrsVersion --config --className --targets --contentType
--persistenceUnit
--applicationPath --targetPackage --ejbVersion --generator --packageName
[Customer.java]$ rest-generate-endpoints-from-entities --target
--targetPackage --targets
[Customer.java]$ rest-generate-endpoints-from-entities --targets --
--jaxrsVersion --config --className --generator --packageName
--applicationPath --targetPackage --targets --contentType
--persistenceUnit
[Customer.java]$ rest-generate-endpoints-from-entities --targets org.mydemo.model.Customer
***SUCCESS*** JAX-RS has been installed.
***SUCCESS*** EJB has been installed.
***SUCCESS*** Endpoint created
[CustomerEndpoint.java]$ build
***SUCCESS*** Build Success
{code}
Explicitly setup in Bean Validation, not in JPA
-----------------------------------------------
Key: FORGE-1479
URL:
https://issues.jboss.org/browse/FORGE-1479
Project: Forge
Issue Type: Sub-task
Components: UI - Shell
Affects Versions: 2.0.0.CR2
Reporter: Antonio Goncalves
Fix For: 2.x Future
Just after a creating a project, a create a new entity without setting up the persistence
({{jpa-setup}}) :
{code}
***SUCCESS*** Project named 'test' has been created.
[test]$ jpa-new-entity --named Author
[Author.java]$ jpa-new-field --named firstname --length 50
***SUCCESS*** Field firstname created
{code}
This hasn't created a {{persistence.xml}} file. But on the other hand, if I want to
add a constraint on the entity, I need to explicitelly setup Bean Validation :
{code}
[Author.java]$ con
connection-profile-create connection-profile-remove constraint-setup
[Author.java]$ constraint-setup
***SUCCESS*** Bean Validation is installed.
[Author.java]$ con
connection-profile-create connection-profile-remove constraint-add constraint-setup
[Author.java]$ constraint-add --constraint NotNull --onProperty firstname
***SUCCESS*** Constraint NotNull successfully configured
{code}
if most of the information is giving at project creation, do we still need to explicitly
setup Java EE components ? At the moment we have the following :
{code}
servlet-setup
ejb-setup
soap-setup
cdi-setup
jms-setup
rest-setup
jpa-setup
faces-setup
jstl-setup
jta-setup
constraint-setup
{code}
Most of these commands do not have parameters (except for persistence, rest, validation).
So why not activate them by default (or only if {{export ACCEPT_DEFAULTS=true}} ) ?
Something like : "if the command {{constraint-add}} is entered, Forge would go {{if
constraint is not setup, then I invoke constraint-setup}}", "if the command
{{ejb-new}} is entered, Forge would go {{if ejb is not setup, then I invoke
ejb-setup}}"
That would save some bugs (developers forgetting to setup things), less typing and
shorter scripts.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:
http://www.atlassian.com/software/jira