Author: tveronezi
Date: Sat Jun  9 01:19:30 2012
New Revision: 1348292

URL: http://svn.apache.org/viewvc?rev=1348292&view=rev
Log:
https://issues.apache.org/jira/browse/TOMEE-225
loading the saved objects

Added:
    
openejb/trunk/openejb/tomee/tomee-webapp/src/main/java/org/apache/tomee/webapp/servlet/SessionDataServlet.java
      - copied, changed from r1348230, 
openejb/trunk/openejb/tomee/tomee-webapp/src/main/java/org/apache/tomee/webapp/servlet/SystemInfoServlet.java
Modified:
    
openejb/trunk/openejb/tomee/tomee-plus-webapp/src/main/webapp/WEB-INF/web.xml
    
openejb/trunk/openejb/tomee/tomee-webapp/src/main/java/org/apache/tomee/webapp/SessionData.java
    openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/WEB-INF/web.xml
    
openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/js/tomee/ApplicationController.js
    
openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/js/tomee/ApplicationModel.js
    
openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/js/tomee/util/Obj.js
    
openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/js/tomee/view/ApplicationViewHome.js

Modified: 
openejb/trunk/openejb/tomee/tomee-plus-webapp/src/main/webapp/WEB-INF/web.xml
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb/tomee/tomee-plus-webapp/src/main/webapp/WEB-INF/web.xml?rev=1348292&r1=1348291&r2=1348292&view=diff
==============================================================================
--- 
openejb/trunk/openejb/tomee/tomee-plus-webapp/src/main/webapp/WEB-INF/web.xml 
(original)
+++ 
openejb/trunk/openejb/tomee/tomee-plus-webapp/src/main/webapp/WEB-INF/web.xml 
Sat Jun  9 01:19:30 2012
@@ -92,6 +92,16 @@
         
<servlet-class>org.apache.tomee.webapp.servlet.ConsoleServlet</servlet-class>
     </servlet>
 
+    <servlet>
+        <servlet-name>SessionDataServlet</servlet-name>
+        
<servlet-class>org.apache.tomee.webapp.servlet.SessionDataServlet</servlet-class>
+    </servlet>
+
+    <servlet-mapping>
+        <servlet-name>SessionDataServlet</servlet-name>
+        <url-pattern>/data/*</url-pattern>
+    </servlet-mapping>
+
     <servlet-mapping>
         <servlet-name>ServerServlet</servlet-name>
         <url-pattern>/ejb/*</url-pattern>

Modified: 
openejb/trunk/openejb/tomee/tomee-webapp/src/main/java/org/apache/tomee/webapp/SessionData.java
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb/tomee/tomee-webapp/src/main/java/org/apache/tomee/webapp/SessionData.java?rev=1348292&r1=1348291&r2=1348292&view=diff
==============================================================================
--- 
openejb/trunk/openejb/tomee/tomee-webapp/src/main/java/org/apache/tomee/webapp/SessionData.java
 (original)
+++ 
openejb/trunk/openejb/tomee/tomee-webapp/src/main/java/org/apache/tomee/webapp/SessionData.java
 Sat Jun  9 01:19:30 2012
@@ -17,6 +17,14 @@
 
 package org.apache.tomee.webapp;
 
+import java.util.HashMap;
+import java.util.Map;
+
 public class SessionData {
 
+    private final Map<String, Object> saved = new HashMap<String, Object>();
+
+    public Map<String, Object> getSaved() {
+        return saved;
+    }
 }

Copied: 
openejb/trunk/openejb/tomee/tomee-webapp/src/main/java/org/apache/tomee/webapp/servlet/SessionDataServlet.java
 (from r1348230, 
openejb/trunk/openejb/tomee/tomee-webapp/src/main/java/org/apache/tomee/webapp/servlet/SystemInfoServlet.java)
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb/tomee/tomee-webapp/src/main/java/org/apache/tomee/webapp/servlet/SessionDataServlet.java?p2=openejb/trunk/openejb/tomee/tomee-webapp/src/main/java/org/apache/tomee/webapp/servlet/SessionDataServlet.java&p1=openejb/trunk/openejb/tomee/tomee-webapp/src/main/java/org/apache/tomee/webapp/servlet/SystemInfoServlet.java&r1=1348230&r2=1348292&rev=1348292&view=diff
==============================================================================
--- 
openejb/trunk/openejb/tomee/tomee-webapp/src/main/java/org/apache/tomee/webapp/servlet/SystemInfoServlet.java
 (original)
+++ 
openejb/trunk/openejb/tomee/tomee-webapp/src/main/java/org/apache/tomee/webapp/servlet/SessionDataServlet.java
 Sat Jun  9 01:19:30 2012
@@ -17,25 +17,17 @@
 
 package org.apache.tomee.webapp.servlet;
 
-import org.apache.openejb.util.OpenEJBScripter;
 import org.apache.tomee.webapp.JsonExecutor;
+import org.apache.tomee.webapp.listener.UserSessionListener;
 
 import javax.servlet.ServletException;
 import javax.servlet.http.HttpServlet;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 import java.io.IOException;
-import java.lang.management.ManagementFactory;
-import java.lang.management.RuntimeMXBean;
-import java.security.Principal;
-import java.util.HashMap;
-import java.util.List;
 import java.util.Map;
-import java.util.Set;
 
-
-public class SystemInfoServlet extends HttpServlet {
-    private static final TomEEVersion VERSION;
+public class SessionDataServlet extends HttpServlet {
 
     @Override
     protected void doGet(final HttpServletRequest req, final 
HttpServletResponse resp) throws ServletException, IOException {
@@ -43,92 +35,11 @@ public class SystemInfoServlet extends H
             @Override
             public void call(Map<String, Object> json) throws Exception {
 
-                final Map<String, Object> systemProperties = new 
HashMap<String, Object>();
-                json.put("systemProperties", systemProperties);
-
-                final Set<String> props = 
System.getProperties().stringPropertyNames();
-                for (String propName : props) {
-                    systemProperties.put(propName, 
System.getProperty(propName));
-                }
-
-                json.put("env", System.getenv());
-
-                {
-                    Map<String,Object> serverVersion = new HashMap<String, 
Object>();
-                    json.put("tomee", serverVersion);
-
-                    serverVersion.put("name", VERSION.getName());
-                    serverVersion.put("hasMdbs", VERSION.hasMdbs());
-                    serverVersion.put("hasWebservices", 
VERSION.hasWebservices());
-                }
-
-                {
-                    final RuntimeMXBean runtimemxBean = 
ManagementFactory.getRuntimeMXBean();
-                    final List<String> arguments = 
runtimemxBean.getInputArguments();
-
-                    json.put("jvmArguments", arguments);
+                final Map<String, Object> savedObjs = 
UserSessionListener.getServiceContext(req.getSession()).getSaved();
+                for (String key : savedObjs.keySet()) {
+                    json.put(key, savedObjs.get(key));
                 }
-
-                final Principal principal = req.getUserPrincipal();
-                if (principal != null) {
-                    json.put("user", principal.getName());
-                }
-
-                json.put("supportedScriptLanguages", 
OpenEJBScripter.getSupportedLanguages());
             }
         });
     }
-
-    public enum TomEEVersion {
-        WEBPROFILE(false, false, "Web Profile"), JAXRS(true, false, "JAX-RS"), 
PLUS(true, true, "+");
-
-        private final boolean webservices;
-        private final boolean mdbs;
-        private final String name;
-
-        private TomEEVersion(final boolean webservices, final boolean mdbs, 
final String name) {
-            this.webservices = webservices;
-            this.mdbs = mdbs;
-            this.name = name;
-        }
-
-        public boolean hasWebservices() {
-            return webservices;
-        }
-
-        public boolean hasMdbs() {
-            return mdbs;
-        }
-
-        public String getName() {
-            return name;
-        }
-    }
-
-    static {
-        final ClassLoader cl = SystemInfoServlet.class.getClassLoader();
-        boolean mdbs;
-        try {
-            cl.loadClass("org.apache.activemq.ra.ActiveMQActivationSpec");
-            mdbs = true;
-        } catch (ClassNotFoundException e) {
-            mdbs = false;
-        }
-
-        boolean webservices;
-        try {
-            cl.loadClass("org.apache.openejb.server.rest.RESTService");
-            webservices = true;
-        } catch (ClassNotFoundException e) {
-            webservices = false;
-        }
-
-        if (webservices && mdbs) {
-            VERSION = TomEEVersion.PLUS;
-        } else if (webservices) {
-            VERSION = TomEEVersion.JAXRS;
-        } else {
-            VERSION = TomEEVersion.WEBPROFILE;
-        }
-    }
 }

Modified: 
openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/WEB-INF/web.xml
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/WEB-INF/web.xml?rev=1348292&r1=1348291&r2=1348292&view=diff
==============================================================================
--- openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/WEB-INF/web.xml 
(original)
+++ openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/WEB-INF/web.xml 
Sat Jun  9 01:19:30 2012
@@ -92,6 +92,16 @@
         
<servlet-class>org.apache.tomee.webapp.servlet.ConsoleServlet</servlet-class>
     </servlet>
 
+    <servlet>
+        <servlet-name>SessionDataServlet</servlet-name>
+        
<servlet-class>org.apache.tomee.webapp.servlet.SessionDataServlet</servlet-class>
+    </servlet>
+
+    <servlet-mapping>
+        <servlet-name>SessionDataServlet</servlet-name>
+        <url-pattern>/data/*</url-pattern>
+    </servlet-mapping>
+
     <servlet-mapping>
         <servlet-name>ServerServlet</servlet-name>
         <url-pattern>/ejb/*</url-pattern>

Modified: 
openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/js/tomee/ApplicationController.js
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/js/tomee/ApplicationController.js?rev=1348292&r1=1348291&r2=1348292&view=diff
==============================================================================
--- 
openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/js/tomee/ApplicationController.js
 (original)
+++ 
openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/js/tomee/ApplicationController.js
 Sat Jun  9 01:19:30 2012
@@ -71,50 +71,6 @@ TOMEE.ApplicationController = function (
         ] }
     ]);
 
-    homeView.loadSavedObjects([
-        { name:TOMEE.Sequence.next('name'), value:TOMEE.Sequence.next('value') 
},
-        { name:TOMEE.Sequence.next('name'), value:TOMEE.Sequence.next('value') 
},
-        { name:TOMEE.Sequence.next('name'), value:TOMEE.Sequence.next('value') 
},
-        { name:TOMEE.Sequence.next('name'), value:TOMEE.Sequence.next('value') 
},
-        { name:TOMEE.Sequence.next('name'), value:TOMEE.Sequence.next('value') 
},
-        { name:TOMEE.Sequence.next('name'), value:TOMEE.Sequence.next('value') 
},
-        { name:TOMEE.Sequence.next('name'), value:TOMEE.Sequence.next('value') 
},
-        { name:TOMEE.Sequence.next('name'), value:TOMEE.Sequence.next('value') 
},
-        { name:TOMEE.Sequence.next('name'), value:TOMEE.Sequence.next('value') 
},
-        { name:TOMEE.Sequence.next('name'), value:TOMEE.Sequence.next('value') 
},
-        { name:TOMEE.Sequence.next('name'), value:TOMEE.Sequence.next('value') 
},
-        { name:TOMEE.Sequence.next('name'), value:TOMEE.Sequence.next('value') 
},
-        { name:TOMEE.Sequence.next('name'), value:TOMEE.Sequence.next('value') 
},
-        { name:TOMEE.Sequence.next('name'), value:TOMEE.Sequence.next('value') 
},
-        { name:TOMEE.Sequence.next('name'), value:TOMEE.Sequence.next('value') 
},
-        { name:TOMEE.Sequence.next('name'), value:TOMEE.Sequence.next('value') 
},
-        { name:TOMEE.Sequence.next('name'), value:TOMEE.Sequence.next('value') 
},
-        { name:TOMEE.Sequence.next('name'), value:TOMEE.Sequence.next('value') 
},
-        { name:TOMEE.Sequence.next('name'), value:TOMEE.Sequence.next('value') 
},
-        { name:TOMEE.Sequence.next('name'), value:TOMEE.Sequence.next('value') 
},
-        { name:TOMEE.Sequence.next('name'), value:TOMEE.Sequence.next('value') 
},
-        { name:TOMEE.Sequence.next('name'), value:TOMEE.Sequence.next('value') 
},
-        { name:TOMEE.Sequence.next('name'), value:TOMEE.Sequence.next('value') 
},
-        { name:TOMEE.Sequence.next('name'), value:TOMEE.Sequence.next('value') 
},
-        { name:TOMEE.Sequence.next('name'), value:TOMEE.Sequence.next('value') 
},
-        { name:TOMEE.Sequence.next('name'), value:TOMEE.Sequence.next('value') 
},
-        { name:TOMEE.Sequence.next('name'), value:TOMEE.Sequence.next('value') 
},
-        { name:TOMEE.Sequence.next('name'), value:TOMEE.Sequence.next('value') 
},
-        { name:TOMEE.Sequence.next('name'), value:TOMEE.Sequence.next('value') 
},
-        { name:TOMEE.Sequence.next('name'), value:TOMEE.Sequence.next('value') 
},
-        { name:TOMEE.Sequence.next('name'), value:TOMEE.Sequence.next('value') 
},
-        { name:TOMEE.Sequence.next('name'), value:TOMEE.Sequence.next('value') 
},
-        { name:TOMEE.Sequence.next('name'), value:TOMEE.Sequence.next('value') 
},
-        { name:TOMEE.Sequence.next('name'), value:TOMEE.Sequence.next('value') 
},
-        { name:TOMEE.Sequence.next('name'), value:TOMEE.Sequence.next('value') 
},
-        { name:TOMEE.Sequence.next('name'), value:TOMEE.Sequence.next('value') 
},
-        { name:TOMEE.Sequence.next('name'), value:TOMEE.Sequence.next('value') 
},
-        { name:TOMEE.Sequence.next('name'), value:TOMEE.Sequence.next('value') 
},
-        { name:TOMEE.Sequence.next('name'), value:TOMEE.Sequence.next('value') 
},
-        { name:TOMEE.Sequence.next('name'), value:TOMEE.Sequence.next('value') 
}
-
-    ]);
-
     channel.bind('application.name.click', function (params) {
         window.open('http://openejb.apache.org/', 'OpenEJB');
     });
@@ -161,6 +117,10 @@ TOMEE.ApplicationController = function (
         model.loadLog(params.file, params.tail);
     });
 
+    channel.bind('app.new.session.data', function (params) {
+        homeView.loadSavedObjects(params);
+    });
+
     var view = TOMEE.ApplicationView({
         channel:channel,
         groups:{

Modified: 
openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/js/tomee/ApplicationModel.js
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/js/tomee/ApplicationModel.js?rev=1348292&r1=1348291&r2=1348292&view=diff
==============================================================================
--- 
openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/js/tomee/ApplicationModel.js
 (original)
+++ 
openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/js/tomee/ApplicationModel.js
 Sat Jun  9 01:19:30 2012
@@ -28,6 +28,7 @@ TOMEE.ApplicationModel = function (cfg) 
 
     var systemInfo = {};
     var logInfo = {};
+    var sessionData = {};
 
     var request = function (params) {
         $.ajax({
@@ -71,7 +72,7 @@ TOMEE.ApplicationModel = function (cfg) 
                     systemInfo = data;
                     channel.send('app.system.info', data);
 
-                    if(callback) {
+                    if (callback) {
                         callback(data);
                     }
                 }
@@ -120,6 +121,16 @@ TOMEE.ApplicationModel = function (cfg) 
         },
         getLogInfo:function () {
             return logInfo;
+        },
+        loadSessionData:function () {
+            request({
+                method:'GET',
+                url:TOMEE.baseURL('data'),
+                success:function (data) {
+                    sessionData = data;
+                    channel.send('app.new.session.data', data);
+                }
+            });
         }
     };
 }
\ No newline at end of file

Modified: 
openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/js/tomee/util/Obj.js
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/js/tomee/util/Obj.js?rev=1348292&r1=1348291&r2=1348292&view=diff
==============================================================================
--- 
openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/js/tomee/util/Obj.js 
(original)
+++ 
openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/js/tomee/util/Obj.js 
Sat Jun  9 01:19:30 2012
@@ -34,6 +34,23 @@ TOMEE.utils = {
         return defaultValue;
     },
 
+    toArray:function (obj, objBuilder) {
+        if (!obj) {
+            return [];
+        }
+
+        if (obj instanceof Array) {
+            return obj;
+        }
+
+        var result = [];
+        for(var key in obj) {
+            result.push(objBuilder(key, obj[key]));
+        }
+
+        return result;
+    },
+
     getArray:function (obj) {
         if (!obj) {
             return [];

Modified: 
openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/js/tomee/view/ApplicationViewHome.js
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/js/tomee/view/ApplicationViewHome.js?rev=1348292&r1=1348291&r2=1348292&view=diff
==============================================================================
--- 
openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/js/tomee/view/ApplicationViewHome.js
 (original)
+++ 
openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/js/tomee/view/ApplicationViewHome.js
 Sat Jun  9 01:19:30 2012
@@ -87,8 +87,7 @@ TOMEE.ApplicationViewHome = function (cf
         });
 
         var table = TOMEE.components.Table({
-            channel:channel,
-            columns:['colA', 'colB']
+            channel:channel
         });
 
         saved.getContentEl().append(table.getEl());
@@ -98,7 +97,14 @@ TOMEE.ApplicationViewHome = function (cf
                 return saved.getEl();
             },
             load:function (data) {
-                table.load(data, function (bean) {
+                var arr = TOMEE.utils.toArray(data, function(key, obj) {
+                    return {
+                        name: key,
+                        value: obj
+                    };
+                });
+
+                table.load(arr, function (bean) {
                     return [bean.name, bean.value];
                 });
             }


Reply via email to