You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by tv...@apache.org on 2012/02/17 01:39:36 UTC
svn commit: r1245271 - in /openejb/trunk/openejb/tomee: tomee-loader/
tomee-loader/src/main/java/org/apache/tomee/loader/dto/
tomee-loader/src/main/java/org/apache/tomee/loader/ws/
tomee-plus-webapp/src/main/assembly/ tomee-webapp/src/main/webapp/stagi...
Author: tveronezi
Date: Fri Feb 17 00:39:35 2012
New Revision: 1245271
URL: http://svn.apache.org/viewvc?rev=1245271&view=rev
Log:
https://issues.apache.org/jira/browse/TOMEE-130
Preparing the javascript/html and java codes for the new web interface. Loading the "tests" and the "ns browser" panels.
Added:
openejb/trunk/openejb/tomee/tomee-loader/src/main/java/org/apache/tomee/loader/dto/TestDTO.java
- copied, changed from r1245019, openejb/trunk/openejb/tomee/tomee-loader/src/main/java/org/apache/tomee/loader/dto/JndiDTO.java
openejb/trunk/openejb/tomee/tomee-loader/src/main/java/org/apache/tomee/loader/ws/TestWs.java
- copied, changed from r1245019, openejb/trunk/openejb/tomee/tomee-loader/src/main/java/org/apache/tomee/loader/ws/JndiWs.java
Modified:
openejb/trunk/openejb/tomee/tomee-loader/pom.xml
openejb/trunk/openejb/tomee/tomee-plus-webapp/src/main/assembly/war.xml
openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/staging/js/tomee/mock/test.json
openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/staging/js/tomee/model/JndiModel.js
openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/staging/js/tomee/model/TestModel.js
Modified: openejb/trunk/openejb/tomee/tomee-loader/pom.xml
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb/tomee/tomee-loader/pom.xml?rev=1245271&r1=1245270&r2=1245271&view=diff
==============================================================================
--- openejb/trunk/openejb/tomee/tomee-loader/pom.xml (original)
+++ openejb/trunk/openejb/tomee/tomee-loader/pom.xml Fri Feb 17 00:39:35 2012
@@ -47,6 +47,11 @@
<version>${tomcat.version}</version>
<scope>provided</scope>
</dependency>
+ <dependency>
+ <groupId>org.apache.openejb</groupId>
+ <artifactId>tomee-common</artifactId>
+ <version>${openejb.version}</version>
+ </dependency>
</dependencies>
</project>
Copied: openejb/trunk/openejb/tomee/tomee-loader/src/main/java/org/apache/tomee/loader/dto/TestDTO.java (from r1245019, openejb/trunk/openejb/tomee/tomee-loader/src/main/java/org/apache/tomee/loader/dto/JndiDTO.java)
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb/tomee/tomee-loader/src/main/java/org/apache/tomee/loader/dto/TestDTO.java?p2=openejb/trunk/openejb/tomee/tomee-loader/src/main/java/org/apache/tomee/loader/dto/TestDTO.java&p1=openejb/trunk/openejb/tomee/tomee-loader/src/main/java/org/apache/tomee/loader/dto/JndiDTO.java&r1=1245019&r2=1245271&rev=1245271&view=diff
==============================================================================
--- openejb/trunk/openejb/tomee/tomee-loader/src/main/java/org/apache/tomee/loader/dto/JndiDTO.java (original)
+++ openejb/trunk/openejb/tomee/tomee-loader/src/main/java/org/apache/tomee/loader/dto/TestDTO.java Fri Feb 17 00:39:35 2012
@@ -18,10 +18,10 @@ package org.apache.tomee.loader.dto;
import javax.xml.bind.annotation.XmlRootElement;
-@XmlRootElement(name = "jndi")
-public class JndiDTO {
+@XmlRootElement(name = "test")
+public class TestDTO {
+
+ public String key;
+ public boolean success;
- public String module;
- public String name;
- public String value;
}
Copied: openejb/trunk/openejb/tomee/tomee-loader/src/main/java/org/apache/tomee/loader/ws/TestWs.java (from r1245019, openejb/trunk/openejb/tomee/tomee-loader/src/main/java/org/apache/tomee/loader/ws/JndiWs.java)
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb/tomee/tomee-loader/src/main/java/org/apache/tomee/loader/ws/TestWs.java?p2=openejb/trunk/openejb/tomee/tomee-loader/src/main/java/org/apache/tomee/loader/ws/TestWs.java&p1=openejb/trunk/openejb/tomee/tomee-loader/src/main/java/org/apache/tomee/loader/ws/JndiWs.java&r1=1245019&r2=1245271&rev=1245271&view=diff
==============================================================================
--- openejb/trunk/openejb/tomee/tomee-loader/src/main/java/org/apache/tomee/loader/ws/JndiWs.java (original)
+++ openejb/trunk/openejb/tomee/tomee-loader/src/main/java/org/apache/tomee/loader/ws/TestWs.java Fri Feb 17 00:39:35 2012
@@ -17,77 +17,101 @@
package org.apache.tomee.loader.ws;
-import org.apache.openejb.AppContext;
-import org.apache.openejb.loader.SystemInstance;
-import org.apache.openejb.spi.ContainerSystem;
-import org.apache.tomee.loader.dto.JndiDTO;
+import org.apache.tomee.loader.dto.TestDTO;
import javax.naming.Context;
-import javax.naming.NameClassPair;
-import javax.naming.NamingEnumeration;
+import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
+import java.io.File;
+import java.lang.reflect.Method;
import java.util.ArrayList;
import java.util.List;
+import java.util.Properties;
-@Path("/ws/jndi")
+@Path("/ws/test")
@Produces({"application/json"})
-public class JndiWs {
+public class TestWs {
- @Path("/names")
+ @Path("/test")
@GET
- public List<JndiDTO> get() throws NamingException {
- List<JndiDTO> result = new ArrayList<JndiDTO>();
- List<Object> objects = new ArrayList<Object>();
+ public List<TestDTO> get() throws NamingException {
+ final List<TestDTO> result = new ArrayList<TestDTO>();
-
- final ContainerSystem containerSystem = SystemInstance.get().getComponent(ContainerSystem.class);
-
- mountJndiList(result, containerSystem.getJNDIContext(), "containerSystem", "java:global");
-
- List<AppContext> appCtxs = containerSystem.getAppContexts();
- for (AppContext appContext : appCtxs) {
- final Context ctx = appContext.getAppJndiContext();
- mountJndiList(result, ctx, appContext.getId(), "java:comp");
- mountJndiList(result, ctx, appContext.getId(), "java:app");
+ {
+ final String homePath = System.getProperty("openejb.home");
+ result.add(createDTO("homeSet", !(homePath == null)));
+
+ final File openejbHome = new File(homePath);
+ result.add(createDTO("homeExists", openejbHome.exists()));
+
+ result.add(createDTO("homeDirectory", openejbHome.isDirectory()));
+
+ final File openejbHomeLib;
+ if (org.apache.tomee.common.TomcatVersion.v6.isTheVersion()
+ || org.apache.tomee.common.TomcatVersion.v7.isTheVersion()) {
+ openejbHomeLib = new File(openejbHome, "lib");
+ } else {
+ final File common = new File(openejbHome, "common");
+ openejbHomeLib = new File(common, "lib");
+ }
+ result.add(createDTO("libDirectory", openejbHomeLib.exists()));
}
- return result;
- }
+ {
+ ClassLoader myLoader = this.getClass().getClassLoader();
+ try {
+ Class openejb = Class.forName("org.apache.openejb.OpenEJB", true, myLoader);
+ result.add(createDTO("openEjbInstalled", true));
+
+ try {
+ Method isInitialized = openejb.getDeclaredMethod("isInitialized");
+ Boolean running = (Boolean) isInitialized.invoke(openejb);
+ result.add(createDTO("openEjbStarted", running));
+ } catch (Exception e) {
+ result.add(createDTO("openEjbStarted", false));
+ }
+ } catch (Exception e) {
+ result.add(createDTO("openEjbInstalled", false));
+ }
- private void mountJndiList(List<JndiDTO> jndi, Context context, String id, String root) throws NamingException {
- final NamingEnumeration namingEnumeration;
- try {
- namingEnumeration = context.list(root);
- } catch (NamingException e) {
- //not found?
- return;
- }
- while (namingEnumeration.hasMoreElements()) {
- final NameClassPair pair = (NameClassPair) namingEnumeration.next();
- final String key = root + "/" + pair.getName();
- final Object obj;
try {
- obj = context.lookup(key);
- } catch (NamingException e) {
- //not found?
- continue;
+ Class.forName("javax.ejb.EJBHome", true, myLoader);
+ result.add(createDTO("ejbsInstalled", true));
+ } catch (Exception e) {
+ result.add(createDTO("ejbsInstalled", false));
}
- if (Context.class.isInstance(obj)) {
- mountJndiList(jndi, Context.class.cast(obj), id, key);
- } else {
- JndiDTO dto = new JndiDTO();
- dto.module = id;
- dto.name = key;
- dto.value = String.valueOf(obj);
- jndi.add(dto);
+ try {
+ final Properties properties = new Properties();
+ properties.put(Context.INITIAL_CONTEXT_FACTORY, "org.apache.openejb.core.LocalInitialContextFactory");
+ properties.put("openejb.loader", "embed");
+
+ final InitialContext ctx = new InitialContext(properties);
+ Object obj = ctx.lookup("");
+
+ if (obj.getClass().getName().equals("org.apache.openejb.core.ivm.naming.IvmContext")) {
+ result.add(createDTO("testLookup", true));
+ } else {
+ result.add(createDTO("testLookup", false));
+ }
+
+ } catch (Exception e) {
+ result.add(createDTO("testLookup", false));
}
}
+
+ return result;
}
+ private TestDTO createDTO(String key, boolean success) {
+ TestDTO result = new TestDTO();
+ result.key = key;
+ result.success = success;
+ return result;
+ }
}
Modified: openejb/trunk/openejb/tomee/tomee-plus-webapp/src/main/assembly/war.xml
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb/tomee/tomee-plus-webapp/src/main/assembly/war.xml?rev=1245271&r1=1245270&r2=1245271&view=diff
==============================================================================
--- openejb/trunk/openejb/tomee/tomee-plus-webapp/src/main/assembly/war.xml (original)
+++ openejb/trunk/openejb/tomee/tomee-plus-webapp/src/main/assembly/war.xml Fri Feb 17 00:39:35 2012
@@ -63,6 +63,9 @@
<includes>
<include>**/*.jsp</include>
<include>**/*.css</include>
+ <include>**/*.css</include>
+ <include>**/*.png</include>
+ <include>**/*.js</include>
<include>**/*.html</include>
<include>images/*.gif</include>
<include>lib/*.jar</include>
Modified: openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/staging/js/tomee/mock/test.json
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/staging/js/tomee/mock/test.json?rev=1245271&r1=1245270&r2=1245271&view=diff
==============================================================================
--- openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/staging/js/tomee/mock/test.json (original)
+++ openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/staging/js/tomee/mock/test.json Fri Feb 17 00:39:35 2012
@@ -1,5 +1,5 @@
{
- "tests": [
+ "test": [
{
"key": "homeSet",
"success": true
Modified: openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/staging/js/tomee/model/JndiModel.js
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/staging/js/tomee/model/JndiModel.js?rev=1245271&r1=1245270&r2=1245271&view=diff
==============================================================================
--- openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/staging/js/tomee/model/JndiModel.js (original)
+++ openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/staging/js/tomee/model/JndiModel.js Fri Feb 17 00:39:35 2012
@@ -39,8 +39,8 @@ TOMEE.JndiModel = function (cfg) {
return TOMEE.ApplicationModel({
methodType: 'GET',
- //url: 'ws/jndi/names',
- url: 'js/tomee/mock/jndi.json',
+ url: '/tomee/ws/jndi/names',
+ //url: 'js/tomee/mock/jndi.json',
channel: myChannel,
prepareDataMethod: function (data) {
Modified: openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/staging/js/tomee/model/TestModel.js
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/staging/js/tomee/model/TestModel.js?rev=1245271&r1=1245270&r2=1245271&view=diff
==============================================================================
--- openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/staging/js/tomee/model/TestModel.js (original)
+++ openejb/trunk/openejb/tomee/tomee-webapp/src/main/webapp/staging/js/tomee/model/TestModel.js Fri Feb 17 00:39:35 2012
@@ -38,7 +38,10 @@ TOMEE.TestModel = function (cfg) {
return TOMEE.ApplicationModel({
methodType: 'GET',
- url: 'js/tomee/mock/test.json',
+
+ url: '/tomee/ws/test/test',
+ //url: 'js/tomee/mock/test.json',
+
channel: myChannel,
prepareDataMethod: function (data) {
myData = data;
@@ -47,7 +50,7 @@ TOMEE.TestModel = function (cfg) {
})();
var iterateTestBeans = function (callback) {
- $.each(myData.tests, function (i, bean) {
+ $.each(myData.test, function (i, bean) {
callback(bean);
});
};