Browse Source

Revenj Java switched from JSP to Rocker (#2934)

Upgrade .NET to 1.4.2
DSL Platform upgrade to 1.8
zapov 8 years ago
parent
commit
c71b841756

+ 1 - 1
frameworks/CSharp/revenj/README.md

@@ -28,4 +28,4 @@ The tests were run with:
  * [Mono 4.2](http://www.mono-project.com/)
  * [.NET 4.5](https://www.microsoft.com/net)
  * [Postgres 9.3](http://www.postgresql.org/)
- * [Revenj.NET 1.4.1](http://github.com/ngs-doo/revenj)
+ * [Revenj.NET 1.4.2](http://github.com/ngs-doo/revenj)

+ 2 - 2
frameworks/CSharp/revenj/setup.sh

@@ -8,8 +8,8 @@ rm -rf $TROOT/exe $TROOT/tmp $TROOT/dsl-clc.jar $TROOT/http-server.zip
 echo "Download DSL compiler client"
 wget -O $TROOT/dsl-clc.jar https://github.com/ngs-doo/dsl-compiler-client/releases/download/1.8.2/dsl-clc.jar
 
-echo "Download Revenj.NET HTTP server 1.4.1"
-wget -O $TROOT/http-server.zip https://github.com/ngs-doo/revenj/releases/download/1.4.1/http-server.zip
+echo "Download Revenj.NET HTTP server 1.4.2"
+wget -O $TROOT/http-server.zip https://github.com/ngs-doo/revenj/releases/download/1.4.2/http-server.zip
 
 echo "Unzipping HTTP server"
 unzip $TROOT/http-server.zip -d $TROOT/exe

+ 1 - 1
frameworks/CSharp/revenj/setup_windows.ps1

@@ -43,7 +43,7 @@ if ($action -eq 'start') {
 
 	echo "Download Revenj HTTP server"
 	$client = new-object System.Net.WebClient
-	$client.DownloadFile( "https://github.com/ngs-doo/revenj/releases/download/1.4.1/http-server.zip", $httpZip )
+	$client.DownloadFile( "https://github.com/ngs-doo/revenj/releases/download/1.4.2/http-server.zip", $httpZip )
 
 	echo "Unzipping HTTP server"
 	[System.IO.Compression.ZipFile]::ExtractToDirectory($httpZip, $exe)

+ 5 - 4
frameworks/Java/revenj-jvm/README.md

@@ -1,8 +1,8 @@
 # Revenj.JVM Benchmarking Test
 
-Servlet + Revenj DB API + DSL-JSON + PostgreSQL.
+Servlet + Revenj DB API + DSL-JSON + Rocker + PostgreSQL.
 It uses precompiled DSL model for POJO classes.
-It uses JSP for HTML output
+It uses Rocker for HTML output
 
 ### DSL model
 Data structures are defined in a DSL schema
@@ -24,8 +24,9 @@ The tests were run with:
  * [Oracle Java 1.8](https://www.oracle.com/java/)
  * [Postgres 9.3](http://www.postgresql.org/)
  * [Resin 4.0](http://www.caucho.com/)
- * [DSL JSON 1.2.0](http://github.com/ngs-doo/dsl-json)
- * [Revenj.Java 1.0.2](http://github.com/ngs-doo/revenj)
+ * [DSL JSON 1.4.0](http://github.com/ngs-doo/dsl-json)
+ * [Revenj.Java 1.2.0](http://github.com/ngs-doo/revenj)
+ * [Rocker 0.2.0](https://github.com/fizzed/rocker)
 
 ## Test URLs
 

+ 22 - 8
frameworks/Java/revenj-jvm/pom.xml

@@ -6,7 +6,7 @@
 	<artifactId>revenj</artifactId>
 	<name>Revenj.JVM</name>
 	<packaging>war</packaging>
-	<version>1.0.3</version>
+	<version>1.1.0</version>
 	<properties>
 		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
 	</properties>
@@ -14,12 +14,7 @@
 		<dependency>
 			<groupId>org.revenj</groupId>
 			<artifactId>revenj-core</artifactId>
-			<version>1.1.3</version>
-		</dependency>
-		<dependency>
-			<groupId>org.apache.commons</groupId>
-			<artifactId>commons-lang3</artifactId>
-			<version>3.4</version>
+			<version>1.2.0</version>
 		</dependency>
 		<dependency>
 			<groupId>javax.servlet</groupId>
@@ -27,13 +22,18 @@
 			<version>2.5</version>
 			<scope>provided</scope>
 		</dependency>
+		<dependency>
+			<groupId>com.fizzed</groupId>
+			<artifactId>rocker-runtime</artifactId>
+			<version>0.20.0</version>
+		</dependency>
 	</dependencies>
 	<build>
 		<plugins>
 			<plugin>
 				<groupId>com.dslplatform</groupId>
 				<artifactId>dsl-platform-maven-plugin</artifactId>
-				<version>1.1.2</version>
+				<version>1.2.0</version>
 				<executions>
 					<execution>
 						<phase>generate-sources</phase>
@@ -69,6 +69,20 @@
 					<warName>revenj</warName>
 				</configuration>
 			</plugin>
+			<plugin>
+				<groupId>com.fizzed</groupId>
+				<artifactId>rocker-maven-plugin</artifactId>
+				<version>0.20.0</version>
+				<executions>
+					<execution>
+						<id>generate-rocker-templates</id>
+						<phase>generate-sources</phase>
+						<goals>
+							<goal>generate</goal>
+						</goals>
+					</execution>
+				</executions>
+			</plugin>
 		</plugins>
 	</build>
 </project>

+ 5 - 3
frameworks/Java/revenj-jvm/src/main/java/hello/FortunesServlet.java

@@ -1,5 +1,7 @@
 package hello;
 
+import com.fizzed.rocker.ContentType;
+import com.fizzed.rocker.runtime.OutputStreamOutput;
 import dsl.FrameworkBench.Fortune;
 
 import javax.servlet.ServletException;
@@ -17,8 +19,8 @@ public class FortunesServlet extends HttpServlet {
 		final List<Fortune> fortunes = ctx.fortunes.search();
 		fortunes.add(new Fortune(0, "Additional fortune added at request time."));
 		fortunes.sort(COMPARATOR);
-		req.setCharacterEncoding("UTF-8");
-		req.setAttribute("fortunes", fortunes);
-		req.getRequestDispatcher("/WEB-INF/jsp/fortunes.jsp").forward(req, res);
+		OutputStreamOutput oso = new OutputStreamOutput(ContentType.HTML, res.getOutputStream(), "UTF-8");
+		res.setContentType("text/html;charset=UTF-8");
+		views.fortunes.template(fortunes).render((t, n) -> oso);
 	}
 }

+ 15 - 0
frameworks/Java/revenj-jvm/src/main/java/views/fortunes.rocker.html

@@ -0,0 +1,15 @@
+@import dsl.FrameworkBench.*
+@import java.util.*
+
+@args (List<Fortune> fortunes)
+
+<!DOCTYPE html><html><head><title>Fortunes</title></head>
+<body>
+<table>
+    <tr><th>id</th><th>message</th></tr>
+    @for (f : fortunes) {
+    <tr><td>@f.getId()</td><td>@f.getMessage()</td></tr>
+    }
+</table>
+</body>
+</html>

+ 0 - 15
frameworks/Java/revenj-jvm/src/main/webapp/WEB-INF/jsp/fortunes.jsp

@@ -1,15 +0,0 @@
-<%@ page import="dsl.FrameworkBench.*,java.util.*,org.apache.commons.lang3.*" session="false" pageEncoding="UTF-8" %>
-<% List<Fortune> fortunes = (List)request.getAttribute("fortunes"); %>
-<!DOCTYPE html>
-<html>
-<head><title>Fortunes</title></head>
-<body>
-<table>
-<tr><th>id</th><th>message</th></tr>
-<%  for (int i=0; i<fortunes.size(); i++) {
-    Fortune f = fortunes.get(i); %>
-<tr><td><%= f.getId() %></td><td><%= StringEscapeUtils.escapeHtml4(f.getMessage()) %></td></tr>
-<%  } %>
-</table>
-</body>
-</html>

+ 3 - 3
toolset/setup/linux/languages/dsl_platform.sh

@@ -1,11 +1,11 @@
 #!/bin/bash
 
-RETCODE=$(fw_exists ${IROOT}/dsl-compiler-1.7.installed)
+RETCODE=$(fw_exists ${IROOT}/dsl-compiler-1.8.installed)
 [ ! "$RETCODE" == 0 ] || { \
   return 0; }
 
-wget -O $IROOT/dsl-compiler.zip https://github.com/ngs-doo/revenj/releases/download/1.4.1/dsl-compiler.zip
+wget -O $IROOT/dsl-compiler.zip https://github.com/ngs-doo/revenj/releases/download/1.4.2/dsl-compiler.zip
 unzip -o $IROOT/dsl-compiler.zip -d $IROOT
 rm $IROOT/dsl-compiler.zip
 
-echo "1.7" > $IROOT/dsl-compiler-1.7.installed
+echo "1.8" > $IROOT/dsl-compiler-1.8.installed