Will be trying to extract openejb properties into a separate class named OpenEjbProperties. Since there are a lot of properties being used in the code base, David Blevins suggested that we extract only those properties which would be relevant to the user.
This would have a couple of benefits:- 1. Properties would be stored in one central location. Future properties could also be added to this class 2. Properties could be documented heavily and then a link could be generated for the wiki. This will server the purpose of documentation also David performed a regex search and found the following properties (These are also available here https://issues.apache.org/jira/secure/attachment/12384644/openejb-options-report.txt ):- If you feel any property was missed or some property should not be added, then lets comment on this thread. I will try and keep the list updated (based on the comments) Targets String '"openejb[^:/ -]' Found usages (56 usages) Unclassified usage (56 usages) openejb-core (56 usages) org.apache.openejb (4 usages) OpenEJB.java (4 usages) (90, 39) if (initProps.getProperty("openejb.nobanner") == null) { (99, 25) logger.info("openejb.home = " + SystemInstance.get().getHome().getDirectory().getAbsolutePath()); (100, 25) logger.info("openejb.base = " + SystemInstance.get().getBase().getDirectory().getAbsolutePath()); (116, 47) className = props.getProperty("openejb.assembler", "org.apache.openejb.assembler.classic.Assembler"); org.apache.openejb.assembler.classic (5 usages) Assembler.java (1 usage) (101, 56) public static final String CONFIGURATOR_PROPERTY = "openejb.configurator"; JndiBuilder.java (3 usages) (56, 59) private static final String JNDINAME_STRATEGY_CLASS = "openejb.jndiname.strategy.class"; (57, 60) private static final String JNDINAME_FAILONCOLLISION = "openejb.jndiname.failoncollision"; (174, 55) private static final String JNDINAME_FORMAT = "openejb.jndiname.format"; JndiEncBuilder.java (1 usage) (127, 32) if (System.getProperty("openejb.naming","ivm").equals("xbean")) { org.apache.openejb.assembler.classic.cmd (1 usage) Info2Properties.java (1 usage) (201, 32) if (key.startsWith("openejb.")) { org.apache.openejb.cli (2 usages) Bootstrap.java (2 usages) (32, 62) private final static String OPENEJB_HOME_PROPERTY_NAME = "openejb.home"; (33, 62) private final static String OPENEJB_BASE_PROPERTY_NAME = "openejb.base"; org.apache.openejb.client (2 usages) LocalInitialContextFactory.java (2 usages) (37, 62) private static final String OPENEJB_EMBEDDED_REMOTABLE = "openejb.embedded.remotable"; (62, 42) SystemInstance.get().setProperty("openejb.embedded", "true"); org.apache.openejb.config (28 usages) ConfigUtils.java (2 usages) (45, 72) return searchForConfiguration(SystemInstance.get().getProperty("openejb.configuration")); (145, 49) File config = new File(confDir, "openejb.xml"); ConfigurationFactory.java (5 usages) (90, 50) static final String CONFIGURATION_PROPERTY = "openejb.configuration"; (91, 46) static final String CONF_FILE_PROPERTY = "openejb.conf.file"; (92, 66) private static final String DEBUGGABLE_VM_HACKERY_PROPERTY = "openejb.debuggable-vm-hackery"; (94, 62) protected static final String VALIDATION_SKIP_PROPERTY = "openejb.validation.skip"; (107, 52) private static final String CLASSPATH_AS_EAR = "openejb.deployments.classpath.ear"; DeploymentsResolver.java (6 usages) (41, 58) static final String DEPLOYMENTS_CLASSPATH_PROPERTY = "openejb.deployments.classpath"; (43, 53) private static final String CLASSPATH_INCLUDE = "openejb.deployments.classpath.include"; (44, 53) private static final String CLASSPATH_EXCLUDE = "openejb.deployments.classpath.exclude"; (45, 64) private static final String CLASSPATH_REQUIRE_DESCRIPTOR = "openejb.deployments.classpath.require.descriptor"; (46, 64) private static final String CLASSPATH_FILTER_DESCRIPTORS = "openejb.deployments.classpath.filter.descriptors"; (47, 63) private static final String CLASSPATH_FILTER_SYSTEMAPPS = "openejb.deployments.classpath.filter.systemapps"; InitEjbDeployments.java (1 usage) (39, 56) private static final String DEPLOYMENT_ID_FORMAT = "openejb.deploymentId.format"; OpenEJBDeploymentFactory.java (1 usage) (29, 45) public static final String URI_SCHEME = "openejb"; OutputGeneratedDescriptors.java (1 usage) (38, 54) private static final String OUTPUT_DESCRIPTORS = "openejb.descriptors.output"; RemoteServer.java (5 usages) (29, 61) private static final boolean DEBUG = System.getProperty("openejb.server.debug","false").equalsIgnoreCase("TRUE"); (92, 72) lib = new File(new File(new File(home, "webapps"), "openejb"), "lib"); (166, 90) "-Dopenejb.servicemanager.enabled=" + Boolean.getBoolean("openejb.servicemanager.enabled"), (186, 90) "-Dopenejb.servicemanager.enabled=" + Boolean.getBoolean("openejb.servicemanager.enabled"), (223, 49) String openejbHome = System.getProperty("openejb.home"); ReportValidationResults.java (1 usage) (35, 52) private static final String VALIDATION_LEVEL = "openejb.validation.output.level"; ServiceUtils.java (3 usages) (47, 27) * 1. System property "openejb.provider.default" </br> (56, 36) if (system.getProperty("openejb.embedded") != null){ (61, 49) defaultProviderURL = System.getProperty("openejb.provider.default", defaultValue); VmDeploymentFactory.java (1 usage) (29, 45) public static final String URI_SCHEME = "openejb"; VmDeploymentManager.java (2 usages) (82, 49) String openejbHome = System.getProperty("openejb.home", "target/openejb-3.0.0-SNAPSHOT"); (91, 48) String openejbUri = System.getProperty("openejb.server.uri"); org.apache.openejb.config.sys (1 usage) Openejb.java (1 usage) (55, 24) @XmlRootElement(name = "openejb") org.apache.openejb.core.cmp (2 usages) CmpUtil.java (2 usages) (23, 28) cmpImplClass = "openejb." + cmpImplClass; (25, 28) cmpImplClass = "openejb"; org.apache.openejb.core.ivm (1 usage) BaseEjbProxyHandler.java (1 usage) (66, 53) private static final String OPENEJB_LOCALCOPY = "openejb.localcopy"; org.apache.openejb.core.ivm.naming (1 usage) InitContextFactory.java (1 usage) (40, 45) String realmName = (String) env.get("openejb.authentication.realmName"); org.apache.openejb.core.webservices (3 usages) ProviderWrapper.java (3 usages) (75, 32) System.setProperty("openejb." + JAXWSPROVIDER_PROPERTY, oldProperty); (344, 34) // 0. System.getProperty("openejb.javax.xml.ws.spi.Provider") (346, 51) String providerClass = System.getProperty("openejb." + JAXWSPROVIDER_PROPERTY); org.apache.openejb.util (6 usages) JuliLogStreamFactory.java (1 usage) (54, 46) String prop = System.getProperty("openejb.logger.external", "false"); Log4jLog.java (1 usage) (127, 46) String prop = System.getProperty("openejb.logger.external", "false"); Log4jLogStreamFactory.java (1 usage) (51, 46) String prop = System.getProperty("openejb.logger.external", "false"); Logger.java (1 usage) (29, 49) String factoryName = System.getProperty("openejb.log.factory"); MakeTxLookup.java (1 usage) (33, 54) String[] path = {"classes", "org", "apache", "openejb", "hibernate", "TransactionManagerLookup.class"}; OpenEjbVersion.java (1 usage) (52, 28) System.setProperty("openejb.version", version); -- Karan Singh Malhi
