You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@struts.apache.org by lu...@apache.org on 2016/07/14 17:58:06 UTC
[50/51] [abbrv] [partial] struts-archetypes git commit: WW-4316 Moves
Struts archetypes into its own repo
http://git-wip-us.apache.org/repos/asf/struts-archetypes/blob/3662396a/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/java/actions/data/ProjectsAction.java
----------------------------------------------------------------------
diff --git a/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/java/actions/data/ProjectsAction.java b/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/java/actions/data/ProjectsAction.java
new file mode 100644
index 0000000..996d089
--- /dev/null
+++ b/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/java/actions/data/ProjectsAction.java
@@ -0,0 +1,72 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package ${package}.actions.data;
+
+import com.opensymphony.xwork2.ActionSupport;
+import org.apache.struts2.convention.annotation.Result;
+
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * <code>List Apache projects.</code>
+ */
+@Result(type = "json")
+public class ProjectsAction extends ActionSupport {
+
+ private static final long serialVersionUID = 9037336532369476225L;
+ private static final Logger log = LogManager.getLogger(ProjectsAction.class);
+
+ private List<String> projectNames;
+
+ public String execute() throws Exception {
+
+ projectNames = new ArrayList<String>();
+ projectNames.add("Apache Struts");
+ projectNames.add("Apache Log4j");
+ projectNames.add("Apache Tomcat");
+ projectNames.add("Apache Maven");
+ projectNames.add("Apache Ant");
+ projectNames.add("Apache Log4Net");
+ projectNames.add("Apache Log4Cxx");
+ projectNames.add("Apache Chainsaw");
+ projectNames.add("Apache Incubator");
+ projectNames.add("Apache Hadoop");
+ projectNames.add("Apache OpenOffice");
+ projectNames.add("Apache Mahout");
+ projectNames.add("Apache Tapestry");
+ projectNames.add("Apache Jena");
+ projectNames.add("Apache Solr");
+ projectNames.add("Apache Cayenne");
+ projectNames.add("Apache OpenEJB");
+ projectNames.add("Apache Deltaspike");
+ projectNames.add("Apache Cordova");
+
+ log.debug("Return {} Apache projects", projectNames.size());
+
+ return SUCCESS;
+ }
+
+ public List<String> getProjectNames() {
+ return projectNames;
+ }
+}
http://git-wip-us.apache.org/repos/asf/struts-archetypes/blob/3662396a/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/java/actions/data/package-info.java
----------------------------------------------------------------------
diff --git a/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/java/actions/data/package-info.java b/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/java/actions/data/package-info.java
new file mode 100644
index 0000000..3e4af32
--- /dev/null
+++ b/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/java/actions/data/package-info.java
@@ -0,0 +1,24 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+@ParentPackage("data")
+@Namespace("/data")
+package ${package}.actions.data;
+
+import org.apache.struts2.convention.annotation.Namespace;
+import org.apache.struts2.convention.annotation.ParentPackage;
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/struts-archetypes/blob/3662396a/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/resources/jshint.conf.js
----------------------------------------------------------------------
diff --git a/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/resources/jshint.conf.js b/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/resources/jshint.conf.js
new file mode 100644
index 0000000..91d3bb3
--- /dev/null
+++ b/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/resources/jshint.conf.js
@@ -0,0 +1,13 @@
+{
+ "maxparams": 3,
+ "indent": true,
+ "camelcase": true,
+ "eqeqeq": true,
+ "forin": true,
+ "immed": true,
+ "latedef": false,
+ "noarg": true,
+ "noempty": true,
+ "nonew": true,
+ "globals": {}
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/struts-archetypes/blob/3662396a/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/resources/log4j2.xml
----------------------------------------------------------------------
diff --git a/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/resources/log4j2.xml b/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/resources/log4j2.xml
new file mode 100644
index 0000000..6d27d12
--- /dev/null
+++ b/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/resources/log4j2.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Configuration>
+ <Appenders>
+ <Console name="STDOUT" target="SYSTEM_OUT">
+ <PatternLayout pattern="%d %-5p [%t] %C{2} (%F:%L) - %m%n"/>
+ </Console>
+ </Appenders>
+ <Loggers>
+ <Logger name="com.opensymphony.xwork2" level="info"/>
+ <Logger name="org.apache.struts2" level="info"/>
+ <Logger name="\${groupId}" level="debug"/>
+ <Root level="warn">
+ <AppenderRef ref="STDOUT"/>
+ </Root>
+ </Loggers>
+</Configuration>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/struts-archetypes/blob/3662396a/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/resources/package.properties
----------------------------------------------------------------------
diff --git a/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/resources/package.properties b/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/resources/package.properties
new file mode 100644
index 0000000..b8ee61f
--- /dev/null
+++ b/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/resources/package.properties
@@ -0,0 +1 @@
+hello.message = Struts is up and running...
http://git-wip-us.apache.org/repos/asf/struts-archetypes/blob/3662396a/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/resources/package_es.properties
----------------------------------------------------------------------
diff --git a/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/resources/package_es.properties b/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/resources/package_es.properties
new file mode 100644
index 0000000..9f3bc40
--- /dev/null
+++ b/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/resources/package_es.properties
@@ -0,0 +1 @@
+hello.message = \u00A1Struts est\u00E1 bien\!...
http://git-wip-us.apache.org/repos/asf/struts-archetypes/blob/3662396a/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/resources/struts.xml
----------------------------------------------------------------------
diff --git a/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/resources/struts.xml b/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/resources/struts.xml
new file mode 100644
index 0000000..d11f2d8
--- /dev/null
+++ b/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/resources/struts.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE struts PUBLIC
+ "-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"
+ "http://struts.apache.org/dtds/struts-2.5.dtd">
+<struts>
+
+ <constant name="struts.enable.DynamicMethodInvocation" value="false"/>
+ <constant name="struts.devMode" value="true"/>
+
+ <constant name="struts.convention.default.parent.package" value="angularstruts"/>
+ <package name="angularstruts" extends="json-default">
+ <default-action-ref name="index" />
+ </package>
+ <package name="data" extends="angularstruts" namespace="/data"></package>
+
+</struts>
http://git-wip-us.apache.org/repos/asf/struts-archetypes/blob/3662396a/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/content/index.jsp
----------------------------------------------------------------------
diff --git a/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/content/index.jsp b/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/content/index.jsp
new file mode 100644
index 0000000..3f6c374
--- /dev/null
+++ b/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/content/index.jsp
@@ -0,0 +1,38 @@
+<!DOCTYPE html>
+<%@ page contentType="text/html; charset=UTF-8" %>
+<%@ taglib prefix="s" uri="/struts-tags" %>
+<html lang="en" ng-app="app">
+<head>
+ <meta charset="utf-8">
+ <title>My AngularJS Struts2 App</title>
+
+ <base href="<s:url forceAddSchemeHostAndPort="true" includeContext="true" value="/" namespace="/" />">
+</head>
+<body>
+
+<h2><s:property value="message"/></h2>
+
+<div>
+ <a href="/home">Home</a> - <a href="/projects">Projects</a>
+</div>
+
+<div ng-controller="AppController as app">
+ <div ng-view></div>
+</div>
+
+<s:if test="useMinifiedResources">
+ <script src="<s:url value="js/external.js" />"></script>
+ <script src="<s:url value="js/application.js" />"></script>
+</s:if>
+<s:else>
+ <script src="<s:url value="js/lib/angular/angular.min.js" />"></script>
+ <script src="<s:url value="js/lib/angular/angular-route.min.js" />"></script>
+ <script src="<s:url value="js/app.js" />"></script>
+ <script src="<s:url value="js/config.js" />"></script>
+ <script src="<s:url value="js/services/DataService.js" />"></script>
+ <script src="<s:url value="js/controllers/AppController.js" />"></script>
+ <script src="<s:url value="js/controllers/HomeController.js" />"></script>
+ <script src="<s:url value="js/controllers/ApacheProjectsController.js" />"></script>
+</s:else>
+</body>
+</html>
http://git-wip-us.apache.org/repos/asf/struts-archetypes/blob/3662396a/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/web.xml
----------------------------------------------------------------------
diff --git a/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/web.xml b/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/web.xml
new file mode 100644
index 0000000..8d08c0b
--- /dev/null
+++ b/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/web.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<web-app id="struts_angularjs" version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
+ <display-name>Struts Blank AngularJS App</display-name>
+
+ <filter>
+ <filter-name>struts2</filter-name>
+ <filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>
+ </filter>
+
+ <filter-mapping>
+ <filter-name>struts2</filter-name>
+ <url-pattern>/*</url-pattern>
+ </filter-mapping>
+
+ <welcome-file-list>
+ <welcome-file>index.jsp</welcome-file>
+ </welcome-file-list>
+</web-app>
http://git-wip-us.apache.org/repos/asf/struts-archetypes/blob/3662396a/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/index.jsp
----------------------------------------------------------------------
diff --git a/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/index.jsp b/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/index.jsp
new file mode 100644
index 0000000..a81b87f
--- /dev/null
+++ b/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/index.jsp
@@ -0,0 +1 @@
+<% response.sendRedirect("index"); %>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/struts-archetypes/blob/3662396a/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/js/app.js
----------------------------------------------------------------------
diff --git a/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/js/app.js b/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/js/app.js
new file mode 100644
index 0000000..6d2da17
--- /dev/null
+++ b/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/js/app.js
@@ -0,0 +1,26 @@
+/*
+ * $Id$
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+(function() {
+ 'use strict';
+
+ angular
+ .module('app', ['ngRoute']);
+})();
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/struts-archetypes/blob/3662396a/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/js/config.js
----------------------------------------------------------------------
diff --git a/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/js/config.js b/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/js/config.js
new file mode 100644
index 0000000..9b93aab
--- /dev/null
+++ b/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/js/config.js
@@ -0,0 +1,40 @@
+/*
+ * $Id$
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+(function() {
+ 'use strict';
+
+ angular
+ .module('app')
+ .config(['$routeProvider', '$locationProvider',
+ function($routeProvider, $locationProvider) {
+
+ $locationProvider.html5Mode(true).hashPrefix('!');
+
+ $routeProvider.when('/projects', {
+ templateUrl: 'partials/projects.html',
+ controller: 'ApacheProjectsController as vm'
+ }).when('/home', {
+ templateUrl: 'partials/home.html',
+ controller: 'HomeController as vm'
+ }).otherwise({ redirectTo: '/home' });
+ }
+ ]);
+})();
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/struts-archetypes/blob/3662396a/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/js/controllers/ApacheProjectsController.js
----------------------------------------------------------------------
diff --git a/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/js/controllers/ApacheProjectsController.js b/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/js/controllers/ApacheProjectsController.js
new file mode 100644
index 0000000..1fb0ca9
--- /dev/null
+++ b/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/js/controllers/ApacheProjectsController.js
@@ -0,0 +1,40 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+(function() {
+ 'use strict';
+
+ angular
+ .module('app')
+ .controller('ApacheProjectsController', ApacheProjectsController);
+
+ function ApacheProjectsController($log, DataService) {
+ var vm = this;
+
+ init();
+
+ function init() {
+ return DataService.getProjects().then(function(data) {
+ vm.projects = data.projectNames;
+ return vm.projects;
+ }, function() {
+ $log.error('Could not receive project names.');
+ });
+ }
+ }
+})();
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/struts-archetypes/blob/3662396a/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/js/controllers/AppController.js
----------------------------------------------------------------------
diff --git a/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/js/controllers/AppController.js b/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/js/controllers/AppController.js
new file mode 100644
index 0000000..d6de31a
--- /dev/null
+++ b/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/js/controllers/AppController.js
@@ -0,0 +1,29 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+(function() {
+ 'use strict';
+
+ angular
+ .module('app')
+ .controller('AppController', AppController);
+
+ function AppController() {
+
+ }
+})();
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/struts-archetypes/blob/3662396a/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/js/controllers/HomeController.js
----------------------------------------------------------------------
diff --git a/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/js/controllers/HomeController.js b/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/js/controllers/HomeController.js
new file mode 100644
index 0000000..44c7cf9
--- /dev/null
+++ b/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/js/controllers/HomeController.js
@@ -0,0 +1,30 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+(function() {
+ 'use strict';
+
+ angular
+ .module('app')
+ .controller('HomeController', HomeController);
+
+ function HomeController() {
+ var vm = this;
+ vm.name = "Sunshine";
+ }
+})();
\ No newline at end of file