Disable jmx by default

Change JmxAutoConfiguration so that by default JMX exposure is not
enabled. This matches the Javdoc text.
This commit is contained in:
Phillip Webb 2013-12-18 22:32:39 -08:00
parent 625d36d050
commit dbec81cabe
3 changed files with 21 additions and 2 deletions

View File

@ -36,7 +36,7 @@ import org.springframework.jmx.export.MBeanExporter;
@Configuration
@ConditionalOnClass({ MBeanExporter.class })
@ConditionalOnMissingBean({ MBeanExporter.class })
@ConditionalOnExpression("${spring.jmx.enabled:true}")
@ConditionalOnExpression("${spring.jmx.enabled:false}")
public class JmxAutoConfiguration {
@Configuration

View File

@ -17,7 +17,9 @@
package org.springframework.boot.autoconfigure.jmx;
import org.junit.After;
import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.ExpectedException;
import org.springframework.beans.factory.NoSuchBeanDefinitionException;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
import org.springframework.context.annotation.Bean;
@ -37,6 +39,9 @@ import static org.junit.Assert.assertNotNull;
*/
public class JmxAutoConfigurationTests {
@Rule
public ExpectedException thrown = ExpectedException.none();
private AnnotationConfigApplicationContext context;
@After
@ -51,6 +56,18 @@ public class JmxAutoConfigurationTests {
this.context = new AnnotationConfigApplicationContext();
this.context.register(JmxAutoConfiguration.class);
this.context.refresh();
this.thrown.expect(NoSuchBeanDefinitionException.class);
this.context.getBean(MBeanExporter.class);
}
@Test
public void testEnabledMBeanExport() {
MockEnvironment env = new MockEnvironment();
env.setProperty("spring.jmx.enabled", "true");
this.context = new AnnotationConfigApplicationContext();
this.context.setEnvironment(env);
this.context.register(JmxAutoConfiguration.class);
this.context.refresh();
assertNotNull(this.context.getBean(MBeanExporter.class));
}

View File

@ -14,4 +14,6 @@ shell.ssh.port: 2222
shell.auth: spring
#shell.auth: key
#shell.auth.key.path: ${user.home}/test/id_rsa.pub.pem
#shell.auth: simple
#shell.auth: simple
spring.jmx.enabled: true