Author: rmannibucau
Date: Mon Oct 8 16:23:58 2012
New Revision: 1395640
URL: http://svn.apache.org/viewvc?rev=1395640&view=rev
Log:
TOMEE-450 adding default profile
Modified:
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/security/internal/InternalSecurityInterceptor.java
openejb/trunk/openejb/container/openejb-loader/src/main/java/org/apache/openejb/loader/SystemInstance.java
openejb/trunk/openejb/server/openejb-activemq/src/main/resources/META-INF/org.apache.openejb.server.ServerService/activemq
openejb/trunk/openejb/server/openejb-cxf/src/main/resources/META-INF/org.apache.openejb.server.ServerService/cxf
openejb/trunk/openejb/server/openejb-derbynet/src/main/resources/META-INF/org.apache.openejb.server.ServerService/derbynet
openejb/trunk/openejb/server/openejb-ejbd/src/main/resources/META-INF/org.apache.openejb.server.ServerService/ejbd
openejb/trunk/openejb/server/openejb-ejbd/src/main/resources/META-INF/org.apache.openejb.server.ServerService/ejbds
openejb/trunk/openejb/server/openejb-hsql/src/main/resources/META-INF/org.apache.openejb.server.ServerService/hsql
openejb/trunk/openejb/server/openejb-http/src/main/java/org/apache/openejb/server/httpd/ServerServlet.java
openejb/trunk/openejb/server/openejb-http/src/main/resources/META-INF/org.apache.openejb.server.ServerService/httpejbd
openejb/trunk/openejb/server/openejb-multicast/src/main/resources/META-INF/org.apache.openejb.server.ServerService/multicast
openejb/trunk/openejb/server/openejb-multicast/src/main/resources/META-INF/org.apache.openejb.server.ServerService/multipoint
openejb/trunk/openejb/server/openejb-multicast/src/main/resources/META-INF/org.apache.openejb.server.ServerService/multipulse
openejb/trunk/openejb/server/openejb-ssh/src/main/resources/META-INF/org.apache.openejb.server.ServerService/ssh
openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/ContextListener.java
openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/GlobalListenerSupport.java
openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatWebAppBuilder.java
openejb/trunk/openejb/tomee/tomee-common/src/main/java/org/apache/tomee/installer/Installer.java
Modified:
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/security/internal/InternalSecurityInterceptor.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/security/internal/InternalSecurityInterceptor.java?rev=1395640&r1=1395639&r2=1395640&view=diff
==============================================================================
---
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/security/internal/InternalSecurityInterceptor.java
(original)
+++
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/security/internal/InternalSecurityInterceptor.java
Mon Oct 8 16:23:58 2012
@@ -30,7 +30,7 @@ public class InternalSecurityInterceptor
@AroundInvoke
public Object invoke(final InvocationContext ic) throws Exception {
- if
(!SystemInstance.get().getOptions().get(OPENEJB_INTERNAL_BEANS_SECURITY_ENABLED,
false)) {
+ if (SystemInstance.get().isDefaultProfile() ||
!SystemInstance.get().getOptions().get(OPENEJB_INTERNAL_BEANS_SECURITY_ENABLED,
true)) {
return ic.proceed();
}
Modified:
openejb/trunk/openejb/container/openejb-loader/src/main/java/org/apache/openejb/loader/SystemInstance.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-loader/src/main/java/org/apache/openejb/loader/SystemInstance.java?rev=1395640&r1=1395639&r2=1395640&view=diff
==============================================================================
---
openejb/trunk/openejb/container/openejb-loader/src/main/java/org/apache/openejb/loader/SystemInstance.java
(original)
+++
openejb/trunk/openejb/container/openejb-loader/src/main/java/org/apache/openejb/loader/SystemInstance.java
Mon Oct 8 16:23:58 2012
@@ -38,6 +38,8 @@ import java.util.Properties;
* @org.apache.xbean.XBean element="system"
*/
public class SystemInstance {
+ private static final String PROFILE_PROP = "openejb.profile";
+ private static final String DEFAULT_PROFILE = "development";
private final long startTime = System.currentTimeMillis();
@@ -235,6 +237,7 @@ public class SystemInstance {
readUserSystemProperties();
readSystemProperties();
initialized = true;
+ get().setProperty("openejb.profile.custom",
Boolean.toString(!get().isDefaultProfile()));
}
private static void readUserSystemProperties() {
@@ -295,6 +298,14 @@ public class SystemInstance {
return system;
}
+ public String currentProfile() {
+ return getProperty(PROFILE_PROP, DEFAULT_PROFILE);
+ }
+
+ public boolean isDefaultProfile() {
+ return DEFAULT_PROFILE.equals(currentProfile());
+ }
+
/**
* @param propName property name
* @return true when property is set; false otherwise
Modified:
openejb/trunk/openejb/server/openejb-activemq/src/main/resources/META-INF/org.apache.openejb.server.ServerService/activemq
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb/server/openejb-activemq/src/main/resources/META-INF/org.apache.openejb.server.ServerService/activemq?rev=1395640&r1=1395639&r2=1395640&view=diff
==============================================================================
---
openejb/trunk/openejb/server/openejb-activemq/src/main/resources/META-INF/org.apache.openejb.server.ServerService/activemq
(original)
+++
openejb/trunk/openejb/server/openejb-activemq/src/main/resources/META-INF/org.apache.openejb.server.ServerService/activemq
Mon Oct 8 16:23:58 2012
@@ -1,5 +1,5 @@
server = org.apache.openejb.server.activemq.BrokerServer
bind = 127.0.0.1
port = 4206
-disabled = false
+disabled = ${openejb.profile.custom}
threads = -
Modified:
openejb/trunk/openejb/server/openejb-cxf/src/main/resources/META-INF/org.apache.openejb.server.ServerService/cxf
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb/server/openejb-cxf/src/main/resources/META-INF/org.apache.openejb.server.ServerService/cxf?rev=1395640&r1=1395639&r2=1395640&view=diff
==============================================================================
---
openejb/trunk/openejb/server/openejb-cxf/src/main/resources/META-INF/org.apache.openejb.server.ServerService/cxf
(original)
+++
openejb/trunk/openejb/server/openejb-cxf/src/main/resources/META-INF/org.apache.openejb.server.ServerService/cxf
Mon Oct 8 16:23:58 2012
@@ -10,4 +10,4 @@ authMethod = NONE
# virtualHost =
-disabled = false
+disabled = ${openejb.profile.custom}
Modified:
openejb/trunk/openejb/server/openejb-derbynet/src/main/resources/META-INF/org.apache.openejb.server.ServerService/derbynet
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb/server/openejb-derbynet/src/main/resources/META-INF/org.apache.openejb.server.ServerService/derbynet?rev=1395640&r1=1395639&r2=1395640&view=diff
==============================================================================
---
openejb/trunk/openejb/server/openejb-derbynet/src/main/resources/META-INF/org.apache.openejb.server.ServerService/derbynet
(original)
+++
openejb/trunk/openejb/server/openejb-derbynet/src/main/resources/META-INF/org.apache.openejb.server.ServerService/derbynet
Mon Oct 8 16:23:58 2012
@@ -1,5 +1,5 @@
server = org.apache.openejb.server.derbynet.DerbyNetworkService
bind = 127.0.0.1
port = 4205
-disabled = false
+disabled = ${openejb.profile.custom}
threads = 200
Modified:
openejb/trunk/openejb/server/openejb-ejbd/src/main/resources/META-INF/org.apache.openejb.server.ServerService/ejbd
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb/server/openejb-ejbd/src/main/resources/META-INF/org.apache.openejb.server.ServerService/ejbd?rev=1395640&r1=1395639&r2=1395640&view=diff
==============================================================================
---
openejb/trunk/openejb/server/openejb-ejbd/src/main/resources/META-INF/org.apache.openejb.server.ServerService/ejbd
(original)
+++
openejb/trunk/openejb/server/openejb-ejbd/src/main/resources/META-INF/org.apache.openejb.server.ServerService/ejbd
Mon Oct 8 16:23:58 2012
@@ -1,7 +1,7 @@
server = org.apache.openejb.server.ejbd.EjbServer
bind = 127.0.0.1
port = 4201
-disabled = false
+disabled = ${openejb.profile.custom}
threads = 200
backlog = 200
discovery = ejb:ejbd://{bind}:{port}
Modified:
openejb/trunk/openejb/server/openejb-ejbd/src/main/resources/META-INF/org.apache.openejb.server.ServerService/ejbds
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb/server/openejb-ejbd/src/main/resources/META-INF/org.apache.openejb.server.ServerService/ejbds?rev=1395640&r1=1395639&r2=1395640&view=diff
==============================================================================
---
openejb/trunk/openejb/server/openejb-ejbd/src/main/resources/META-INF/org.apache.openejb.server.ServerService/ejbds
(original)
+++
openejb/trunk/openejb/server/openejb-ejbd/src/main/resources/META-INF/org.apache.openejb.server.ServerService/ejbds
Mon Oct 8 16:23:58 2012
@@ -1,7 +1,7 @@
server = org.apache.openejb.server.ejbd.EjbServer
bind = 127.0.0.1
port = 4203
-disabled = false
+disabled = ${openejb.profile.custom}
threads = 200
backlog = 200
secure = true
Modified:
openejb/trunk/openejb/server/openejb-hsql/src/main/resources/META-INF/org.apache.openejb.server.ServerService/hsql
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb/server/openejb-hsql/src/main/resources/META-INF/org.apache.openejb.server.ServerService/hsql?rev=1395640&r1=1395639&r2=1395640&view=diff
==============================================================================
---
openejb/trunk/openejb/server/openejb-hsql/src/main/resources/META-INF/org.apache.openejb.server.ServerService/hsql
(original)
+++
openejb/trunk/openejb/server/openejb-hsql/src/main/resources/META-INF/org.apache.openejb.server.ServerService/hsql
Mon Oct 8 16:23:58 2012
@@ -1,4 +1,4 @@
server = org.apache.openejb.server.hsql.HsqlService
bind = 127.0.0.1
port = 9001
-disabled = true
+disabled = ${openejb.profile.custom}
Modified:
openejb/trunk/openejb/server/openejb-http/src/main/java/org/apache/openejb/server/httpd/ServerServlet.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb/server/openejb-http/src/main/java/org/apache/openejb/server/httpd/ServerServlet.java?rev=1395640&r1=1395639&r2=1395640&view=diff
==============================================================================
---
openejb/trunk/openejb/server/openejb-http/src/main/java/org/apache/openejb/server/httpd/ServerServlet.java
(original)
+++
openejb/trunk/openejb/server/openejb-http/src/main/java/org/apache/openejb/server/httpd/ServerServlet.java
Mon Oct 8 16:23:58 2012
@@ -34,7 +34,7 @@ public class ServerServlet extends HttpS
private static final String ACTIVATED_INIT_PARAM = "activated";
private EjbServer ejbServer;
- private boolean activated = true;
+ private boolean activated = SystemInstance.isDefaultProfile();
public void init(ServletConfig config) {
ejbServer = SystemInstance.get().getComponent(EjbServer.class);
Modified:
openejb/trunk/openejb/server/openejb-http/src/main/resources/META-INF/org.apache.openejb.server.ServerService/httpejbd
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb/server/openejb-http/src/main/resources/META-INF/org.apache.openejb.server.ServerService/httpejbd?rev=1395640&r1=1395639&r2=1395640&view=diff
==============================================================================
---
openejb/trunk/openejb/server/openejb-http/src/main/resources/META-INF/org.apache.openejb.server.ServerService/httpejbd
(original)
+++
openejb/trunk/openejb/server/openejb-http/src/main/resources/META-INF/org.apache.openejb.server.ServerService/httpejbd
Mon Oct 8 16:23:58 2012
@@ -1,5 +1,5 @@
server = org.apache.openejb.server.httpd.HttpServerFactory
bind = 127.0.0.1
port = 4204
-disabled = false
+disabled = ${openejb.profile.custom}
threads = 200
Modified:
openejb/trunk/openejb/server/openejb-multicast/src/main/resources/META-INF/org.apache.openejb.server.ServerService/multicast
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb/server/openejb-multicast/src/main/resources/META-INF/org.apache.openejb.server.ServerService/multicast?rev=1395640&r1=1395639&r2=1395640&view=diff
==============================================================================
---
openejb/trunk/openejb/server/openejb-multicast/src/main/resources/META-INF/org.apache.openejb.server.ServerService/multicast
(original)
+++
openejb/trunk/openejb/server/openejb-multicast/src/main/resources/META-INF/org.apache.openejb.server.ServerService/multicast
Mon Oct 8 16:23:58 2012
@@ -1,7 +1,7 @@
server = org.apache.openejb.server.discovery.MulticastDiscoveryAgent
bind = 239.255.2.3
port = 6142
-disabled = true
+disabled = ${openejb.profile.custom}
group = default
heart_rate = 500
Modified:
openejb/trunk/openejb/server/openejb-multicast/src/main/resources/META-INF/org.apache.openejb.server.ServerService/multipoint
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb/server/openejb-multicast/src/main/resources/META-INF/org.apache.openejb.server.ServerService/multipoint?rev=1395640&r1=1395639&r2=1395640&view=diff
==============================================================================
---
openejb/trunk/openejb/server/openejb-multicast/src/main/resources/META-INF/org.apache.openejb.server.ServerService/multipoint
(original)
+++
openejb/trunk/openejb/server/openejb-multicast/src/main/resources/META-INF/org.apache.openejb.server.ServerService/multipoint
Mon Oct 8 16:23:58 2012
@@ -1,7 +1,7 @@
server = org.apache.openejb.server.discovery.MultipointDiscoveryAgent
bind = 127.0.0.1
port = 4212
-disabled = true
+disabled = ${openejb.profile.custom}
initialServers =
group = default
Modified:
openejb/trunk/openejb/server/openejb-multicast/src/main/resources/META-INF/org.apache.openejb.server.ServerService/multipulse
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb/server/openejb-multicast/src/main/resources/META-INF/org.apache.openejb.server.ServerService/multipulse?rev=1395640&r1=1395639&r2=1395640&view=diff
==============================================================================
---
openejb/trunk/openejb/server/openejb-multicast/src/main/resources/META-INF/org.apache.openejb.server.ServerService/multipulse
(original)
+++
openejb/trunk/openejb/server/openejb-multicast/src/main/resources/META-INF/org.apache.openejb.server.ServerService/multipulse
Mon Oct 8 16:23:58 2012
@@ -1,4 +1,4 @@
server = org.apache.openejb.server.discovery.MulticastPulseAgent
bind = 239.255.2.3
port = 6142
-disabled = true
\ No newline at end of file
+disabled = ${openejb.profile.custom}
\ No newline at end of file
Modified:
openejb/trunk/openejb/server/openejb-ssh/src/main/resources/META-INF/org.apache.openejb.server.ServerService/ssh
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb/server/openejb-ssh/src/main/resources/META-INF/org.apache.openejb.server.ServerService/ssh?rev=1395640&r1=1395639&r2=1395640&view=diff
==============================================================================
---
openejb/trunk/openejb/server/openejb-ssh/src/main/resources/META-INF/org.apache.openejb.server.ServerService/ssh
(original)
+++
openejb/trunk/openejb/server/openejb-ssh/src/main/resources/META-INF/org.apache.openejb.server.ServerService/ssh
Mon Oct 8 16:23:58 2012
@@ -2,4 +2,4 @@ server = org.apache.openejb.server.
bind = 127.0.0.1
port = 4222
domain = PropertiesLogin
-disabled = false
+disabled = ${openejb.profile.custom}
Modified:
openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/ContextListener.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/ContextListener.java?rev=1395640&r1=1395639&r2=1395640&view=diff
==============================================================================
---
openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/ContextListener.java
(original)
+++
openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/ContextListener.java
Mon Oct 8 16:23:58 2012
@@ -91,6 +91,8 @@ public interface ContextListener {
*/
void afterStop(StandardServer standardServer);
+ void start(StandardServer server);
+
/**
* Called on periodic events.
*
Modified:
openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/GlobalListenerSupport.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/GlobalListenerSupport.java?rev=1395640&r1=1395639&r2=1395640&view=diff
==============================================================================
---
openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/GlobalListenerSupport.java
(original)
+++
openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/GlobalListenerSupport.java
Mon Oct 8 16:23:58 2012
@@ -27,6 +27,9 @@ import org.apache.catalina.core.Standard
import org.apache.catalina.core.StandardEngine;
import org.apache.catalina.core.StandardHost;
import org.apache.catalina.core.StandardServer;
+import org.apache.catalina.deploy.ContextResource;
+import org.apache.catalina.deploy.NamingResources;
+import org.apache.openejb.loader.SystemInstance;
import org.apache.tomee.catalina.cluster.TomEEClusterListener;
import org.apache.tomee.loader.TomcatHelper;
@@ -127,6 +130,10 @@ public class GlobalListenerSupport imple
StandardServer standardServer = (StandardServer) source;
String type = event.getType();
+ if (Lifecycle.START_EVENT.equals(type)) {
+ contextListener.start(standardServer);
+ }
+
if (Lifecycle.BEFORE_STOP_EVENT.equals(type)) {
TomcatHelper.setStopping(true);
TomEEClusterListener.stop();
Modified:
openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatWebAppBuilder.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatWebAppBuilder.java?rev=1395640&r1=1395639&r2=1395640&view=diff
==============================================================================
---
openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatWebAppBuilder.java
(original)
+++
openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatWebAppBuilder.java
Mon Oct 8 16:23:58 2012
@@ -27,6 +27,7 @@ import org.apache.catalina.Manager;
import org.apache.catalina.Pipeline;
import org.apache.catalina.Realm;
import org.apache.catalina.Service;
+import org.apache.catalina.UserDatabase;
import org.apache.catalina.Valve;
import org.apache.catalina.Wrapper;
import org.apache.catalina.core.ContainerBase;
@@ -51,6 +52,7 @@ import org.apache.catalina.startup.Const
import org.apache.catalina.startup.ContextConfig;
import org.apache.catalina.startup.HostConfig;
import org.apache.catalina.startup.RealmRuleSet;
+import org.apache.catalina.users.MemoryUserDatabase;
import org.apache.naming.ContextAccessController;
import org.apache.naming.ContextBindings;
import org.apache.openejb.AppContext;
@@ -309,6 +311,31 @@ public class TomcatWebAppBuilder impleme
globalListenerSupport.stop();
}
+ public void start(final StandardServer server) {
+ if (SystemInstance.get().isDefaultProfile()) { // add user tomee is no
user are specified
+ try {
+ final NamingResources resources =
server.getGlobalNamingResources();
+ final ContextResource userDataBaseResource =
resources.findResource("UserDatabase");
+ final UserDatabase db = (UserDatabase)
server.getGlobalNamingContext().lookup(userDataBaseResource.getName());
+ if (!db.getUsers().hasNext() && db instanceof
MemoryUserDatabase) {
+ final MemoryUserDatabase mudb = (MemoryUserDatabase) db;
+ final boolean oldRo = mudb.getReadonly();
+ try {
+ ((MemoryUserDatabase) db).setReadonly(false);
+
+ db.createRole("tomee-admin", "tomee admin role");
+ db.createUser("tomee", "tomee", "TomEE");
+
db.findUser("tomee").addRole(db.findRole("tomee-admin"));
+ } finally {
+ mudb.setReadonly(oldRo);
+ }
+ }
+ } catch (Throwable t) {
+ // no-op
+ }
+ }
+ }
+
private static synchronized Digester createDigester() {
if (CONTEXT_DIGESTER != null) {
return CONTEXT_DIGESTER;
Modified:
openejb/trunk/openejb/tomee/tomee-common/src/main/java/org/apache/tomee/installer/Installer.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb/tomee/tomee-common/src/main/java/org/apache/tomee/installer/Installer.java?rev=1395640&r1=1395639&r2=1395640&view=diff
==============================================================================
---
openejb/trunk/openejb/tomee/tomee-common/src/main/java/org/apache/tomee/installer/Installer.java
(original)
+++
openejb/trunk/openejb/tomee/tomee-common/src/main/java/org/apache/tomee/installer/Installer.java
Mon Oct 8 16:23:58 2012
@@ -129,8 +129,10 @@ public class Installer {
// add our listener
final String newTomcatUsers = tomcatUsersXml.replace("</tomcat-users>",
+ " <!-- Activate those lines to get access to TomEE GUI\n" +
" <role rolename=\"tomee-admin\" />\n" +
" <user username=\"tomee\" password=\"tomee\"
roles=\"tomee-admin,manager-gui\" />" +
+ " -->" +
"\n</tomcat-users>\n");
// overwrite server.xml