Author: hlship Date: Wed Mar 2 23:01:37 2011 New Revision: 1076449 URL: http://svn.apache.org/viewvc?rev=1076449&view=rev Log: TAP5-1455: Rebuild the tapestry-jmx tests now that PagePool is no longer available as a JMX MBean
Added: tapestry/tapestry5/trunk/tapestry-jmx/src/test/java/org/example/testapp/services/Sample.java tapestry/tapestry5/trunk/tapestry-jmx/src/test/java/org/example/testapp/services/SampleImpl.java - copied, changed from r1076448, tapestry/tapestry5/trunk/tapestry-jmx/src/test/java/org/apache/tapestry5/jmx/integration/TapestryJmxIntegrationTests.java tapestry/tapestry5/trunk/tapestry-jmx/src/test/java/org/example/testapp/services/SampleImplMBean.java tapestry/tapestry5/trunk/tapestry-jmx/src/test/resources/ tapestry/tapestry5/trunk/tapestry-jmx/src/test/resources/log4j.properties Modified: tapestry/tapestry5/trunk/tapestry-jmx/pom.xml tapestry/tapestry5/trunk/tapestry-jmx/src/main/java/org/apache/tapestry5/internal/jmx/MBeanSupportImpl.java tapestry/tapestry5/trunk/tapestry-jmx/src/main/java/org/apache/tapestry5/jmx/JmxModule.java tapestry/tapestry5/trunk/tapestry-jmx/src/main/java/org/apache/tapestry5/jmx/MBeanSupport.java tapestry/tapestry5/trunk/tapestry-jmx/src/test/conf/testng.xml tapestry/tapestry5/trunk/tapestry-jmx/src/test/java/org/apache/tapestry5/jmx/integration/TapestryJmxIntegrationTests.java tapestry/tapestry5/trunk/tapestry-jmx/src/test/java/org/example/testapp/pages/RemotePoolManagement.java tapestry/tapestry5/trunk/tapestry-jmx/src/test/java/org/example/testapp/services/AppModule.java tapestry/tapestry5/trunk/tapestry-jmx/src/test/webapp/RemotePoolManagement.tml Modified: tapestry/tapestry5/trunk/tapestry-jmx/pom.xml URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-jmx/pom.xml?rev=1076449&r1=1076448&r2=1076449&view=diff ============================================================================== --- tapestry/tapestry5/trunk/tapestry-jmx/pom.xml (original) +++ tapestry/tapestry5/trunk/tapestry-jmx/pom.xml Wed Mar 2 23:01:37 2011 @@ -41,6 +41,9 @@ <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> + <configuration> + <argLine>-Dtapestry.service-reloading-enabled=false</argLine> + </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> Modified: tapestry/tapestry5/trunk/tapestry-jmx/src/main/java/org/apache/tapestry5/internal/jmx/MBeanSupportImpl.java URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-jmx/src/main/java/org/apache/tapestry5/internal/jmx/MBeanSupportImpl.java?rev=1076449&r1=1076448&r2=1076449&view=diff ============================================================================== --- tapestry/tapestry5/trunk/tapestry-jmx/src/main/java/org/apache/tapestry5/internal/jmx/MBeanSupportImpl.java (original) +++ tapestry/tapestry5/trunk/tapestry-jmx/src/main/java/org/apache/tapestry5/internal/jmx/MBeanSupportImpl.java Wed Mar 2 23:01:37 2011 @@ -1,10 +1,10 @@ -// Copyright 2010 The Apache Software Foundation +// Copyright 2010, 2011 The Apache Software Foundation // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // -// http://www.apache.org/licenses/LICENSE-2.0 +// http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, @@ -20,22 +20,25 @@ import java.lang.management.ManagementFa import java.util.List; import java.util.Set; +import javax.annotation.PostConstruct; import javax.management.MBeanServer; import javax.management.MBeanServerFactory; +import javax.management.MalformedObjectNameException; import javax.management.ObjectName; import org.apache.tapestry5.ioc.internal.util.CollectionFactory; import org.apache.tapestry5.ioc.internal.util.OneShotLock; +import org.apache.tapestry5.ioc.services.RegistryShutdownHub; import org.apache.tapestry5.ioc.services.RegistryShutdownListener; import org.apache.tapestry5.jmx.MBeanSupport; import org.slf4j.Logger; public class MBeanSupportImpl implements MBeanSupport, RegistryShutdownListener { - private Logger logger; + private final Logger logger; + + private final MBeanServer server; - private MBeanServer server; - private final OneShotLock lock = new OneShotLock(); private final Set<ObjectName> registeredBeans = CollectionFactory.newSet(); @@ -43,28 +46,55 @@ public class MBeanSupportImpl implements public MBeanSupportImpl(Logger logger) { this.logger = logger; - + // TODO: Agent Id should be configurable final List<MBeanServer> servers = MBeanServerFactory.findMBeanServer(null); - if (servers != null && 0 < servers.size()) + MBeanServer server = null; + + if (servers != null && 0 < servers.size()) { - this.server = servers.get(0); + server = servers.get(0); } if (this.server == null) { - this.server = ManagementFactory.getPlatformMBeanServer(); + server = ManagementFactory.getPlatformMBeanServer(); + } + + this.server = server; + } + + @PostConstruct + public void listenForShutdown(RegistryShutdownHub hub) + { + hub.addRegistryShutdownListener(this); + } + + public void register(Object bean, String name) + { + register(bean, toObjectName(name)); + } + + private static ObjectName toObjectName(String name) + { + try + { + return new ObjectName(name); + } + catch (Exception ex) + { + throw new RuntimeException(ex); } } public void register(final Object object, final ObjectName objectName) { lock.check(); - + if (this.server.isRegistered(objectName)) return; - + try { this.server.registerMBean(object, objectName); @@ -82,10 +112,10 @@ public class MBeanSupportImpl implements public void unregister(final ObjectName objectName) { lock.check(); - + doUnregister(objectName); } - + private void doUnregister(final ObjectName objectName) { if (this.server.isRegistered(objectName)) @@ -95,8 +125,8 @@ public class MBeanSupportImpl implements this.server.unregisterMBean(objectName); this.logger.info(format("Unregistered MBean '%s' from server", objectName)); - - if(registeredBeans.contains(objectName)) + + if (registeredBeans.contains(objectName)) registeredBeans.remove(objectName); } catch (final Exception e) Modified: tapestry/tapestry5/trunk/tapestry-jmx/src/main/java/org/apache/tapestry5/jmx/JmxModule.java URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-jmx/src/main/java/org/apache/tapestry5/jmx/JmxModule.java?rev=1076449&r1=1076448&r2=1076449&view=diff ============================================================================== --- tapestry/tapestry5/trunk/tapestry-jmx/src/main/java/org/apache/tapestry5/jmx/JmxModule.java (original) +++ tapestry/tapestry5/trunk/tapestry-jmx/src/main/java/org/apache/tapestry5/jmx/JmxModule.java Wed Mar 2 23:01:37 2011 @@ -1,10 +1,10 @@ -// Copyright 2010 The Apache Software Foundation +// Copyright 2010, 2011 The Apache Software Foundation // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // -// http://www.apache.org/licenses/LICENSE-2.0 +// http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, @@ -13,44 +13,16 @@ // limitations under the License. package org.apache.tapestry5.jmx; -import javax.management.ObjectName; - import org.apache.tapestry5.internal.jmx.MBeanSupportImpl; -import org.apache.tapestry5.internal.services.PagePool; -import org.apache.tapestry5.ioc.annotations.Autobuild; -import org.apache.tapestry5.ioc.services.RegistryShutdownHub; +import org.apache.tapestry5.ioc.ServiceBinder; /** * Module for JMX services. - * */ public class JmxModule { - public MBeanSupport buildMBeanSupport(RegistryShutdownHub shutdownHub, @Autobuild MBeanSupportImpl service) - { - shutdownHub.addRegistryShutdownListener(service); - - return service; - } - - public static PagePool decoratePagePool(final PagePool pagePool, final MBeanSupport managedBeanSupport) - { - final ObjectName objectName = buildObjectName("org.apache.tapestry5:service=PagePool"); - - managedBeanSupport.register(pagePool, objectName); - - return pagePool; - } - - private static ObjectName buildObjectName(String name) + public static void bind(ServiceBinder binder) { - try - { - return new ObjectName(name); - } - catch (Exception e) - { - throw new RuntimeException(e); - } + binder.bind(MBeanSupport.class, MBeanSupportImpl.class); } } Modified: tapestry/tapestry5/trunk/tapestry-jmx/src/main/java/org/apache/tapestry5/jmx/MBeanSupport.java URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-jmx/src/main/java/org/apache/tapestry5/jmx/MBeanSupport.java?rev=1076449&r1=1076448&r2=1076449&view=diff ============================================================================== --- tapestry/tapestry5/trunk/tapestry-jmx/src/main/java/org/apache/tapestry5/jmx/MBeanSupport.java (original) +++ tapestry/tapestry5/trunk/tapestry-jmx/src/main/java/org/apache/tapestry5/jmx/MBeanSupport.java Wed Mar 2 23:01:37 2011 @@ -1,10 +1,10 @@ -// Copyright 20010 The Apache Software Foundation +// Copyright 2010, 2011 The Apache Software Foundation // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // -// http://www.apache.org/licenses/LICENSE-2.0 +// http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, @@ -17,26 +17,40 @@ package org.apache.tapestry5.jmx; import javax.management.ObjectName; /** - * Creates an MBean server and registers MBeans with the created server. The registered MBeans are unregistered when Registry is shut down. + * Creates an MBean server and registers MBeans with the created server. The registered MBeans are unregistered when + * Registry is shut down. * * @since 5.2.0 */ -public interface MBeanSupport +public interface MBeanSupport { /** * Registers the specified MBean with the server. * - * @param bean the MBean instance - * @param objectName the name for the MBean + * @param bean + * the MBean instance + * @param objectName + * the name for the MBean */ - void register(final Object bean, final ObjectName objectName); + void register(Object bean, ObjectName objectName); /** - * Unregisters the specified MBean from the server. + * Registers the specific MBean with the server. * - * @param objectName the name for the MBean + * @param bean + * the MBean instance + * @param name + * string name used to create an {@link ObjectName} + * @since 5.3.0 */ - void unregister(final ObjectName objectName); + void register(Object bean, String name); -} \ No newline at end of file + /** + * Unregisters the specified MBean from the server. + * + * @param objectName + * the name for the MBean + */ + void unregister(ObjectName objectName); +} Modified: tapestry/tapestry5/trunk/tapestry-jmx/src/test/conf/testng.xml URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-jmx/src/test/conf/testng.xml?rev=1076449&r1=1076448&r2=1076449&view=diff ============================================================================== --- tapestry/tapestry5/trunk/tapestry-jmx/src/test/conf/testng.xml (original) +++ tapestry/tapestry5/trunk/tapestry-jmx/src/test/conf/testng.xml Wed Mar 2 23:01:37 2011 @@ -1,22 +1,12 @@ <!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd"> - <!-- - Copyright 2010 The Apache Software Foundation Licensed under the - Apache License, Version 2.0 (the "License"); you may not use this file - except in compliance with the License. You may obtain a copy of the - License at http://www.apache.org/licenses/LICENSE-2.0 Unless required - by applicable law or agreed to in writing, software distributed under - the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR - CONDITIONS OF ANY KIND, either express or implied. See the License for - the specific language governing permissions and limitations under the - License. - --> <suite name="Tapestry JMX" parallel="false" thread-count="10" annotations="1.5" verbose="2"> - <parameter name="tapestry.integration-webapp" value="src/test/webapp"/> - <test name="Tapestry JMX Integration Tests"> - <packages> - <package name="org.apache.tapestry5.jmx.integration"/> - </packages> - </test> + <test name="Tapestry JMX Integration Tests"> + <parameter name="tapestry.web-app-folder" value="src/test/webapp"/> + + <packages> + <package name="org.apache.tapestry5.jmx.integration"/> + </packages> + </test> </suite> Modified: tapestry/tapestry5/trunk/tapestry-jmx/src/test/java/org/apache/tapestry5/jmx/integration/TapestryJmxIntegrationTests.java URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-jmx/src/test/java/org/apache/tapestry5/jmx/integration/TapestryJmxIntegrationTests.java?rev=1076449&r1=1076448&r2=1076449&view=diff ============================================================================== --- tapestry/tapestry5/trunk/tapestry-jmx/src/test/java/org/apache/tapestry5/jmx/integration/TapestryJmxIntegrationTests.java (original) +++ tapestry/tapestry5/trunk/tapestry-jmx/src/test/java/org/apache/tapestry5/jmx/integration/TapestryJmxIntegrationTests.java Wed Mar 2 23:01:37 2011 @@ -13,25 +13,20 @@ // limitations under the License. package org.apache.tapestry5.jmx.integration; -import org.apache.tapestry5.test.AbstractIntegrationTestSuite; +import org.apache.tapestry5.test.SeleniumTestCase; import org.testng.annotations.Test; @Test(sequential = true, groups = "integration") -public class TapestryJmxIntegrationTests extends AbstractIntegrationTestSuite +public class TapestryJmxIntegrationTests extends SeleniumTestCase { - - public TapestryJmxIntegrationTests() - { - super("src/test/webapp"); - } - /** TAP5-978 */ @Test public void remote_pool_management() { + openBaseURL(); - start("Remote Pool Management"); + clickAndWait("link=Remote Pool Management"); - assertTextPresent("SoftWait: 10"); + assertText("sample-value", "42"); } } Modified: tapestry/tapestry5/trunk/tapestry-jmx/src/test/java/org/example/testapp/pages/RemotePoolManagement.java URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-jmx/src/test/java/org/example/testapp/pages/RemotePoolManagement.java?rev=1076449&r1=1076448&r2=1076449&view=diff ============================================================================== --- tapestry/tapestry5/trunk/tapestry-jmx/src/test/java/org/example/testapp/pages/RemotePoolManagement.java (original) +++ tapestry/tapestry5/trunk/tapestry-jmx/src/test/java/org/example/testapp/pages/RemotePoolManagement.java Wed Mar 2 23:01:37 2011 @@ -1,10 +1,10 @@ -// Copyright 2010 The Apache Software Foundation +// Copyright 2010, 2011 The Apache Software Foundation // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // -// http://www.apache.org/licenses/LICENSE-2.0 +// http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, @@ -20,12 +20,12 @@ import javax.management.ObjectName; public class RemotePoolManagement { - - public Object getSoftWait() throws Exception + + public Object getSampleValue() throws Exception { MBeanServer server = ManagementFactory.getPlatformMBeanServer(); - - return server.getAttribute(new ObjectName("org.apache.tapestry5:service=PagePool"), "SoftWait"); + + return server.getAttribute(new ObjectName("org.example.testapp.services:service=Sample"), "SampleValue"); } } Modified: tapestry/tapestry5/trunk/tapestry-jmx/src/test/java/org/example/testapp/services/AppModule.java URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-jmx/src/test/java/org/example/testapp/services/AppModule.java?rev=1076449&r1=1076448&r2=1076449&view=diff ============================================================================== --- tapestry/tapestry5/trunk/tapestry-jmx/src/test/java/org/example/testapp/services/AppModule.java (original) +++ tapestry/tapestry5/trunk/tapestry-jmx/src/test/java/org/example/testapp/services/AppModule.java Wed Mar 2 23:01:37 2011 @@ -1,10 +1,10 @@ -// Copyright 2010 The Apache Software Foundation +// Copyright 2010, 2011 The Apache Software Foundation // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // -// http://www.apache.org/licenses/LICENSE-2.0 +// http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, @@ -16,15 +16,30 @@ package org.example.testapp.services; import org.apache.tapestry5.SymbolConstants; import org.apache.tapestry5.ioc.MappedConfiguration; +import org.apache.tapestry5.ioc.ServiceBinder; +import org.apache.tapestry5.ioc.annotations.Decorate; import org.apache.tapestry5.ioc.annotations.SubModule; import org.apache.tapestry5.jmx.JmxModule; +import org.apache.tapestry5.jmx.MBeanSupport; @SubModule(JmxModule.class) public class AppModule { + public static void bind(ServiceBinder binder) + { + binder.bind(Sample.class); + } + public static void contributeApplicationDefaults(MappedConfiguration<String, String> configuration) { configuration.add(SymbolConstants.PRODUCTION_MODE, "false"); - configuration.add(SymbolConstants.PAGE_POOL_ENABLED, "true"); } -} \ No newline at end of file + + @Decorate(serviceInterface = Sample.class) + public static Sample enableJMXForSample(Sample service, MBeanSupport managedBeanSupport) + { + managedBeanSupport.register(service, "org.example.testapp.services:service=Sample"); + + return service; + } +} Added: tapestry/tapestry5/trunk/tapestry-jmx/src/test/java/org/example/testapp/services/Sample.java URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-jmx/src/test/java/org/example/testapp/services/Sample.java?rev=1076449&view=auto ============================================================================== --- tapestry/tapestry5/trunk/tapestry-jmx/src/test/java/org/example/testapp/services/Sample.java (added) +++ tapestry/tapestry5/trunk/tapestry-jmx/src/test/java/org/example/testapp/services/Sample.java Wed Mar 2 23:01:37 2011 @@ -0,0 +1,20 @@ +// Copyright 2011 The Apache Software Foundation +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package org.example.testapp.services; + +public interface Sample +{ + int getSampleValue(); +} Copied: tapestry/tapestry5/trunk/tapestry-jmx/src/test/java/org/example/testapp/services/SampleImpl.java (from r1076448, tapestry/tapestry5/trunk/tapestry-jmx/src/test/java/org/apache/tapestry5/jmx/integration/TapestryJmxIntegrationTests.java) URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-jmx/src/test/java/org/example/testapp/services/SampleImpl.java?p2=tapestry/tapestry5/trunk/tapestry-jmx/src/test/java/org/example/testapp/services/SampleImpl.java&p1=tapestry/tapestry5/trunk/tapestry-jmx/src/test/java/org/apache/tapestry5/jmx/integration/TapestryJmxIntegrationTests.java&r1=1076448&r2=1076449&rev=1076449&view=diff ============================================================================== --- tapestry/tapestry5/trunk/tapestry-jmx/src/test/java/org/apache/tapestry5/jmx/integration/TapestryJmxIntegrationTests.java (original) +++ tapestry/tapestry5/trunk/tapestry-jmx/src/test/java/org/example/testapp/services/SampleImpl.java Wed Mar 2 23:01:37 2011 @@ -1,4 +1,4 @@ -// Copyright 2009, 2010 The Apache Software Foundation +// Copyright 2011 The Apache Software Foundation // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -11,27 +11,16 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -package org.apache.tapestry5.jmx.integration; -import org.apache.tapestry5.test.AbstractIntegrationTestSuite; -import org.testng.annotations.Test; +package org.example.testapp.services; -@Test(sequential = true, groups = "integration") -public class TapestryJmxIntegrationTests extends AbstractIntegrationTestSuite -{ - - public TapestryJmxIntegrationTests() - { - super("src/test/webapp"); - } +import org.apache.tapestry5.ioc.annotations.EagerLoad; - /** TAP5-978 */ - @Test - public void remote_pool_management() +@EagerLoad +public class SampleImpl implements Sample, SampleImplMBean +{ + public int getSampleValue() { - - start("Remote Pool Management"); - - assertTextPresent("SoftWait: 10"); + return 42; } } Added: tapestry/tapestry5/trunk/tapestry-jmx/src/test/java/org/example/testapp/services/SampleImplMBean.java URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-jmx/src/test/java/org/example/testapp/services/SampleImplMBean.java?rev=1076449&view=auto ============================================================================== --- tapestry/tapestry5/trunk/tapestry-jmx/src/test/java/org/example/testapp/services/SampleImplMBean.java (added) +++ tapestry/tapestry5/trunk/tapestry-jmx/src/test/java/org/example/testapp/services/SampleImplMBean.java Wed Mar 2 23:01:37 2011 @@ -0,0 +1,19 @@ +// Copyright 2011 The Apache Software Foundation +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package org.example.testapp.services; + +public interface SampleImplMBean extends Sample +{ +} Added: tapestry/tapestry5/trunk/tapestry-jmx/src/test/resources/log4j.properties URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-jmx/src/test/resources/log4j.properties?rev=1076449&view=auto ============================================================================== --- tapestry/tapestry5/trunk/tapestry-jmx/src/test/resources/log4j.properties (added) +++ tapestry/tapestry5/trunk/tapestry-jmx/src/test/resources/log4j.properties Wed Mar 2 23:01:37 2011 @@ -0,0 +1,10 @@ +log4j.rootCategory=INFO, A1 + +# A1 is set to be a ConsoleAppender. +log4j.appender.A1=org.apache.log4j.ConsoleAppender + +# A1 uses PatternLayout. +log4j.appender.A1.layout=org.apache.log4j.PatternLayout +log4j.appender.A1.layout.ConversionPattern=[%p] %c{1} %m%n + +log4j.category.org.example.testapp=debug Modified: tapestry/tapestry5/trunk/tapestry-jmx/src/test/webapp/RemotePoolManagement.tml URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-jmx/src/test/webapp/RemotePoolManagement.tml?rev=1076449&r1=1076448&r2=1076449&view=diff ============================================================================== --- tapestry/tapestry5/trunk/tapestry-jmx/src/test/webapp/RemotePoolManagement.tml (original) +++ tapestry/tapestry5/trunk/tapestry-jmx/src/test/webapp/RemotePoolManagement.tml Wed Mar 2 23:01:37 2011 @@ -1,7 +1,10 @@ <html xmlns:t="http://tapestry.apache.org/schema/tapestry_5_0_0.xsd"> <h1>Remote Pool Management Demo</h1> - - <p>SoftWait: ${softWait}</p> + + <p> + Sample value: + <span id="sample-value">${sampleValue}</span> + </p> </html> \ No newline at end of file