vraptor-scaffold 1.0.0 → 1.1.0.pre

Sign up to get free protection for your applications and to get access to all the features.
Files changed (123) hide show
  1. data/Gemfile +2 -17
  2. data/Gemfile.lock +8 -10
  3. data/History.txt +18 -1
  4. data/Rakefile +3 -23
  5. data/bin/vraptor +1 -1
  6. data/lib/vraptor-scaffold.rb +25 -28
  7. data/lib/{configuration.rb → vraptor-scaffold/configuration.rb} +0 -0
  8. data/lib/{generators → vraptor-scaffold/generators}/app_generator/app_generator.rb +2 -1
  9. data/lib/{generators → vraptor-scaffold/generators}/app_generator/dependency.rb +0 -0
  10. data/lib/{generators → vraptor-scaffold/generators}/app_generator/dependency_manager.rb +4 -6
  11. data/lib/{generators → vraptor-scaffold/generators}/app_generator/freemarker_template_engine.rb +3 -4
  12. data/lib/vraptor-scaffold/generators/app_generator/jsp_template_engine.rb +33 -0
  13. data/lib/{generators → vraptor-scaffold/generators}/app_generator/templates/build.gradle.erb +1 -0
  14. data/lib/{generators → vraptor-scaffold/generators}/app_generator/templates/build.properties.erb +2 -0
  15. data/lib/{generators → vraptor-scaffold/generators}/app_generator/templates/build.xml +32 -0
  16. data/lib/{generators → vraptor-scaffold/generators}/app_generator/templates/decorators.erb +1 -1
  17. data/lib/{generators → vraptor-scaffold/generators}/app_generator/templates/eclipse/classpath.erb +0 -0
  18. data/lib/{generators → vraptor-scaffold/generators}/app_generator/templates/eclipse/project.erb +0 -0
  19. data/lib/{generators → vraptor-scaffold/generators}/app_generator/templates/eclipse/settings/org.eclipse.jdt.core.prefs +0 -0
  20. data/lib/{generators → vraptor-scaffold/generators}/app_generator/templates/eclipse/settings/org.eclipse.wst.common.component.tt +0 -0
  21. data/lib/{generators → vraptor-scaffold/generators}/app_generator/templates/eclipse/settings/org.eclipse.wst.common.project.facet.core.xml +0 -0
  22. data/lib/{generators → vraptor-scaffold/generators}/app_generator/templates/eclipse/settings/org.eclipse.wst.jsdt.ui.superType.container +0 -0
  23. data/lib/{generators → vraptor-scaffold/generators}/app_generator/templates/eclipse/settings/org.eclipse.wst.jsdt.ui.superType.name +0 -0
  24. data/lib/{generators → vraptor-scaffold/generators}/app_generator/templates/freemarker/freemarker-web.xml +0 -1
  25. data/lib/{generators → vraptor-scaffold/generators}/app_generator/templates/freemarker/infrastructure/FreemarkerPathResolver.java.tt +0 -0
  26. data/lib/{generators → vraptor-scaffold/generators}/app_generator/templates/freemarker/macros/html.ftl +0 -0
  27. data/lib/{generators → vraptor-scaffold/generators}/app_generator/templates/freemarker/main.ftl +1 -1
  28. data/lib/{generators → vraptor-scaffold/generators}/app_generator/templates/ivy-2.2.0.jar +0 -0
  29. data/lib/{generators → vraptor-scaffold/generators}/app_generator/templates/ivy.erb +5 -1
  30. data/lib/vraptor-scaffold/generators/app_generator/templates/ivysettings.xml +9 -0
  31. data/lib/vraptor-scaffold/generators/app_generator/templates/jsp/jsp-web.xml +7 -0
  32. data/lib/vraptor-scaffold/generators/app_generator/templates/jsp/main.jsp +16 -0
  33. data/lib/vraptor-scaffold/generators/app_generator/templates/jsp/prelude.jspf +3 -0
  34. data/lib/{generators → vraptor-scaffold/generators}/app_generator/templates/pom.erb +8 -0
  35. data/lib/{generators → vraptor-scaffold/generators}/app_generator/templates/resources-test/.empty_directory +0 -0
  36. data/lib/{generators → vraptor-scaffold/generators}/app_generator/templates/resources/META-INF/persistence.xml +2 -2
  37. data/lib/{generators → vraptor-scaffold/generators}/app_generator/templates/resources/log4j.properties +0 -0
  38. data/lib/{generators → vraptor-scaffold/generators}/app_generator/templates/resources/messages.properties +0 -0
  39. data/lib/{generators → vraptor-scaffold/generators}/app_generator/templates/src-test/controllers/.empty_directory +0 -0
  40. data/lib/{generators → vraptor-scaffold/generators}/app_generator/templates/src-test/models/.empty_directory +0 -0
  41. data/lib/{generators → vraptor-scaffold/generators}/app_generator/templates/src-test/repositories/.empty_directory +0 -0
  42. data/lib/{generators → vraptor-scaffold/generators}/app_generator/templates/src/controllers/.empty_directory +0 -0
  43. data/lib/{generators → vraptor-scaffold/generators}/app_generator/templates/src/models/Entity.java.tt +0 -0
  44. data/lib/{generators → vraptor-scaffold/generators}/app_generator/templates/src/repositories/Repository.java.tt +17 -12
  45. data/lib/{generators → vraptor-scaffold/generators}/app_generator/templates/vraptor-scaffold.erb +0 -0
  46. data/lib/{generators → vraptor-scaffold/generators}/app_generator/templates/webapp/WEB-INF/web.xml +0 -0
  47. data/lib/{generators → vraptor-scaffold/generators}/app_generator/templates/webapp/images/.empty_directory +0 -0
  48. data/lib/{generators → vraptor-scaffold/generators}/app_generator/templates/webapp/index.jsp +0 -0
  49. data/lib/vraptor-scaffold/generators/app_generator/templates/webapp/javascripts/jquery.min.js +16 -0
  50. data/lib/vraptor-scaffold/generators/app_generator/templates/webapp/stylesheets/common.css +3 -0
  51. data/lib/vraptor-scaffold/generators/app_generator/templates/webapp/stylesheets/reset.css +47 -0
  52. data/lib/{generators → vraptor-scaffold/generators}/app_generator/templates/webapp/stylesheets/scaffold.css +0 -0
  53. data/lib/vraptor-scaffold/generators/app_generator/templates/webapp/stylesheets/stylesheets.css +5 -0
  54. data/lib/{generators → vraptor-scaffold/generators}/base.rb +0 -0
  55. data/lib/{generators → vraptor-scaffold/generators}/scaffold_generator/attribute.rb +0 -0
  56. data/lib/{generators → vraptor-scaffold/generators}/scaffold_generator/base_scaffold.rb +0 -0
  57. data/lib/{generators → vraptor-scaffold/generators}/scaffold_generator/controller_generator/controller_generator.rb +0 -0
  58. data/lib/{generators → vraptor-scaffold/generators}/scaffold_generator/controller_generator/templates/controller.erb +9 -18
  59. data/lib/{generators → vraptor-scaffold/generators}/scaffold_generator/controller_generator/templates/controller_test.erb +0 -0
  60. data/lib/{generators → vraptor-scaffold/generators}/scaffold_generator/freemarker_generator/freemarker_generator.rb +0 -0
  61. data/lib/{generators → vraptor-scaffold/generators}/scaffold_generator/freemarker_generator/templates/edit.erb +0 -0
  62. data/lib/{generators → vraptor-scaffold/generators}/scaffold_generator/freemarker_generator/templates/form.erb +0 -0
  63. data/lib/{generators → vraptor-scaffold/generators}/scaffold_generator/freemarker_generator/templates/index.erb +0 -0
  64. data/lib/{generators → vraptor-scaffold/generators}/scaffold_generator/freemarker_generator/templates/new.erb +0 -0
  65. data/lib/{generators → vraptor-scaffold/generators}/scaffold_generator/freemarker_generator/templates/show.erb +0 -0
  66. data/lib/{generators → vraptor-scaffold/generators}/scaffold_generator/jsp_generator/jsp_generator.rb +1 -1
  67. data/lib/vraptor-scaffold/generators/scaffold_generator/jsp_generator/templates/edit.erb +6 -0
  68. data/lib/vraptor-scaffold/generators/scaffold_generator/jsp_generator/templates/form.erb +26 -0
  69. data/lib/vraptor-scaffold/generators/scaffold_generator/jsp_generator/templates/index.erb +36 -0
  70. data/lib/vraptor-scaffold/generators/scaffold_generator/jsp_generator/templates/new.erb +6 -0
  71. data/lib/vraptor-scaffold/generators/scaffold_generator/jsp_generator/templates/show.erb +14 -0
  72. data/lib/{generators → vraptor-scaffold/generators}/scaffold_generator/model_generator/model_generator.rb +0 -0
  73. data/lib/{generators → vraptor-scaffold/generators}/scaffold_generator/model_generator/templates/model.erb +0 -0
  74. data/lib/{generators → vraptor-scaffold/generators}/scaffold_generator/model_generator/templates/model_test.erb +0 -0
  75. data/lib/{generators → vraptor-scaffold/generators}/scaffold_generator/repository_generator/repository_generator.rb +0 -0
  76. data/lib/{generators → vraptor-scaffold/generators}/scaffold_generator/repository_generator/templates/repository.erb +0 -0
  77. data/lib/{generators → vraptor-scaffold/generators}/scaffold_generator/repository_generator/templates/repository_impl.erb +1 -1
  78. data/lib/{generators → vraptor-scaffold/generators}/scaffold_generator/repository_generator/templates/repository_test.erb +0 -0
  79. data/lib/{generators → vraptor-scaffold/generators}/scaffold_generator/scaffold_generator.rb +0 -0
  80. data/lib/vraptor-scaffold/load_paths.rb +22 -0
  81. data/lib/vraptor-scaffold/version.rb +3 -0
  82. data/spec/{lib → vraptor-scaffold}/configuration_spec.rb +0 -0
  83. data/spec/{lib → vraptor-scaffold}/generators/app_generator/app_generator_spec.rb +6 -6
  84. data/spec/{lib → vraptor-scaffold}/generators/app_generator/dependency_manager_spec.rb +0 -0
  85. data/spec/{lib → vraptor-scaffold}/generators/app_generator/dependency_spec.rb +0 -0
  86. data/spec/{lib → vraptor-scaffold}/generators/app_generator/freemarker_template_engine_spec.rb +4 -4
  87. data/spec/{lib → vraptor-scaffold}/generators/app_generator/jsp_template_engine_spec.rb +12 -1
  88. data/spec/{lib → vraptor-scaffold}/generators/app_generator/templates/Entity.java +0 -0
  89. data/spec/{lib → vraptor-scaffold}/generators/app_generator/templates/FreemarkerPathResolver.java +0 -0
  90. data/spec/{lib → vraptor-scaffold}/generators/app_generator/templates/Repository.java +17 -12
  91. data/spec/{lib → vraptor-scaffold}/generators/app_generator/templates/build.gradle +4 -6
  92. data/spec/{lib → vraptor-scaffold}/generators/app_generator/templates/build.properties +2 -0
  93. data/spec/{lib → vraptor-scaffold}/generators/app_generator/templates/decorators-jsp.xml +0 -0
  94. data/spec/{lib → vraptor-scaffold}/generators/app_generator/templates/decorators.xml +0 -0
  95. data/spec/vraptor-scaffold/generators/app_generator/templates/freemarker-web.xml +60 -0
  96. data/spec/{lib → vraptor-scaffold}/generators/app_generator/templates/ivy.xml +8 -7
  97. data/spec/vraptor-scaffold/generators/app_generator/templates/jsp-web.xml +45 -0
  98. data/spec/{lib → vraptor-scaffold}/generators/app_generator/templates/pom.xml +11 -18
  99. data/spec/{lib → vraptor-scaffold}/generators/scaffold_generator/attribute_spec.rb +0 -0
  100. data/spec/{lib → vraptor-scaffold}/generators/scaffold_generator/base_scaffold_spec.rb +0 -0
  101. data/spec/{lib → vraptor-scaffold}/generators/scaffold_generator/controller_generator/controller_generator_spec.rb +0 -0
  102. data/spec/{lib → vraptor-scaffold}/generators/scaffold_generator/controller_generator/templates/ProductController.java +9 -18
  103. data/spec/{lib → vraptor-scaffold}/generators/scaffold_generator/freemarker_generator/freemarker_generator_spec.rb +0 -0
  104. data/spec/{lib → vraptor-scaffold}/generators/scaffold_generator/jsp_generator/jsp_generator_spec.rb +0 -0
  105. data/spec/{lib → vraptor-scaffold}/generators/scaffold_generator/model_generator/model_generator_spec.rb +0 -0
  106. data/spec/{lib → vraptor-scaffold}/generators/scaffold_generator/model_generator/templates/Product.java +0 -0
  107. data/spec/{lib → vraptor-scaffold}/generators/scaffold_generator/repository_generator/repository_generator_spec.rb +0 -0
  108. data/spec/{lib → vraptor-scaffold}/generators/scaffold_generator/repository_generator/templates/ProductRepository.java +0 -0
  109. data/spec/{lib → vraptor-scaffold}/generators/scaffold_generator/repository_generator/templates/ProductRepositoryImpl.java +1 -1
  110. data/spec/{lib → vraptor-scaffold}/generators/scaffold_generator/scaffold_generator_spec.rb +0 -0
  111. data/spec/{lib/vraptor-scaffold_spec.rb → vraptor-scaffold_spec.rb} +14 -14
  112. data/vraptor-scaffold.gemspec +24 -173
  113. metadata +226 -137
  114. data/VERSION.yml +0 -5
  115. data/lib/generators/app_generator/jsp_template_engine.rb +0 -24
  116. data/lib/generators/app_generator/templates/jsp/main.jsp +0 -16
  117. data/lib/generators/app_generator/templates/webapp/javascripts/jquery.min.js +0 -16
  118. data/lib/generators/scaffold_generator/jsp_generator/templates/edit.erb +0 -3
  119. data/lib/generators/scaffold_generator/jsp_generator/templates/form.erb +0 -27
  120. data/lib/generators/scaffold_generator/jsp_generator/templates/index.erb +0 -36
  121. data/lib/generators/scaffold_generator/jsp_generator/templates/new.erb +0 -3
  122. data/lib/generators/scaffold_generator/jsp_generator/templates/show.erb +0 -14
  123. data/lib/load_paths.rb +0 -22
@@ -122,12 +122,6 @@ describe AppGenerator do
122
122
  File.exist?(@web_inf).should be_true
123
123
  end
124
124
 
125
- it "should create web.xml" do
126
- source = "#{AppGenerator.source_root}/webapp/WEB-INF/web.xml"
127
- destination = "#{@web_inf}/web.xml"
128
- exists_and_identical?(source, destination)
129
- end
130
-
131
125
  it "should create scaffold css" do
132
126
  source = "#{AppGenerator.source_root}/webapp/stylesheets/scaffold.css"
133
127
  destination = "#{@webapp}/stylesheets/scaffold.css"
@@ -254,6 +248,12 @@ describe AppGenerator do
254
248
  destination = "#{@project_path}/ivy.xml"
255
249
  exists_and_identical?(source, destination)
256
250
  end
251
+
252
+ it "should create ivysettings.xml" do
253
+ source = File.join AppGenerator.source_root, "ivysettings.xml"
254
+ destination = "#{@project_path}/ivysettings.xml"
255
+ exists_and_identical?(source, destination)
256
+ end
257
257
 
258
258
  it "should copy ivy.jar" do
259
259
  ivy = File.join @project_path, AppGenerator::IVY_JAR
@@ -25,10 +25,10 @@ describe FreemarkerTemplateEngine do
25
25
  exists_and_identical?(source, destination)
26
26
  end
27
27
 
28
- it "should append freemarker servlet in web.xml" do
29
- source = File.join FreemarkerTemplateEngine.source_root, "freemarker-web.xml"
30
- web_xml = "#{@web_inf}/web.xml"
31
- File.read(web_xml).should include(File.read(source))
28
+ it "should create web.xml" do
29
+ source = File.join File.dirname(__FILE__), "templates", "freemarker-web.xml"
30
+ destination = "#{@web_inf}/web.xml"
31
+ exists_and_identical?(source, destination)
32
32
  end
33
33
 
34
34
  it "should create views folder" do
@@ -39,6 +39,17 @@ describe JspTemplateEngine do
39
39
  to = "#{@app}/infrastructure/FreemarkerPathResolver.java"
40
40
  File.exist?(to).should be_false
41
41
  end
42
-
42
+
43
+ it "should create web.xml" do
44
+ source = File.join File.dirname(__FILE__), "templates", "jsp-web.xml"
45
+ destination = "#{@web_inf}/web.xml"
46
+ exists_and_identical?(source, destination)
47
+ end
48
+
49
+ it "should create prelude.jspf" do
50
+ source = "#{JspTemplateEngine.source_root}/prelude.jspf"
51
+ destination = "#{@web_inf}/jsp/prelude.jspf"
52
+ exists_and_identical?(source, destination)
53
+ end
43
54
  end
44
55
  end
@@ -5,13 +5,20 @@ import java.lang.reflect.ParameterizedType;
5
5
  import java.util.List;
6
6
 
7
7
  import javax.persistence.EntityManager;
8
+ import javax.persistence.Query;
8
9
 
9
10
  public abstract class Repository<T, I extends Serializable> {
10
11
 
11
12
  protected final EntityManager entityManager;
12
-
13
- public Repository(EntityManager entityManager) {
13
+ protected final Class<T> clazz;
14
+
15
+ protected Repository(EntityManager entityManager) {
14
16
  this.entityManager = entityManager;
17
+
18
+ @SuppressWarnings("unchecked")
19
+ Class<T> clazz = (Class<T>) ((ParameterizedType) getClass().getGenericSuperclass()).getActualTypeArguments()[0];
20
+
21
+ this.clazz = clazz;
15
22
  }
16
23
 
17
24
  public void create(T entity) {
@@ -27,17 +34,15 @@ public abstract class Repository<T, I extends Serializable> {
27
34
  }
28
35
 
29
36
  public T find(I id) {
30
- return entityManager.find(getParameterizedClass(), id);
37
+ return entityManager.find(clazz, id);
31
38
  }
32
39
 
33
- @SuppressWarnings("unchecked")
34
40
  public List<T> findAll() {
35
- return entityManager.createQuery("From " + getParameterizedClass().getName()).getResultList();
36
- }
37
-
38
- @SuppressWarnings("unchecked")
39
- private Class<T> getParameterizedClass() {
40
- ParameterizedType parameterizedType = (ParameterizedType) getClass().getGenericSuperclass();
41
- return (Class<T>) parameterizedType.getActualTypeArguments()[0];
41
+ Query query = entityManager.createQuery("from " + clazz.getName());
42
+
43
+ @SuppressWarnings("unchecked")
44
+ List<T> resultList = query.getResultList();
45
+
46
+ return resultList;
42
47
  }
43
- }
48
+ }
@@ -1,5 +1,6 @@
1
1
  repositories {
2
2
  mavenCentral()
3
+ mavenRepo urls: "https://repository.jboss.org/nexus/content/groups/public-jboss"
3
4
  }
4
5
 
5
6
  apply plugin: 'java'
@@ -20,15 +21,12 @@ jettyRun.contextPath = '/'
20
21
  [jettyRunWar,jettyStop]*.stopKey = 'stopKey'
21
22
 
22
23
  dependencies {
23
- compile group: 'br.com.caelum', name: 'vraptor', version: '3.3.0'
24
- compile group: 'net.sf.scannotation', name: 'scannotation', version: '1.0.2'
24
+ compile group: 'br.com.caelum', name: 'vraptor', version: '3.3.1'
25
25
  compile group: 'org.hsqldb', name: 'hsqldb', version: '2.0.0'
26
26
  compile group: 'opensymphony', name: 'sitemesh', version: '2.4.2'
27
27
  compile group: 'javax.servlet', name: 'jstl', version: '1.2'
28
- compile group: 'javax.persistence', name: 'persistence-api', version: '1.0'
29
- compile group: 'org.hibernate', name: 'hibernate-entitymanager', version: '3.4.0.GA'
30
- compile group: 'org.hibernate', name: 'hibernate-core', version: '3.3.2.GA'
31
- compile group: 'org.hibernate', name: 'hibernate-validator', version: '3.1.0.GA'
28
+ compile group: 'org.hibernate', name: 'hibernate-entitymanager', version: '3.6.1.Final'
29
+ compile group: 'org.hibernate', name: 'hibernate-validator', version: '4.1.0.Final'
32
30
  compile group: 'joda-time', name: 'joda-time', version: '1.6.2'
33
31
 
34
32
  //Provided dependencies
@@ -4,6 +4,8 @@ output.dir=target
4
4
  test.build.dir=target/test-classes
5
5
 
6
6
  webapp.dir=src/main/webapp
7
+ js.dir=src/main/webapp/javascripts
8
+ css.dir=src/main/webapp/stylesheets
7
9
  lib.dir=src/main/webapp/WEB-INF/lib
8
10
  build.dir=src/main/webapp/WEB-INF/classes
9
11
 
@@ -0,0 +1,60 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee"
3
+ xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
4
+ id="WebApp_ID" version="2.5">
5
+
6
+ <display-name>vraptor-scaffold-project</display-name>
7
+
8
+ <context-param>
9
+ <param-name>br.com.caelum.vraptor.packages</param-name>
10
+ <param-value>br.com.caelum.vraptor.util.jpa</param-value>
11
+ </context-param>
12
+
13
+ <context-param>
14
+ <param-name>br.com.caelum.vraptor.encoding</param-name>
15
+ <param-value>UTF-8</param-value>
16
+ </context-param>
17
+
18
+ <filter>
19
+ <filter-name>sitemesh</filter-name>
20
+ <filter-class>com.opensymphony.sitemesh.webapp.SiteMeshFilter</filter-class>
21
+ </filter>
22
+
23
+ <filter>
24
+ <filter-name>vraptor</filter-name>
25
+ <filter-class>br.com.caelum.vraptor.VRaptor</filter-class>
26
+ </filter>
27
+
28
+ <filter-mapping>
29
+ <filter-name>sitemesh</filter-name>
30
+ <url-pattern>/*</url-pattern>
31
+ </filter-mapping>
32
+
33
+ <filter-mapping>
34
+ <filter-name>vraptor</filter-name>
35
+ <url-pattern>/*</url-pattern>
36
+ </filter-mapping>
37
+
38
+ <servlet>
39
+ <servlet-name>sitemesh-freemarker</servlet-name>
40
+ <servlet-class>com.opensymphony.module.sitemesh.freemarker.FreemarkerDecoratorServlet</servlet-class>
41
+ <init-param>
42
+ <param-name>TemplatePath</param-name>
43
+ <param-value>/</param-value>
44
+ </init-param>
45
+ <init-param>
46
+ <param-name>default_encoding</param-name>
47
+ <param-value>UTF-8</param-value>
48
+ </init-param>
49
+ <init-param>
50
+ <param-name>auto_import</param-name>
51
+ <param-value>macros/html.ftl as html</param-value>
52
+ </init-param>
53
+ <load-on-startup>1</load-on-startup>
54
+ </servlet>
55
+
56
+ <servlet-mapping>
57
+ <servlet-name>sitemesh-freemarker</servlet-name>
58
+ <url-pattern>*.ftl</url-pattern>
59
+ </servlet-mapping>
60
+ </web-app>
@@ -3,21 +3,19 @@
3
3
 
4
4
  <configurations>
5
5
  <conf name="default" description="dependencies used for compile" />
6
+ <conf name="provided" description="dependencies used for compile but is not packaged" visibility="public" />
6
7
  <conf name="test" description="dependencies used for tests" visibility="public" />
7
8
  <conf name="jetty" description="dependencies used for jetty" visibility="public" />
8
- <conf name="provided" description="dependencies used for compile but is not packaged" visibility="public" />
9
+ <conf name="minify" description="dependencies used to minify js and css" visibility="public" />
9
10
  </configurations>
10
11
 
11
12
  <dependencies>
12
- <dependency org="br.com.caelum" name="vraptor" rev="3.3.0" conf="default" />
13
- <dependency org="net.sf.scannotation" name="scannotation" rev="1.0.2" conf="default" />
13
+ <dependency org="br.com.caelum" name="vraptor" rev="3.3.1" conf="default" />
14
14
  <dependency org="org.hsqldb" name="hsqldb" rev="2.0.0" conf="default" />
15
15
  <dependency org="opensymphony" name="sitemesh" rev="2.4.2" conf="default" />
16
16
  <dependency org="javax.servlet" name="jstl" rev="1.2" conf="default" />
17
- <dependency org="javax.persistence" name="persistence-api" rev="1.0" conf="default" />
18
- <dependency org="org.hibernate" name="hibernate-entitymanager" rev="3.4.0.GA" conf="default" />
19
- <dependency org="org.hibernate" name="hibernate-core" rev="3.3.2.GA" conf="default" />
20
- <dependency org="org.hibernate" name="hibernate-validator" rev="3.1.0.GA" conf="default" />
17
+ <dependency org="org.hibernate" name="hibernate-entitymanager" rev="3.6.1.Final" conf="default" />
18
+ <dependency org="org.hibernate" name="hibernate-validator" rev="4.1.0.Final" conf="default" />
21
19
  <dependency org="joda-time" name="joda-time" rev="1.6.2" conf="default" />
22
20
 
23
21
  <!-- Provided dependencies -->
@@ -33,5 +31,8 @@
33
31
  <dependency org="org.mortbay.jetty" name="jsp-api-2.1" rev="6.1.14" conf="jetty->default" />
34
32
  <dependency org="org.mortbay.jetty" name="jsp-2.1" rev="6.1.14" conf="jetty->default" />
35
33
  <dependency org="org.mortbay.jetty" name="jetty-ant" rev="6.1.14" conf="jetty->default" />
34
+
35
+ <!-- Minify dependencies -->
36
+ <dependency org="com.yahoo.platform.yui" name="yuicompressor" rev="2.3.6" conf="minify->default" />
36
37
  </dependencies>
37
38
  </ivy-module>
@@ -0,0 +1,45 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee"
3
+ xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
4
+ id="WebApp_ID" version="2.5">
5
+
6
+ <display-name>vraptor-scaffold-project</display-name>
7
+
8
+ <context-param>
9
+ <param-name>br.com.caelum.vraptor.packages</param-name>
10
+ <param-value>br.com.caelum.vraptor.util.jpa</param-value>
11
+ </context-param>
12
+
13
+ <context-param>
14
+ <param-name>br.com.caelum.vraptor.encoding</param-name>
15
+ <param-value>UTF-8</param-value>
16
+ </context-param>
17
+
18
+ <filter>
19
+ <filter-name>sitemesh</filter-name>
20
+ <filter-class>com.opensymphony.sitemesh.webapp.SiteMeshFilter</filter-class>
21
+ </filter>
22
+
23
+ <filter>
24
+ <filter-name>vraptor</filter-name>
25
+ <filter-class>br.com.caelum.vraptor.VRaptor</filter-class>
26
+ </filter>
27
+
28
+ <filter-mapping>
29
+ <filter-name>sitemesh</filter-name>
30
+ <url-pattern>/*</url-pattern>
31
+ </filter-mapping>
32
+
33
+ <filter-mapping>
34
+ <filter-name>vraptor</filter-name>
35
+ <url-pattern>/*</url-pattern>
36
+ </filter-mapping>
37
+
38
+ <jsp-config>
39
+ <jsp-property-group>
40
+ <url-pattern>*.jsp</url-pattern>
41
+ <page-encoding>UTF-8</page-encoding>
42
+ <include-prelude>/WEB-INF/jsp/prelude.jspf</include-prelude>
43
+ </jsp-property-group>
44
+ </jsp-config>
45
+ </web-app>
@@ -7,6 +7,14 @@
7
7
  <version>0.0.1-SNAPSHOT</version>
8
8
  <name>vraptor-scaffold</name>
9
9
 
10
+ <repositories>
11
+ <repository>
12
+ <id>JBoss</id>
13
+ <name>JBoss repository</name>
14
+ <url>https://repository.jboss.org/nexus/content/groups/public-jboss</url>
15
+ </repository>
16
+ </repositories>
17
+
10
18
  <properties>
11
19
  <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
12
20
  </properties>
@@ -57,12 +65,7 @@
57
65
  <dependency>
58
66
  <groupId>br.com.caelum</groupId>
59
67
  <artifactId>vraptor</artifactId>
60
- <version>3.3.0</version>
61
- </dependency>
62
- <dependency>
63
- <groupId>net.sf.scannotation</groupId>
64
- <artifactId>scannotation</artifactId>
65
- <version>1.0.2</version>
68
+ <version>3.3.1</version>
66
69
  </dependency>
67
70
  <dependency>
68
71
  <groupId>org.hsqldb</groupId>
@@ -79,25 +82,15 @@
79
82
  <artifactId>jstl</artifactId>
80
83
  <version>1.2</version>
81
84
  </dependency>
82
- <dependency>
83
- <groupId>javax.persistence</groupId>
84
- <artifactId>persistence-api</artifactId>
85
- <version>1.0</version>
86
- </dependency>
87
85
  <dependency>
88
86
  <groupId>org.hibernate</groupId>
89
87
  <artifactId>hibernate-entitymanager</artifactId>
90
- <version>3.4.0.GA</version>
91
- </dependency>
92
- <dependency>
93
- <groupId>org.hibernate</groupId>
94
- <artifactId>hibernate-core</artifactId>
95
- <version>3.3.2.GA</version>
88
+ <version>3.6.1.Final</version>
96
89
  </dependency>
97
90
  <dependency>
98
91
  <groupId>org.hibernate</groupId>
99
92
  <artifactId>hibernate-validator</artifactId>
100
- <version>3.1.0.GA</version>
93
+ <version>4.1.0.Final</version>
101
94
  </dependency>
102
95
  <dependency>
103
96
  <groupId>joda-time</groupId>
@@ -6,7 +6,6 @@ import app.models.Product;
6
6
  import app.repositories.ProductRepository;
7
7
  import br.com.caelum.vraptor.Delete;
8
8
  import br.com.caelum.vraptor.Get;
9
- import br.com.caelum.vraptor.Path;
10
9
  import br.com.caelum.vraptor.Post;
11
10
  import br.com.caelum.vraptor.Put;
12
11
  import br.com.caelum.vraptor.Resource;
@@ -20,20 +19,18 @@ public class ProductController {
20
19
  private final ProductRepository repository;
21
20
  private final Validator validator;
22
21
 
23
- public ProductController(Result result, ProductRepository repository, Validator validator) {
22
+ ProductController(Result result, ProductRepository repository, Validator validator) {
24
23
  this.result = result;
25
24
  this.repository = repository;
26
25
  this.validator = validator;
27
26
  }
28
27
 
29
- @Get
30
- @Path("/products")
28
+ @Get("/products")
31
29
  public List<Product> index() {
32
30
  return repository.findAll();
33
31
  }
34
32
 
35
- @Post
36
- @Path("/products")
33
+ @Post("/products")
37
34
  public void create(Product product) {
38
35
  validator.validate(product);
39
36
  validator.onErrorUsePageOf(this).newProduct();
@@ -41,14 +38,12 @@ public class ProductController {
41
38
  result.redirectTo(this).index();
42
39
  }
43
40
 
44
- @Get
45
- @Path("/products/new")
41
+ @Get("/products/new")
46
42
  public Product newProduct() {
47
43
  return new Product();
48
44
  }
49
45
 
50
- @Put
51
- @Path("/products")
46
+ @Put("/products")
52
47
  public void update(Product product) {
53
48
  validator.validate(product);
54
49
  validator.onErrorUsePageOf(this).edit(product);
@@ -56,23 +51,19 @@ public class ProductController {
56
51
  result.redirectTo(this).index();
57
52
  }
58
53
 
59
- @Get
60
- @Path("/products/{product.id}/edit")
54
+ @Get("/products/{product.id}/edit")
61
55
  public Product edit(Product product) {
62
56
  return repository.find(product.getId());
63
57
  }
64
58
 
65
- @Get
66
- @Path("/products/{product.id}")
59
+ @Get("/products/{product.id}")
67
60
  public Product show(Product product) {
68
61
  return repository.find(product.getId());
69
62
  }
70
63
 
71
- @Delete
72
- @Path("/products/{product.id}")
64
+ @Delete("/products/{product.id}")
73
65
  public void destroy(Product product) {
74
66
  repository.destroy(repository.find(product.getId()));
75
67
  result.redirectTo(this).index();
76
68
  }
77
-
78
- }
69
+ }