You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tapestry.apache.org by dr...@apache.org on 2010/05/26 09:05:39 UTC

svn commit: r948348 - in /tapestry/tapestry5/trunk/tapestry-core/src: main/java/org/apache/tapestry5/internal/services/ test/app1/ test/java/org/apache/tapestry5/integration/app1/ test/java/org/apache/tapestry5/integration/app1/pages/

Author: drobiazko
Date: Wed May 26 07:05:38 2010
New Revision: 948348

URL: http://svn.apache.org/viewvc?rev=948348&view=rev
Log:
TAP5-978: Provide remote management of the page pool settings

Added:
    tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupport.java   (with props)
    tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupportImpl.java   (with props)
    tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PagePoolImplMBean.java   (with props)
    tapestry/tapestry5/trunk/tapestry-core/src/test/app1/RemotePoolManagement.tml
    tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/RemotePoolManagement.java   (with props)
Modified:
    tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/InternalModule.java
    tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PagePoolImpl.java
    tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/CoreBehaviorsTests.java
    tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/Index.java

Modified: tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/InternalModule.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/InternalModule.java?rev=948348&r1=948347&r2=948348&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/InternalModule.java (original)
+++ tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/InternalModule.java Wed May 26 07:05:38 2010
@@ -14,6 +14,7 @@
 
 package org.apache.tapestry5.internal.services;
 
+import javax.management.ObjectName;
 import javax.servlet.http.Cookie;
 
 import org.apache.tapestry5.SymbolConstants;
@@ -36,6 +37,7 @@ import org.apache.tapestry5.ioc.services
 import org.apache.tapestry5.ioc.services.ClasspathURLConverter;
 import org.apache.tapestry5.ioc.services.PerthreadManager;
 import org.apache.tapestry5.ioc.services.PropertyShadowBuilder;
+import org.apache.tapestry5.ioc.services.RegistryShutdownHub;
 import org.apache.tapestry5.services.*;
 import org.apache.tapestry5.services.templates.ComponentTemplateLocator;
 import org.slf4j.Logger;
@@ -170,7 +172,9 @@ public class InternalModule
     InvalidationEventHub templatesHub,
 
     @ComponentMessages
-    InvalidationEventHub messagesHub)
+    InvalidationEventHub messagesHub,
+    
+    MBeanSupport managedBeanSupport)
     {
         // This covers invalidations due to changes to classes
 
@@ -188,6 +192,29 @@ public class InternalModule
 
         updateListenerHub.addUpdateListener(service);
 
+        final ObjectName objectName = buildObjectName("org.apache.tapestry5:type=PagePool");
+        
+        managedBeanSupport.register(service, objectName);
+
+        return service;
+    }
+    
+    private ObjectName buildObjectName(String name)
+    {
+        try
+        {
+            return new ObjectName(name);
+        }
+        catch (Exception e)
+        {
+            throw new RuntimeException(e);
+        }
+    }
+
+    public MBeanSupport buildMBeanSupport(RegistryShutdownHub shutdownHub, @Autobuild MBeanSupportImpl service)
+    {
+        shutdownHub.addRegistryShutdownListener(service);
+        
         return service;
     }
 

Added: tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupport.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupport.java?rev=948348&view=auto
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupport.java (added)
+++ tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupport.java Wed May 26 07:05:38 2010
@@ -0,0 +1,42 @@
+// Copyright 20010 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.apache.tapestry5.internal.services;
+
+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.
+ * 
+ * @since 5.2.0
+ */
+public interface MBeanSupport 
+{
+
+    /**
+     * Registers the specified MBean with the server.
+     * 
+     * @param bean the MBean instance
+     * @param objectName the name for the MBean
+     */
+    void register(final Object bean, final ObjectName objectName);
+
+    /**
+     * Unregisters the specified MBean from the server.
+     * 
+     * @param objectName the name for the MBean
+     */
+    void unregister(final ObjectName objectName);
+
+}
\ No newline at end of file

Propchange: tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupport.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupport.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupportImpl.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupportImpl.java?rev=948348&view=auto
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupportImpl.java (added)
+++ tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupportImpl.java Wed May 26 07:05:38 2010
@@ -0,0 +1,101 @@
+// Copyright 20010 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.apache.tapestry5.internal.services;
+
+import static java.lang.String.format;
+
+import java.lang.management.ManagementFactory;
+import java.util.List;
+import java.util.Set;
+
+import javax.management.MBeanServer;
+import javax.management.MBeanServerFactory;
+import javax.management.ObjectInstance;
+import javax.management.ObjectName;
+
+import org.apache.tapestry5.ioc.internal.util.CollectionFactory;
+import org.apache.tapestry5.ioc.services.RegistryShutdownListener;
+import org.slf4j.Logger;
+
+public class MBeanSupportImpl implements MBeanSupport, RegistryShutdownListener
+{
+    private Logger logger;
+
+    private MBeanServer server;
+
+    private final Set<ObjectName> registeredBeans = CollectionFactory.newSet();
+
+    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())
+        {
+            this.server = servers.get(0);
+        }
+
+        if (this.server == null)
+        {
+            this.server = ManagementFactory.getPlatformMBeanServer();
+        }
+    }
+
+    public void register(final Object object, final ObjectName objectName)
+    {
+        try
+        {
+            this.server.registerMBean(object, objectName);
+
+            this.registeredBeans.add(objectName);
+
+            this.logger.info(format("Registered MBean '%s' with server", objectName));
+        }
+        catch (final Exception e)
+        {
+            this.logger.error(format("Failed to register MBean '%s' with server", objectName), e);
+        }
+    }
+
+    public void unregister(final ObjectName objectName)
+    {
+        if (this.server.isRegistered(objectName))
+        {
+            try
+            {
+                this.server.unregisterMBean(objectName);
+
+                this.logger.info(format("Unegistered MBean '%s' from server", objectName));
+            }
+            catch (final Exception e)
+            {
+                this.logger.error(String.format("Failed to unregister MBean '%s' from server", objectName), e);
+            }
+        }
+    }
+
+    public void registryDidShutdown()
+    {
+        for (final ObjectName name : this.registeredBeans)
+        {
+            unregister(name);
+        }
+
+        this.registeredBeans.clear();
+
+    }
+}

Propchange: tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupportImpl.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupportImpl.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Modified: tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PagePoolImpl.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PagePoolImpl.java?rev=948348&r1=948347&r2=948348&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PagePoolImpl.java (original)
+++ tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PagePoolImpl.java Wed May 26 07:05:38 2010
@@ -14,6 +14,7 @@
 
 package org.apache.tapestry5.internal.services;
 
+import org.apache.tapestry5.SymbolConstants;
 import org.apache.tapestry5.internal.structure.Page;
 import org.apache.tapestry5.ioc.annotations.IntermediateType;
 import org.apache.tapestry5.ioc.annotations.Symbol;
@@ -47,7 +48,7 @@ import java.util.Map;
  *
  * @see org.apache.tapestry5.internal.services.PagePoolCache
  */
-public class PagePoolImpl implements PagePool, InvalidationListener, UpdateListener
+public class PagePoolImpl implements PagePool, InvalidationListener, UpdateListener, PagePoolImplMBean
 {
     private final Logger logger;
 
@@ -55,13 +56,13 @@ public class PagePoolImpl implements Pag
 
     private final ThreadLocale threadLocale;
 
-    private final int softLimit;
+    private int softLimit;
 
-    private final long softWait;
+    private long softWait;
 
-    private final int hardLimit;
+    private int hardLimit;
 
-    private final long activeWindow;
+    private long activeWindow;
 
     private final Map<PageLocator, PagePoolCache> pool = CollectionFactory.newMap();
 
@@ -71,16 +72,16 @@ public class PagePoolImpl implements Pag
 
                         ThreadLocale threadLocale,
 
-                        @Symbol("tapestry.page-pool.soft-limit")
+                        @Symbol(SymbolConstants.PAGE_POOL_SOFT_LIMIT)
                         int softLimit,
 
-                        @Symbol("tapestry.page-pool.soft-wait") @IntermediateType(TimeInterval.class)
+                        @Symbol(SymbolConstants.PAGE_POOL_SOFT_WAIT) @IntermediateType(TimeInterval.class)
                         long softWait,
 
-                        @Symbol("tapestry.page-pool.hard-limit")
+                        @Symbol(SymbolConstants.PAGE_POOL_HARD_LIMIT)
                         int hardLimit,
 
-                        @Symbol("tapestry.page-pool.active-window") @IntermediateType(TimeInterval.class)
+                        @Symbol(SymbolConstants.PAGE_POOL_ACTIVE_WINDOW) @IntermediateType(TimeInterval.class)
                         long activeWindow)
     {
         this.logger = logger;
@@ -165,4 +166,53 @@ public class PagePoolImpl implements Pag
             cache.cleanup();
         }
     }
+
+    public int getSoftLimit()
+    {
+        return softLimit;
+    }
+
+    public void setSoftLimit(int softLimit)
+    {
+        this.softLimit = softLimit;
+        
+        objectWasInvalidated();
+    }
+
+    public long getSoftWait()
+    {
+        return softWait;
+    }
+
+    public void setSoftWait(long softWait)
+    {
+        this.softWait = softWait;
+        
+        objectWasInvalidated();
+    }
+
+    public int getHardLimit()
+    {
+        return hardLimit;
+    }
+
+    public void setHardLimit(int hardLimit)
+    {
+        this.hardLimit = hardLimit;
+        
+        objectWasInvalidated();
+    }
+
+    public long getActiveWindow()
+    {
+        return activeWindow;
+    }
+
+    public void setActiveWindow(long activeWindow)
+    {
+        this.activeWindow = activeWindow;
+        
+        objectWasInvalidated();
+    }
+
 }

Added: tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PagePoolImplMBean.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PagePoolImplMBean.java?rev=948348&view=auto
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PagePoolImplMBean.java (added)
+++ tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PagePoolImplMBean.java Wed May 26 07:05:38 2010
@@ -0,0 +1,78 @@
+// 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.
+package org.apache.tapestry5.internal.services;
+
+
+
+/**
+ * Exposes page pool settings as managed properties of a MBean.
+ * 
+ * @since 5.2.0
+ */
+public interface PagePoolImplMBean
+{
+    /**
+     * Returns the soft limit.
+     * 
+     * @see org.apache.tapestry5.SymbolConstants#PAGE_POOL_SOFT_LIMIT
+     */
+    int getSoftLimit();
+    
+    /**
+     * Sets the soft limit.
+     */
+    void setSoftLimit(int softLimit);
+    
+    /**
+     * Returns the soft wait.
+     * 
+     * @see org.apache.tapestry5.SymbolConstants#PAGE_POOL_SOFT_WAIT
+     */
+    long getSoftWait();
+    
+    /**
+     * Sets the soft wait.
+     */
+    void setSoftWait(long softWait);
+    
+    /**
+     * Returns the hard limit.
+     * 
+     * @see org.apache.tapestry5.SymbolConstants#PAGE_POOL_HARD_LIMIT
+     * 
+     * @deprecated The hard limit will be removed in a later release of Tapestry, as the maximum number of instance
+     *             is easily controlled by limiting the number of request handling threads in the servlet container.
+     */
+    int getHardLimit();
+    
+    /**
+     * Sets the hard limit.
+     * 
+     * @deprecated The hard limit will be removed in a later release of Tapestry, as the maximum number of instance
+     *             is easily controlled by limiting the number of request handling threads in the servlet container.
+     */
+    void setHardLimit(int hardLimit);
+    
+    /**
+     * Returns the active window.
+     * 
+     * @see org.apache.tapestry5.SymbolConstants#PAGE_POOL_ACTIVE_WINDOW
+     */
+    long getActiveWindow();
+    
+    /**
+     * Sets the active window.
+     */
+    void setActiveWindow(long activeWindow);
+}

Propchange: tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PagePoolImplMBean.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PagePoolImplMBean.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: tapestry/tapestry5/trunk/tapestry-core/src/test/app1/RemotePoolManagement.tml
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/test/app1/RemotePoolManagement.tml?rev=948348&view=auto
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/test/app1/RemotePoolManagement.tml (added)
+++ tapestry/tapestry5/trunk/tapestry-core/src/test/app1/RemotePoolManagement.tml Wed May 26 07:05:38 2010
@@ -0,0 +1,7 @@
+<html t:type="Border" xmlns:t="http://tapestry.apache.org/schema/tapestry_5_0_0.xsd">
+
+  <h1>Remote Pool Management Demo</h1>
+  
+  <p>SoftWait: ${softWait}</p>
+
+</html>
\ No newline at end of file

Modified: tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/CoreBehaviorsTests.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/CoreBehaviorsTests.java?rev=948348&r1=948347&r2=948348&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/CoreBehaviorsTests.java (original)
+++ tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/CoreBehaviorsTests.java Wed May 26 07:05:38 2010
@@ -1488,4 +1488,13 @@ public class CoreBehaviorsTests extends 
         assertText("id=no-override", "[pre-app]");
         assertText("id=override", "[app]");
     }
+    
+    /** TAP5-978 */
+    @Test
+    public void remote_pool_management()
+    {
+        clickThru("Remote Pool Management");
+
+        assertTextPresent("SoftWait: 10");
+    }
 }

Modified: tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/Index.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/Index.java?rev=948348&r1=948347&r2=948348&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/Index.java (original)
+++ tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/Index.java Wed May 26 07:05:38 2010
@@ -435,7 +435,9 @@ public class Index
                     new Item("unavailablecomponentdemo", "Report Location of Unavailable Component",
                             "Report Location of Unavailable Component"),
 
-                    new Item("discardafterdemo", "@DiscardAfter Demo", "Demo using @DiscardAfter annotation")
+                    new Item("discardafterdemo", "@DiscardAfter Demo", "Demo using @DiscardAfter annotation"),
+                    
+                    new Item("remotepoolmanagement", "Remote Pool Management", "Proves that Page Pool MBean is registered")
 
             );
 

Added: tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/RemotePoolManagement.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/RemotePoolManagement.java?rev=948348&view=auto
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/RemotePoolManagement.java (added)
+++ tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/RemotePoolManagement.java Wed May 26 07:05:38 2010
@@ -0,0 +1,31 @@
+// 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.
+package org.apache.tapestry5.integration.app1.pages;
+
+import java.lang.management.ManagementFactory;
+
+import javax.management.MBeanServer;
+import javax.management.ObjectName;
+
+public class RemotePoolManagement
+{
+    
+    public Object getSoftWait() throws Exception
+    {
+        MBeanServer server = ManagementFactory.getPlatformMBeanServer();
+        
+        return server.getAttribute(new ObjectName("org.apache.tapestry5:type=PagePool"), "SoftWait");
+    }
+
+}

Propchange: tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/RemotePoolManagement.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/RemotePoolManagement.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain



Re: 5.2.0-SNAPSHOT - javax.management issues in GAE

Posted by Christian Edward Gruber <ch...@gmail.com>.
+1.  WE're using an april 26 snapshot which is working fine - I would  
hate to end up importing an alpha (we can't use maven) and end up  
having it all break.

Christian.

On Jun 7, 2010, at 12:08 AM, Alex Kotchnev wrote:

>  Can it please be moved to a separate module ? After having to jump  
> through
> hoops to get 5.1 running on GAE, and 5.2 stabilizing / working on  
> GAE (up
> until now), it would be very unpleasant to go back to jumping  
> through hoops
> to have to get a T5 app running on GAE again.
>
> Please ?
>
> Regards,
>
> Alex K
>
> On Sun, Jun 6, 2010 at 2:52 PM, Josh Canfield  
> <jo...@gmail.com>wrote:
>
>> This probably needs to be moved to a separate module ala tapestry- 
>> hibernate
>>
>> -- Josh
>>
>>
>> On Jun 6, 2010, at 11:37 AM, Igor Drobiazko  
>> <ig...@gmail.com>
>> wrote:
>>
>> Looks like javax.management is not in the white list and can not be
>>> loaded.
>>>
>>> http://code.google.com/intl/en/appengine/docs/java/jrewhitelist.html
>>>
>>> Unfortunately I never deployed T5 into Google App Engine and have  
>>> no idea
>>> if
>>> there is a workaround for it.
>>>
>>> On Sat, Jun 5, 2010 at 3:59 PM, Robert Hajek <robert.hajek@b2bcentrum.cz
>>>> wrote:
>>>
>>> Hi All,
>>>>
>>>> I have problem with deploying simple T5.2 web application to GAE.
>>>>
>>>> Caused by: java.lang.RuntimeException:
>>>> Error invoking service builder method
>>>> org.apache.tapestry5.internal.services.InternalModule.buildPagePool
>>>> (PagePoolImpl, InvalidationEventHub, InvalidationEventHub,  
>>>> MBeanSupport)
>>>> (at InternalModule.java:181) (for service 'PagePool'): Error  
>>>> building
>>>> service proxy for service 'MBeanSupport'
>>>> (at
>>>>
>>>> org 
>>>> .apache 
>>>> .tapestry5 
>>>> .internal 
>>>> .services.InternalModule.buildMBeanSupport(RegistryShutdownHub,
>>>> MBeanSupportImpl)
>>>> (at InternalModule.java:216)): Unable to lookup class
>>>>
>>>> com 
>>>> .google 
>>>> .apphosting 
>>>> .runtime.security.shared.stub.javax.management.ObjectName:
>>>>
>>>>
>>>> com 
>>>> .google 
>>>> .apphosting 
>>>> .runtime.security.shared.stub.javax.management.ObjectName
>>>>
>>>
>>
>>
>>>> This problem probably starts after fixing issue "TAP5-978:  
>>>> Provide remote
>>>> management of the page pool settings."
>>>>
>>>> Is there some workaround how to disable javax.management stuff in  
>>>> T5 or
>>>> fix
>>>> this issue? Will be GAE officially supported in beta of final  
>>>> release of
>>>> T5.2 ?
>>>>
>>>> Thanks,
>>>>
>>>> Rob
>>>>
>>>> full stacktrace:
>>>>
>>>> Uncaught exception from servlet
>>>> java.lang.RuntimeException: Exception constructing service  
>>>> 'PagePool':
>>>> Error invoking service builder method
>>>>
>>>> org 
>>>> .apache 
>>>> .tapestry5 
>>>> .internal.services.InternalModule.buildPagePool(PagePoolImpl,
>>>> InvalidationEventHub, InvalidationEventHub, MBeanSupport) (at
>>>> InternalModule.java:181) (for service 'PagePool'): Error building  
>>>> service
>>>> proxy for service 'MBeanSupport' (at
>>>>
>>>> org 
>>>> .apache 
>>>> .tapestry5 
>>>> .internal 
>>>> .services.InternalModule.buildMBeanSupport(RegistryShutdownHub,
>>>> MBeanSupportImpl) (at InternalModule.java:216)): Unable to lookup  
>>>> class
>>>>
>>>> com 
>>>> .google 
>>>> .apphosting 
>>>> .runtime.security.shared.stub.javax.management.ObjectName:
>>>>
>>>> com 
>>>> .google 
>>>> .apphosting 
>>>> .runtime.security.shared.stub.javax.management.ObjectName
>>>>
>>>
>>
>>      at
>>>>
>>>> org 
>>>> .apache 
>>>> .tapestry5 
>>>> .ioc 
>>>> .internal 
>>>> .services 
>>>> .JustInTimeObjectCreator 
>>>> .obtainObjectFromCreator(JustInTimeObjectCreator.java:78)
>>>>     at
>>>>
>>>> org 
>>>> .apache 
>>>> .tapestry5 
>>>> .ioc 
>>>> .internal 
>>>> .services 
>>>> .JustInTimeObjectCreator 
>>>> .createObject(JustInTimeObjectCreator.java:57)
>>>>     at $PagePool_129082cfd52.delegate($PagePool_129082cfd52.java)
>>>>     at $PagePool_129082cfd52.checkout($PagePool_129082cfd52.java)
>>>>     at
>>>>
>>>> org 
>>>> .apache 
>>>> .tapestry5 
>>>> .internal 
>>>> .services.RequestPageCacheImpl.get(RequestPageCacheImpl.java:51)
>>>>     at
>>>> $ 
>>>> RequestPageCache_129082cfd51 
>>>> .get($RequestPageCache_129082cfd51.java)
>>>>     at
>>>> $ 
>>>> RequestPageCache_129082cfd4a 
>>>> .get($RequestPageCache_129082cfd4a.java)
>>>>     at
>>>>
>>>> org 
>>>> .apache 
>>>> .tapestry5 
>>>> .internal 
>>>> .services 
>>>> .DefaultRequestExceptionHandler 
>>>> .handleRequestException(DefaultRequestExceptionHandler.java:69)
>>>>     at
>>>>
>>>> $ 
>>>> RequestExceptionHandler_129082cfd28 
>>>> .handleRequestException($RequestExceptionHandler_129082cfd28.java)
>>>>     at
>>>>
>>>> org 
>>>> .apache 
>>>> .tapestry5 
>>>> .internal 
>>>> .services.RequestErrorFilter.service(RequestErrorFilter.java:42)
>>>>     at
>>>> $ 
>>>> RequestHandler_129082cfd2b 
>>>> .service($RequestHandler_129082cfd2b.java)
>>>>     at
>>>>
>>>> org.apache.tapestry5.services.TapestryModule 
>>>> $4.service(TapestryModule.java:977)
>>>>     at
>>>> $ 
>>>> RequestHandler_129082cfd2b 
>>>> .service($RequestHandler_129082cfd2b.java)
>>>>     at
>>>>
>>>> org.apache.tapestry5.services.TapestryModule 
>>>> $3.service(TapestryModule.java:967)
>>>>     at
>>>> $ 
>>>> RequestHandler_129082cfd2b 
>>>> .service($RequestHandler_129082cfd2b.java)
>>>>     at
>>>>
>>>> org 
>>>> .apache 
>>>> .tapestry5 
>>>> .internal 
>>>> .services.StaticFilesFilter.service(StaticFilesFilter.java:90)
>>>>     at
>>>> $ 
>>>> RequestHandler_129082cfd2b 
>>>> .service($RequestHandler_129082cfd2b.java)
>>>>     at
>>>>
>>>> org.apache.tapestry5.internal.services.CheckForUpdatesFilter 
>>>> $2.invoke(CheckForUpdatesFilter.java:90)
>>>>     at
>>>>
>>>> org.apache.tapestry5.internal.services.CheckForUpdatesFilter 
>>>> $2.invoke(CheckForUpdatesFilter.java:80)
>>>>     at
>>>>
>>>> org 
>>>> .apache 
>>>> .tapestry5 
>>>> .ioc 
>>>> .internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java: 
>>>> 85)
>>>>     at
>>>>
>>>> org 
>>>> .apache 
>>>> .tapestry5 
>>>> .internal 
>>>> .services 
>>>> .CheckForUpdatesFilter.service(CheckForUpdatesFilter.java:103)
>>>>     at
>>>> $ 
>>>> RequestHandler_129082cfd2b 
>>>> .service($RequestHandler_129082cfd2b.java)
>>>>     at
>>>> $ 
>>>> RequestHandler_129082cfd20 
>>>> .service($RequestHandler_129082cfd20.java)
>>>>     at
>>>>
>>>> org.apache.tapestry5.services.TapestryModule 
>>>> $HttpServletRequestHandlerTerminator.service(TapestryModule.java: 
>>>> 271)
>>>>     at
>>>> org 
>>>> .apache 
>>>> .tapestry5.internal.gzip.GZipFilter.service(GZipFilter.java:53)
>>>>     at
>>>>
>>>> $ 
>>>> HttpServletRequestHandler_129082cfd22 
>>>> .service($HttpServletRequestHandler_129082cfd22.java)
>>>>     at
>>>>
>>>> org 
>>>> .apache 
>>>> .tapestry5 
>>>> .internal 
>>>> .services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62)
>>>>     at
>>>>
>>>> $ 
>>>> HttpServletRequestFilter_129082cfd1f 
>>>> .service($HttpServletRequestFilter_129082cfd1f.java)
>>>>     at
>>>>
>>>> $ 
>>>> HttpServletRequestHandler_129082cfd22 
>>>> .service($HttpServletRequestHandler_129082cfd22.java)
>>>>     at
>>>>
>>>> org.apache.tapestry5.services.TapestryModule 
>>>> $2.service(TapestryModule.java:921)
>>>>     at
>>>>
>>>> $ 
>>>> HttpServletRequestHandler_129082cfd22 
>>>> .service($HttpServletRequestHandler_129082cfd22.java)
>>>>     at
>>>>
>>>> $ 
>>>> HttpServletRequestHandler_129082cfd1d 
>>>> .service($HttpServletRequestHandler_129082cfd1d.java)
>>>>     at
>>>> org.apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java: 
>>>> 147)
>>>>     at
>>>>
>>>> org.mortbay.jetty.servlet.ServletHandler 
>>>> $CachedChain.doFilter(ServletHandler.java:1157)
>>>>     at
>>>>
>>>> com 
>>>> .google 
>>>> .apphosting 
>>>> .utils 
>>>> .servlet 
>>>> .ParseBlobUploadFilter.doFilter(ParseBlobUploadFilter.java:97)
>>>>     at
>>>>
>>>> org.mortbay.jetty.servlet.ServletHandler 
>>>> $CachedChain.doFilter(ServletHandler.java:1157)
>>>>     at
>>>>
>>>> com 
>>>> .google 
>>>> .apphosting 
>>>> .runtime.jetty.SaveSessionFilter.doFilter(SaveSessionFilter.java: 
>>>> 35)
>>>>     at
>>>>
>>>> org.mortbay.jetty.servlet.ServletHandler 
>>>> $CachedChain.doFilter(ServletHandler.java:1157)
>>>>     at
>>>>
>>>> com 
>>>> .google 
>>>> .apphosting 
>>>> .utils 
>>>> .servlet 
>>>> .TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java: 
>>>> 43)
>>>>     at
>>>>
>>>> org.mortbay.jetty.servlet.ServletHandler 
>>>> $CachedChain.doFilter(ServletHandler.java:1157)
>>>>     at
>>>> org 
>>>> .mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java: 
>>>> 388)
>>>>     at
>>>>
>>>> org 
>>>> .mortbay 
>>>> .jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
>>>>     at
>>>> org 
>>>> .mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java: 
>>>> 182)
>>>>     at
>>>> org 
>>>> .mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java: 
>>>> 765)
>>>>     at
>>>> org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java: 
>>>> 418)
>>>>     at
>>>>
>>>> com 
>>>> .google 
>>>> .apphosting 
>>>> .runtime 
>>>> .jetty.AppVersionHandlerMap.handle(AppVersionHandlerMap.java:238)
>>>>     at
>>>> org 
>>>> .mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java: 
>>>> 152)
>>>>     at org.mortbay.jetty.Server.handle(Server.java:326)
>>>>     at
>>>> org 
>>>> .mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java: 
>>>> 542)
>>>>     at
>>>>
>>>> org.mortbay.jetty.HttpConnection 
>>>> $RequestHandler.headerComplete(HttpConnection.java:923)
>>>>     at
>>>>
>>>> com 
>>>> .google 
>>>> .apphosting 
>>>> .runtime 
>>>> .jetty.RpcRequestParser.parseAvailable(RpcRequestParser.java:76)
>>>>     at  
>>>> org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
>>>>     at
>>>>
>>>> com 
>>>> .google 
>>>> .apphosting 
>>>> .runtime 
>>>> .jetty 
>>>> .JettyServletEngineAdapter 
>>>> .serviceRequest(JettyServletEngineAdapter.java:135)
>>>>     at
>>>>
>>>> com 
>>>> .google 
>>>> .apphosting.runtime.JavaRuntime.handleRequest(JavaRuntime.java:250)
>>>>     at
>>>>
>>>> com.google.apphosting.base.RuntimePb$EvaluationRuntime 
>>>> $6.handleBlockingRequest(RuntimePb.java:5838)
>>>>     at
>>>>
>>>> com.google.apphosting.base.RuntimePb$EvaluationRuntime 
>>>> $6.handleBlockingRequest(RuntimePb.java:5836)
>>>>     at
>>>>
>>>> com 
>>>> .google 
>>>> .net 
>>>> .rpc 
>>>> .impl 
>>>> .BlockingApplicationHandler 
>>>> .handleRequest(BlockingApplicationHandler.java:24)
>>>>     at
>>>> com.google.net.rpc.impl.RpcUtil.runRpcInApplication(RpcUtil.java: 
>>>> 398)
>>>>     at com.google.net.rpc.impl.Server$2.run(Server.java:852)
>>>>     at
>>>>
>>>> com 
>>>> .google 
>>>> .tracing.LocalTraceSpanRunnable.run(LocalTraceSpanRunnable.java:56)
>>>>     at
>>>>
>>>> com 
>>>> .google 
>>>> .tracing 
>>>> .LocalTraceSpanBuilder 
>>>> .internalContinueSpan(LocalTraceSpanBuilder.java:576)
>>>>     at com.google.net.rpc.impl.Server.startRpc(Server.java:807)
>>>>     at com.google.net.rpc.impl.Server.processRequest(Server.java: 
>>>> 369)
>>>>     at
>>>>
>>>> com 
>>>> .google 
>>>> .net 
>>>> .rpc.impl.ServerConnection.messageReceived(ServerConnection.java: 
>>>> 442)
>>>>     at
>>>>
>>>> com 
>>>> .google 
>>>> .net.rpc.impl.RpcConnection.parseMessages(RpcConnection.java:319)
>>>>     at
>>>>
>>>> com 
>>>> .google 
>>>> .net.rpc.impl.RpcConnection.dataReceived(RpcConnection.java:290)
>>>>     at
>>>> com.google.net.async.Connection.handleReadEvent(Connection.java: 
>>>> 474)
>>>>     at
>>>>
>>>> com 
>>>> .google 
>>>> .net 
>>>> .async.EventDispatcher.processNetworkEvents(EventDispatcher.java: 
>>>> 831)
>>>>     at
>>>>
>>>> com 
>>>> .google 
>>>> .net.async.EventDispatcher.internalLoop(EventDispatcher.java:207)
>>>>     at
>>>> com.google.net.async.EventDispatcher.loop(EventDispatcher.java:103)
>>>>     at
>>>> com 
>>>> .google.net.rpc.RpcService.runUntilServerShutdown(RpcService.java: 
>>>> 251)
>>>>     at
>>>>
>>>> com.google.apphosting.runtime.JavaRuntime 
>>>> $RpcRunnable.run(JavaRuntime.java:413)
>>>>     at java.lang.Thread.run(Unknown Source)
>>>> Caused by: java.lang.RuntimeException: Error invoking service  
>>>> builder
>>>> method
>>>>
>>>> org 
>>>> .apache 
>>>> .tapestry5 
>>>> .internal.services.InternalModule.buildPagePool(PagePoolImpl,
>>>> InvalidationEventHub, InvalidationEventHub, MBeanSupport) (at
>>>> InternalModule.java:181) (for service 'PagePool'): Error building  
>>>> service
>>>> proxy for service 'MBeanSupport' (at
>>>>
>>>> org 
>>>> .apache 
>>>> .tapestry5 
>>>> .internal 
>>>> .services.InternalModule.buildMBeanSupport(RegistryShutdownHub,
>>>> MBeanSupportImpl) (at InternalModule.java:216)): Unable to lookup  
>>>> class
>>>>
>>>> com 
>>>> .google 
>>>> .apphosting 
>>>> .runtime.security.shared.stub.javax.management.ObjectName:
>>>>
>>>> com 
>>>> .google 
>>>> .apphosting 
>>>> .runtime.security.shared.stub.javax.management.ObjectName
>>>>
>>>
>>
>>      at
>>>>
>>>> org 
>>>> .apache 
>>>> .tapestry5 
>>>> .ioc 
>>>> .internal 
>>>> .ServiceBuilderMethodInvoker 
>>>> .createObject(ServiceBuilderMethodInvoker.java:76)
>>>>     at
>>>>
>>>> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator 
>>>> $1.invoke(OperationTrackingObjectCreator.java:45)
>>>>     at
>>>>
>>>> org 
>>>> .apache 
>>>> .tapestry5 
>>>> .ioc 
>>>> .internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:68)
>>>>     at
>>>>
>>>> org 
>>>> .apache 
>>>> .tapestry5 
>>>> .ioc 
>>>> .internal 
>>>> .PerThreadOperationTracker.invoke(PerThreadOperationTracker.java: 
>>>> 68)
>>>>     at org.apache.tapestry5.ioc.intern
>>>>
>>>>
>>>>
>>>> Dne 27.5.2010 17:59, Howard Lewis Ship napsal(a):
>>>>
>>>> This is very neat stuff.
>>>>>
>>>>> A quibble:  I think the ObjectName should be
>>>>> "org.apache.tapestry5:service=PagePool"  (i.e., reflecting that
>>>>> PagePool here is the service id, not the service interface).
>>>>>
>>>>>
>>>>>
>>>>> On Wed, May 26, 2010 at 12:05 AM,<dr...@apache.org>  wrote:
>>>>>
>>>>>
>>>>> Author: drobiazko
>>>>>> Date: Wed May 26 07:05:38 2010
>>>>>> New Revision: 948348
>>>>>>
>>>>>> URL: http://svn.apache.org/viewvc?rev=948348&view=rev
>>>>>> Log:
>>>>>> TAP5-978: Provide remote management of the page pool settings
>>>>>>
>>>>>> Added:
>>>>>>
>>>>>>
>>>>>> tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/ 
>>>>>> tapestry5/internal/services/MBeanSupport.java
>>>>>> (with props)
>>>>>>
>>>>>>
>>>>>> tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/ 
>>>>>> tapestry5/internal/services/MBeanSupportImpl.java
>>>>>> (with props)
>>>>>>
>>>>>>
>>>>>> tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/ 
>>>>>> tapestry5/internal/services/PagePoolImplMBean.java
>>>>>> (with props)
>>>>>>
>>>>>>
>>>>>> tapestry/tapestry5/trunk/tapestry-core/src/test/app1/ 
>>>>>> RemotePoolManagement.tml
>>>>>>
>>>>>>
>>>>>> tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/ 
>>>>>> tapestry5/integration/app1/pages/RemotePoolManagement.java
>>>>>> (with props)
>>>>>> Modified:
>>>>>>
>>>>>>
>>>>>> tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/ 
>>>>>> tapestry5/internal/services/InternalModule.java
>>>>>>
>>>>>>
>>>>>> tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/ 
>>>>>> tapestry5/internal/services/PagePoolImpl.java
>>>>>>
>>>>>>
>>>>>> tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/ 
>>>>>> tapestry5/integration/app1/CoreBehaviorsTests.java
>>>>>>
>>>>>>
>>>>>> tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/ 
>>>>>> tapestry5/integration/app1/pages/Index.java
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
>>>> For additional commands, e-mail: dev-help@tapestry.apache.org
>>>>
>>>>
>>>>
>>>
>>> --
>>> Best regards,
>>>
>>> Igor Drobiazko
>>> http://tapestry5.de/blog
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
>> For additional commands, e-mail: dev-help@tapestry.apache.org
>>
>>


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
For additional commands, e-mail: dev-help@tapestry.apache.org


Re: 5.2.0-SNAPSHOT - javax.management issues in GAE

Posted by Christian Edward Gruber <ch...@gmail.com>.
Ok.  I'm going to rip it out of a local build out of desperation, and  
import the fixed version when you get it done.  Thanks for pushing on  
it.

Christian.

On Jun 7, 2010, at 5:22 PM, Igor Drobiazko wrote:

> As soon as possible. I guess not later than the upcoming weekend.
>
> On Mon, Jun 7, 2010 at 8:57 PM, Christian Edward Gruber <
> christianedwardgruber@gmail.com> wrote:
>
>> Heh.  Not to rush you, Igor, but any idea when you might get that  
>> done?  I
>> just went to import the latest snapshot and ran into this.
>>
>> Christian.
>>
>>
>> On Jun 7, 2010, at 3:30 AM, Robert Hajek wrote:
>>
>> Nice, thanks Igor !
>>>
>>> Rob
>>>
>>> Dne 7.6.2010 7:19, Igor Drobiazko napsal(a):
>>>
>>>> No problem. I'll move it to tapestry-jmx module.
>>>>
>>>> On Mon, Jun 7, 2010 at 6:08 AM, Alex Kotchnev<ak...@gmail.com>
>>>> wrote:
>>>>
>>>>
>>>>  Can it please be moved to a separate module ? After having to jump
>>>>> through
>>>>> hoops to get 5.1 running on GAE, and 5.2 stabilizing / working  
>>>>> on GAE
>>>>> (up
>>>>> until now), it would be very unpleasant to go back to jumping  
>>>>> through
>>>>> hoops
>>>>> to have to get a T5 app running on GAE again.
>>>>>
>>>>> Please ?
>>>>>
>>>>> Regards,
>>>>>
>>>>> Alex K
>>>>>
>>>>> On Sun, Jun 6, 2010 at 2:52 PM, Josh Canfield<joshcanfield@gmail.com
>>>>>
>>>>> wrote:
>>>>>>
>>>>>>
>>>>> This probably needs to be moved to a separate module ala
>>>>>>
>>>>>> tapestry-hibernate
>>>>>
>>>>> -- Josh
>>>>>>
>>>>>>
>>>>>> On Jun 6, 2010, at 11:37 AM, Igor Drobiazko<igor.drobiazko@gmail.com 
>>>>>> >
>>>>>> wrote:
>>>>>>
>>>>>> Looks like javax.management is not in the white list and can  
>>>>>> not be
>>>>>>
>>>>>> loaded.
>>>>>>>
>>>>>>> http://code.google.com/intl/en/appengine/docs/java/jrewhitelist.html
>>>>>>>
>>>>>>> Unfortunately I never deployed T5 into Google App Engine and  
>>>>>>> have no
>>>>>>>
>>>>>>> idea
>>>>>
>>>>> if
>>>>>>> there is a workaround for it.
>>>>>>>
>>>>>>> On Sat, Jun 5, 2010 at 3:59 PM, Robert Hajek<
>>>>>>>
>>>>>>> robert.hajek@b2bcentrum.cz
>>>>>
>>>>> wrote:
>>>>>>>>
>>>>>>>>  Hi All,
>>>>>>>
>>>>>>> I have problem with deploying simple T5.2 web application to  
>>>>>>> GAE.
>>>>>>>>
>>>>>>>> Caused by: java.lang.RuntimeException:
>>>>>>>> Error invoking service builder method
>>>>>>>> org 
>>>>>>>> .apache 
>>>>>>>> .tapestry5.internal.services.InternalModule.buildPagePool
>>>>>>>> (PagePoolImpl, InvalidationEventHub, InvalidationEventHub,
>>>>>>>>
>>>>>>>> MBeanSupport)
>>>>>
>>>>> (at InternalModule.java:181) (for service 'PagePool'): Error  
>>>>> building
>>>>>>>> service proxy for service 'MBeanSupport'
>>>>>>>> (at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> org 
>>>>>>>> .apache 
>>>>>>>> .tapestry5 
>>>>>>>> .internal 
>>>>>>>> .services.InternalModule.buildMBeanSupport(RegistryShutdownHub,
>>>>>
>>>>> MBeanSupportImpl)
>>>>>>>> (at InternalModule.java:216)): Unable to lookup class
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> com 
>>>>>>>> .google 
>>>>>>>> .apphosting 
>>>>>>>> .runtime.security.shared.stub.javax.management.ObjectName:
>>>>>
>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> com 
>>>>>>>> .google 
>>>>>>>> .apphosting 
>>>>>>>> .runtime.security.shared.stub.javax.management.ObjectName
>>>>>
>>>>>
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>> This problem probably starts after fixing issue "TAP5-978:  
>>>>>> Provide
>>>>>>>>
>>>>>>>> remote
>>>>>
>>>>> management of the page pool settings."
>>>>>>>>
>>>>>>>> Is there some workaround how to disable javax.management  
>>>>>>>> stuff in T5
>>>>>>>> or
>>>>>>>> fix
>>>>>>>> this issue? Will be GAE officially supported in beta of final  
>>>>>>>> release
>>>>>>>>
>>>>>>>> of
>>>>>
>>>>> T5.2 ?
>>>>>>>>
>>>>>>>> Thanks,
>>>>>>>>
>>>>>>>> Rob
>>>>>>>>
>>>>>>>> full stacktrace:
>>>>>>>>
>>>>>>>> Uncaught exception from servlet
>>>>>>>> java.lang.RuntimeException: Exception constructing service
>>>>>>>> 'PagePool':
>>>>>>>> Error invoking service builder method
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> org 
>>>>>>>> .apache 
>>>>>>>> .tapestry5 
>>>>>>>> .internal.services.InternalModule.buildPagePool(PagePoolImpl,
>>>>>
>>>>> InvalidationEventHub, InvalidationEventHub, MBeanSupport) (at
>>>>>>>> InternalModule.java:181) (for service 'PagePool'): Error  
>>>>>>>> building
>>>>>>>>
>>>>>>>> service
>>>>>
>>>>> proxy for service 'MBeanSupport' (at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> org 
>>>>>>>> .apache 
>>>>>>>> .tapestry5 
>>>>>>>> .internal 
>>>>>>>> .services.InternalModule.buildMBeanSupport(RegistryShutdownHub,
>>>>>
>>>>> MBeanSupportImpl) (at InternalModule.java:216)): Unable to  
>>>>> lookup class
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> com 
>>>>>>>> .google 
>>>>>>>> .apphosting 
>>>>>>>> .runtime.security.shared.stub.javax.management.ObjectName:
>>>>>
>>>>>
>>>>>>>>
>>>>>>>> com 
>>>>>>>> .google 
>>>>>>>> .apphosting 
>>>>>>>> .runtime.security.shared.stub.javax.management.ObjectName
>>>>>
>>>>>
>>>>>>>>
>>>>>>>      at
>>>>>>
>>>>>>
>>>>>>>>
>>>>>>>> org 
>>>>>>>> .apache 
>>>>>>>> .tapestry5 
>>>>>>>> .ioc 
>>>>>>>> .internal 
>>>>>>>> .services 
>>>>>>>> .JustInTimeObjectCreator 
>>>>>>>> .obtainObjectFromCreator(JustInTimeObjectCreator.java:78)
>>>>>
>>>>>     at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> org 
>>>>>>>> .apache 
>>>>>>>> .tapestry5 
>>>>>>>> .ioc 
>>>>>>>> .internal 
>>>>>>>> .services 
>>>>>>>> .JustInTimeObjectCreator 
>>>>>>>> .createObject(JustInTimeObjectCreator.java:57)
>>>>>
>>>>>     at $PagePool_129082cfd52.delegate($PagePool_129082cfd52.java)
>>>>>>>>    at  
>>>>>>>> $PagePool_129082cfd52.checkout($PagePool_129082cfd52.java)
>>>>>>>>    at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> org 
>>>>>>>> .apache 
>>>>>>>> .tapestry5 
>>>>>>>> .internal 
>>>>>>>> .services.RequestPageCacheImpl.get(RequestPageCacheImpl.java: 
>>>>>>>> 51)
>>>>>
>>>>>     at
>>>>>>>> $ 
>>>>>>>> RequestPageCache_129082cfd51 
>>>>>>>> .get($RequestPageCache_129082cfd51.java)
>>>>>>>>    at
>>>>>>>> $ 
>>>>>>>> RequestPageCache_129082cfd4a 
>>>>>>>> .get($RequestPageCache_129082cfd4a.java)
>>>>>>>>    at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> org 
>>>>>>>> .apache 
>>>>>>>> .tapestry5 
>>>>>>>> .internal 
>>>>>>>> .services 
>>>>>>>> .DefaultRequestExceptionHandler 
>>>>>>>> .handleRequestException(DefaultRequestExceptionHandler.java:69)
>>>>>
>>>>>     at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> $ 
>>>>>>>> RequestExceptionHandler_129082cfd28 
>>>>>>>> .handleRequestException 
>>>>>>>> ($RequestExceptionHandler_129082cfd28.java)
>>>>>
>>>>>     at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> org 
>>>>>>>> .apache 
>>>>>>>> .tapestry5 
>>>>>>>> .internal 
>>>>>>>> .services.RequestErrorFilter.service(RequestErrorFilter.java: 
>>>>>>>> 42)
>>>>>
>>>>>     at
>>>>>>>> $ 
>>>>>>>> RequestHandler_129082cfd2b 
>>>>>>>> .service($RequestHandler_129082cfd2b.java)
>>>>>>>>    at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> org.apache.tapestry5.services.TapestryModule 
>>>>>>>> $4.service(TapestryModule.java:977)
>>>>>
>>>>>     at
>>>>>>>> $ 
>>>>>>>> RequestHandler_129082cfd2b 
>>>>>>>> .service($RequestHandler_129082cfd2b.java)
>>>>>>>>    at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> org.apache.tapestry5.services.TapestryModule 
>>>>>>>> $3.service(TapestryModule.java:967)
>>>>>
>>>>>     at
>>>>>>>> $ 
>>>>>>>> RequestHandler_129082cfd2b 
>>>>>>>> .service($RequestHandler_129082cfd2b.java)
>>>>>>>>    at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> org 
>>>>>>>> .apache 
>>>>>>>> .tapestry5 
>>>>>>>> .internal 
>>>>>>>> .services.StaticFilesFilter.service(StaticFilesFilter.java:90)
>>>>>
>>>>>     at
>>>>>>>> $ 
>>>>>>>> RequestHandler_129082cfd2b 
>>>>>>>> .service($RequestHandler_129082cfd2b.java)
>>>>>>>>    at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> org.apache.tapestry5.internal.services.CheckForUpdatesFilter 
>>>>>>>> $2.invoke(CheckForUpdatesFilter.java:90)
>>>>>
>>>>>     at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> org.apache.tapestry5.internal.services.CheckForUpdatesFilter 
>>>>>>>> $2.invoke(CheckForUpdatesFilter.java:80)
>>>>>
>>>>>     at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> org 
>>>>>>>> .apache 
>>>>>>>> .tapestry5 
>>>>>>>> .ioc 
>>>>>>>> .internal 
>>>>>>>> .util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:85)
>>>>>
>>>>>     at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> org 
>>>>>>>> .apache 
>>>>>>>> .tapestry5 
>>>>>>>> .internal 
>>>>>>>> .services 
>>>>>>>> .CheckForUpdatesFilter.service(CheckForUpdatesFilter.java:103)
>>>>>
>>>>>     at
>>>>>>>> $ 
>>>>>>>> RequestHandler_129082cfd2b 
>>>>>>>> .service($RequestHandler_129082cfd2b.java)
>>>>>>>>    at
>>>>>>>> $ 
>>>>>>>> RequestHandler_129082cfd20 
>>>>>>>> .service($RequestHandler_129082cfd20.java)
>>>>>>>>    at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> org.apache.tapestry5.services.TapestryModule 
>>>>>>>> $ 
>>>>>>>> HttpServletRequestHandlerTerminator 
>>>>>>>> .service(TapestryModule.java:271)
>>>>>
>>>>>     at
>>>>>>>>
>>>>>>>>
>>>>>>>> org 
>>>>>>>> .apache 
>>>>>>>> .tapestry5.internal.gzip.GZipFilter.service(GZipFilter.java:53)
>>>>>
>>>>>     at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> $ 
>>>>>>>> HttpServletRequestHandler_129082cfd22 
>>>>>>>> .service($HttpServletRequestHandler_129082cfd22.java)
>>>>>
>>>>>     at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> org 
>>>>>>>> .apache 
>>>>>>>> .tapestry5 
>>>>>>>> .internal 
>>>>>>>> .services.IgnoredPathsFilter.service(IgnoredPathsFilter.java: 
>>>>>>>> 62)
>>>>>
>>>>>     at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> $ 
>>>>>>>> HttpServletRequestFilter_129082cfd1f 
>>>>>>>> .service($HttpServletRequestFilter_129082cfd1f.java)
>>>>>
>>>>>     at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> $ 
>>>>>>>> HttpServletRequestHandler_129082cfd22 
>>>>>>>> .service($HttpServletRequestHandler_129082cfd22.java)
>>>>>
>>>>>     at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> org.apache.tapestry5.services.TapestryModule 
>>>>>>>> $2.service(TapestryModule.java:921)
>>>>>
>>>>>     at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> $ 
>>>>>>>> HttpServletRequestHandler_129082cfd22 
>>>>>>>> .service($HttpServletRequestHandler_129082cfd22.java)
>>>>>
>>>>>     at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> $ 
>>>>>>>> HttpServletRequestHandler_129082cfd1d 
>>>>>>>> .service($HttpServletRequestHandler_129082cfd1d.java)
>>>>>
>>>>>     at
>>>>>>>> org 
>>>>>>>> .apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java: 
>>>>>>>> 147)
>>>>>>>>    at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> org.mortbay.jetty.servlet.ServletHandler 
>>>>>>>> $CachedChain.doFilter(ServletHandler.java:1157)
>>>>>
>>>>>     at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> com 
>>>>>>>> .google 
>>>>>>>> .apphosting 
>>>>>>>> .utils 
>>>>>>>> .servlet 
>>>>>>>> .ParseBlobUploadFilter.doFilter(ParseBlobUploadFilter.java:97)
>>>>>
>>>>>     at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> org.mortbay.jetty.servlet.ServletHandler 
>>>>>>>> $CachedChain.doFilter(ServletHandler.java:1157)
>>>>>
>>>>>     at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> com 
>>>>>>>> .google 
>>>>>>>> .apphosting 
>>>>>>>> .runtime 
>>>>>>>> .jetty.SaveSessionFilter.doFilter(SaveSessionFilter.java:35)
>>>>>
>>>>>     at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> org.mortbay.jetty.servlet.ServletHandler 
>>>>>>>> $CachedChain.doFilter(ServletHandler.java:1157)
>>>>>
>>>>>     at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> com 
>>>>>>>> .google 
>>>>>>>> .apphosting 
>>>>>>>> .utils 
>>>>>>>> .servlet 
>>>>>>>> .TransactionCleanupFilter 
>>>>>>>> .doFilter(TransactionCleanupFilter.java:43)
>>>>>
>>>>>     at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> org.mortbay.jetty.servlet.ServletHandler 
>>>>>>>> $CachedChain.doFilter(ServletHandler.java:1157)
>>>>>
>>>>>     at
>>>>>>>>
>>>>>>>>
>>>>>>>> org 
>>>>>>>> .mortbay 
>>>>>>>> .jetty.servlet.ServletHandler.handle(ServletHandler.java:388)
>>>>>
>>>>>     at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> org 
>>>>>>>> .mortbay 
>>>>>>>> .jetty.security.SecurityHandler.handle(SecurityHandler.java: 
>>>>>>>> 216)
>>>>>
>>>>>     at
>>>>>>>>
>>>>>>>>
>>>>>>>> org 
>>>>>>>> .mortbay 
>>>>>>>> .jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
>>>>>
>>>>>     at
>>>>>>>>
>>>>>>>>
>>>>>>>> org 
>>>>>>>> .mortbay 
>>>>>>>> .jetty.handler.ContextHandler.handle(ContextHandler.java:765)
>>>>>
>>>>>     at
>>>>>>>> org 
>>>>>>>> .mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java: 
>>>>>>>> 418)
>>>>>>>>    at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> com 
>>>>>>>> .google 
>>>>>>>> .apphosting 
>>>>>>>> .runtime 
>>>>>>>> .jetty.AppVersionHandlerMap.handle(AppVersionHandlerMap.java: 
>>>>>>>> 238)
>>>>>
>>>>>     at
>>>>>>>>
>>>>>>>>
>>>>>>>> org 
>>>>>>>> .mortbay 
>>>>>>>> .jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
>>>>>
>>>>>     at org.mortbay.jetty.Server.handle(Server.java:326)
>>>>>>>>    at
>>>>>>>>
>>>>>>>> org 
>>>>>>>> .mortbay 
>>>>>>>> .jetty.HttpConnection.handleRequest(HttpConnection.java:542)
>>>>>>>>    at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> org.mortbay.jetty.HttpConnection 
>>>>>>>> $RequestHandler.headerComplete(HttpConnection.java:923)
>>>>>
>>>>>     at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> com 
>>>>>>>> .google 
>>>>>>>> .apphosting 
>>>>>>>> .runtime 
>>>>>>>> .jetty.RpcRequestParser.parseAvailable(RpcRequestParser.java: 
>>>>>>>> 76)
>>>>>
>>>>>     at
>>>>>>>>
>>>>>>>> org.mortbay.jetty.HttpConnection.handle(HttpConnection.java: 
>>>>>>>> 404)
>>>>>
>>>>>     at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> com 
>>>>>>>> .google 
>>>>>>>> .apphosting 
>>>>>>>> .runtime 
>>>>>>>> .jetty 
>>>>>>>> .JettyServletEngineAdapter 
>>>>>>>> .serviceRequest(JettyServletEngineAdapter.java:135)
>>>>>
>>>>>     at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> com 
>>>>>>>> .google 
>>>>>>>> .apphosting 
>>>>>>>> .runtime.JavaRuntime.handleRequest(JavaRuntime.java:250)
>>>>>
>>>>>     at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> com.google.apphosting.base.RuntimePb$EvaluationRuntime 
>>>>>>>> $6.handleBlockingRequest(RuntimePb.java:5838)
>>>>>
>>>>>     at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> com.google.apphosting.base.RuntimePb$EvaluationRuntime 
>>>>>>>> $6.handleBlockingRequest(RuntimePb.java:5836)
>>>>>
>>>>>     at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> com 
>>>>>>>> .google 
>>>>>>>> .net 
>>>>>>>> .rpc 
>>>>>>>> .impl 
>>>>>>>> .BlockingApplicationHandler 
>>>>>>>> .handleRequest(BlockingApplicationHandler.java:24)
>>>>>
>>>>>     at
>>>>>>>> com 
>>>>>>>> .google.net.rpc.impl.RpcUtil.runRpcInApplication(RpcUtil.java: 
>>>>>>>> 398)
>>>>>>>>    at com.google.net.rpc.impl.Server$2.run(Server.java:852)
>>>>>>>>    at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> com 
>>>>>>>> .google 
>>>>>>>> .tracing 
>>>>>>>> .LocalTraceSpanRunnable.run(LocalTraceSpanRunnable.java:56)
>>>>>
>>>>>     at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> com 
>>>>>>>> .google 
>>>>>>>> .tracing 
>>>>>>>> .LocalTraceSpanBuilder 
>>>>>>>> .internalContinueSpan(LocalTraceSpanBuilder.java:576)
>>>>>
>>>>>     at com.google.net.rpc.impl.Server.startRpc(Server.java:807)
>>>>>>>>    at  
>>>>>>>> com.google.net.rpc.impl.Server.processRequest(Server.java:369)
>>>>>>>>    at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> com 
>>>>>>>> .google 
>>>>>>>> .net 
>>>>>>>> .rpc 
>>>>>>>> .impl.ServerConnection.messageReceived(ServerConnection.java: 
>>>>>>>> 442)
>>>>>
>>>>>     at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> com 
>>>>>>>> .google 
>>>>>>>> .net.rpc.impl.RpcConnection.parseMessages(RpcConnection.java: 
>>>>>>>> 319)
>>>>>
>>>>>     at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> com 
>>>>>>>> .google 
>>>>>>>> .net.rpc.impl.RpcConnection.dataReceived(RpcConnection.java: 
>>>>>>>> 290)
>>>>>
>>>>>     at
>>>>>>>> com 
>>>>>>>> .google.net.async.Connection.handleReadEvent(Connection.java: 
>>>>>>>> 474)
>>>>>>>>    at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> com 
>>>>>>>> .google 
>>>>>>>> .net 
>>>>>>>> .async 
>>>>>>>> .EventDispatcher.processNetworkEvents(EventDispatcher.java:831)
>>>>>
>>>>>     at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> com 
>>>>>>>> .google 
>>>>>>>> .net.async.EventDispatcher.internalLoop(EventDispatcher.java: 
>>>>>>>> 207)
>>>>>
>>>>>     at
>>>>>>>> com 
>>>>>>>> .google.net.async.EventDispatcher.loop(EventDispatcher.java: 
>>>>>>>> 103)
>>>>>>>>    at
>>>>>>>>
>>>>>>>>
>>>>>>>> com 
>>>>>>>> .google 
>>>>>>>> .net.rpc.RpcService.runUntilServerShutdown(RpcService.java:251)
>>>>>
>>>>>     at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> com.google.apphosting.runtime.JavaRuntime 
>>>>>>>> $RpcRunnable.run(JavaRuntime.java:413)
>>>>>
>>>>>     at java.lang.Thread.run(Unknown Source)
>>>>>>>> Caused by: java.lang.RuntimeException: Error invoking service  
>>>>>>>> builder
>>>>>>>> method
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> org 
>>>>>>>> .apache 
>>>>>>>> .tapestry5 
>>>>>>>> .internal.services.InternalModule.buildPagePool(PagePoolImpl,
>>>>>
>>>>> InvalidationEventHub, InvalidationEventHub, MBeanSupport) (at
>>>>>>>> InternalModule.java:181) (for service 'PagePool'): Error  
>>>>>>>> building
>>>>>>>>
>>>>>>>> service
>>>>>
>>>>> proxy for service 'MBeanSupport' (at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> org 
>>>>>>>> .apache 
>>>>>>>> .tapestry5 
>>>>>>>> .internal 
>>>>>>>> .services.InternalModule.buildMBeanSupport(RegistryShutdownHub,
>>>>>
>>>>> MBeanSupportImpl) (at InternalModule.java:216)): Unable to  
>>>>> lookup class
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> com 
>>>>>>>> .google 
>>>>>>>> .apphosting 
>>>>>>>> .runtime.security.shared.stub.javax.management.ObjectName:
>>>>>
>>>>>
>>>>>>>>
>>>>>>>> com 
>>>>>>>> .google 
>>>>>>>> .apphosting 
>>>>>>>> .runtime.security.shared.stub.javax.management.ObjectName
>>>>>
>>>>>
>>>>>>>>
>>>>>>>      at
>>>>>>
>>>>>>
>>>>>>>>
>>>>>>>> org 
>>>>>>>> .apache 
>>>>>>>> .tapestry5 
>>>>>>>> .ioc 
>>>>>>>> .internal 
>>>>>>>> .ServiceBuilderMethodInvoker 
>>>>>>>> .createObject(ServiceBuilderMethodInvoker.java:76)
>>>>>
>>>>>     at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> org 
>>>>>>>> .apache.tapestry5.ioc.internal.OperationTrackingObjectCreator 
>>>>>>>> $1.invoke(OperationTrackingObjectCreator.java:45)
>>>>>
>>>>>     at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> org 
>>>>>>>> .apache 
>>>>>>>> .tapestry5 
>>>>>>>> .ioc 
>>>>>>>> .internal 
>>>>>>>> .OperationTrackerImpl.invoke(OperationTrackerImpl.java:68)
>>>>>
>>>>>     at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> org 
>>>>>>>> .apache 
>>>>>>>> .tapestry5 
>>>>>>>> .ioc 
>>>>>>>> .internal 
>>>>>>>> .PerThreadOperationTracker 
>>>>>>>> .invoke(PerThreadOperationTracker.java:68)
>>>>>
>>>>>     at org.apache.tapestry5.ioc.intern
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> Dne 27.5.2010 17:59, Howard Lewis Ship napsal(a):
>>>>>>>>
>>>>>>>> This is very neat stuff.
>>>>>>>>
>>>>>>>> A quibble:  I think the ObjectName should be
>>>>>>>>> "org.apache.tapestry5:service=PagePool"  (i.e., reflecting  
>>>>>>>>> that
>>>>>>>>> PagePool here is the service id, not the service interface).
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Wed, May 26, 2010 at 12:05 AM,<dr...@apache.org>    
>>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Author: drobiazko
>>>>>>>>>
>>>>>>>>> Date: Wed May 26 07:05:38 2010
>>>>>>>>>> New Revision: 948348
>>>>>>>>>>
>>>>>>>>>> URL: http://svn.apache.org/viewvc?rev=948348&view=rev
>>>>>>>>>> Log:
>>>>>>>>>> TAP5-978: Provide remote management of the page pool settings
>>>>>>>>>>
>>>>>>>>>> Added:
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/ 
>>>>>>>>>> apache/tapestry5/internal/services/MBeanSupport.java
>>>>>
>>>>>  (with props)
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/ 
>>>>>>>>>> apache/tapestry5/internal/services/MBeanSupportImpl.java
>>>>>
>>>>>  (with props)
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/ 
>>>>>>>>>> apache/tapestry5/internal/services/PagePoolImplMBean.java
>>>>>
>>>>>  (with props)
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> tapestry/tapestry5/trunk/tapestry-core/src/test/app1/ 
>>>>>>>>>> RemotePoolManagement.tml
>>>>>
>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/ 
>>>>>>>>>> apache/tapestry5/integration/app1/pages/ 
>>>>>>>>>> RemotePoolManagement.java
>>>>>
>>>>>  (with props)
>>>>>>>>>> Modified:
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/ 
>>>>>>>>>> apache/tapestry5/internal/services/InternalModule.java
>>>>>
>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/ 
>>>>>>>>>> apache/tapestry5/internal/services/PagePoolImpl.java
>>>>>
>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/ 
>>>>>>>>>> apache/tapestry5/integration/app1/CoreBehaviorsTests.java
>>>>>
>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/ 
>>>>>>>>>> apache/tapestry5/integration/app1/pages/Index.java
>>>>>
>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>> ---------------------------------------------------------------------
>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
>>>>>>>> For additional commands, e-mail: dev-help@tapestry.apache.org
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>> Best regards,
>>>>>>>
>>>>>>> Igor Drobiazko
>>>>>>> http://tapestry5.de/blog
>>>>>>>
>>>>>>>
>>>>>>> ---------------------------------------------------------------------
>>>>>> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
>>>>>> For additional commands, e-mail: dev-help@tapestry.apache.org
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>
>>>>
>>>>
>>>
>>> --
>>>
>>> Robert Hajek
>>> B2B Centrum a.s.
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
>>> For additional commands, e-mail: dev-help@tapestry.apache.org
>>>
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
>> For additional commands, e-mail: dev-help@tapestry.apache.org
>>
>>
>
>
> -- 
> Best regards,
>
> Igor Drobiazko
> http://tapestry5.de/blog


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
For additional commands, e-mail: dev-help@tapestry.apache.org


Re: 5.2.0-SNAPSHOT - javax.management issues in GAE

Posted by Igor Drobiazko <ig...@gmail.com>.
As soon as possible. I guess not later than the upcoming weekend.

On Mon, Jun 7, 2010 at 8:57 PM, Christian Edward Gruber <
christianedwardgruber@gmail.com> wrote:

> Heh.  Not to rush you, Igor, but any idea when you might get that done?  I
> just went to import the latest snapshot and ran into this.
>
> Christian.
>
>
> On Jun 7, 2010, at 3:30 AM, Robert Hajek wrote:
>
>  Nice, thanks Igor !
>>
>> Rob
>>
>> Dne 7.6.2010 7:19, Igor Drobiazko napsal(a):
>>
>>> No problem. I'll move it to tapestry-jmx module.
>>>
>>> On Mon, Jun 7, 2010 at 6:08 AM, Alex Kotchnev<ak...@gmail.com>
>>>  wrote:
>>>
>>>
>>>   Can it please be moved to a separate module ? After having to jump
>>>> through
>>>> hoops to get 5.1 running on GAE, and 5.2 stabilizing / working on GAE
>>>> (up
>>>> until now), it would be very unpleasant to go back to jumping through
>>>> hoops
>>>> to have to get a T5 app running on GAE again.
>>>>
>>>> Please ?
>>>>
>>>> Regards,
>>>>
>>>> Alex K
>>>>
>>>> On Sun, Jun 6, 2010 at 2:52 PM, Josh Canfield<joshcanfield@gmail.com
>>>>
>>>>  wrote:
>>>>>
>>>>>
>>>>  This probably needs to be moved to a separate module ala
>>>>>
>>>>>  tapestry-hibernate
>>>>
>>>>  -- Josh
>>>>>
>>>>>
>>>>> On Jun 6, 2010, at 11:37 AM, Igor Drobiazko<ig...@gmail.com>
>>>>> wrote:
>>>>>
>>>>>  Looks like javax.management is not in the white list and can not be
>>>>>
>>>>>  loaded.
>>>>>>
>>>>>> http://code.google.com/intl/en/appengine/docs/java/jrewhitelist.html
>>>>>>
>>>>>> Unfortunately I never deployed T5 into Google App Engine and have no
>>>>>>
>>>>>>  idea
>>>>
>>>>  if
>>>>>> there is a workaround for it.
>>>>>>
>>>>>> On Sat, Jun 5, 2010 at 3:59 PM, Robert Hajek<
>>>>>>
>>>>>>  robert.hajek@b2bcentrum.cz
>>>>
>>>>  wrote:
>>>>>>>
>>>>>>>   Hi All,
>>>>>>
>>>>>>  I have problem with deploying simple T5.2 web application to GAE.
>>>>>>>
>>>>>>> Caused by: java.lang.RuntimeException:
>>>>>>> Error invoking service builder method
>>>>>>> org.apache.tapestry5.internal.services.InternalModule.buildPagePool
>>>>>>> (PagePoolImpl, InvalidationEventHub, InvalidationEventHub,
>>>>>>>
>>>>>>>  MBeanSupport)
>>>>
>>>>  (at InternalModule.java:181) (for service 'PagePool'): Error building
>>>>>>> service proxy for service 'MBeanSupport'
>>>>>>> (at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> org.apache.tapestry5.internal.services.InternalModule.buildMBeanSupport(RegistryShutdownHub,
>>>>
>>>>  MBeanSupportImpl)
>>>>>>> (at InternalModule.java:216)): Unable to lookup class
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName:
>>>>
>>>>
>>>>>>>
>>>>>>>
>>>>>>> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName
>>>>
>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>>  This problem probably starts after fixing issue "TAP5-978: Provide
>>>>>>>
>>>>>>>  remote
>>>>
>>>>  management of the page pool settings."
>>>>>>>
>>>>>>> Is there some workaround how to disable javax.management stuff in T5
>>>>>>> or
>>>>>>> fix
>>>>>>> this issue? Will be GAE officially supported in beta of final release
>>>>>>>
>>>>>>>  of
>>>>
>>>>  T5.2 ?
>>>>>>>
>>>>>>> Thanks,
>>>>>>>
>>>>>>> Rob
>>>>>>>
>>>>>>> full stacktrace:
>>>>>>>
>>>>>>> Uncaught exception from servlet
>>>>>>> java.lang.RuntimeException: Exception constructing service
>>>>>>> 'PagePool':
>>>>>>> Error invoking service builder method
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> org.apache.tapestry5.internal.services.InternalModule.buildPagePool(PagePoolImpl,
>>>>
>>>>  InvalidationEventHub, InvalidationEventHub, MBeanSupport) (at
>>>>>>> InternalModule.java:181) (for service 'PagePool'): Error building
>>>>>>>
>>>>>>>  service
>>>>
>>>>  proxy for service 'MBeanSupport' (at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> org.apache.tapestry5.internal.services.InternalModule.buildMBeanSupport(RegistryShutdownHub,
>>>>
>>>>  MBeanSupportImpl) (at InternalModule.java:216)): Unable to lookup class
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName:
>>>>
>>>>
>>>>>>>
>>>>>>> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName
>>>>
>>>>
>>>>>>>
>>>>>>       at
>>>>>
>>>>>
>>>>>>>
>>>>>>> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.obtainObjectFromCreator(JustInTimeObjectCreator.java:78)
>>>>
>>>>      at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.createObject(JustInTimeObjectCreator.java:57)
>>>>
>>>>      at $PagePool_129082cfd52.delegate($PagePool_129082cfd52.java)
>>>>>>>     at $PagePool_129082cfd52.checkout($PagePool_129082cfd52.java)
>>>>>>>     at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> org.apache.tapestry5.internal.services.RequestPageCacheImpl.get(RequestPageCacheImpl.java:51)
>>>>
>>>>      at
>>>>>>> $RequestPageCache_129082cfd51.get($RequestPageCache_129082cfd51.java)
>>>>>>>     at
>>>>>>> $RequestPageCache_129082cfd4a.get($RequestPageCache_129082cfd4a.java)
>>>>>>>     at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> org.apache.tapestry5.internal.services.DefaultRequestExceptionHandler.handleRequestException(DefaultRequestExceptionHandler.java:69)
>>>>
>>>>      at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> $RequestExceptionHandler_129082cfd28.handleRequestException($RequestExceptionHandler_129082cfd28.java)
>>>>
>>>>      at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> org.apache.tapestry5.internal.services.RequestErrorFilter.service(RequestErrorFilter.java:42)
>>>>
>>>>      at
>>>>>>> $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
>>>>>>>     at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> org.apache.tapestry5.services.TapestryModule$4.service(TapestryModule.java:977)
>>>>
>>>>      at
>>>>>>> $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
>>>>>>>     at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> org.apache.tapestry5.services.TapestryModule$3.service(TapestryModule.java:967)
>>>>
>>>>      at
>>>>>>> $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
>>>>>>>     at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> org.apache.tapestry5.internal.services.StaticFilesFilter.service(StaticFilesFilter.java:90)
>>>>
>>>>      at
>>>>>>> $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
>>>>>>>     at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:90)
>>>>
>>>>      at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:80)
>>>>
>>>>      at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> org.apache.tapestry5.ioc.internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:85)
>>>>
>>>>      at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> org.apache.tapestry5.internal.services.CheckForUpdatesFilter.service(CheckForUpdatesFilter.java:103)
>>>>
>>>>      at
>>>>>>> $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
>>>>>>>     at
>>>>>>> $RequestHandler_129082cfd20.service($RequestHandler_129082cfd20.java)
>>>>>>>     at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> org.apache.tapestry5.services.TapestryModule$HttpServletRequestHandlerTerminator.service(TapestryModule.java:271)
>>>>
>>>>      at
>>>>>>>
>>>>>>>
>>>>>>> org.apache.tapestry5.internal.gzip.GZipFilter.service(GZipFilter.java:53)
>>>>
>>>>      at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> $HttpServletRequestHandler_129082cfd22.service($HttpServletRequestHandler_129082cfd22.java)
>>>>
>>>>      at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> org.apache.tapestry5.internal.services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62)
>>>>
>>>>      at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> $HttpServletRequestFilter_129082cfd1f.service($HttpServletRequestFilter_129082cfd1f.java)
>>>>
>>>>      at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> $HttpServletRequestHandler_129082cfd22.service($HttpServletRequestHandler_129082cfd22.java)
>>>>
>>>>      at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> org.apache.tapestry5.services.TapestryModule$2.service(TapestryModule.java:921)
>>>>
>>>>      at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> $HttpServletRequestHandler_129082cfd22.service($HttpServletRequestHandler_129082cfd22.java)
>>>>
>>>>      at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> $HttpServletRequestHandler_129082cfd1d.service($HttpServletRequestHandler_129082cfd1d.java)
>>>>
>>>>      at
>>>>>>> org.apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java:147)
>>>>>>>     at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>>>>
>>>>      at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> com.google.apphosting.utils.servlet.ParseBlobUploadFilter.doFilter(ParseBlobUploadFilter.java:97)
>>>>
>>>>      at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>>>>
>>>>      at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> com.google.apphosting.runtime.jetty.SaveSessionFilter.doFilter(SaveSessionFilter.java:35)
>>>>
>>>>      at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>>>>
>>>>      at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43)
>>>>
>>>>      at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>>>>
>>>>      at
>>>>>>>
>>>>>>>
>>>>>>> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)
>>>>
>>>>      at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
>>>>
>>>>      at
>>>>>>>
>>>>>>>
>>>>>>> org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
>>>>
>>>>      at
>>>>>>>
>>>>>>>
>>>>>>> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
>>>>
>>>>      at
>>>>>>> org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
>>>>>>>     at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> com.google.apphosting.runtime.jetty.AppVersionHandlerMap.handle(AppVersionHandlerMap.java:238)
>>>>
>>>>      at
>>>>>>>
>>>>>>>
>>>>>>> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
>>>>
>>>>      at org.mortbay.jetty.Server.handle(Server.java:326)
>>>>>>>     at
>>>>>>>
>>>>>>> org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
>>>>>>>     at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:923)
>>>>
>>>>      at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> com.google.apphosting.runtime.jetty.RpcRequestParser.parseAvailable(RpcRequestParser.java:76)
>>>>
>>>>      at
>>>>>>>
>>>>>>>  org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
>>>>
>>>>      at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> com.google.apphosting.runtime.jetty.JettyServletEngineAdapter.serviceRequest(JettyServletEngineAdapter.java:135)
>>>>
>>>>      at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> com.google.apphosting.runtime.JavaRuntime.handleRequest(JavaRuntime.java:250)
>>>>
>>>>      at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> com.google.apphosting.base.RuntimePb$EvaluationRuntime$6.handleBlockingRequest(RuntimePb.java:5838)
>>>>
>>>>      at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> com.google.apphosting.base.RuntimePb$EvaluationRuntime$6.handleBlockingRequest(RuntimePb.java:5836)
>>>>
>>>>      at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> com.google.net.rpc.impl.BlockingApplicationHandler.handleRequest(BlockingApplicationHandler.java:24)
>>>>
>>>>      at
>>>>>>> com.google.net.rpc.impl.RpcUtil.runRpcInApplication(RpcUtil.java:398)
>>>>>>>     at com.google.net.rpc.impl.Server$2.run(Server.java:852)
>>>>>>>     at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> com.google.tracing.LocalTraceSpanRunnable.run(LocalTraceSpanRunnable.java:56)
>>>>
>>>>      at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> com.google.tracing.LocalTraceSpanBuilder.internalContinueSpan(LocalTraceSpanBuilder.java:576)
>>>>
>>>>      at com.google.net.rpc.impl.Server.startRpc(Server.java:807)
>>>>>>>     at com.google.net.rpc.impl.Server.processRequest(Server.java:369)
>>>>>>>     at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> com.google.net.rpc.impl.ServerConnection.messageReceived(ServerConnection.java:442)
>>>>
>>>>      at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> com.google.net.rpc.impl.RpcConnection.parseMessages(RpcConnection.java:319)
>>>>
>>>>      at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> com.google.net.rpc.impl.RpcConnection.dataReceived(RpcConnection.java:290)
>>>>
>>>>      at
>>>>>>> com.google.net.async.Connection.handleReadEvent(Connection.java:474)
>>>>>>>     at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> com.google.net.async.EventDispatcher.processNetworkEvents(EventDispatcher.java:831)
>>>>
>>>>      at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> com.google.net.async.EventDispatcher.internalLoop(EventDispatcher.java:207)
>>>>
>>>>      at
>>>>>>> com.google.net.async.EventDispatcher.loop(EventDispatcher.java:103)
>>>>>>>     at
>>>>>>>
>>>>>>>
>>>>>>> com.google.net.rpc.RpcService.runUntilServerShutdown(RpcService.java:251)
>>>>
>>>>      at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> com.google.apphosting.runtime.JavaRuntime$RpcRunnable.run(JavaRuntime.java:413)
>>>>
>>>>      at java.lang.Thread.run(Unknown Source)
>>>>>>> Caused by: java.lang.RuntimeException: Error invoking service builder
>>>>>>> method
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> org.apache.tapestry5.internal.services.InternalModule.buildPagePool(PagePoolImpl,
>>>>
>>>>  InvalidationEventHub, InvalidationEventHub, MBeanSupport) (at
>>>>>>> InternalModule.java:181) (for service 'PagePool'): Error building
>>>>>>>
>>>>>>>  service
>>>>
>>>>  proxy for service 'MBeanSupport' (at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> org.apache.tapestry5.internal.services.InternalModule.buildMBeanSupport(RegistryShutdownHub,
>>>>
>>>>  MBeanSupportImpl) (at InternalModule.java:216)): Unable to lookup class
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName:
>>>>
>>>>
>>>>>>>
>>>>>>> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName
>>>>
>>>>
>>>>>>>
>>>>>>       at
>>>>>
>>>>>
>>>>>>>
>>>>>>> org.apache.tapestry5.ioc.internal.ServiceBuilderMethodInvoker.createObject(ServiceBuilderMethodInvoker.java:76)
>>>>
>>>>      at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator$1.invoke(OperationTrackingObjectCreator.java:45)
>>>>
>>>>      at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:68)
>>>>
>>>>      at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:68)
>>>>
>>>>      at org.apache.tapestry5.ioc.intern
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Dne 27.5.2010 17:59, Howard Lewis Ship napsal(a):
>>>>>>>
>>>>>>>  This is very neat stuff.
>>>>>>>
>>>>>>>  A quibble:  I think the ObjectName should be
>>>>>>>> "org.apache.tapestry5:service=PagePool"  (i.e., reflecting that
>>>>>>>> PagePool here is the service id, not the service interface).
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> On Wed, May 26, 2010 at 12:05 AM,<dr...@apache.org>   wrote:
>>>>>>>>
>>>>>>>>
>>>>>>>>  Author: drobiazko
>>>>>>>>
>>>>>>>>  Date: Wed May 26 07:05:38 2010
>>>>>>>>> New Revision: 948348
>>>>>>>>>
>>>>>>>>> URL: http://svn.apache.org/viewvc?rev=948348&view=rev
>>>>>>>>> Log:
>>>>>>>>> TAP5-978: Provide remote management of the page pool settings
>>>>>>>>>
>>>>>>>>> Added:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupport.java
>>>>
>>>>   (with props)
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupportImpl.java
>>>>
>>>>   (with props)
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PagePoolImplMBean.java
>>>>
>>>>   (with props)
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> tapestry/tapestry5/trunk/tapestry-core/src/test/app1/RemotePoolManagement.tml
>>>>
>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/RemotePoolManagement.java
>>>>
>>>>   (with props)
>>>>>>>>> Modified:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/InternalModule.java
>>>>
>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PagePoolImpl.java
>>>>
>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/CoreBehaviorsTests.java
>>>>
>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/Index.java
>>>>
>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>> ---------------------------------------------------------------------
>>>>>>> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
>>>>>>> For additional commands, e-mail: dev-help@tapestry.apache.org
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>  --
>>>>>> Best regards,
>>>>>>
>>>>>> Igor Drobiazko
>>>>>> http://tapestry5.de/blog
>>>>>>
>>>>>>
>>>>>>  ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
>>>>> For additional commands, e-mail: dev-help@tapestry.apache.org
>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>>
>>>
>>>
>>
>> --
>>
>> Robert Hajek
>> B2B Centrum a.s.
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
>> For additional commands, e-mail: dev-help@tapestry.apache.org
>>
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
> For additional commands, e-mail: dev-help@tapestry.apache.org
>
>


-- 
Best regards,

Igor Drobiazko
http://tapestry5.de/blog

Re: 5.2.0-SNAPSHOT - javax.management issues in GAE

Posted by Christian Edward Gruber <ch...@gmail.com>.
Heh.  Not to rush you, Igor, but any idea when you might get that  
done?  I just went to import the latest snapshot and ran into this.

Christian.

On Jun 7, 2010, at 3:30 AM, Robert Hajek wrote:

> Nice, thanks Igor !
>
> Rob
>
> Dne 7.6.2010 7:19, Igor Drobiazko napsal(a):
>> No problem. I'll move it to tapestry-jmx module.
>>
>> On Mon, Jun 7, 2010 at 6:08 AM, Alex Kotchnev<ak...@gmail.com>   
>> wrote:
>>
>>
>>>  Can it please be moved to a separate module ? After having to  
>>> jump through
>>> hoops to get 5.1 running on GAE, and 5.2 stabilizing / working on  
>>> GAE (up
>>> until now), it would be very unpleasant to go back to jumping  
>>> through hoops
>>> to have to get a T5 app running on GAE again.
>>>
>>> Please ?
>>>
>>> Regards,
>>>
>>> Alex K
>>>
>>> On Sun, Jun 6, 2010 at 2:52 PM, Josh Canfield<joshcanfield@gmail.com
>>>
>>>> wrote:
>>>>
>>>
>>>> This probably needs to be moved to a separate module ala
>>>>
>>> tapestry-hibernate
>>>
>>>> -- Josh
>>>>
>>>>
>>>> On Jun 6, 2010, at 11:37 AM, Igor Drobiazko<igor.drobiazko@gmail.com 
>>>> >
>>>> wrote:
>>>>
>>>>  Looks like javax.management is not in the white list and can not  
>>>> be
>>>>
>>>>> loaded.
>>>>>
>>>>> http://code.google.com/intl/en/appengine/docs/java/jrewhitelist.html
>>>>>
>>>>> Unfortunately I never deployed T5 into Google App Engine and  
>>>>> have no
>>>>>
>>> idea
>>>
>>>>> if
>>>>> there is a workaround for it.
>>>>>
>>>>> On Sat, Jun 5, 2010 at 3:59 PM, Robert Hajek<
>>>>>
>>> robert.hajek@b2bcentrum.cz
>>>
>>>>>> wrote:
>>>>>>
>>>>>  Hi All,
>>>>>
>>>>>> I have problem with deploying simple T5.2 web application to GAE.
>>>>>>
>>>>>> Caused by: java.lang.RuntimeException:
>>>>>> Error invoking service builder method
>>>>>> org 
>>>>>> .apache.tapestry5.internal.services.InternalModule.buildPagePool
>>>>>> (PagePoolImpl, InvalidationEventHub, InvalidationEventHub,
>>>>>>
>>> MBeanSupport)
>>>
>>>>>> (at InternalModule.java:181) (for service 'PagePool'): Error  
>>>>>> building
>>>>>> service proxy for service 'MBeanSupport'
>>>>>> (at
>>>>>>
>>>>>>
>>>>>>
>>> org 
>>> .apache 
>>> .tapestry5 
>>> .internal 
>>> .services.InternalModule.buildMBeanSupport(RegistryShutdownHub,
>>>
>>>>>> MBeanSupportImpl)
>>>>>> (at InternalModule.java:216)): Unable to lookup class
>>>>>>
>>>>>>
>>>>>>
>>> com 
>>> .google 
>>> .apphosting 
>>> .runtime.security.shared.stub.javax.management.ObjectName:
>>>
>>>>>>
>>>>>>
>>>>>>
>>> com 
>>> .google 
>>> .apphosting.runtime.security.shared.stub.javax.management.ObjectName
>>>
>>>>>>
>>>>>
>>>>
>>>>
>>>>>> This problem probably starts after fixing issue "TAP5-978:  
>>>>>> Provide
>>>>>>
>>> remote
>>>
>>>>>> management of the page pool settings."
>>>>>>
>>>>>> Is there some workaround how to disable javax.management stuff  
>>>>>> in T5 or
>>>>>> fix
>>>>>> this issue? Will be GAE officially supported in beta of final  
>>>>>> release
>>>>>>
>>> of
>>>
>>>>>> T5.2 ?
>>>>>>
>>>>>> Thanks,
>>>>>>
>>>>>> Rob
>>>>>>
>>>>>> full stacktrace:
>>>>>>
>>>>>> Uncaught exception from servlet
>>>>>> java.lang.RuntimeException: Exception constructing service  
>>>>>> 'PagePool':
>>>>>> Error invoking service builder method
>>>>>>
>>>>>>
>>>>>>
>>> org 
>>> .apache 
>>> .tapestry5 
>>> .internal.services.InternalModule.buildPagePool(PagePoolImpl,
>>>
>>>>>> InvalidationEventHub, InvalidationEventHub, MBeanSupport) (at
>>>>>> InternalModule.java:181) (for service 'PagePool'): Error building
>>>>>>
>>> service
>>>
>>>>>> proxy for service 'MBeanSupport' (at
>>>>>>
>>>>>>
>>>>>>
>>> org 
>>> .apache 
>>> .tapestry5 
>>> .internal 
>>> .services.InternalModule.buildMBeanSupport(RegistryShutdownHub,
>>>
>>>>>> MBeanSupportImpl) (at InternalModule.java:216)): Unable to  
>>>>>> lookup class
>>>>>>
>>>>>>
>>>>>>
>>> com 
>>> .google 
>>> .apphosting 
>>> .runtime.security.shared.stub.javax.management.ObjectName:
>>>
>>>>>>
>>>>>>
>>> com 
>>> .google 
>>> .apphosting.runtime.security.shared.stub.javax.management.ObjectName
>>>
>>>>>>
>>>>>
>>>>       at
>>>>
>>>>>>
>>>>>>
>>> org 
>>> .apache 
>>> .tapestry5 
>>> .ioc 
>>> .internal 
>>> .services 
>>> .JustInTimeObjectCreator 
>>> .obtainObjectFromCreator(JustInTimeObjectCreator.java:78)
>>>
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> org 
>>> .apache 
>>> .tapestry5 
>>> .ioc 
>>> .internal 
>>> .services 
>>> .JustInTimeObjectCreator.createObject(JustInTimeObjectCreator.java: 
>>> 57)
>>>
>>>>>>      at  
>>>>>> $PagePool_129082cfd52.delegate($PagePool_129082cfd52.java)
>>>>>>      at  
>>>>>> $PagePool_129082cfd52.checkout($PagePool_129082cfd52.java)
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> org 
>>> .apache 
>>> .tapestry5 
>>> .internal 
>>> .services.RequestPageCacheImpl.get(RequestPageCacheImpl.java:51)
>>>
>>>>>>      at
>>>>>> $ 
>>>>>> RequestPageCache_129082cfd51 
>>>>>> .get($RequestPageCache_129082cfd51.java)
>>>>>>      at
>>>>>> $ 
>>>>>> RequestPageCache_129082cfd4a 
>>>>>> .get($RequestPageCache_129082cfd4a.java)
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> org 
>>> .apache 
>>> .tapestry5 
>>> .internal 
>>> .services 
>>> .DefaultRequestExceptionHandler 
>>> .handleRequestException(DefaultRequestExceptionHandler.java:69)
>>>
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> $ 
>>> RequestExceptionHandler_129082cfd28 
>>> .handleRequestException($RequestExceptionHandler_129082cfd28.java)
>>>
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> org 
>>> .apache 
>>> .tapestry5 
>>> .internal 
>>> .services.RequestErrorFilter.service(RequestErrorFilter.java:42)
>>>
>>>>>>      at
>>>>>> $ 
>>>>>> RequestHandler_129082cfd2b 
>>>>>> .service($RequestHandler_129082cfd2b.java)
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> org.apache.tapestry5.services.TapestryModule 
>>> $4.service(TapestryModule.java:977)
>>>
>>>>>>      at
>>>>>> $ 
>>>>>> RequestHandler_129082cfd2b 
>>>>>> .service($RequestHandler_129082cfd2b.java)
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> org.apache.tapestry5.services.TapestryModule 
>>> $3.service(TapestryModule.java:967)
>>>
>>>>>>      at
>>>>>> $ 
>>>>>> RequestHandler_129082cfd2b 
>>>>>> .service($RequestHandler_129082cfd2b.java)
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> org 
>>> .apache 
>>> .tapestry5 
>>> .internal 
>>> .services.StaticFilesFilter.service(StaticFilesFilter.java:90)
>>>
>>>>>>      at
>>>>>> $ 
>>>>>> RequestHandler_129082cfd2b 
>>>>>> .service($RequestHandler_129082cfd2b.java)
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> org.apache.tapestry5.internal.services.CheckForUpdatesFilter 
>>> $2.invoke(CheckForUpdatesFilter.java:90)
>>>
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> org.apache.tapestry5.internal.services.CheckForUpdatesFilter 
>>> $2.invoke(CheckForUpdatesFilter.java:80)
>>>
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> org 
>>> .apache 
>>> .tapestry5 
>>> .ioc 
>>> .internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:85)
>>>
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> org 
>>> .apache 
>>> .tapestry5 
>>> .internal 
>>> .services.CheckForUpdatesFilter.service(CheckForUpdatesFilter.java: 
>>> 103)
>>>
>>>>>>      at
>>>>>> $ 
>>>>>> RequestHandler_129082cfd2b 
>>>>>> .service($RequestHandler_129082cfd2b.java)
>>>>>>      at
>>>>>> $ 
>>>>>> RequestHandler_129082cfd20 
>>>>>> .service($RequestHandler_129082cfd20.java)
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> org.apache.tapestry5.services.TapestryModule 
>>> $HttpServletRequestHandlerTerminator.service(TapestryModule.java: 
>>> 271)
>>>
>>>>>>      at
>>>>>>
>>>>>>
>>> org 
>>> .apache.tapestry5.internal.gzip.GZipFilter.service(GZipFilter.java: 
>>> 53)
>>>
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> $ 
>>> HttpServletRequestHandler_129082cfd22 
>>> .service($HttpServletRequestHandler_129082cfd22.java)
>>>
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> org 
>>> .apache 
>>> .tapestry5 
>>> .internal 
>>> .services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62)
>>>
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> $ 
>>> HttpServletRequestFilter_129082cfd1f 
>>> .service($HttpServletRequestFilter_129082cfd1f.java)
>>>
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> $ 
>>> HttpServletRequestHandler_129082cfd22 
>>> .service($HttpServletRequestHandler_129082cfd22.java)
>>>
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> org.apache.tapestry5.services.TapestryModule 
>>> $2.service(TapestryModule.java:921)
>>>
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> $ 
>>> HttpServletRequestHandler_129082cfd22 
>>> .service($HttpServletRequestHandler_129082cfd22.java)
>>>
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> $ 
>>> HttpServletRequestHandler_129082cfd1d 
>>> .service($HttpServletRequestHandler_129082cfd1d.java)
>>>
>>>>>>      at
>>>>>> org 
>>>>>> .apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java: 
>>>>>> 147)
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> org.mortbay.jetty.servlet.ServletHandler 
>>> $CachedChain.doFilter(ServletHandler.java:1157)
>>>
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> com 
>>> .google 
>>> .apphosting 
>>> .utils 
>>> .servlet.ParseBlobUploadFilter.doFilter(ParseBlobUploadFilter.java: 
>>> 97)
>>>
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> org.mortbay.jetty.servlet.ServletHandler 
>>> $CachedChain.doFilter(ServletHandler.java:1157)
>>>
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> com 
>>> .google 
>>> .apphosting 
>>> .runtime.jetty.SaveSessionFilter.doFilter(SaveSessionFilter.java:35)
>>>
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> org.mortbay.jetty.servlet.ServletHandler 
>>> $CachedChain.doFilter(ServletHandler.java:1157)
>>>
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> com 
>>> .google 
>>> .apphosting 
>>> .utils 
>>> .servlet 
>>> .TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43)
>>>
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> org.mortbay.jetty.servlet.ServletHandler 
>>> $CachedChain.doFilter(ServletHandler.java:1157)
>>>
>>>>>>      at
>>>>>>
>>>>>>
>>> org 
>>> .mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java: 
>>> 388)
>>>
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> org 
>>> .mortbay 
>>> .jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
>>>
>>>>>>      at
>>>>>>
>>>>>>
>>> org 
>>> .mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java: 
>>> 182)
>>>
>>>>>>      at
>>>>>>
>>>>>>
>>> org 
>>> .mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java: 
>>> 765)
>>>
>>>>>>      at
>>>>>> org 
>>>>>> .mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java: 
>>>>>> 418)
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> com 
>>> .google 
>>> .apphosting 
>>> .runtime 
>>> .jetty.AppVersionHandlerMap.handle(AppVersionHandlerMap.java:238)
>>>
>>>>>>      at
>>>>>>
>>>>>>
>>> org 
>>> .mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java: 
>>> 152)
>>>
>>>>>>      at org.mortbay.jetty.Server.handle(Server.java:326)
>>>>>>      at
>>>>>> org 
>>>>>> .mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java: 
>>>>>> 542)
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> org.mortbay.jetty.HttpConnection 
>>> $RequestHandler.headerComplete(HttpConnection.java:923)
>>>
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> com 
>>> .google 
>>> .apphosting 
>>> .runtime 
>>> .jetty.RpcRequestParser.parseAvailable(RpcRequestParser.java:76)
>>>
>>>>>>      at
>>>>>>
>>> org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
>>>
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> com 
>>> .google 
>>> .apphosting 
>>> .runtime 
>>> .jetty 
>>> .JettyServletEngineAdapter 
>>> .serviceRequest(JettyServletEngineAdapter.java:135)
>>>
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> com 
>>> .google 
>>> .apphosting.runtime.JavaRuntime.handleRequest(JavaRuntime.java:250)
>>>
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> com.google.apphosting.base.RuntimePb$EvaluationRuntime 
>>> $6.handleBlockingRequest(RuntimePb.java:5838)
>>>
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> com.google.apphosting.base.RuntimePb$EvaluationRuntime 
>>> $6.handleBlockingRequest(RuntimePb.java:5836)
>>>
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> com 
>>> .google 
>>> .net 
>>> .rpc 
>>> .impl 
>>> .BlockingApplicationHandler 
>>> .handleRequest(BlockingApplicationHandler.java:24)
>>>
>>>>>>      at
>>>>>> com 
>>>>>> .google.net.rpc.impl.RpcUtil.runRpcInApplication(RpcUtil.java: 
>>>>>> 398)
>>>>>>      at com.google.net.rpc.impl.Server$2.run(Server.java:852)
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> com 
>>> .google 
>>> .tracing.LocalTraceSpanRunnable.run(LocalTraceSpanRunnable.java:56)
>>>
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> com 
>>> .google 
>>> .tracing 
>>> .LocalTraceSpanBuilder 
>>> .internalContinueSpan(LocalTraceSpanBuilder.java:576)
>>>
>>>>>>      at com.google.net.rpc.impl.Server.startRpc(Server.java:807)
>>>>>>      at  
>>>>>> com.google.net.rpc.impl.Server.processRequest(Server.java:369)
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> com 
>>> .google 
>>> .net 
>>> .rpc.impl.ServerConnection.messageReceived(ServerConnection.java: 
>>> 442)
>>>
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> com 
>>> .google 
>>> .net.rpc.impl.RpcConnection.parseMessages(RpcConnection.java:319)
>>>
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> com 
>>> .google.net.rpc.impl.RpcConnection.dataReceived(RpcConnection.java: 
>>> 290)
>>>
>>>>>>      at
>>>>>> com.google.net.async.Connection.handleReadEvent(Connection.java: 
>>>>>> 474)
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> com 
>>> .google 
>>> .net 
>>> .async.EventDispatcher.processNetworkEvents(EventDispatcher.java: 
>>> 831)
>>>
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> com 
>>> .google 
>>> .net.async.EventDispatcher.internalLoop(EventDispatcher.java:207)
>>>
>>>>>>      at
>>>>>> com.google.net.async.EventDispatcher.loop(EventDispatcher.java: 
>>>>>> 103)
>>>>>>      at
>>>>>>
>>>>>>
>>> com 
>>> .google.net.rpc.RpcService.runUntilServerShutdown(RpcService.java: 
>>> 251)
>>>
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> com.google.apphosting.runtime.JavaRuntime 
>>> $RpcRunnable.run(JavaRuntime.java:413)
>>>
>>>>>>      at java.lang.Thread.run(Unknown Source)
>>>>>> Caused by: java.lang.RuntimeException: Error invoking service  
>>>>>> builder
>>>>>> method
>>>>>>
>>>>>>
>>>>>>
>>> org 
>>> .apache 
>>> .tapestry5 
>>> .internal.services.InternalModule.buildPagePool(PagePoolImpl,
>>>
>>>>>> InvalidationEventHub, InvalidationEventHub, MBeanSupport) (at
>>>>>> InternalModule.java:181) (for service 'PagePool'): Error building
>>>>>>
>>> service
>>>
>>>>>> proxy for service 'MBeanSupport' (at
>>>>>>
>>>>>>
>>>>>>
>>> org 
>>> .apache 
>>> .tapestry5 
>>> .internal 
>>> .services.InternalModule.buildMBeanSupport(RegistryShutdownHub,
>>>
>>>>>> MBeanSupportImpl) (at InternalModule.java:216)): Unable to  
>>>>>> lookup class
>>>>>>
>>>>>>
>>>>>>
>>> com 
>>> .google 
>>> .apphosting 
>>> .runtime.security.shared.stub.javax.management.ObjectName:
>>>
>>>>>>
>>>>>>
>>> com 
>>> .google 
>>> .apphosting.runtime.security.shared.stub.javax.management.ObjectName
>>>
>>>>>>
>>>>>
>>>>       at
>>>>
>>>>>>
>>>>>>
>>> org 
>>> .apache 
>>> .tapestry5 
>>> .ioc 
>>> .internal 
>>> .ServiceBuilderMethodInvoker 
>>> .createObject(ServiceBuilderMethodInvoker.java:76)
>>>
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator 
>>> $1.invoke(OperationTrackingObjectCreator.java:45)
>>>
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> org 
>>> .apache 
>>> .tapestry5 
>>> .ioc 
>>> .internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:68)
>>>
>>>>>>      at
>>>>>>
>>>>>>
>>>>>>
>>> org 
>>> .apache 
>>> .tapestry5 
>>> .ioc 
>>> .internal 
>>> .PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:68)
>>>
>>>>>>      at org.apache.tapestry5.ioc.intern
>>>>>>
>>>>>>
>>>>>>
>>>>>> Dne 27.5.2010 17:59, Howard Lewis Ship napsal(a):
>>>>>>
>>>>>>  This is very neat stuff.
>>>>>>
>>>>>>> A quibble:  I think the ObjectName should be
>>>>>>> "org.apache.tapestry5:service=PagePool"  (i.e., reflecting that
>>>>>>> PagePool here is the service id, not the service interface).
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On Wed, May 26, 2010 at 12:05 AM,<dr...@apache.org>   wrote:
>>>>>>>
>>>>>>>
>>>>>>>  Author: drobiazko
>>>>>>>
>>>>>>>> Date: Wed May 26 07:05:38 2010
>>>>>>>> New Revision: 948348
>>>>>>>>
>>>>>>>> URL: http://svn.apache.org/viewvc?rev=948348&view=rev
>>>>>>>> Log:
>>>>>>>> TAP5-978: Provide remote management of the page pool settings
>>>>>>>>
>>>>>>>> Added:
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>> tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/ 
>>> tapestry5/internal/services/MBeanSupport.java
>>>
>>>>>>>>  (with props)
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>> tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/ 
>>> tapestry5/internal/services/MBeanSupportImpl.java
>>>
>>>>>>>>  (with props)
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>> tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/ 
>>> tapestry5/internal/services/PagePoolImplMBean.java
>>>
>>>>>>>>  (with props)
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>> tapestry/tapestry5/trunk/tapestry-core/src/test/app1/ 
>>> RemotePoolManagement.tml
>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>> tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/ 
>>> tapestry5/integration/app1/pages/RemotePoolManagement.java
>>>
>>>>>>>>  (with props)
>>>>>>>> Modified:
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>> tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/ 
>>> tapestry5/internal/services/InternalModule.java
>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>> tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/ 
>>> tapestry5/internal/services/PagePoolImpl.java
>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>> tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/ 
>>> tapestry5/integration/app1/CoreBehaviorsTests.java
>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>> tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/ 
>>> tapestry5/integration/app1/pages/Index.java
>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>> ---------------------------------------------------------------------
>>>>>> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
>>>>>> For additional commands, e-mail: dev-help@tapestry.apache.org
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>> --
>>>>> Best regards,
>>>>>
>>>>> Igor Drobiazko
>>>>> http://tapestry5.de/blog
>>>>>
>>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
>>>> For additional commands, e-mail: dev-help@tapestry.apache.org
>>>>
>>>>
>>>>
>>>
>>
>>
>>
>
>
> -- 
>
> Robert Hajek
> B2B Centrum a.s.
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
> For additional commands, e-mail: dev-help@tapestry.apache.org
>


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
For additional commands, e-mail: dev-help@tapestry.apache.org


Re: 5.2.0-SNAPSHOT - javax.management issues in GAE

Posted by Robert Hajek <ro...@b2bcentrum.cz>.
Nice, thanks Igor !

Rob

Dne 7.6.2010 7:19, Igor Drobiazko napsal(a):
> No problem. I'll move it to tapestry-jmx module.
>
> On Mon, Jun 7, 2010 at 6:08 AM, Alex Kotchnev<ak...@gmail.com>  wrote:
>
>    
>>   Can it please be moved to a separate module ? After having to jump through
>> hoops to get 5.1 running on GAE, and 5.2 stabilizing / working on GAE (up
>> until now), it would be very unpleasant to go back to jumping through hoops
>> to have to get a T5 app running on GAE again.
>>
>> Please ?
>>
>> Regards,
>>
>> Alex K
>>
>> On Sun, Jun 6, 2010 at 2:52 PM, Josh Canfield<joshcanfield@gmail.com
>>      
>>> wrote:
>>>        
>>      
>>> This probably needs to be moved to a separate module ala
>>>        
>> tapestry-hibernate
>>      
>>> -- Josh
>>>
>>>
>>> On Jun 6, 2010, at 11:37 AM, Igor Drobiazko<ig...@gmail.com>
>>> wrote:
>>>
>>>   Looks like javax.management is not in the white list and can not be
>>>        
>>>> loaded.
>>>>
>>>> http://code.google.com/intl/en/appengine/docs/java/jrewhitelist.html
>>>>
>>>> Unfortunately I never deployed T5 into Google App Engine and have no
>>>>          
>> idea
>>      
>>>> if
>>>> there is a workaround for it.
>>>>
>>>> On Sat, Jun 5, 2010 at 3:59 PM, Robert Hajek<
>>>>          
>> robert.hajek@b2bcentrum.cz
>>      
>>>>> wrote:
>>>>>            
>>>>   Hi All,
>>>>          
>>>>> I have problem with deploying simple T5.2 web application to GAE.
>>>>>
>>>>> Caused by: java.lang.RuntimeException:
>>>>> Error invoking service builder method
>>>>> org.apache.tapestry5.internal.services.InternalModule.buildPagePool
>>>>> (PagePoolImpl, InvalidationEventHub, InvalidationEventHub,
>>>>>            
>> MBeanSupport)
>>      
>>>>> (at InternalModule.java:181) (for service 'PagePool'): Error building
>>>>> service proxy for service 'MBeanSupport'
>>>>> (at
>>>>>
>>>>>
>>>>>            
>> org.apache.tapestry5.internal.services.InternalModule.buildMBeanSupport(RegistryShutdownHub,
>>      
>>>>> MBeanSupportImpl)
>>>>> (at InternalModule.java:216)): Unable to lookup class
>>>>>
>>>>>
>>>>>            
>> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName:
>>      
>>>>>
>>>>>
>>>>>            
>> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName
>>      
>>>>>            
>>>>          
>>>
>>>        
>>>>> This problem probably starts after fixing issue "TAP5-978: Provide
>>>>>            
>> remote
>>      
>>>>> management of the page pool settings."
>>>>>
>>>>> Is there some workaround how to disable javax.management stuff in T5 or
>>>>> fix
>>>>> this issue? Will be GAE officially supported in beta of final release
>>>>>            
>> of
>>      
>>>>> T5.2 ?
>>>>>
>>>>> Thanks,
>>>>>
>>>>> Rob
>>>>>
>>>>> full stacktrace:
>>>>>
>>>>> Uncaught exception from servlet
>>>>> java.lang.RuntimeException: Exception constructing service 'PagePool':
>>>>> Error invoking service builder method
>>>>>
>>>>>
>>>>>            
>> org.apache.tapestry5.internal.services.InternalModule.buildPagePool(PagePoolImpl,
>>      
>>>>> InvalidationEventHub, InvalidationEventHub, MBeanSupport) (at
>>>>> InternalModule.java:181) (for service 'PagePool'): Error building
>>>>>            
>> service
>>      
>>>>> proxy for service 'MBeanSupport' (at
>>>>>
>>>>>
>>>>>            
>> org.apache.tapestry5.internal.services.InternalModule.buildMBeanSupport(RegistryShutdownHub,
>>      
>>>>> MBeanSupportImpl) (at InternalModule.java:216)): Unable to lookup class
>>>>>
>>>>>
>>>>>            
>> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName:
>>      
>>>>>
>>>>>            
>> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName
>>      
>>>>>            
>>>>          
>>>        at
>>>        
>>>>>
>>>>>            
>> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.obtainObjectFromCreator(JustInTimeObjectCreator.java:78)
>>      
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.createObject(JustInTimeObjectCreator.java:57)
>>      
>>>>>       at $PagePool_129082cfd52.delegate($PagePool_129082cfd52.java)
>>>>>       at $PagePool_129082cfd52.checkout($PagePool_129082cfd52.java)
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> org.apache.tapestry5.internal.services.RequestPageCacheImpl.get(RequestPageCacheImpl.java:51)
>>      
>>>>>       at
>>>>> $RequestPageCache_129082cfd51.get($RequestPageCache_129082cfd51.java)
>>>>>       at
>>>>> $RequestPageCache_129082cfd4a.get($RequestPageCache_129082cfd4a.java)
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> org.apache.tapestry5.internal.services.DefaultRequestExceptionHandler.handleRequestException(DefaultRequestExceptionHandler.java:69)
>>      
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> $RequestExceptionHandler_129082cfd28.handleRequestException($RequestExceptionHandler_129082cfd28.java)
>>      
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> org.apache.tapestry5.internal.services.RequestErrorFilter.service(RequestErrorFilter.java:42)
>>      
>>>>>       at
>>>>> $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> org.apache.tapestry5.services.TapestryModule$4.service(TapestryModule.java:977)
>>      
>>>>>       at
>>>>> $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> org.apache.tapestry5.services.TapestryModule$3.service(TapestryModule.java:967)
>>      
>>>>>       at
>>>>> $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> org.apache.tapestry5.internal.services.StaticFilesFilter.service(StaticFilesFilter.java:90)
>>      
>>>>>       at
>>>>> $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:90)
>>      
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:80)
>>      
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> org.apache.tapestry5.ioc.internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:85)
>>      
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> org.apache.tapestry5.internal.services.CheckForUpdatesFilter.service(CheckForUpdatesFilter.java:103)
>>      
>>>>>       at
>>>>> $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
>>>>>       at
>>>>> $RequestHandler_129082cfd20.service($RequestHandler_129082cfd20.java)
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> org.apache.tapestry5.services.TapestryModule$HttpServletRequestHandlerTerminator.service(TapestryModule.java:271)
>>      
>>>>>       at
>>>>>
>>>>>            
>> org.apache.tapestry5.internal.gzip.GZipFilter.service(GZipFilter.java:53)
>>      
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> $HttpServletRequestHandler_129082cfd22.service($HttpServletRequestHandler_129082cfd22.java)
>>      
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> org.apache.tapestry5.internal.services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62)
>>      
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> $HttpServletRequestFilter_129082cfd1f.service($HttpServletRequestFilter_129082cfd1f.java)
>>      
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> $HttpServletRequestHandler_129082cfd22.service($HttpServletRequestHandler_129082cfd22.java)
>>      
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> org.apache.tapestry5.services.TapestryModule$2.service(TapestryModule.java:921)
>>      
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> $HttpServletRequestHandler_129082cfd22.service($HttpServletRequestHandler_129082cfd22.java)
>>      
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> $HttpServletRequestHandler_129082cfd1d.service($HttpServletRequestHandler_129082cfd1d.java)
>>      
>>>>>       at
>>>>> org.apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java:147)
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>>      
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> com.google.apphosting.utils.servlet.ParseBlobUploadFilter.doFilter(ParseBlobUploadFilter.java:97)
>>      
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>>      
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> com.google.apphosting.runtime.jetty.SaveSessionFilter.doFilter(SaveSessionFilter.java:35)
>>      
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>>      
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43)
>>      
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>>      
>>>>>       at
>>>>>
>>>>>            
>> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)
>>      
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
>>      
>>>>>       at
>>>>>
>>>>>            
>> org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
>>      
>>>>>       at
>>>>>
>>>>>            
>> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
>>      
>>>>>       at
>>>>> org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> com.google.apphosting.runtime.jetty.AppVersionHandlerMap.handle(AppVersionHandlerMap.java:238)
>>      
>>>>>       at
>>>>>
>>>>>            
>> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
>>      
>>>>>       at org.mortbay.jetty.Server.handle(Server.java:326)
>>>>>       at
>>>>> org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:923)
>>      
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> com.google.apphosting.runtime.jetty.RpcRequestParser.parseAvailable(RpcRequestParser.java:76)
>>      
>>>>>       at
>>>>>            
>> org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
>>      
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> com.google.apphosting.runtime.jetty.JettyServletEngineAdapter.serviceRequest(JettyServletEngineAdapter.java:135)
>>      
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> com.google.apphosting.runtime.JavaRuntime.handleRequest(JavaRuntime.java:250)
>>      
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> com.google.apphosting.base.RuntimePb$EvaluationRuntime$6.handleBlockingRequest(RuntimePb.java:5838)
>>      
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> com.google.apphosting.base.RuntimePb$EvaluationRuntime$6.handleBlockingRequest(RuntimePb.java:5836)
>>      
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> com.google.net.rpc.impl.BlockingApplicationHandler.handleRequest(BlockingApplicationHandler.java:24)
>>      
>>>>>       at
>>>>> com.google.net.rpc.impl.RpcUtil.runRpcInApplication(RpcUtil.java:398)
>>>>>       at com.google.net.rpc.impl.Server$2.run(Server.java:852)
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> com.google.tracing.LocalTraceSpanRunnable.run(LocalTraceSpanRunnable.java:56)
>>      
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> com.google.tracing.LocalTraceSpanBuilder.internalContinueSpan(LocalTraceSpanBuilder.java:576)
>>      
>>>>>       at com.google.net.rpc.impl.Server.startRpc(Server.java:807)
>>>>>       at com.google.net.rpc.impl.Server.processRequest(Server.java:369)
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> com.google.net.rpc.impl.ServerConnection.messageReceived(ServerConnection.java:442)
>>      
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> com.google.net.rpc.impl.RpcConnection.parseMessages(RpcConnection.java:319)
>>      
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> com.google.net.rpc.impl.RpcConnection.dataReceived(RpcConnection.java:290)
>>      
>>>>>       at
>>>>> com.google.net.async.Connection.handleReadEvent(Connection.java:474)
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> com.google.net.async.EventDispatcher.processNetworkEvents(EventDispatcher.java:831)
>>      
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> com.google.net.async.EventDispatcher.internalLoop(EventDispatcher.java:207)
>>      
>>>>>       at
>>>>> com.google.net.async.EventDispatcher.loop(EventDispatcher.java:103)
>>>>>       at
>>>>>
>>>>>            
>> com.google.net.rpc.RpcService.runUntilServerShutdown(RpcService.java:251)
>>      
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> com.google.apphosting.runtime.JavaRuntime$RpcRunnable.run(JavaRuntime.java:413)
>>      
>>>>>       at java.lang.Thread.run(Unknown Source)
>>>>> Caused by: java.lang.RuntimeException: Error invoking service builder
>>>>> method
>>>>>
>>>>>
>>>>>            
>> org.apache.tapestry5.internal.services.InternalModule.buildPagePool(PagePoolImpl,
>>      
>>>>> InvalidationEventHub, InvalidationEventHub, MBeanSupport) (at
>>>>> InternalModule.java:181) (for service 'PagePool'): Error building
>>>>>            
>> service
>>      
>>>>> proxy for service 'MBeanSupport' (at
>>>>>
>>>>>
>>>>>            
>> org.apache.tapestry5.internal.services.InternalModule.buildMBeanSupport(RegistryShutdownHub,
>>      
>>>>> MBeanSupportImpl) (at InternalModule.java:216)): Unable to lookup class
>>>>>
>>>>>
>>>>>            
>> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName:
>>      
>>>>>
>>>>>            
>> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName
>>      
>>>>>            
>>>>          
>>>        at
>>>        
>>>>>
>>>>>            
>> org.apache.tapestry5.ioc.internal.ServiceBuilderMethodInvoker.createObject(ServiceBuilderMethodInvoker.java:76)
>>      
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator$1.invoke(OperationTrackingObjectCreator.java:45)
>>      
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:68)
>>      
>>>>>       at
>>>>>
>>>>>
>>>>>            
>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:68)
>>      
>>>>>       at org.apache.tapestry5.ioc.intern
>>>>>
>>>>>
>>>>>
>>>>> Dne 27.5.2010 17:59, Howard Lewis Ship napsal(a):
>>>>>
>>>>>   This is very neat stuff.
>>>>>            
>>>>>> A quibble:  I think the ObjectName should be
>>>>>> "org.apache.tapestry5:service=PagePool"  (i.e., reflecting that
>>>>>> PagePool here is the service id, not the service interface).
>>>>>>
>>>>>>
>>>>>>
>>>>>> On Wed, May 26, 2010 at 12:05 AM,<dr...@apache.org>   wrote:
>>>>>>
>>>>>>
>>>>>>   Author: drobiazko
>>>>>>              
>>>>>>> Date: Wed May 26 07:05:38 2010
>>>>>>> New Revision: 948348
>>>>>>>
>>>>>>> URL: http://svn.apache.org/viewvc?rev=948348&view=rev
>>>>>>> Log:
>>>>>>> TAP5-978: Provide remote management of the page pool settings
>>>>>>>
>>>>>>> Added:
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>                
>> tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupport.java
>>      
>>>>>>>   (with props)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>                
>> tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupportImpl.java
>>      
>>>>>>>   (with props)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>                
>> tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PagePoolImplMBean.java
>>      
>>>>>>>   (with props)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>                
>> tapestry/tapestry5/trunk/tapestry-core/src/test/app1/RemotePoolManagement.tml
>>      
>>>>>>>
>>>>>>>
>>>>>>>                
>> tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/RemotePoolManagement.java
>>      
>>>>>>>   (with props)
>>>>>>> Modified:
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>                
>> tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/InternalModule.java
>>      
>>>>>>>
>>>>>>>
>>>>>>>                
>> tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PagePoolImpl.java
>>      
>>>>>>>
>>>>>>>
>>>>>>>                
>> tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/CoreBehaviorsTests.java
>>      
>>>>>>>
>>>>>>>
>>>>>>>                
>> tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/Index.java
>>      
>>>>>>>
>>>>>>>
>>>>>>>                
>>>>>>              
>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
>>>>> For additional commands, e-mail: dev-help@tapestry.apache.org
>>>>>
>>>>>
>>>>>
>>>>>            
>>>> --
>>>> Best regards,
>>>>
>>>> Igor Drobiazko
>>>> http://tapestry5.de/blog
>>>>
>>>>          
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
>>> For additional commands, e-mail: dev-help@tapestry.apache.org
>>>
>>>
>>>        
>>      
>
>
>    


-- 

Robert Hajek
B2B Centrum a.s.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
For additional commands, e-mail: dev-help@tapestry.apache.org


Re: 5.2.0-SNAPSHOT - javax.management issues in GAE

Posted by Igor Drobiazko <ig...@gmail.com>.
No problem. I'll move it to tapestry-jmx module.

On Mon, Jun 7, 2010 at 6:08 AM, Alex Kotchnev <ak...@gmail.com> wrote:

>  Can it please be moved to a separate module ? After having to jump through
> hoops to get 5.1 running on GAE, and 5.2 stabilizing / working on GAE (up
> until now), it would be very unpleasant to go back to jumping through hoops
> to have to get a T5 app running on GAE again.
>
> Please ?
>
> Regards,
>
> Alex K
>
> On Sun, Jun 6, 2010 at 2:52 PM, Josh Canfield <joshcanfield@gmail.com
> >wrote:
>
> > This probably needs to be moved to a separate module ala
> tapestry-hibernate
> >
> > -- Josh
> >
> >
> > On Jun 6, 2010, at 11:37 AM, Igor Drobiazko <ig...@gmail.com>
> > wrote:
> >
> >  Looks like javax.management is not in the white list and can not be
> >> loaded.
> >>
> >> http://code.google.com/intl/en/appengine/docs/java/jrewhitelist.html
> >>
> >> Unfortunately I never deployed T5 into Google App Engine and have no
> idea
> >> if
> >> there is a workaround for it.
> >>
> >> On Sat, Jun 5, 2010 at 3:59 PM, Robert Hajek <
> robert.hajek@b2bcentrum.cz
> >> >wrote:
> >>
> >>  Hi All,
> >>>
> >>> I have problem with deploying simple T5.2 web application to GAE.
> >>>
> >>> Caused by: java.lang.RuntimeException:
> >>> Error invoking service builder method
> >>> org.apache.tapestry5.internal.services.InternalModule.buildPagePool
> >>> (PagePoolImpl, InvalidationEventHub, InvalidationEventHub,
> MBeanSupport)
> >>> (at InternalModule.java:181) (for service 'PagePool'): Error building
> >>> service proxy for service 'MBeanSupport'
> >>> (at
> >>>
> >>>
> org.apache.tapestry5.internal.services.InternalModule.buildMBeanSupport(RegistryShutdownHub,
> >>> MBeanSupportImpl)
> >>> (at InternalModule.java:216)): Unable to lookup class
> >>>
> >>>
> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName:
> >>>
> >>>
> >>>
> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName
> >>>
> >>
> >
> >
> >>> This problem probably starts after fixing issue "TAP5-978: Provide
> remote
> >>> management of the page pool settings."
> >>>
> >>> Is there some workaround how to disable javax.management stuff in T5 or
> >>> fix
> >>> this issue? Will be GAE officially supported in beta of final release
> of
> >>> T5.2 ?
> >>>
> >>> Thanks,
> >>>
> >>> Rob
> >>>
> >>> full stacktrace:
> >>>
> >>> Uncaught exception from servlet
> >>> java.lang.RuntimeException: Exception constructing service 'PagePool':
> >>> Error invoking service builder method
> >>>
> >>>
> org.apache.tapestry5.internal.services.InternalModule.buildPagePool(PagePoolImpl,
> >>> InvalidationEventHub, InvalidationEventHub, MBeanSupport) (at
> >>> InternalModule.java:181) (for service 'PagePool'): Error building
> service
> >>> proxy for service 'MBeanSupport' (at
> >>>
> >>>
> org.apache.tapestry5.internal.services.InternalModule.buildMBeanSupport(RegistryShutdownHub,
> >>> MBeanSupportImpl) (at InternalModule.java:216)): Unable to lookup class
> >>>
> >>>
> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName:
> >>>
> >>>
> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName
> >>>
> >>
> >
> >       at
> >>>
> >>>
> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.obtainObjectFromCreator(JustInTimeObjectCreator.java:78)
> >>>      at
> >>>
> >>>
> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.createObject(JustInTimeObjectCreator.java:57)
> >>>      at $PagePool_129082cfd52.delegate($PagePool_129082cfd52.java)
> >>>      at $PagePool_129082cfd52.checkout($PagePool_129082cfd52.java)
> >>>      at
> >>>
> >>>
> org.apache.tapestry5.internal.services.RequestPageCacheImpl.get(RequestPageCacheImpl.java:51)
> >>>      at
> >>> $RequestPageCache_129082cfd51.get($RequestPageCache_129082cfd51.java)
> >>>      at
> >>> $RequestPageCache_129082cfd4a.get($RequestPageCache_129082cfd4a.java)
> >>>      at
> >>>
> >>>
> org.apache.tapestry5.internal.services.DefaultRequestExceptionHandler.handleRequestException(DefaultRequestExceptionHandler.java:69)
> >>>      at
> >>>
> >>>
> $RequestExceptionHandler_129082cfd28.handleRequestException($RequestExceptionHandler_129082cfd28.java)
> >>>      at
> >>>
> >>>
> org.apache.tapestry5.internal.services.RequestErrorFilter.service(RequestErrorFilter.java:42)
> >>>      at
> >>> $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
> >>>      at
> >>>
> >>>
> org.apache.tapestry5.services.TapestryModule$4.service(TapestryModule.java:977)
> >>>      at
> >>> $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
> >>>      at
> >>>
> >>>
> org.apache.tapestry5.services.TapestryModule$3.service(TapestryModule.java:967)
> >>>      at
> >>> $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
> >>>      at
> >>>
> >>>
> org.apache.tapestry5.internal.services.StaticFilesFilter.service(StaticFilesFilter.java:90)
> >>>      at
> >>> $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
> >>>      at
> >>>
> >>>
> org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:90)
> >>>      at
> >>>
> >>>
> org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:80)
> >>>      at
> >>>
> >>>
> org.apache.tapestry5.ioc.internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:85)
> >>>      at
> >>>
> >>>
> org.apache.tapestry5.internal.services.CheckForUpdatesFilter.service(CheckForUpdatesFilter.java:103)
> >>>      at
> >>> $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
> >>>      at
> >>> $RequestHandler_129082cfd20.service($RequestHandler_129082cfd20.java)
> >>>      at
> >>>
> >>>
> org.apache.tapestry5.services.TapestryModule$HttpServletRequestHandlerTerminator.service(TapestryModule.java:271)
> >>>      at
> >>>
> org.apache.tapestry5.internal.gzip.GZipFilter.service(GZipFilter.java:53)
> >>>      at
> >>>
> >>>
> $HttpServletRequestHandler_129082cfd22.service($HttpServletRequestHandler_129082cfd22.java)
> >>>      at
> >>>
> >>>
> org.apache.tapestry5.internal.services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62)
> >>>      at
> >>>
> >>>
> $HttpServletRequestFilter_129082cfd1f.service($HttpServletRequestFilter_129082cfd1f.java)
> >>>      at
> >>>
> >>>
> $HttpServletRequestHandler_129082cfd22.service($HttpServletRequestHandler_129082cfd22.java)
> >>>      at
> >>>
> >>>
> org.apache.tapestry5.services.TapestryModule$2.service(TapestryModule.java:921)
> >>>      at
> >>>
> >>>
> $HttpServletRequestHandler_129082cfd22.service($HttpServletRequestHandler_129082cfd22.java)
> >>>      at
> >>>
> >>>
> $HttpServletRequestHandler_129082cfd1d.service($HttpServletRequestHandler_129082cfd1d.java)
> >>>      at
> >>> org.apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java:147)
> >>>      at
> >>>
> >>>
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
> >>>      at
> >>>
> >>>
> com.google.apphosting.utils.servlet.ParseBlobUploadFilter.doFilter(ParseBlobUploadFilter.java:97)
> >>>      at
> >>>
> >>>
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
> >>>      at
> >>>
> >>>
> com.google.apphosting.runtime.jetty.SaveSessionFilter.doFilter(SaveSessionFilter.java:35)
> >>>      at
> >>>
> >>>
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
> >>>      at
> >>>
> >>>
> com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43)
> >>>      at
> >>>
> >>>
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
> >>>      at
> >>>
> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)
> >>>      at
> >>>
> >>>
> org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
> >>>      at
> >>>
> org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
> >>>      at
> >>>
> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
> >>>      at
> >>> org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
> >>>      at
> >>>
> >>>
> com.google.apphosting.runtime.jetty.AppVersionHandlerMap.handle(AppVersionHandlerMap.java:238)
> >>>      at
> >>>
> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
> >>>      at org.mortbay.jetty.Server.handle(Server.java:326)
> >>>      at
> >>> org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
> >>>      at
> >>>
> >>>
> org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:923)
> >>>      at
> >>>
> >>>
> com.google.apphosting.runtime.jetty.RpcRequestParser.parseAvailable(RpcRequestParser.java:76)
> >>>      at
> org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
> >>>      at
> >>>
> >>>
> com.google.apphosting.runtime.jetty.JettyServletEngineAdapter.serviceRequest(JettyServletEngineAdapter.java:135)
> >>>      at
> >>>
> >>>
> com.google.apphosting.runtime.JavaRuntime.handleRequest(JavaRuntime.java:250)
> >>>      at
> >>>
> >>>
> com.google.apphosting.base.RuntimePb$EvaluationRuntime$6.handleBlockingRequest(RuntimePb.java:5838)
> >>>      at
> >>>
> >>>
> com.google.apphosting.base.RuntimePb$EvaluationRuntime$6.handleBlockingRequest(RuntimePb.java:5836)
> >>>      at
> >>>
> >>>
> com.google.net.rpc.impl.BlockingApplicationHandler.handleRequest(BlockingApplicationHandler.java:24)
> >>>      at
> >>> com.google.net.rpc.impl.RpcUtil.runRpcInApplication(RpcUtil.java:398)
> >>>      at com.google.net.rpc.impl.Server$2.run(Server.java:852)
> >>>      at
> >>>
> >>>
> com.google.tracing.LocalTraceSpanRunnable.run(LocalTraceSpanRunnable.java:56)
> >>>      at
> >>>
> >>>
> com.google.tracing.LocalTraceSpanBuilder.internalContinueSpan(LocalTraceSpanBuilder.java:576)
> >>>      at com.google.net.rpc.impl.Server.startRpc(Server.java:807)
> >>>      at com.google.net.rpc.impl.Server.processRequest(Server.java:369)
> >>>      at
> >>>
> >>>
> com.google.net.rpc.impl.ServerConnection.messageReceived(ServerConnection.java:442)
> >>>      at
> >>>
> >>>
> com.google.net.rpc.impl.RpcConnection.parseMessages(RpcConnection.java:319)
> >>>      at
> >>>
> >>>
> com.google.net.rpc.impl.RpcConnection.dataReceived(RpcConnection.java:290)
> >>>      at
> >>> com.google.net.async.Connection.handleReadEvent(Connection.java:474)
> >>>      at
> >>>
> >>>
> com.google.net.async.EventDispatcher.processNetworkEvents(EventDispatcher.java:831)
> >>>      at
> >>>
> >>>
> com.google.net.async.EventDispatcher.internalLoop(EventDispatcher.java:207)
> >>>      at
> >>> com.google.net.async.EventDispatcher.loop(EventDispatcher.java:103)
> >>>      at
> >>>
> com.google.net.rpc.RpcService.runUntilServerShutdown(RpcService.java:251)
> >>>      at
> >>>
> >>>
> com.google.apphosting.runtime.JavaRuntime$RpcRunnable.run(JavaRuntime.java:413)
> >>>      at java.lang.Thread.run(Unknown Source)
> >>> Caused by: java.lang.RuntimeException: Error invoking service builder
> >>> method
> >>>
> >>>
> org.apache.tapestry5.internal.services.InternalModule.buildPagePool(PagePoolImpl,
> >>> InvalidationEventHub, InvalidationEventHub, MBeanSupport) (at
> >>> InternalModule.java:181) (for service 'PagePool'): Error building
> service
> >>> proxy for service 'MBeanSupport' (at
> >>>
> >>>
> org.apache.tapestry5.internal.services.InternalModule.buildMBeanSupport(RegistryShutdownHub,
> >>> MBeanSupportImpl) (at InternalModule.java:216)): Unable to lookup class
> >>>
> >>>
> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName:
> >>>
> >>>
> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName
> >>>
> >>
> >
> >       at
> >>>
> >>>
> org.apache.tapestry5.ioc.internal.ServiceBuilderMethodInvoker.createObject(ServiceBuilderMethodInvoker.java:76)
> >>>      at
> >>>
> >>>
> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator$1.invoke(OperationTrackingObjectCreator.java:45)
> >>>      at
> >>>
> >>>
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:68)
> >>>      at
> >>>
> >>>
> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:68)
> >>>      at org.apache.tapestry5.ioc.intern
> >>>
> >>>
> >>>
> >>> Dne 27.5.2010 17:59, Howard Lewis Ship napsal(a):
> >>>
> >>>  This is very neat stuff.
> >>>>
> >>>> A quibble:  I think the ObjectName should be
> >>>> "org.apache.tapestry5:service=PagePool"  (i.e., reflecting that
> >>>> PagePool here is the service id, not the service interface).
> >>>>
> >>>>
> >>>>
> >>>> On Wed, May 26, 2010 at 12:05 AM,<dr...@apache.org>  wrote:
> >>>>
> >>>>
> >>>>  Author: drobiazko
> >>>>> Date: Wed May 26 07:05:38 2010
> >>>>> New Revision: 948348
> >>>>>
> >>>>> URL: http://svn.apache.org/viewvc?rev=948348&view=rev
> >>>>> Log:
> >>>>> TAP5-978: Provide remote management of the page pool settings
> >>>>>
> >>>>> Added:
> >>>>>
> >>>>>
> >>>>>
> tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupport.java
> >>>>>  (with props)
> >>>>>
> >>>>>
> >>>>>
> tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupportImpl.java
> >>>>>  (with props)
> >>>>>
> >>>>>
> >>>>>
> tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PagePoolImplMBean.java
> >>>>>  (with props)
> >>>>>
> >>>>>
> >>>>>
> tapestry/tapestry5/trunk/tapestry-core/src/test/app1/RemotePoolManagement.tml
> >>>>>
> >>>>>
> >>>>>
> tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/RemotePoolManagement.java
> >>>>>  (with props)
> >>>>> Modified:
> >>>>>
> >>>>>
> >>>>>
> tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/InternalModule.java
> >>>>>
> >>>>>
> >>>>>
> tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PagePoolImpl.java
> >>>>>
> >>>>>
> >>>>>
> tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/CoreBehaviorsTests.java
> >>>>>
> >>>>>
> >>>>>
> tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/Index.java
> >>>>>
> >>>>>
> >>>>>
> >>>>
> >>>
> >>>
> >>> ---------------------------------------------------------------------
> >>> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
> >>> For additional commands, e-mail: dev-help@tapestry.apache.org
> >>>
> >>>
> >>>
> >>
> >> --
> >> Best regards,
> >>
> >> Igor Drobiazko
> >> http://tapestry5.de/blog
> >>
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
> > For additional commands, e-mail: dev-help@tapestry.apache.org
> >
> >
>



-- 
Best regards,

Igor Drobiazko
http://tapestry5.de/blog

Re: 5.2.0-SNAPSHOT - javax.management issues in GAE

Posted by Alex Kotchnev <ak...@gmail.com>.
  Can it please be moved to a separate module ? After having to jump through
hoops to get 5.1 running on GAE, and 5.2 stabilizing / working on GAE (up
until now), it would be very unpleasant to go back to jumping through hoops
to have to get a T5 app running on GAE again.

Please ?

Regards,

Alex K

On Sun, Jun 6, 2010 at 2:52 PM, Josh Canfield <jo...@gmail.com>wrote:

> This probably needs to be moved to a separate module ala tapestry-hibernate
>
> -- Josh
>
>
> On Jun 6, 2010, at 11:37 AM, Igor Drobiazko <ig...@gmail.com>
> wrote:
>
>  Looks like javax.management is not in the white list and can not be
>> loaded.
>>
>> http://code.google.com/intl/en/appengine/docs/java/jrewhitelist.html
>>
>> Unfortunately I never deployed T5 into Google App Engine and have no idea
>> if
>> there is a workaround for it.
>>
>> On Sat, Jun 5, 2010 at 3:59 PM, Robert Hajek <robert.hajek@b2bcentrum.cz
>> >wrote:
>>
>>  Hi All,
>>>
>>> I have problem with deploying simple T5.2 web application to GAE.
>>>
>>> Caused by: java.lang.RuntimeException:
>>> Error invoking service builder method
>>> org.apache.tapestry5.internal.services.InternalModule.buildPagePool
>>> (PagePoolImpl, InvalidationEventHub, InvalidationEventHub, MBeanSupport)
>>> (at InternalModule.java:181) (for service 'PagePool'): Error building
>>> service proxy for service 'MBeanSupport'
>>> (at
>>>
>>> org.apache.tapestry5.internal.services.InternalModule.buildMBeanSupport(RegistryShutdownHub,
>>> MBeanSupportImpl)
>>> (at InternalModule.java:216)): Unable to lookup class
>>>
>>> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName:
>>>
>>>
>>> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName
>>>
>>
>
>
>>> This problem probably starts after fixing issue "TAP5-978: Provide remote
>>> management of the page pool settings."
>>>
>>> Is there some workaround how to disable javax.management stuff in T5 or
>>> fix
>>> this issue? Will be GAE officially supported in beta of final release of
>>> T5.2 ?
>>>
>>> Thanks,
>>>
>>> Rob
>>>
>>> full stacktrace:
>>>
>>> Uncaught exception from servlet
>>> java.lang.RuntimeException: Exception constructing service 'PagePool':
>>> Error invoking service builder method
>>>
>>> org.apache.tapestry5.internal.services.InternalModule.buildPagePool(PagePoolImpl,
>>> InvalidationEventHub, InvalidationEventHub, MBeanSupport) (at
>>> InternalModule.java:181) (for service 'PagePool'): Error building service
>>> proxy for service 'MBeanSupport' (at
>>>
>>> org.apache.tapestry5.internal.services.InternalModule.buildMBeanSupport(RegistryShutdownHub,
>>> MBeanSupportImpl) (at InternalModule.java:216)): Unable to lookup class
>>>
>>> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName:
>>>
>>> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName
>>>
>>
>
>       at
>>>
>>> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.obtainObjectFromCreator(JustInTimeObjectCreator.java:78)
>>>      at
>>>
>>> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.createObject(JustInTimeObjectCreator.java:57)
>>>      at $PagePool_129082cfd52.delegate($PagePool_129082cfd52.java)
>>>      at $PagePool_129082cfd52.checkout($PagePool_129082cfd52.java)
>>>      at
>>>
>>> org.apache.tapestry5.internal.services.RequestPageCacheImpl.get(RequestPageCacheImpl.java:51)
>>>      at
>>> $RequestPageCache_129082cfd51.get($RequestPageCache_129082cfd51.java)
>>>      at
>>> $RequestPageCache_129082cfd4a.get($RequestPageCache_129082cfd4a.java)
>>>      at
>>>
>>> org.apache.tapestry5.internal.services.DefaultRequestExceptionHandler.handleRequestException(DefaultRequestExceptionHandler.java:69)
>>>      at
>>>
>>> $RequestExceptionHandler_129082cfd28.handleRequestException($RequestExceptionHandler_129082cfd28.java)
>>>      at
>>>
>>> org.apache.tapestry5.internal.services.RequestErrorFilter.service(RequestErrorFilter.java:42)
>>>      at
>>> $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
>>>      at
>>>
>>> org.apache.tapestry5.services.TapestryModule$4.service(TapestryModule.java:977)
>>>      at
>>> $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
>>>      at
>>>
>>> org.apache.tapestry5.services.TapestryModule$3.service(TapestryModule.java:967)
>>>      at
>>> $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
>>>      at
>>>
>>> org.apache.tapestry5.internal.services.StaticFilesFilter.service(StaticFilesFilter.java:90)
>>>      at
>>> $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
>>>      at
>>>
>>> org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:90)
>>>      at
>>>
>>> org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:80)
>>>      at
>>>
>>> org.apache.tapestry5.ioc.internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:85)
>>>      at
>>>
>>> org.apache.tapestry5.internal.services.CheckForUpdatesFilter.service(CheckForUpdatesFilter.java:103)
>>>      at
>>> $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
>>>      at
>>> $RequestHandler_129082cfd20.service($RequestHandler_129082cfd20.java)
>>>      at
>>>
>>> org.apache.tapestry5.services.TapestryModule$HttpServletRequestHandlerTerminator.service(TapestryModule.java:271)
>>>      at
>>> org.apache.tapestry5.internal.gzip.GZipFilter.service(GZipFilter.java:53)
>>>      at
>>>
>>> $HttpServletRequestHandler_129082cfd22.service($HttpServletRequestHandler_129082cfd22.java)
>>>      at
>>>
>>> org.apache.tapestry5.internal.services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62)
>>>      at
>>>
>>> $HttpServletRequestFilter_129082cfd1f.service($HttpServletRequestFilter_129082cfd1f.java)
>>>      at
>>>
>>> $HttpServletRequestHandler_129082cfd22.service($HttpServletRequestHandler_129082cfd22.java)
>>>      at
>>>
>>> org.apache.tapestry5.services.TapestryModule$2.service(TapestryModule.java:921)
>>>      at
>>>
>>> $HttpServletRequestHandler_129082cfd22.service($HttpServletRequestHandler_129082cfd22.java)
>>>      at
>>>
>>> $HttpServletRequestHandler_129082cfd1d.service($HttpServletRequestHandler_129082cfd1d.java)
>>>      at
>>> org.apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java:147)
>>>      at
>>>
>>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>>>      at
>>>
>>> com.google.apphosting.utils.servlet.ParseBlobUploadFilter.doFilter(ParseBlobUploadFilter.java:97)
>>>      at
>>>
>>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>>>      at
>>>
>>> com.google.apphosting.runtime.jetty.SaveSessionFilter.doFilter(SaveSessionFilter.java:35)
>>>      at
>>>
>>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>>>      at
>>>
>>> com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43)
>>>      at
>>>
>>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>>>      at
>>> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)
>>>      at
>>>
>>> org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
>>>      at
>>> org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
>>>      at
>>> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
>>>      at
>>> org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
>>>      at
>>>
>>> com.google.apphosting.runtime.jetty.AppVersionHandlerMap.handle(AppVersionHandlerMap.java:238)
>>>      at
>>> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
>>>      at org.mortbay.jetty.Server.handle(Server.java:326)
>>>      at
>>> org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
>>>      at
>>>
>>> org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:923)
>>>      at
>>>
>>> com.google.apphosting.runtime.jetty.RpcRequestParser.parseAvailable(RpcRequestParser.java:76)
>>>      at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
>>>      at
>>>
>>> com.google.apphosting.runtime.jetty.JettyServletEngineAdapter.serviceRequest(JettyServletEngineAdapter.java:135)
>>>      at
>>>
>>> com.google.apphosting.runtime.JavaRuntime.handleRequest(JavaRuntime.java:250)
>>>      at
>>>
>>> com.google.apphosting.base.RuntimePb$EvaluationRuntime$6.handleBlockingRequest(RuntimePb.java:5838)
>>>      at
>>>
>>> com.google.apphosting.base.RuntimePb$EvaluationRuntime$6.handleBlockingRequest(RuntimePb.java:5836)
>>>      at
>>>
>>> com.google.net.rpc.impl.BlockingApplicationHandler.handleRequest(BlockingApplicationHandler.java:24)
>>>      at
>>> com.google.net.rpc.impl.RpcUtil.runRpcInApplication(RpcUtil.java:398)
>>>      at com.google.net.rpc.impl.Server$2.run(Server.java:852)
>>>      at
>>>
>>> com.google.tracing.LocalTraceSpanRunnable.run(LocalTraceSpanRunnable.java:56)
>>>      at
>>>
>>> com.google.tracing.LocalTraceSpanBuilder.internalContinueSpan(LocalTraceSpanBuilder.java:576)
>>>      at com.google.net.rpc.impl.Server.startRpc(Server.java:807)
>>>      at com.google.net.rpc.impl.Server.processRequest(Server.java:369)
>>>      at
>>>
>>> com.google.net.rpc.impl.ServerConnection.messageReceived(ServerConnection.java:442)
>>>      at
>>>
>>> com.google.net.rpc.impl.RpcConnection.parseMessages(RpcConnection.java:319)
>>>      at
>>>
>>> com.google.net.rpc.impl.RpcConnection.dataReceived(RpcConnection.java:290)
>>>      at
>>> com.google.net.async.Connection.handleReadEvent(Connection.java:474)
>>>      at
>>>
>>> com.google.net.async.EventDispatcher.processNetworkEvents(EventDispatcher.java:831)
>>>      at
>>>
>>> com.google.net.async.EventDispatcher.internalLoop(EventDispatcher.java:207)
>>>      at
>>> com.google.net.async.EventDispatcher.loop(EventDispatcher.java:103)
>>>      at
>>> com.google.net.rpc.RpcService.runUntilServerShutdown(RpcService.java:251)
>>>      at
>>>
>>> com.google.apphosting.runtime.JavaRuntime$RpcRunnable.run(JavaRuntime.java:413)
>>>      at java.lang.Thread.run(Unknown Source)
>>> Caused by: java.lang.RuntimeException: Error invoking service builder
>>> method
>>>
>>> org.apache.tapestry5.internal.services.InternalModule.buildPagePool(PagePoolImpl,
>>> InvalidationEventHub, InvalidationEventHub, MBeanSupport) (at
>>> InternalModule.java:181) (for service 'PagePool'): Error building service
>>> proxy for service 'MBeanSupport' (at
>>>
>>> org.apache.tapestry5.internal.services.InternalModule.buildMBeanSupport(RegistryShutdownHub,
>>> MBeanSupportImpl) (at InternalModule.java:216)): Unable to lookup class
>>>
>>> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName:
>>>
>>> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName
>>>
>>
>
>       at
>>>
>>> org.apache.tapestry5.ioc.internal.ServiceBuilderMethodInvoker.createObject(ServiceBuilderMethodInvoker.java:76)
>>>      at
>>>
>>> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator$1.invoke(OperationTrackingObjectCreator.java:45)
>>>      at
>>>
>>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:68)
>>>      at
>>>
>>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:68)
>>>      at org.apache.tapestry5.ioc.intern
>>>
>>>
>>>
>>> Dne 27.5.2010 17:59, Howard Lewis Ship napsal(a):
>>>
>>>  This is very neat stuff.
>>>>
>>>> A quibble:  I think the ObjectName should be
>>>> "org.apache.tapestry5:service=PagePool"  (i.e., reflecting that
>>>> PagePool here is the service id, not the service interface).
>>>>
>>>>
>>>>
>>>> On Wed, May 26, 2010 at 12:05 AM,<dr...@apache.org>  wrote:
>>>>
>>>>
>>>>  Author: drobiazko
>>>>> Date: Wed May 26 07:05:38 2010
>>>>> New Revision: 948348
>>>>>
>>>>> URL: http://svn.apache.org/viewvc?rev=948348&view=rev
>>>>> Log:
>>>>> TAP5-978: Provide remote management of the page pool settings
>>>>>
>>>>> Added:
>>>>>
>>>>>
>>>>> tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupport.java
>>>>>  (with props)
>>>>>
>>>>>
>>>>> tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupportImpl.java
>>>>>  (with props)
>>>>>
>>>>>
>>>>> tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PagePoolImplMBean.java
>>>>>  (with props)
>>>>>
>>>>>
>>>>> tapestry/tapestry5/trunk/tapestry-core/src/test/app1/RemotePoolManagement.tml
>>>>>
>>>>>
>>>>> tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/RemotePoolManagement.java
>>>>>  (with props)
>>>>> Modified:
>>>>>
>>>>>
>>>>> tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/InternalModule.java
>>>>>
>>>>>
>>>>> tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PagePoolImpl.java
>>>>>
>>>>>
>>>>> tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/CoreBehaviorsTests.java
>>>>>
>>>>>
>>>>> tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/Index.java
>>>>>
>>>>>
>>>>>
>>>>
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
>>> For additional commands, e-mail: dev-help@tapestry.apache.org
>>>
>>>
>>>
>>
>> --
>> Best regards,
>>
>> Igor Drobiazko
>> http://tapestry5.de/blog
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
> For additional commands, e-mail: dev-help@tapestry.apache.org
>
>

Re: 5.2.0-SNAPSHOT - javax.management issues in GAE

Posted by Josh Canfield <jo...@gmail.com>.
This probably needs to be moved to a separate module ala tapestry- 
hibernate

-- Josh

On Jun 6, 2010, at 11:37 AM, Igor Drobiazko <ig...@gmail.com>  
wrote:

> Looks like javax.management is not in the white list and can not be  
> loaded.
>
> http://code.google.com/intl/en/appengine/docs/java/jrewhitelist.html
>
> Unfortunately I never deployed T5 into Google App Engine and have no  
> idea if
> there is a workaround for it.
>
> On Sat, Jun 5, 2010 at 3:59 PM, Robert Hajek <robert.hajek@b2bcentrum.cz 
> >wrote:
>
>> Hi All,
>>
>> I have problem with deploying simple T5.2 web application to GAE.
>>
>> Caused by: java.lang.RuntimeException:
>> Error invoking service builder method
>> org.apache.tapestry5.internal.services.InternalModule.buildPagePool
>> (PagePoolImpl, InvalidationEventHub, InvalidationEventHub,  
>> MBeanSupport)
>> (at InternalModule.java:181) (for service 'PagePool'): Error building
>> service proxy for service 'MBeanSupport'
>> (at
>> org.apache.tapestry5. 
>> internal.services.InternalModule.buildMBeanSupport 
>> (RegistryShutdownHub,
>> MBeanSupportImpl)
>> (at InternalModule.java:216)): Unable to lookup class
>> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName:
>>
>> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName
 

>>
>> This problem probably starts after fixing issue "TAP5-978: Provide  
>> remote
>> management of the page pool settings."
>>
>> Is there some workaround how to disable javax.management stuff in  
>> T5 or fix
>> this issue? Will be GAE officially supported in beta of final  
>> release of
>> T5.2 ?
>>
>> Thanks,
>>
>> Rob
>>
>> full stacktrace:
>>
>> Uncaught exception from servlet
>> java.lang.RuntimeException: Exception constructing service  
>> 'PagePool':
>> Error invoking service builder method
>> org.apache.tapestry5.internal.services.InternalModule.buildPagePool 
>> (PagePoolImpl,
>> InvalidationEventHub, InvalidationEventHub, MBeanSupport) (at
>> InternalModule.java:181) (for service 'PagePool'): Error building  
>> service
>> proxy for service 'MBeanSupport' (at
>> org.apache.tapestry5. 
>> internal.services.InternalModule.buildMBeanSupport 
>> (RegistryShutdownHub,
>> MBeanSupportImpl) (at InternalModule.java:216)): Unable to lookup  
>> class
>> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName:
>> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName
 

>>       at
>> org.apache.tapestry5. 
>> ioc.internal.services.JustInTimeObjectCreator.obtainObjectFromCreator( 
>> JustInTimeObjectCreator.java:78)
>>       at
>> org.apache.tapestry5. 
>> ioc.internal.services.JustInTimeObjectCreator.createObject 
>> (JustInTimeObjectCreator.java:57)
>>       at $PagePool_129082cfd52.delegate($PagePool_129082cfd52.java)
>>       at $PagePool_129082cfd52.checkout($PagePool_129082cfd52.java)
>>       at
>> org.apache.tapestry5.internal.services.RequestPageCacheImpl.get 
>> (RequestPageCacheImpl.java:51)
>>       at
>> $RequestPageCache_129082cfd51.get($RequestPageCache_129082cfd51.java)
>>       at
>> $RequestPageCache_129082cfd4a.get($RequestPageCache_129082cfd4a.java)
>>       at
>> org.apache.tapestry5. 
>> internal.services.DefaultRequestExceptionHandler.handleRequestException( 
>> DefaultRequestExceptionHandler.java:69)
>>       at
>> $RequestExceptionHandler_129082cfd28.handleRequestException 
>> ($RequestExceptionHandler_129082cfd28.java)
>>       at
>> org.apache.tapestry5.internal.services.RequestErrorFilter.service 
>> (RequestErrorFilter.java:42)
>>       at
>> $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
>>       at
>> org.apache.tapestry5.services.TapestryModule$4.service 
>> (TapestryModule.java:977)
>>       at
>> $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
>>       at
>> org.apache.tapestry5.services.TapestryModule$3.service 
>> (TapestryModule.java:967)
>>       at
>> $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
>>       at
>> org.apache.tapestry5.internal.services.StaticFilesFilter.service 
>> (StaticFilesFilter.java:90)
>>       at
>> $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
>>       at
>> org.apache.tapestry5.internal.services.CheckForUpdatesFilter 
>> $2.invoke(CheckForUpdatesFilter.java:90)
>>       at
>> org.apache.tapestry5.internal.services.CheckForUpdatesFilter 
>> $2.invoke(CheckForUpdatesFilter.java:80)
>>       at
>> org.apache.tapestry5.ioc.internal.util.ConcurrentBarrier.withRead 
>> (ConcurrentBarrier.java:85)
>>       at
>> org.apache.tapestry5.internal.services.CheckForUpdatesFilter.service 
>> (CheckForUpdatesFilter.java:103)
>>       at
>> $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
>>       at
>> $RequestHandler_129082cfd20.service($RequestHandler_129082cfd20.java)
>>       at
>> org.apache.tapestry5.services.TapestryModule 
>> $HttpServletRequestHandlerTerminator.service(TapestryModule.java:271)
>>       at
>> org.apache.tapestry5.internal.gzip.GZipFilter.service 
>> (GZipFilter.java:53)
>>       at
>> $HttpServletRequestHandler_129082cfd22.service 
>> ($HttpServletRequestHandler_129082cfd22.java)
>>       at
>> org.apache.tapestry5.internal.services.IgnoredPathsFilter.service 
>> (IgnoredPathsFilter.java:62)
>>       at
>> $HttpServletRequestFilter_129082cfd1f.service 
>> ($HttpServletRequestFilter_129082cfd1f.java)
>>       at
>> $HttpServletRequestHandler_129082cfd22.service 
>> ($HttpServletRequestHandler_129082cfd22.java)
>>       at
>> org.apache.tapestry5.services.TapestryModule$2.service 
>> (TapestryModule.java:921)
>>       at
>> $HttpServletRequestHandler_129082cfd22.service 
>> ($HttpServletRequestHandler_129082cfd22.java)
>>       at
>> $HttpServletRequestHandler_129082cfd1d.service 
>> ($HttpServletRequestHandler_129082cfd1d.java)
>>       at
>> org.apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java:147)
>>       at
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter 
>> (ServletHandler.java:1157)
>>       at
>> com.google.apphosting.utils.servlet.ParseBlobUploadFilter.doFilter 
>> (ParseBlobUploadFilter.java:97)
>>       at
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter 
>> (ServletHandler.java:1157)
>>       at
>> com.google.apphosting.runtime.jetty.SaveSessionFilter.doFilter 
>> (SaveSessionFilter.java:35)
>>       at
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter 
>> (ServletHandler.java:1157)
>>       at
>> com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter( 
>> TransactionCleanupFilter.java:43)
>>       at
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter 
>> (ServletHandler.java:1157)
>>       at
>> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java: 
>> 388)
>>       at
>> org.mortbay.jetty.security.SecurityHandler.handle 
>> (SecurityHandler.java:216)
>>       at
>> org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java: 
>> 182)
>>       at
>> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java: 
>> 765)
>>       at
>> org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
>>       at
>> com.google.apphosting.runtime.jetty.AppVersionHandlerMap.handle 
>> (AppVersionHandlerMap.java:238)
>>       at
>> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java: 
>> 152)
>>       at org.mortbay.jetty.Server.handle(Server.java:326)
>>       at
>> org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java: 
>> 542)
>>       at
>> org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete 
>> (HttpConnection.java:923)
>>       at
>> com.google.apphosting.runtime.jetty.RpcRequestParser.parseAvailable 
>> (RpcRequestParser.java:76)
>>       at org.mortbay.jetty.HttpConnection.handle 
>> (HttpConnection.java:404)
>>       at
>> com.google.apphosting.runtime.jetty.JettyServletEngineAdapter.serviceRequest( 
>> JettyServletEngineAdapter.java:135)
>>       at
>> com.google.apphosting.runtime.JavaRuntime.handleRequest 
>> (JavaRuntime.java:250)
>>       at
>> com.google.apphosting.base.RuntimePb$EvaluationRuntime 
>> $6.handleBlockingRequest(RuntimePb.java:5838)
>>       at
>> com.google.apphosting.base.RuntimePb$EvaluationRuntime 
>> $6.handleBlockingRequest(RuntimePb.java:5836)
>>       at
>> com.google.net.rpc.impl.BlockingApplicationHandler.handleRequest 
>> (BlockingApplicationHandler.java:24)
>>       at
>> com.google.net.rpc.impl.RpcUtil.runRpcInApplication(RpcUtil.java:398)
>>       at com.google.net.rpc.impl.Server$2.run(Server.java:852)
>>       at
>> com.google.tracing.LocalTraceSpanRunnable.run 
>> (LocalTraceSpanRunnable.java:56)
>>       at
>> com.google.tracing.LocalTraceSpanBuilder.internalContinueSpan 
>> (LocalTraceSpanBuilder.java:576)
>>       at com.google.net.rpc.impl.Server.startRpc(Server.java:807)
>>       at com.google.net.rpc.impl.Server.processRequest(Server.java: 
>> 369)
>>       at
>> com.google.net.rpc.impl.ServerConnection.messageReceived 
>> (ServerConnection.java:442)
>>       at
>> com.google.net.rpc.impl.RpcConnection.parseMessages 
>> (RpcConnection.java:319)
>>       at
>> com.google.net.rpc.impl.RpcConnection.dataReceived 
>> (RpcConnection.java:290)
>>       at
>> com.google.net.async.Connection.handleReadEvent(Connection.java:474)
>>       at
>> com.google.net.async.EventDispatcher.processNetworkEvents 
>> (EventDispatcher.java:831)
>>       at
>> com.google.net.async.EventDispatcher.internalLoop 
>> (EventDispatcher.java:207)
>>       at
>> com.google.net.async.EventDispatcher.loop(EventDispatcher.java:103)
>>       at
>> com.google.net.rpc.RpcService.runUntilServerShutdown 
>> (RpcService.java:251)
>>       at
>> com.google.apphosting.runtime.JavaRuntime$RpcRunnable.run 
>> (JavaRuntime.java:413)
>>       at java.lang.Thread.run(Unknown Source)
>> Caused by: java.lang.RuntimeException: Error invoking service builder
>> method
>> org.apache.tapestry5.internal.services.InternalModule.buildPagePool 
>> (PagePoolImpl,
>> InvalidationEventHub, InvalidationEventHub, MBeanSupport) (at
>> InternalModule.java:181) (for service 'PagePool'): Error building  
>> service
>> proxy for service 'MBeanSupport' (at
>> org.apache.tapestry5. 
>> internal.services.InternalModule.buildMBeanSupport 
>> (RegistryShutdownHub,
>> MBeanSupportImpl) (at InternalModule.java:216)): Unable to lookup  
>> class
>> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName:
>> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName
 

>>       at
>> org.apache.tapestry5. 
>> ioc.internal.ServiceBuilderMethodInvoker.createObject 
>> (ServiceBuilderMethodInvoker.java:76)
>>       at
>> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator 
>> $1.invoke(OperationTrackingObjectCreator.java:45)
>>       at
>> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke 
>> (OperationTrackerImpl.java:68)
>>       at
>> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke 
>> (PerThreadOperationTracker.java:68)
>>       at org.apache.tapestry5.ioc.intern
>>
>>
>>
>> Dne 27.5.2010 17:59, Howard Lewis Ship napsal(a):
>>
>>> This is very neat stuff.
>>>
>>> A quibble:  I think the ObjectName should be
>>> "org.apache.tapestry5:service=PagePool"  (i.e., reflecting that
>>> PagePool here is the service id, not the service interface).
>>>
>>>
>>>
>>> On Wed, May 26, 2010 at 12:05 AM,<dr...@apache.org>  wrote:
>>>
>>>
>>>> Author: drobiazko
>>>> Date: Wed May 26 07:05:38 2010
>>>> New Revision: 948348
>>>>
>>>> URL: http://svn.apache.org/viewvc?rev=948348&view=rev
>>>> Log:
>>>> TAP5-978: Provide remote management of the page pool settings
>>>>
>>>> Added:
>>>>
>>>> tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/ 
>>>> tapestry5/internal/services/MBeanSupport.java
>>>>  (with props)
>>>>
>>>> tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/ 
>>>> tapestry5/internal/services/MBeanSupportImpl.java
>>>>  (with props)
>>>>
>>>> tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/ 
>>>> tapestry5/internal/services/PagePoolImplMBean.java
>>>>  (with props)
>>>>
>>>> tapestry/tapestry5/trunk/tapestry-core/src/test/app1/ 
>>>> RemotePoolManagement.tml
>>>>
>>>> tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/ 
>>>> tapestry5/integration/app1/pages/RemotePoolManagement.java
>>>>  (with props)
>>>> Modified:
>>>>
>>>> tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/ 
>>>> tapestry5/internal/services/InternalModule.java
>>>>
>>>> tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/ 
>>>> tapestry5/internal/services/PagePoolImpl.java
>>>>
>>>> tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/ 
>>>> tapestry5/integration/app1/CoreBehaviorsTests.java
>>>>
>>>> tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/ 
>>>> tapestry5/integration/app1/pages/Index.java
>>>>
>>>>
>>>
>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
>> For additional commands, e-mail: dev-help@tapestry.apache.org
>>
>>
>
>
> -- 
> Best regards,
>
> Igor Drobiazko
> http://tapestry5.de/blog

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
For additional commands, e-mail: dev-help@tapestry.apache.org


Re: 5.2.0-SNAPSHOT - javax.management issues in GAE

Posted by Igor Drobiazko <ig...@gmail.com>.
Looks like javax.management is not in the white list and can not be loaded.

http://code.google.com/intl/en/appengine/docs/java/jrewhitelist.html

Unfortunately I never deployed T5 into Google App Engine and have no idea if
there is a workaround for it.

On Sat, Jun 5, 2010 at 3:59 PM, Robert Hajek <ro...@b2bcentrum.cz>wrote:

> Hi All,
>
> I have problem with deploying simple T5.2 web application to GAE.
>
> Caused by: java.lang.RuntimeException:
> Error invoking service builder method
> org.apache.tapestry5.internal.services.InternalModule.buildPagePool
> (PagePoolImpl, InvalidationEventHub, InvalidationEventHub, MBeanSupport)
> (at InternalModule.java:181) (for service 'PagePool'): Error building
> service proxy for service 'MBeanSupport'
> (at
> org.apache.tapestry5.internal.services.InternalModule.buildMBeanSupport(RegistryShutdownHub,
> MBeanSupportImpl)
> (at InternalModule.java:216)): Unable to lookup class
> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName:
>
>  com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName
>
> This problem probably starts after fixing issue "TAP5-978: Provide remote
> management of the page pool settings."
>
> Is there some workaround how to disable javax.management stuff in T5 or fix
> this issue? Will be GAE officially supported in beta of final release of
> T5.2 ?
>
> Thanks,
>
> Rob
>
> full stacktrace:
>
> Uncaught exception from servlet
> java.lang.RuntimeException: Exception constructing service 'PagePool':
> Error invoking service builder method
> org.apache.tapestry5.internal.services.InternalModule.buildPagePool(PagePoolImpl,
> InvalidationEventHub, InvalidationEventHub, MBeanSupport) (at
> InternalModule.java:181) (for service 'PagePool'): Error building service
> proxy for service 'MBeanSupport' (at
> org.apache.tapestry5.internal.services.InternalModule.buildMBeanSupport(RegistryShutdownHub,
> MBeanSupportImpl) (at InternalModule.java:216)): Unable to lookup class
> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName:
> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName
>        at
> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.obtainObjectFromCreator(JustInTimeObjectCreator.java:78)
>        at
> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.createObject(JustInTimeObjectCreator.java:57)
>        at $PagePool_129082cfd52.delegate($PagePool_129082cfd52.java)
>        at $PagePool_129082cfd52.checkout($PagePool_129082cfd52.java)
>        at
> org.apache.tapestry5.internal.services.RequestPageCacheImpl.get(RequestPageCacheImpl.java:51)
>        at
> $RequestPageCache_129082cfd51.get($RequestPageCache_129082cfd51.java)
>        at
> $RequestPageCache_129082cfd4a.get($RequestPageCache_129082cfd4a.java)
>        at
> org.apache.tapestry5.internal.services.DefaultRequestExceptionHandler.handleRequestException(DefaultRequestExceptionHandler.java:69)
>        at
> $RequestExceptionHandler_129082cfd28.handleRequestException($RequestExceptionHandler_129082cfd28.java)
>        at
> org.apache.tapestry5.internal.services.RequestErrorFilter.service(RequestErrorFilter.java:42)
>        at
> $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
>        at
> org.apache.tapestry5.services.TapestryModule$4.service(TapestryModule.java:977)
>        at
> $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
>        at
> org.apache.tapestry5.services.TapestryModule$3.service(TapestryModule.java:967)
>        at
> $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
>        at
> org.apache.tapestry5.internal.services.StaticFilesFilter.service(StaticFilesFilter.java:90)
>        at
> $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
>        at
> org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:90)
>        at
> org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:80)
>        at
> org.apache.tapestry5.ioc.internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:85)
>        at
> org.apache.tapestry5.internal.services.CheckForUpdatesFilter.service(CheckForUpdatesFilter.java:103)
>        at
> $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
>        at
> $RequestHandler_129082cfd20.service($RequestHandler_129082cfd20.java)
>        at
> org.apache.tapestry5.services.TapestryModule$HttpServletRequestHandlerTerminator.service(TapestryModule.java:271)
>        at
> org.apache.tapestry5.internal.gzip.GZipFilter.service(GZipFilter.java:53)
>        at
> $HttpServletRequestHandler_129082cfd22.service($HttpServletRequestHandler_129082cfd22.java)
>        at
> org.apache.tapestry5.internal.services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62)
>        at
> $HttpServletRequestFilter_129082cfd1f.service($HttpServletRequestFilter_129082cfd1f.java)
>        at
> $HttpServletRequestHandler_129082cfd22.service($HttpServletRequestHandler_129082cfd22.java)
>        at
> org.apache.tapestry5.services.TapestryModule$2.service(TapestryModule.java:921)
>        at
> $HttpServletRequestHandler_129082cfd22.service($HttpServletRequestHandler_129082cfd22.java)
>        at
> $HttpServletRequestHandler_129082cfd1d.service($HttpServletRequestHandler_129082cfd1d.java)
>        at
> org.apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java:147)
>        at
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>        at
> com.google.apphosting.utils.servlet.ParseBlobUploadFilter.doFilter(ParseBlobUploadFilter.java:97)
>        at
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>        at
> com.google.apphosting.runtime.jetty.SaveSessionFilter.doFilter(SaveSessionFilter.java:35)
>        at
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>        at
> com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43)
>        at
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>        at
> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)
>        at
> org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
>        at
> org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
>        at
> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
>        at
> org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
>        at
> com.google.apphosting.runtime.jetty.AppVersionHandlerMap.handle(AppVersionHandlerMap.java:238)
>        at
> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
>        at org.mortbay.jetty.Server.handle(Server.java:326)
>        at
> org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
>        at
> org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:923)
>        at
> com.google.apphosting.runtime.jetty.RpcRequestParser.parseAvailable(RpcRequestParser.java:76)
>        at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
>        at
> com.google.apphosting.runtime.jetty.JettyServletEngineAdapter.serviceRequest(JettyServletEngineAdapter.java:135)
>        at
> com.google.apphosting.runtime.JavaRuntime.handleRequest(JavaRuntime.java:250)
>        at
> com.google.apphosting.base.RuntimePb$EvaluationRuntime$6.handleBlockingRequest(RuntimePb.java:5838)
>        at
> com.google.apphosting.base.RuntimePb$EvaluationRuntime$6.handleBlockingRequest(RuntimePb.java:5836)
>        at
> com.google.net.rpc.impl.BlockingApplicationHandler.handleRequest(BlockingApplicationHandler.java:24)
>        at
> com.google.net.rpc.impl.RpcUtil.runRpcInApplication(RpcUtil.java:398)
>        at com.google.net.rpc.impl.Server$2.run(Server.java:852)
>        at
> com.google.tracing.LocalTraceSpanRunnable.run(LocalTraceSpanRunnable.java:56)
>        at
> com.google.tracing.LocalTraceSpanBuilder.internalContinueSpan(LocalTraceSpanBuilder.java:576)
>        at com.google.net.rpc.impl.Server.startRpc(Server.java:807)
>        at com.google.net.rpc.impl.Server.processRequest(Server.java:369)
>        at
> com.google.net.rpc.impl.ServerConnection.messageReceived(ServerConnection.java:442)
>        at
> com.google.net.rpc.impl.RpcConnection.parseMessages(RpcConnection.java:319)
>        at
> com.google.net.rpc.impl.RpcConnection.dataReceived(RpcConnection.java:290)
>        at
> com.google.net.async.Connection.handleReadEvent(Connection.java:474)
>        at
> com.google.net.async.EventDispatcher.processNetworkEvents(EventDispatcher.java:831)
>        at
> com.google.net.async.EventDispatcher.internalLoop(EventDispatcher.java:207)
>        at
> com.google.net.async.EventDispatcher.loop(EventDispatcher.java:103)
>        at
> com.google.net.rpc.RpcService.runUntilServerShutdown(RpcService.java:251)
>        at
> com.google.apphosting.runtime.JavaRuntime$RpcRunnable.run(JavaRuntime.java:413)
>        at java.lang.Thread.run(Unknown Source)
> Caused by: java.lang.RuntimeException: Error invoking service builder
> method
> org.apache.tapestry5.internal.services.InternalModule.buildPagePool(PagePoolImpl,
> InvalidationEventHub, InvalidationEventHub, MBeanSupport) (at
> InternalModule.java:181) (for service 'PagePool'): Error building service
> proxy for service 'MBeanSupport' (at
> org.apache.tapestry5.internal.services.InternalModule.buildMBeanSupport(RegistryShutdownHub,
> MBeanSupportImpl) (at InternalModule.java:216)): Unable to lookup class
> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName:
> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName
>        at
> org.apache.tapestry5.ioc.internal.ServiceBuilderMethodInvoker.createObject(ServiceBuilderMethodInvoker.java:76)
>        at
> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator$1.invoke(OperationTrackingObjectCreator.java:45)
>        at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:68)
>        at
> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:68)
>        at org.apache.tapestry5.ioc.intern
>
>
>
> Dne 27.5.2010 17:59, Howard Lewis Ship napsal(a):
>
>> This is very neat stuff.
>>
>> A quibble:  I think the ObjectName should be
>> "org.apache.tapestry5:service=PagePool"  (i.e., reflecting that
>> PagePool here is the service id, not the service interface).
>>
>>
>>
>> On Wed, May 26, 2010 at 12:05 AM,<dr...@apache.org>  wrote:
>>
>>
>>> Author: drobiazko
>>> Date: Wed May 26 07:05:38 2010
>>> New Revision: 948348
>>>
>>> URL: http://svn.apache.org/viewvc?rev=948348&view=rev
>>> Log:
>>> TAP5-978: Provide remote management of the page pool settings
>>>
>>> Added:
>>>
>>>  tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupport.java
>>>   (with props)
>>>
>>>  tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupportImpl.java
>>>   (with props)
>>>
>>>  tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PagePoolImplMBean.java
>>>   (with props)
>>>
>>>  tapestry/tapestry5/trunk/tapestry-core/src/test/app1/RemotePoolManagement.tml
>>>
>>>  tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/RemotePoolManagement.java
>>>   (with props)
>>> Modified:
>>>
>>>  tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/InternalModule.java
>>>
>>>  tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PagePoolImpl.java
>>>
>>>  tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/CoreBehaviorsTests.java
>>>
>>>  tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/Index.java
>>>
>>>
>>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
> For additional commands, e-mail: dev-help@tapestry.apache.org
>
>


-- 
Best regards,

Igor Drobiazko
http://tapestry5.de/blog

Re: 5.2.0-SNAPSHOT - javax.management issues in GAE

Posted by "Thiago H. de Paula Figueiredo" <th...@gmail.com>.
On Sat, 05 Jun 2010 19:18:46 -0300, Partac Constantin <cp...@gmail.com>  
wrote:

> Hi Robert,

Hi, Partac!

> Until this issue is fixed on 5.2 you can use a dummy override for
> MBeanSupport service. For this add the following method in AppModule:

This is really clever and shows how Tapestry-IoC makes everything so  
flexible you can even override services provided by Tapestry itself. Cool!

-- 
Thiago H. de Paula Figueiredo
Independent Java, Apache Tapestry 5 and Hibernate consultant, developer,  
and instructor
Owner, Ars Machina Tecnologia da Informação Ltda.
http://www.arsmachina.com.br

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
For additional commands, e-mail: dev-help@tapestry.apache.org


Re: 5.2.0-SNAPSHOT - javax.management issues in GAE

Posted by Igor Drobiazko <ig...@gmail.com>.
I don't think it will work because Tapestry is still importing
javax.management. GAE will still fail to load classes from this package.
However I'll commit the fix probably tomorrow.

On Sun, Jun 6, 2010 at 12:18 AM, Partac Constantin <cp...@gmail.com>wrote:

> Hi Robert,
>
> Until this issue is fixed on 5.2 you can use a dummy override for
> MBeanSupport service. For this add the following method in AppModule:
>
>    public static void contributeServiceOverride( MappedConfiguration<Class,
> Object> configuration) {
>        configuration.add(MBeanSupport.class, new MBeanSupport() {
>            public void register(Object bean, ObjectName objectName) {
>            }
>
>            public void unregister(ObjectName objectName) {
>            }
>        });
>    }
>
> Regards,
> Constantin Partac
>
>
> On Sat, Jun 5, 2010 at 16:59, Robert Hajek <robert.hajek@b2bcentrum.cz
> >wrote:
>
> > Hi All,
> >
> > I have problem with deploying simple T5.2 web application to GAE.
> >
> > Caused by: java.lang.RuntimeException:
> > Error invoking service builder method
> > org.apache.tapestry5.internal.services.InternalModule.buildPagePool
> > (PagePoolImpl, InvalidationEventHub, InvalidationEventHub, MBeanSupport)
> > (at InternalModule.java:181) (for service 'PagePool'): Error building
> > service proxy for service 'MBeanSupport'
> > (at
> >
> org.apache.tapestry5.internal.services.InternalModule.buildMBeanSupport(RegistryShutdownHub,
> > MBeanSupportImpl)
> > (at InternalModule.java:216)): Unable to lookup class
> >
> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName:
> >
> >
>  com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName
> >
> > This problem probably starts after fixing issue "TAP5-978: Provide remote
> > management of the page pool settings."
> >
> > Is there some workaround how to disable javax.management stuff in T5 or
> fix
> > this issue? Will be GAE officially supported in beta of final release of
> > T5.2 ?
> >
> > Thanks,
> >
> > Rob
> >
> > full stacktrace:
> >
> > Uncaught exception from servlet
> > java.lang.RuntimeException: Exception constructing service 'PagePool':
> > Error invoking service builder method
> >
> org.apache.tapestry5.internal.services.InternalModule.buildPagePool(PagePoolImpl,
> > InvalidationEventHub, InvalidationEventHub, MBeanSupport) (at
> > InternalModule.java:181) (for service 'PagePool'): Error building service
> > proxy for service 'MBeanSupport' (at
> >
> org.apache.tapestry5.internal.services.InternalModule.buildMBeanSupport(RegistryShutdownHub,
> > MBeanSupportImpl) (at InternalModule.java:216)): Unable to lookup class
> >
> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName:
> >
> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName
> >        at
> >
> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.obtainObjectFromCreator(JustInTimeObjectCreator.java:78)
> >        at
> >
> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.createObject(JustInTimeObjectCreator.java:57)
> >        at $PagePool_129082cfd52.delegate($PagePool_129082cfd52.java)
> >        at $PagePool_129082cfd52.checkout($PagePool_129082cfd52.java)
> >        at
> >
> org.apache.tapestry5.internal.services.RequestPageCacheImpl.get(RequestPageCacheImpl.java:51)
> >        at
> > $RequestPageCache_129082cfd51.get($RequestPageCache_129082cfd51.java)
> >        at
> > $RequestPageCache_129082cfd4a.get($RequestPageCache_129082cfd4a.java)
> >        at
> >
> org.apache.tapestry5.internal.services.DefaultRequestExceptionHandler.handleRequestException(DefaultRequestExceptionHandler.java:69)
> >        at
> >
> $RequestExceptionHandler_129082cfd28.handleRequestException($RequestExceptionHandler_129082cfd28.java)
> >        at
> >
> org.apache.tapestry5.internal.services.RequestErrorFilter.service(RequestErrorFilter.java:42)
> >        at
> > $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
> >        at
> >
> org.apache.tapestry5.services.TapestryModule$4.service(TapestryModule.java:977)
> >        at
> > $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
> >        at
> >
> org.apache.tapestry5.services.TapestryModule$3.service(TapestryModule.java:967)
> >        at
> > $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
> >        at
> >
> org.apache.tapestry5.internal.services.StaticFilesFilter.service(StaticFilesFilter.java:90)
> >        at
> > $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
> >        at
> >
> org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:90)
> >        at
> >
> org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:80)
> >        at
> >
> org.apache.tapestry5.ioc.internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:85)
> >        at
> >
> org.apache.tapestry5.internal.services.CheckForUpdatesFilter.service(CheckForUpdatesFilter.java:103)
> >        at
> > $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
> >        at
> > $RequestHandler_129082cfd20.service($RequestHandler_129082cfd20.java)
> >        at
> >
> org.apache.tapestry5.services.TapestryModule$HttpServletRequestHandlerTerminator.service(TapestryModule.java:271)
> >        at
> > org.apache.tapestry5.internal.gzip.GZipFilter.service(GZipFilter.java:53)
> >        at
> >
> $HttpServletRequestHandler_129082cfd22.service($HttpServletRequestHandler_129082cfd22.java)
> >        at
> >
> org.apache.tapestry5.internal.services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62)
> >        at
> >
> $HttpServletRequestFilter_129082cfd1f.service($HttpServletRequestFilter_129082cfd1f.java)
> >        at
> >
> $HttpServletRequestHandler_129082cfd22.service($HttpServletRequestHandler_129082cfd22.java)
> >        at
> >
> org.apache.tapestry5.services.TapestryModule$2.service(TapestryModule.java:921)
> >        at
> >
> $HttpServletRequestHandler_129082cfd22.service($HttpServletRequestHandler_129082cfd22.java)
> >        at
> >
> $HttpServletRequestHandler_129082cfd1d.service($HttpServletRequestHandler_129082cfd1d.java)
> >        at
> > org.apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java:147)
> >        at
> >
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
> >        at
> >
> com.google.apphosting.utils.servlet.ParseBlobUploadFilter.doFilter(ParseBlobUploadFilter.java:97)
> >        at
> >
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
> >        at
> >
> com.google.apphosting.runtime.jetty.SaveSessionFilter.doFilter(SaveSessionFilter.java:35)
> >        at
> >
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
> >        at
> >
> com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43)
> >        at
> >
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
> >        at
> > org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)
> >        at
> >
> org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
> >        at
> > org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
> >        at
> > org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
> >        at
> > org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
> >        at
> >
> com.google.apphosting.runtime.jetty.AppVersionHandlerMap.handle(AppVersionHandlerMap.java:238)
> >        at
> > org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
> >        at org.mortbay.jetty.Server.handle(Server.java:326)
> >        at
> > org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
> >        at
> >
> org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:923)
> >        at
> >
> com.google.apphosting.runtime.jetty.RpcRequestParser.parseAvailable(RpcRequestParser.java:76)
> >        at
> org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
> >        at
> >
> com.google.apphosting.runtime.jetty.JettyServletEngineAdapter.serviceRequest(JettyServletEngineAdapter.java:135)
> >        at
> >
> com.google.apphosting.runtime.JavaRuntime.handleRequest(JavaRuntime.java:250)
> >        at
> >
> com.google.apphosting.base.RuntimePb$EvaluationRuntime$6.handleBlockingRequest(RuntimePb.java:5838)
> >        at
> >
> com.google.apphosting.base.RuntimePb$EvaluationRuntime$6.handleBlockingRequest(RuntimePb.java:5836)
> >        at
> >
> com.google.net.rpc.impl.BlockingApplicationHandler.handleRequest(BlockingApplicationHandler.java:24)
> >        at
> > com.google.net.rpc.impl.RpcUtil.runRpcInApplication(RpcUtil.java:398)
> >        at com.google.net.rpc.impl.Server$2.run(Server.java:852)
> >        at
> >
> com.google.tracing.LocalTraceSpanRunnable.run(LocalTraceSpanRunnable.java:56)
> >        at
> >
> com.google.tracing.LocalTraceSpanBuilder.internalContinueSpan(LocalTraceSpanBuilder.java:576)
> >        at com.google.net.rpc.impl.Server.startRpc(Server.java:807)
> >        at com.google.net.rpc.impl.Server.processRequest(Server.java:369)
> >        at
> >
> com.google.net.rpc.impl.ServerConnection.messageReceived(ServerConnection.java:442)
> >        at
> >
> com.google.net.rpc.impl.RpcConnection.parseMessages(RpcConnection.java:319)
> >        at
> >
> com.google.net.rpc.impl.RpcConnection.dataReceived(RpcConnection.java:290)
> >        at
> > com.google.net.async.Connection.handleReadEvent(Connection.java:474)
> >        at
> >
> com.google.net.async.EventDispatcher.processNetworkEvents(EventDispatcher.java:831)
> >        at
> >
> com.google.net.async.EventDispatcher.internalLoop(EventDispatcher.java:207)
> >        at
> > com.google.net.async.EventDispatcher.loop(EventDispatcher.java:103)
> >        at
> > com.google.net.rpc.RpcService.runUntilServerShutdown(RpcService.java:251)
> >        at
> >
> com.google.apphosting.runtime.JavaRuntime$RpcRunnable.run(JavaRuntime.java:413)
> >        at java.lang.Thread.run(Unknown Source)
> > Caused by: java.lang.RuntimeException: Error invoking service builder
> > method
> >
> org.apache.tapestry5.internal.services.InternalModule.buildPagePool(PagePoolImpl,
> > InvalidationEventHub, InvalidationEventHub, MBeanSupport) (at
> > InternalModule.java:181) (for service 'PagePool'): Error building service
> > proxy for service 'MBeanSupport' (at
> >
> org.apache.tapestry5.internal.services.InternalModule.buildMBeanSupport(RegistryShutdownHub,
> > MBeanSupportImpl) (at InternalModule.java:216)): Unable to lookup class
> >
> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName:
> >
> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName
> >        at
> >
> org.apache.tapestry5.ioc.internal.ServiceBuilderMethodInvoker.createObject(ServiceBuilderMethodInvoker.java:76)
> >        at
> >
> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator$1.invoke(OperationTrackingObjectCreator.java:45)
> >        at
> >
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:68)
> >        at
> >
> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:68)
> >        at org.apache.tapestry5.ioc.intern
> >
> >
> >
> > Dne 27.5.2010 17:59, Howard Lewis Ship napsal(a):
> >
> >> This is very neat stuff.
> >>
> >> A quibble:  I think the ObjectName should be
> >> "org.apache.tapestry5:service=PagePool"  (i.e., reflecting that
> >> PagePool here is the service id, not the service interface).
> >>
> >>
> >>
> >> On Wed, May 26, 2010 at 12:05 AM,<dr...@apache.org>  wrote:
> >>
> >>
> >>> Author: drobiazko
> >>> Date: Wed May 26 07:05:38 2010
> >>> New Revision: 948348
> >>>
> >>> URL: http://svn.apache.org/viewvc?rev=948348&view=rev
> >>> Log:
> >>> TAP5-978: Provide remote management of the page pool settings
> >>>
> >>> Added:
> >>>
> >>>
>  tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupport.java
> >>>   (with props)
> >>>
> >>>
>  tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupportImpl.java
> >>>   (with props)
> >>>
> >>>
>  tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PagePoolImplMBean.java
> >>>   (with props)
> >>>
> >>>
>  tapestry/tapestry5/trunk/tapestry-core/src/test/app1/RemotePoolManagement.tml
> >>>
> >>>
>  tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/RemotePoolManagement.java
> >>>   (with props)
> >>> Modified:
> >>>
> >>>
>  tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/InternalModule.java
> >>>
> >>>
>  tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PagePoolImpl.java
> >>>
> >>>
>  tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/CoreBehaviorsTests.java
> >>>
> >>>
>  tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/Index.java
> >>>
> >>>
> >>
> >
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
> > For additional commands, e-mail: dev-help@tapestry.apache.org
> >
> >
>



-- 
Best regards,

Igor Drobiazko
http://tapestry5.de/blog

Re: 5.2.0-SNAPSHOT - javax.management issues in GAE

Posted by Partac Constantin <cp...@gmail.com>.
Hi Robert,

Until this issue is fixed on 5.2 you can use a dummy override for
MBeanSupport service. For this add the following method in AppModule:

    public static void contributeServiceOverride( MappedConfiguration<Class,
Object> configuration) {
        configuration.add(MBeanSupport.class, new MBeanSupport() {
            public void register(Object bean, ObjectName objectName) {
            }

            public void unregister(ObjectName objectName) {
            }
        });
    }

Regards,
Constantin Partac


On Sat, Jun 5, 2010 at 16:59, Robert Hajek <ro...@b2bcentrum.cz>wrote:

> Hi All,
>
> I have problem with deploying simple T5.2 web application to GAE.
>
> Caused by: java.lang.RuntimeException:
> Error invoking service builder method
> org.apache.tapestry5.internal.services.InternalModule.buildPagePool
> (PagePoolImpl, InvalidationEventHub, InvalidationEventHub, MBeanSupport)
> (at InternalModule.java:181) (for service 'PagePool'): Error building
> service proxy for service 'MBeanSupport'
> (at
> org.apache.tapestry5.internal.services.InternalModule.buildMBeanSupport(RegistryShutdownHub,
> MBeanSupportImpl)
> (at InternalModule.java:216)): Unable to lookup class
> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName:
>
>  com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName
>
> This problem probably starts after fixing issue "TAP5-978: Provide remote
> management of the page pool settings."
>
> Is there some workaround how to disable javax.management stuff in T5 or fix
> this issue? Will be GAE officially supported in beta of final release of
> T5.2 ?
>
> Thanks,
>
> Rob
>
> full stacktrace:
>
> Uncaught exception from servlet
> java.lang.RuntimeException: Exception constructing service 'PagePool':
> Error invoking service builder method
> org.apache.tapestry5.internal.services.InternalModule.buildPagePool(PagePoolImpl,
> InvalidationEventHub, InvalidationEventHub, MBeanSupport) (at
> InternalModule.java:181) (for service 'PagePool'): Error building service
> proxy for service 'MBeanSupport' (at
> org.apache.tapestry5.internal.services.InternalModule.buildMBeanSupport(RegistryShutdownHub,
> MBeanSupportImpl) (at InternalModule.java:216)): Unable to lookup class
> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName:
> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName
>        at
> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.obtainObjectFromCreator(JustInTimeObjectCreator.java:78)
>        at
> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.createObject(JustInTimeObjectCreator.java:57)
>        at $PagePool_129082cfd52.delegate($PagePool_129082cfd52.java)
>        at $PagePool_129082cfd52.checkout($PagePool_129082cfd52.java)
>        at
> org.apache.tapestry5.internal.services.RequestPageCacheImpl.get(RequestPageCacheImpl.java:51)
>        at
> $RequestPageCache_129082cfd51.get($RequestPageCache_129082cfd51.java)
>        at
> $RequestPageCache_129082cfd4a.get($RequestPageCache_129082cfd4a.java)
>        at
> org.apache.tapestry5.internal.services.DefaultRequestExceptionHandler.handleRequestException(DefaultRequestExceptionHandler.java:69)
>        at
> $RequestExceptionHandler_129082cfd28.handleRequestException($RequestExceptionHandler_129082cfd28.java)
>        at
> org.apache.tapestry5.internal.services.RequestErrorFilter.service(RequestErrorFilter.java:42)
>        at
> $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
>        at
> org.apache.tapestry5.services.TapestryModule$4.service(TapestryModule.java:977)
>        at
> $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
>        at
> org.apache.tapestry5.services.TapestryModule$3.service(TapestryModule.java:967)
>        at
> $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
>        at
> org.apache.tapestry5.internal.services.StaticFilesFilter.service(StaticFilesFilter.java:90)
>        at
> $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
>        at
> org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:90)
>        at
> org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:80)
>        at
> org.apache.tapestry5.ioc.internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:85)
>        at
> org.apache.tapestry5.internal.services.CheckForUpdatesFilter.service(CheckForUpdatesFilter.java:103)
>        at
> $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
>        at
> $RequestHandler_129082cfd20.service($RequestHandler_129082cfd20.java)
>        at
> org.apache.tapestry5.services.TapestryModule$HttpServletRequestHandlerTerminator.service(TapestryModule.java:271)
>        at
> org.apache.tapestry5.internal.gzip.GZipFilter.service(GZipFilter.java:53)
>        at
> $HttpServletRequestHandler_129082cfd22.service($HttpServletRequestHandler_129082cfd22.java)
>        at
> org.apache.tapestry5.internal.services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62)
>        at
> $HttpServletRequestFilter_129082cfd1f.service($HttpServletRequestFilter_129082cfd1f.java)
>        at
> $HttpServletRequestHandler_129082cfd22.service($HttpServletRequestHandler_129082cfd22.java)
>        at
> org.apache.tapestry5.services.TapestryModule$2.service(TapestryModule.java:921)
>        at
> $HttpServletRequestHandler_129082cfd22.service($HttpServletRequestHandler_129082cfd22.java)
>        at
> $HttpServletRequestHandler_129082cfd1d.service($HttpServletRequestHandler_129082cfd1d.java)
>        at
> org.apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java:147)
>        at
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>        at
> com.google.apphosting.utils.servlet.ParseBlobUploadFilter.doFilter(ParseBlobUploadFilter.java:97)
>        at
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>        at
> com.google.apphosting.runtime.jetty.SaveSessionFilter.doFilter(SaveSessionFilter.java:35)
>        at
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>        at
> com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43)
>        at
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>        at
> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)
>        at
> org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
>        at
> org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
>        at
> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
>        at
> org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
>        at
> com.google.apphosting.runtime.jetty.AppVersionHandlerMap.handle(AppVersionHandlerMap.java:238)
>        at
> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
>        at org.mortbay.jetty.Server.handle(Server.java:326)
>        at
> org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
>        at
> org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:923)
>        at
> com.google.apphosting.runtime.jetty.RpcRequestParser.parseAvailable(RpcRequestParser.java:76)
>        at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
>        at
> com.google.apphosting.runtime.jetty.JettyServletEngineAdapter.serviceRequest(JettyServletEngineAdapter.java:135)
>        at
> com.google.apphosting.runtime.JavaRuntime.handleRequest(JavaRuntime.java:250)
>        at
> com.google.apphosting.base.RuntimePb$EvaluationRuntime$6.handleBlockingRequest(RuntimePb.java:5838)
>        at
> com.google.apphosting.base.RuntimePb$EvaluationRuntime$6.handleBlockingRequest(RuntimePb.java:5836)
>        at
> com.google.net.rpc.impl.BlockingApplicationHandler.handleRequest(BlockingApplicationHandler.java:24)
>        at
> com.google.net.rpc.impl.RpcUtil.runRpcInApplication(RpcUtil.java:398)
>        at com.google.net.rpc.impl.Server$2.run(Server.java:852)
>        at
> com.google.tracing.LocalTraceSpanRunnable.run(LocalTraceSpanRunnable.java:56)
>        at
> com.google.tracing.LocalTraceSpanBuilder.internalContinueSpan(LocalTraceSpanBuilder.java:576)
>        at com.google.net.rpc.impl.Server.startRpc(Server.java:807)
>        at com.google.net.rpc.impl.Server.processRequest(Server.java:369)
>        at
> com.google.net.rpc.impl.ServerConnection.messageReceived(ServerConnection.java:442)
>        at
> com.google.net.rpc.impl.RpcConnection.parseMessages(RpcConnection.java:319)
>        at
> com.google.net.rpc.impl.RpcConnection.dataReceived(RpcConnection.java:290)
>        at
> com.google.net.async.Connection.handleReadEvent(Connection.java:474)
>        at
> com.google.net.async.EventDispatcher.processNetworkEvents(EventDispatcher.java:831)
>        at
> com.google.net.async.EventDispatcher.internalLoop(EventDispatcher.java:207)
>        at
> com.google.net.async.EventDispatcher.loop(EventDispatcher.java:103)
>        at
> com.google.net.rpc.RpcService.runUntilServerShutdown(RpcService.java:251)
>        at
> com.google.apphosting.runtime.JavaRuntime$RpcRunnable.run(JavaRuntime.java:413)
>        at java.lang.Thread.run(Unknown Source)
> Caused by: java.lang.RuntimeException: Error invoking service builder
> method
> org.apache.tapestry5.internal.services.InternalModule.buildPagePool(PagePoolImpl,
> InvalidationEventHub, InvalidationEventHub, MBeanSupport) (at
> InternalModule.java:181) (for service 'PagePool'): Error building service
> proxy for service 'MBeanSupport' (at
> org.apache.tapestry5.internal.services.InternalModule.buildMBeanSupport(RegistryShutdownHub,
> MBeanSupportImpl) (at InternalModule.java:216)): Unable to lookup class
> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName:
> com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName
>        at
> org.apache.tapestry5.ioc.internal.ServiceBuilderMethodInvoker.createObject(ServiceBuilderMethodInvoker.java:76)
>        at
> org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator$1.invoke(OperationTrackingObjectCreator.java:45)
>        at
> org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:68)
>        at
> org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:68)
>        at org.apache.tapestry5.ioc.intern
>
>
>
> Dne 27.5.2010 17:59, Howard Lewis Ship napsal(a):
>
>> This is very neat stuff.
>>
>> A quibble:  I think the ObjectName should be
>> "org.apache.tapestry5:service=PagePool"  (i.e., reflecting that
>> PagePool here is the service id, not the service interface).
>>
>>
>>
>> On Wed, May 26, 2010 at 12:05 AM,<dr...@apache.org>  wrote:
>>
>>
>>> Author: drobiazko
>>> Date: Wed May 26 07:05:38 2010
>>> New Revision: 948348
>>>
>>> URL: http://svn.apache.org/viewvc?rev=948348&view=rev
>>> Log:
>>> TAP5-978: Provide remote management of the page pool settings
>>>
>>> Added:
>>>
>>>  tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupport.java
>>>   (with props)
>>>
>>>  tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupportImpl.java
>>>   (with props)
>>>
>>>  tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PagePoolImplMBean.java
>>>   (with props)
>>>
>>>  tapestry/tapestry5/trunk/tapestry-core/src/test/app1/RemotePoolManagement.tml
>>>
>>>  tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/RemotePoolManagement.java
>>>   (with props)
>>> Modified:
>>>
>>>  tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/InternalModule.java
>>>
>>>  tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PagePoolImpl.java
>>>
>>>  tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/CoreBehaviorsTests.java
>>>
>>>  tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/Index.java
>>>
>>>
>>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
> For additional commands, e-mail: dev-help@tapestry.apache.org
>
>

5.2.0-SNAPSHOT - javax.management issues in GAE

Posted by Robert Hajek <ro...@b2bcentrum.cz>.
Hi All,

I have problem with deploying simple T5.2 web application to GAE.

Caused by: java.lang.RuntimeException:
Error invoking service builder method org.apache.tapestry5.internal.services.InternalModule.buildPagePool
(PagePoolImpl, InvalidationEventHub, InvalidationEventHub, MBeanSupport)
(at InternalModule.java:181) (for service 'PagePool'): Error building service proxy for service 'MBeanSupport'
(at org.apache.tapestry5.internal.services.InternalModule.buildMBeanSupport(RegistryShutdownHub, MBeanSupportImpl)
(at InternalModule.java:216)): Unable to lookup class com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName:
  com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName

This problem probably starts after fixing issue "TAP5-978: Provide remote management of the page pool settings."

Is there some workaround how to disable javax.management stuff in T5 or fix this issue? Will be GAE officially supported in beta of final release of T5.2 ?

Thanks,

Rob

full stacktrace:

Uncaught exception from servlet
java.lang.RuntimeException: Exception constructing service 'PagePool': Error invoking service builder method org.apache.tapestry5.internal.services.InternalModule.buildPagePool(PagePoolImpl, InvalidationEventHub, InvalidationEventHub, MBeanSupport) (at InternalModule.java:181) (for service 'PagePool'): Error building service proxy for service 'MBeanSupport' (at org.apache.tapestry5.internal.services.InternalModule.buildMBeanSupport(RegistryShutdownHub, MBeanSupportImpl) (at InternalModule.java:216)): Unable to lookup class com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName: com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName
	at org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.obtainObjectFromCreator(JustInTimeObjectCreator.java:78)
	at org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.createObject(JustInTimeObjectCreator.java:57)
	at $PagePool_129082cfd52.delegate($PagePool_129082cfd52.java)
	at $PagePool_129082cfd52.checkout($PagePool_129082cfd52.java)
	at org.apache.tapestry5.internal.services.RequestPageCacheImpl.get(RequestPageCacheImpl.java:51)
	at $RequestPageCache_129082cfd51.get($RequestPageCache_129082cfd51.java)
	at $RequestPageCache_129082cfd4a.get($RequestPageCache_129082cfd4a.java)
	at org.apache.tapestry5.internal.services.DefaultRequestExceptionHandler.handleRequestException(DefaultRequestExceptionHandler.java:69)
	at $RequestExceptionHandler_129082cfd28.handleRequestException($RequestExceptionHandler_129082cfd28.java)
	at org.apache.tapestry5.internal.services.RequestErrorFilter.service(RequestErrorFilter.java:42)
	at $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
	at org.apache.tapestry5.services.TapestryModule$4.service(TapestryModule.java:977)
	at $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
	at org.apache.tapestry5.services.TapestryModule$3.service(TapestryModule.java:967)
	at $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
	at org.apache.tapestry5.internal.services.StaticFilesFilter.service(StaticFilesFilter.java:90)
	at $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
	at org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:90)
	at org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:80)
	at org.apache.tapestry5.ioc.internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:85)
	at org.apache.tapestry5.internal.services.CheckForUpdatesFilter.service(CheckForUpdatesFilter.java:103)
	at $RequestHandler_129082cfd2b.service($RequestHandler_129082cfd2b.java)
	at $RequestHandler_129082cfd20.service($RequestHandler_129082cfd20.java)
	at org.apache.tapestry5.services.TapestryModule$HttpServletRequestHandlerTerminator.service(TapestryModule.java:271)
	at org.apache.tapestry5.internal.gzip.GZipFilter.service(GZipFilter.java:53)
	at $HttpServletRequestHandler_129082cfd22.service($HttpServletRequestHandler_129082cfd22.java)
	at org.apache.tapestry5.internal.services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62)
	at $HttpServletRequestFilter_129082cfd1f.service($HttpServletRequestFilter_129082cfd1f.java)
	at $HttpServletRequestHandler_129082cfd22.service($HttpServletRequestHandler_129082cfd22.java)
	at org.apache.tapestry5.services.TapestryModule$2.service(TapestryModule.java:921)
	at $HttpServletRequestHandler_129082cfd22.service($HttpServletRequestHandler_129082cfd22.java)
	at $HttpServletRequestHandler_129082cfd1d.service($HttpServletRequestHandler_129082cfd1d.java)
	at org.apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java:147)
	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
	at com.google.apphosting.utils.servlet.ParseBlobUploadFilter.doFilter(ParseBlobUploadFilter.java:97)
	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
	at com.google.apphosting.runtime.jetty.SaveSessionFilter.doFilter(SaveSessionFilter.java:35)
	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
	at com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43)
	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
	at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)
	at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
	at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
	at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
	at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
	at com.google.apphosting.runtime.jetty.AppVersionHandlerMap.handle(AppVersionHandlerMap.java:238)
	at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
	at org.mortbay.jetty.Server.handle(Server.java:326)
	at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
	at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:923)
	at com.google.apphosting.runtime.jetty.RpcRequestParser.parseAvailable(RpcRequestParser.java:76)
	at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
	at com.google.apphosting.runtime.jetty.JettyServletEngineAdapter.serviceRequest(JettyServletEngineAdapter.java:135)
	at com.google.apphosting.runtime.JavaRuntime.handleRequest(JavaRuntime.java:250)
	at com.google.apphosting.base.RuntimePb$EvaluationRuntime$6.handleBlockingRequest(RuntimePb.java:5838)
	at com.google.apphosting.base.RuntimePb$EvaluationRuntime$6.handleBlockingRequest(RuntimePb.java:5836)
	at com.google.net.rpc.impl.BlockingApplicationHandler.handleRequest(BlockingApplicationHandler.java:24)
	at com.google.net.rpc.impl.RpcUtil.runRpcInApplication(RpcUtil.java:398)
	at com.google.net.rpc.impl.Server$2.run(Server.java:852)
	at com.google.tracing.LocalTraceSpanRunnable.run(LocalTraceSpanRunnable.java:56)
	at com.google.tracing.LocalTraceSpanBuilder.internalContinueSpan(LocalTraceSpanBuilder.java:576)
	at com.google.net.rpc.impl.Server.startRpc(Server.java:807)
	at com.google.net.rpc.impl.Server.processRequest(Server.java:369)
	at com.google.net.rpc.impl.ServerConnection.messageReceived(ServerConnection.java:442)
	at com.google.net.rpc.impl.RpcConnection.parseMessages(RpcConnection.java:319)
	at com.google.net.rpc.impl.RpcConnection.dataReceived(RpcConnection.java:290)
	at com.google.net.async.Connection.handleReadEvent(Connection.java:474)
	at com.google.net.async.EventDispatcher.processNetworkEvents(EventDispatcher.java:831)
	at com.google.net.async.EventDispatcher.internalLoop(EventDispatcher.java:207)
	at com.google.net.async.EventDispatcher.loop(EventDispatcher.java:103)
	at com.google.net.rpc.RpcService.runUntilServerShutdown(RpcService.java:251)
	at com.google.apphosting.runtime.JavaRuntime$RpcRunnable.run(JavaRuntime.java:413)
	at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.RuntimeException: Error invoking service builder method org.apache.tapestry5.internal.services.InternalModule.buildPagePool(PagePoolImpl, InvalidationEventHub, InvalidationEventHub, MBeanSupport) (at InternalModule.java:181) (for service 'PagePool'): Error building service proxy for service 'MBeanSupport' (at org.apache.tapestry5.internal.services.InternalModule.buildMBeanSupport(RegistryShutdownHub, MBeanSupportImpl) (at InternalModule.java:216)): Unable to lookup class com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName: com.google.apphosting.runtime.security.shared.stub.javax.management.ObjectName
	at org.apache.tapestry5.ioc.internal.ServiceBuilderMethodInvoker.createObject(ServiceBuilderMethodInvoker.java:76)
	at org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator$1.invoke(OperationTrackingObjectCreator.java:45)
	at org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:68)
	at org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:68)
	at org.apache.tapestry5.ioc.intern



Dne 27.5.2010 17:59, Howard Lewis Ship napsal(a):
> This is very neat stuff.
>
> A quibble:  I think the ObjectName should be
> "org.apache.tapestry5:service=PagePool"  (i.e., reflecting that
> PagePool here is the service id, not the service interface).
>
>
>
> On Wed, May 26, 2010 at 12:05 AM,<dr...@apache.org>  wrote:
>    
>> Author: drobiazko
>> Date: Wed May 26 07:05:38 2010
>> New Revision: 948348
>>
>> URL: http://svn.apache.org/viewvc?rev=948348&view=rev
>> Log:
>> TAP5-978: Provide remote management of the page pool settings
>>
>> Added:
>>     tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupport.java   (with props)
>>     tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupportImpl.java   (with props)
>>     tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PagePoolImplMBean.java   (with props)
>>     tapestry/tapestry5/trunk/tapestry-core/src/test/app1/RemotePoolManagement.tml
>>     tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/RemotePoolManagement.java   (with props)
>> Modified:
>>     tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/InternalModule.java
>>     tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PagePoolImpl.java
>>     tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/CoreBehaviorsTests.java
>>     tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/Index.java
>>      


  


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
For additional commands, e-mail: dev-help@tapestry.apache.org


Re: svn commit: r948348 - in /tapestry/tapestry5/trunk/tapestry-core/src: main/java/org/apache/tapestry5/internal/services/ test/app1/ test/java/org/apache/tapestry5/integration/app1/ test/java/org/apache/tapestry5/integration/app1/pages/

Posted by Howard Lewis Ship <hl...@gmail.com>.
This is very neat stuff.

A quibble:  I think the ObjectName should be
"org.apache.tapestry5:service=PagePool"  (i.e., reflecting that
PagePool here is the service id, not the service interface).



On Wed, May 26, 2010 at 12:05 AM,  <dr...@apache.org> wrote:
> Author: drobiazko
> Date: Wed May 26 07:05:38 2010
> New Revision: 948348
>
> URL: http://svn.apache.org/viewvc?rev=948348&view=rev
> Log:
> TAP5-978: Provide remote management of the page pool settings
>
> Added:
>    tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupport.java   (with props)
>    tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupportImpl.java   (with props)
>    tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PagePoolImplMBean.java   (with props)
>    tapestry/tapestry5/trunk/tapestry-core/src/test/app1/RemotePoolManagement.tml
>    tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/RemotePoolManagement.java   (with props)
> Modified:
>    tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/InternalModule.java
>    tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PagePoolImpl.java
>    tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/CoreBehaviorsTests.java
>    tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/Index.java
>
> Modified: tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/InternalModule.java
> URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/InternalModule.java?rev=948348&r1=948347&r2=948348&view=diff
> ==============================================================================
> --- tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/InternalModule.java (original)
> +++ tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/InternalModule.java Wed May 26 07:05:38 2010
> @@ -14,6 +14,7 @@
>
>  package org.apache.tapestry5.internal.services;
>
> +import javax.management.ObjectName;
>  import javax.servlet.http.Cookie;
>
>  import org.apache.tapestry5.SymbolConstants;
> @@ -36,6 +37,7 @@ import org.apache.tapestry5.ioc.services
>  import org.apache.tapestry5.ioc.services.ClasspathURLConverter;
>  import org.apache.tapestry5.ioc.services.PerthreadManager;
>  import org.apache.tapestry5.ioc.services.PropertyShadowBuilder;
> +import org.apache.tapestry5.ioc.services.RegistryShutdownHub;
>  import org.apache.tapestry5.services.*;
>  import org.apache.tapestry5.services.templates.ComponentTemplateLocator;
>  import org.slf4j.Logger;
> @@ -170,7 +172,9 @@ public class InternalModule
>     InvalidationEventHub templatesHub,
>
>     @ComponentMessages
> -    InvalidationEventHub messagesHub)
> +    InvalidationEventHub messagesHub,
> +
> +    MBeanSupport managedBeanSupport)
>     {
>         // This covers invalidations due to changes to classes
>
> @@ -188,6 +192,29 @@ public class InternalModule
>
>         updateListenerHub.addUpdateListener(service);
>
> +        final ObjectName objectName = buildObjectName("org.apache.tapestry5:type=PagePool");
> +
> +        managedBeanSupport.register(service, objectName);
> +
> +        return service;
> +    }
> +
> +    private ObjectName buildObjectName(String name)
> +    {
> +        try
> +        {
> +            return new ObjectName(name);
> +        }
> +        catch (Exception e)
> +        {
> +            throw new RuntimeException(e);
> +        }
> +    }
> +
> +    public MBeanSupport buildMBeanSupport(RegistryShutdownHub shutdownHub, @Autobuild MBeanSupportImpl service)
> +    {
> +        shutdownHub.addRegistryShutdownListener(service);
> +
>         return service;
>     }
>
>
> Added: tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupport.java
> URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupport.java?rev=948348&view=auto
> ==============================================================================
> --- tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupport.java (added)
> +++ tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupport.java Wed May 26 07:05:38 2010
> @@ -0,0 +1,42 @@
> +// Copyright 20010 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.apache.tapestry5.internal.services;
> +
> +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.
> + *
> + * @since 5.2.0
> + */
> +public interface MBeanSupport
> +{
> +
> +    /**
> +     * Registers the specified MBean with the server.
> +     *
> +     * @param bean the MBean instance
> +     * @param objectName the name for the MBean
> +     */
> +    void register(final Object bean, final ObjectName objectName);
> +
> +    /**
> +     * Unregisters the specified MBean from the server.
> +     *
> +     * @param objectName the name for the MBean
> +     */
> +    void unregister(final ObjectName objectName);
> +
> +}
> \ No newline at end of file
>
> Propchange: tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupport.java
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange: tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupport.java
> ------------------------------------------------------------------------------
>    svn:mime-type = text/plain
>
> Added: tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupportImpl.java
> URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupportImpl.java?rev=948348&view=auto
> ==============================================================================
> --- tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupportImpl.java (added)
> +++ tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupportImpl.java Wed May 26 07:05:38 2010
> @@ -0,0 +1,101 @@
> +// Copyright 20010 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.apache.tapestry5.internal.services;
> +
> +import static java.lang.String.format;
> +
> +import java.lang.management.ManagementFactory;
> +import java.util.List;
> +import java.util.Set;
> +
> +import javax.management.MBeanServer;
> +import javax.management.MBeanServerFactory;
> +import javax.management.ObjectInstance;
> +import javax.management.ObjectName;
> +
> +import org.apache.tapestry5.ioc.internal.util.CollectionFactory;
> +import org.apache.tapestry5.ioc.services.RegistryShutdownListener;
> +import org.slf4j.Logger;
> +
> +public class MBeanSupportImpl implements MBeanSupport, RegistryShutdownListener
> +{
> +    private Logger logger;
> +
> +    private MBeanServer server;
> +
> +    private final Set<ObjectName> registeredBeans = CollectionFactory.newSet();
> +
> +    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())
> +        {
> +            this.server = servers.get(0);
> +        }
> +
> +        if (this.server == null)
> +        {
> +            this.server = ManagementFactory.getPlatformMBeanServer();
> +        }
> +    }
> +
> +    public void register(final Object object, final ObjectName objectName)
> +    {
> +        try
> +        {
> +            this.server.registerMBean(object, objectName);
> +
> +            this.registeredBeans.add(objectName);
> +
> +            this.logger.info(format("Registered MBean '%s' with server", objectName));
> +        }
> +        catch (final Exception e)
> +        {
> +            this.logger.error(format("Failed to register MBean '%s' with server", objectName), e);
> +        }
> +    }
> +
> +    public void unregister(final ObjectName objectName)
> +    {
> +        if (this.server.isRegistered(objectName))
> +        {
> +            try
> +            {
> +                this.server.unregisterMBean(objectName);
> +
> +                this.logger.info(format("Unegistered MBean '%s' from server", objectName));
> +            }
> +            catch (final Exception e)
> +            {
> +                this.logger.error(String.format("Failed to unregister MBean '%s' from server", objectName), e);
> +            }
> +        }
> +    }
> +
> +    public void registryDidShutdown()
> +    {
> +        for (final ObjectName name : this.registeredBeans)
> +        {
> +            unregister(name);
> +        }
> +
> +        this.registeredBeans.clear();
> +
> +    }
> +}
>
> Propchange: tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupportImpl.java
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange: tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/MBeanSupportImpl.java
> ------------------------------------------------------------------------------
>    svn:mime-type = text/plain
>
> Modified: tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PagePoolImpl.java
> URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PagePoolImpl.java?rev=948348&r1=948347&r2=948348&view=diff
> ==============================================================================
> --- tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PagePoolImpl.java (original)
> +++ tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PagePoolImpl.java Wed May 26 07:05:38 2010
> @@ -14,6 +14,7 @@
>
>  package org.apache.tapestry5.internal.services;
>
> +import org.apache.tapestry5.SymbolConstants;
>  import org.apache.tapestry5.internal.structure.Page;
>  import org.apache.tapestry5.ioc.annotations.IntermediateType;
>  import org.apache.tapestry5.ioc.annotations.Symbol;
> @@ -47,7 +48,7 @@ import java.util.Map;
>  *
>  * @see org.apache.tapestry5.internal.services.PagePoolCache
>  */
> -public class PagePoolImpl implements PagePool, InvalidationListener, UpdateListener
> +public class PagePoolImpl implements PagePool, InvalidationListener, UpdateListener, PagePoolImplMBean
>  {
>     private final Logger logger;
>
> @@ -55,13 +56,13 @@ public class PagePoolImpl implements Pag
>
>     private final ThreadLocale threadLocale;
>
> -    private final int softLimit;
> +    private int softLimit;
>
> -    private final long softWait;
> +    private long softWait;
>
> -    private final int hardLimit;
> +    private int hardLimit;
>
> -    private final long activeWindow;
> +    private long activeWindow;
>
>     private final Map<PageLocator, PagePoolCache> pool = CollectionFactory.newMap();
>
> @@ -71,16 +72,16 @@ public class PagePoolImpl implements Pag
>
>                         ThreadLocale threadLocale,
>
> -                        @Symbol("tapestry.page-pool.soft-limit")
> +                        @Symbol(SymbolConstants.PAGE_POOL_SOFT_LIMIT)
>                         int softLimit,
>
> -                        @Symbol("tapestry.page-pool.soft-wait") @IntermediateType(TimeInterval.class)
> +                        @Symbol(SymbolConstants.PAGE_POOL_SOFT_WAIT) @IntermediateType(TimeInterval.class)
>                         long softWait,
>
> -                        @Symbol("tapestry.page-pool.hard-limit")
> +                        @Symbol(SymbolConstants.PAGE_POOL_HARD_LIMIT)
>                         int hardLimit,
>
> -                        @Symbol("tapestry.page-pool.active-window") @IntermediateType(TimeInterval.class)
> +                        @Symbol(SymbolConstants.PAGE_POOL_ACTIVE_WINDOW) @IntermediateType(TimeInterval.class)
>                         long activeWindow)
>     {
>         this.logger = logger;
> @@ -165,4 +166,53 @@ public class PagePoolImpl implements Pag
>             cache.cleanup();
>         }
>     }
> +
> +    public int getSoftLimit()
> +    {
> +        return softLimit;
> +    }
> +
> +    public void setSoftLimit(int softLimit)
> +    {
> +        this.softLimit = softLimit;
> +
> +        objectWasInvalidated();
> +    }
> +
> +    public long getSoftWait()
> +    {
> +        return softWait;
> +    }
> +
> +    public void setSoftWait(long softWait)
> +    {
> +        this.softWait = softWait;
> +
> +        objectWasInvalidated();
> +    }
> +
> +    public int getHardLimit()
> +    {
> +        return hardLimit;
> +    }
> +
> +    public void setHardLimit(int hardLimit)
> +    {
> +        this.hardLimit = hardLimit;
> +
> +        objectWasInvalidated();
> +    }
> +
> +    public long getActiveWindow()
> +    {
> +        return activeWindow;
> +    }
> +
> +    public void setActiveWindow(long activeWindow)
> +    {
> +        this.activeWindow = activeWindow;
> +
> +        objectWasInvalidated();
> +    }
> +
>  }
>
> Added: tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PagePoolImplMBean.java
> URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PagePoolImplMBean.java?rev=948348&view=auto
> ==============================================================================
> --- tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PagePoolImplMBean.java (added)
> +++ tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PagePoolImplMBean.java Wed May 26 07:05:38 2010
> @@ -0,0 +1,78 @@
> +// 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.
> +package org.apache.tapestry5.internal.services;
> +
> +
> +
> +/**
> + * Exposes page pool settings as managed properties of a MBean.
> + *
> + * @since 5.2.0
> + */
> +public interface PagePoolImplMBean
> +{
> +    /**
> +     * Returns the soft limit.
> +     *
> +     * @see org.apache.tapestry5.SymbolConstants#PAGE_POOL_SOFT_LIMIT
> +     */
> +    int getSoftLimit();
> +
> +    /**
> +     * Sets the soft limit.
> +     */
> +    void setSoftLimit(int softLimit);
> +
> +    /**
> +     * Returns the soft wait.
> +     *
> +     * @see org.apache.tapestry5.SymbolConstants#PAGE_POOL_SOFT_WAIT
> +     */
> +    long getSoftWait();
> +
> +    /**
> +     * Sets the soft wait.
> +     */
> +    void setSoftWait(long softWait);
> +
> +    /**
> +     * Returns the hard limit.
> +     *
> +     * @see org.apache.tapestry5.SymbolConstants#PAGE_POOL_HARD_LIMIT
> +     *
> +     * @deprecated The hard limit will be removed in a later release of Tapestry, as the maximum number of instance
> +     *             is easily controlled by limiting the number of request handling threads in the servlet container.
> +     */
> +    int getHardLimit();
> +
> +    /**
> +     * Sets the hard limit.
> +     *
> +     * @deprecated The hard limit will be removed in a later release of Tapestry, as the maximum number of instance
> +     *             is easily controlled by limiting the number of request handling threads in the servlet container.
> +     */
> +    void setHardLimit(int hardLimit);
> +
> +    /**
> +     * Returns the active window.
> +     *
> +     * @see org.apache.tapestry5.SymbolConstants#PAGE_POOL_ACTIVE_WINDOW
> +     */
> +    long getActiveWindow();
> +
> +    /**
> +     * Sets the active window.
> +     */
> +    void setActiveWindow(long activeWindow);
> +}
>
> Propchange: tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PagePoolImplMBean.java
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange: tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PagePoolImplMBean.java
> ------------------------------------------------------------------------------
>    svn:mime-type = text/plain
>
> Added: tapestry/tapestry5/trunk/tapestry-core/src/test/app1/RemotePoolManagement.tml
> URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/test/app1/RemotePoolManagement.tml?rev=948348&view=auto
> ==============================================================================
> --- tapestry/tapestry5/trunk/tapestry-core/src/test/app1/RemotePoolManagement.tml (added)
> +++ tapestry/tapestry5/trunk/tapestry-core/src/test/app1/RemotePoolManagement.tml Wed May 26 07:05:38 2010
> @@ -0,0 +1,7 @@
> +<html t:type="Border" xmlns:t="http://tapestry.apache.org/schema/tapestry_5_0_0.xsd">
> +
> +  <h1>Remote Pool Management Demo</h1>
> +
> +  <p>SoftWait: ${softWait}</p>
> +
> +</html>
> \ No newline at end of file
>
> Modified: tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/CoreBehaviorsTests.java
> URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/CoreBehaviorsTests.java?rev=948348&r1=948347&r2=948348&view=diff
> ==============================================================================
> --- tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/CoreBehaviorsTests.java (original)
> +++ tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/CoreBehaviorsTests.java Wed May 26 07:05:38 2010
> @@ -1488,4 +1488,13 @@ public class CoreBehaviorsTests extends
>         assertText("id=no-override", "[pre-app]");
>         assertText("id=override", "[app]");
>     }
> +
> +    /** TAP5-978 */
> +    @Test
> +    public void remote_pool_management()
> +    {
> +        clickThru("Remote Pool Management");
> +
> +        assertTextPresent("SoftWait: 10");
> +    }
>  }
>
> Modified: tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/Index.java
> URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/Index.java?rev=948348&r1=948347&r2=948348&view=diff
> ==============================================================================
> --- tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/Index.java (original)
> +++ tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/Index.java Wed May 26 07:05:38 2010
> @@ -435,7 +435,9 @@ public class Index
>                     new Item("unavailablecomponentdemo", "Report Location of Unavailable Component",
>                             "Report Location of Unavailable Component"),
>
> -                    new Item("discardafterdemo", "@DiscardAfter Demo", "Demo using @DiscardAfter annotation")
> +                    new Item("discardafterdemo", "@DiscardAfter Demo", "Demo using @DiscardAfter annotation"),
> +
> +                    new Item("remotepoolmanagement", "Remote Pool Management", "Proves that Page Pool MBean is registered")
>
>             );
>
>
> Added: tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/RemotePoolManagement.java
> URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/RemotePoolManagement.java?rev=948348&view=auto
> ==============================================================================
> --- tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/RemotePoolManagement.java (added)
> +++ tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/RemotePoolManagement.java Wed May 26 07:05:38 2010
> @@ -0,0 +1,31 @@
> +// 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.
> +package org.apache.tapestry5.integration.app1.pages;
> +
> +import java.lang.management.ManagementFactory;
> +
> +import javax.management.MBeanServer;
> +import javax.management.ObjectName;
> +
> +public class RemotePoolManagement
> +{
> +
> +    public Object getSoftWait() throws Exception
> +    {
> +        MBeanServer server = ManagementFactory.getPlatformMBeanServer();
> +
> +        return server.getAttribute(new ObjectName("org.apache.tapestry5:type=PagePool"), "SoftWait");
> +    }
> +
> +}
>
> Propchange: tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/RemotePoolManagement.java
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange: tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/RemotePoolManagement.java
> ------------------------------------------------------------------------------
>    svn:mime-type = text/plain
>
>
>



-- 
Howard M. Lewis Ship

Creator of Apache Tapestry

The source for Tapestry training, mentoring and support. Contact me to
learn how I can get you up and productive in Tapestry fast!

(971) 678-5210
http://howardlewisship.com

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
For additional commands, e-mail: dev-help@tapestry.apache.org