From c9ac3b4f67815c4b8d4961b4df8b9c2572d2c374 Mon Sep 17 00:00:00 2001 From: Jonathan Coustick Date: Wed, 30 May 2018 16:28:44 +0100 Subject: [PATCH 1/5] PAYARA-2781 Exception thrown in logs when shutting down Payara --- .../j2ee/loader/AMXJ2EEStartupService.java | 6 ++++- .../cli/SetNetworkListenerConfiguration.java | 9 +++---- .../services/impl/DynamicConfigListener.java | 27 +------------------ 3 files changed, 10 insertions(+), 32 deletions(-) diff --git a/appserver/common/amx-javaee/src/main/java/org/glassfish/admin/amx/impl/j2ee/loader/AMXJ2EEStartupService.java b/appserver/common/amx-javaee/src/main/java/org/glassfish/admin/amx/impl/j2ee/loader/AMXJ2EEStartupService.java index 5e0fff44442..b647c22c09b 100644 --- a/appserver/common/amx-javaee/src/main/java/org/glassfish/admin/amx/impl/j2ee/loader/AMXJ2EEStartupService.java +++ b/appserver/common/amx-javaee/src/main/java/org/glassfish/admin/amx/impl/j2ee/loader/AMXJ2EEStartupService.java @@ -209,7 +209,11 @@ public ObjectName getJ2EEDomain() { } private J2EEDomain getJ2EEDomainProxy() { - return ProxyFactory.getInstance(mMBeanServer).getProxy(getJ2EEDomain(), J2EEDomain.class); + try { + return ProxyFactory.getInstance(mMBeanServer).getProxy(getJ2EEDomain(), J2EEDomain.class); + } catch (NullPointerException e){ + return null; + } } @Override diff --git a/appserver/web/admin/src/main/java/fish/payara/grizzly/config/admin/cli/SetNetworkListenerConfiguration.java b/appserver/web/admin/src/main/java/fish/payara/grizzly/config/admin/cli/SetNetworkListenerConfiguration.java index 9292710c51d..336aec0d709 100644 --- a/appserver/web/admin/src/main/java/fish/payara/grizzly/config/admin/cli/SetNetworkListenerConfiguration.java +++ b/appserver/web/admin/src/main/java/fish/payara/grizzly/config/admin/cli/SetNetworkListenerConfiguration.java @@ -41,7 +41,6 @@ import com.sun.enterprise.config.serverbeans.Config; import com.sun.enterprise.util.SystemPropertyConstants; -import fish.payara.nucleus.hazelcast.HazelcastRuntimeConfiguration; import java.beans.PropertyChangeEvent; import java.beans.PropertyVetoException; import java.text.MessageFormat; @@ -105,7 +104,8 @@ }) public class SetNetworkListenerConfiguration implements AdminCommand, EventListener { - private Logger LOGGER = LogFacade.getLogger(); + private static final Logger LOGGER = LogFacade.getLogger(); + private static final String ADMIN_LISTENER = "admin-listener"; private static final ResourceBundle rb = LogFacade.getLogger().getResourceBundle(); //Parameters @@ -158,7 +158,7 @@ public void postConstuct(){ } @Override public void event(EventListener.Event event) { - if (event.is(EventTypes.PREPARE_SHUTDOWN)) { + if (event.is(EventTypes.SERVER_SHUTDOWN)) { shutdownChange(); } } @@ -210,7 +210,7 @@ public Object run(final NetworkListener listenerProxy) throws PropertyVetoExcept }, listener); String oldPort = listener.getPort(); - if (port != null){ + if (port != null && ADMIN_LISTENER.equals(listenerName)){ UnprocessedChangeEvent unprocessed = new UnprocessedChangeEvent( new PropertyChangeEvent(this, "port", oldPort, port), listener.getName() + " port changed from " + oldPort + " to " + port); @@ -283,7 +283,6 @@ public Object run(final NetworkListener listenerProxy) throws PropertyVetoExcept } } } - ucl.getUnprocessedChangeEvents().removeAll(processed); } } diff --git a/nucleus/core/kernel/src/main/java/com/sun/enterprise/v3/services/impl/DynamicConfigListener.java b/nucleus/core/kernel/src/main/java/com/sun/enterprise/v3/services/impl/DynamicConfigListener.java index 978968680fc..f0e3f4bea99 100644 --- a/nucleus/core/kernel/src/main/java/com/sun/enterprise/v3/services/impl/DynamicConfigListener.java +++ b/nucleus/core/kernel/src/main/java/com/sun/enterprise/v3/services/impl/DynamicConfigListener.java @@ -73,7 +73,6 @@ import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeoutException; import java.util.concurrent.locks.ReentrantLock; -import org.glassfish.grizzly.config.GrizzlyListener; import org.glassfish.grizzly.config.dom.NetworkConfig; import org.glassfish.grizzly.impl.FutureImpl; import org.glassfish.grizzly.impl.SafeFutureImpl; @@ -201,31 +200,7 @@ private NotProcessed processNetworkListener(Changed. } break; case CHANGE: // If the listener is the admin listener - if (isAdminListener && false) { - final boolean dynamic = isAdminDynamic(changedProperties); - // If configuration is dynamic then make the change - if (dynamic) { - GrizzlyProxy proxy = (GrizzlyProxy) grizzlyService.lookupNetworkProxy(listener); - if (proxy != null) { - GrizzlyListener netListener = proxy.getUnderlyingListener(); - netListener.processDynamicConfigurationChange( - grizzlyService.getHabitat(), changedProperties); - return null; - } - } - // Otherwise return the unprocessed event, describing the changed values. - if (!isRedundantChange(changedProperties)) { - StringBuilder eventsMessage = new StringBuilder(); - /* Add list of changed events to an events message. - * Usually only one message is sent to this method at a time, so the for loop should only run once, - * but it's there just in case. - */ - for (PropertyChangeEvent event : changedProperties) { - eventsMessage.append("\"").append(event.getPropertyName()).append("\" changed from \""). - append(event.getOldValue()).append("\" to \"").append(event.getNewValue()).append("\".\n"); - } - return new NotProcessed(listener.getThreadPool() + " attribute " + eventsMessage.toString()); - } + if (isAdminListener) { return null; } From a3824d9f6382383f2d8b93d0e41f3cdc064995bb Mon Sep 17 00:00:00 2001 From: Cousjava Date: Thu, 31 May 2018 09:14:35 +0100 Subject: [PATCH 2/5] Update AMXJ2EEStartupService.java --- .../impl/j2ee/loader/AMXJ2EEStartupService.java | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/appserver/common/amx-javaee/src/main/java/org/glassfish/admin/amx/impl/j2ee/loader/AMXJ2EEStartupService.java b/appserver/common/amx-javaee/src/main/java/org/glassfish/admin/amx/impl/j2ee/loader/AMXJ2EEStartupService.java index b647c22c09b..386cf9b93f3 100644 --- a/appserver/common/amx-javaee/src/main/java/org/glassfish/admin/amx/impl/j2ee/loader/AMXJ2EEStartupService.java +++ b/appserver/common/amx-javaee/src/main/java/org/glassfish/admin/amx/impl/j2ee/loader/AMXJ2EEStartupService.java @@ -209,11 +209,7 @@ public ObjectName getJ2EEDomain() { } private J2EEDomain getJ2EEDomainProxy() { - try { - return ProxyFactory.getInstance(mMBeanServer).getProxy(getJ2EEDomain(), J2EEDomain.class); - } catch (NullPointerException e){ - return null; - } + return ProxyFactory.getInstance(mMBeanServer).getProxy(getJ2EEDomain(), J2EEDomain.class); } @Override @@ -246,9 +242,13 @@ public synchronized ObjectName loadAMXMBeans() { @Override public synchronized void unloadAMXMBeans() { - final J2EEDomain j2eeDomain = getJ2EEDomainProxy(); - if (j2eeDomain != null) { - ImplUtil.unregisterAMXMBeans(j2eeDomain); + try { + final J2EEDomain j2eeDomain = getJ2EEDomainProxy(); + if (j2eeDomain != null) { + ImplUtil.unregisterAMXMBeans(j2eeDomain); + } + } catch (NullPointerException e){ + //This will occur if AMX wasn't loaded } } } From aa3936ac96927193b4e617a4c12841744fe68130 Mon Sep 17 00:00:00 2001 From: Cousjava Date: Thu, 31 May 2018 10:40:38 +0100 Subject: [PATCH 3/5] Update AMXJ2EEStartupService.java --- .../admin/amx/impl/j2ee/loader/AMXJ2EEStartupService.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/appserver/common/amx-javaee/src/main/java/org/glassfish/admin/amx/impl/j2ee/loader/AMXJ2EEStartupService.java b/appserver/common/amx-javaee/src/main/java/org/glassfish/admin/amx/impl/j2ee/loader/AMXJ2EEStartupService.java index 386cf9b93f3..d512bc5b2c3 100644 --- a/appserver/common/amx-javaee/src/main/java/org/glassfish/admin/amx/impl/j2ee/loader/AMXJ2EEStartupService.java +++ b/appserver/common/amx-javaee/src/main/java/org/glassfish/admin/amx/impl/j2ee/loader/AMXJ2EEStartupService.java @@ -248,7 +248,7 @@ public synchronized void unloadAMXMBeans() { ImplUtil.unregisterAMXMBeans(j2eeDomain); } } catch (NullPointerException e){ - //This will occur if AMX wasn't loaded + logger.log(LEVEL.FINEST, "NullPointerException when stopping AMX, AMX may not have benn started", e); } } } From 896990027b90d94093d55c936aa7a0264c84c19a Mon Sep 17 00:00:00 2001 From: Andrew Pielage Date: Thu, 31 May 2018 10:44:20 +0100 Subject: [PATCH 4/5] Update AMXJ2EEStartupService.java --- .../admin/amx/impl/j2ee/loader/AMXJ2EEStartupService.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/appserver/common/amx-javaee/src/main/java/org/glassfish/admin/amx/impl/j2ee/loader/AMXJ2EEStartupService.java b/appserver/common/amx-javaee/src/main/java/org/glassfish/admin/amx/impl/j2ee/loader/AMXJ2EEStartupService.java index d512bc5b2c3..a08c5f16f77 100644 --- a/appserver/common/amx-javaee/src/main/java/org/glassfish/admin/amx/impl/j2ee/loader/AMXJ2EEStartupService.java +++ b/appserver/common/amx-javaee/src/main/java/org/glassfish/admin/amx/impl/j2ee/loader/AMXJ2EEStartupService.java @@ -248,7 +248,7 @@ public synchronized void unloadAMXMBeans() { ImplUtil.unregisterAMXMBeans(j2eeDomain); } } catch (NullPointerException e){ - logger.log(LEVEL.FINEST, "NullPointerException when stopping AMX, AMX may not have benn started", e); + logger.log(LEVEL.FINEST, "NullPointerException when stopping AMX, AMX may not have been started", e); } } } From 915d5461e01a009ceee39d4e0c5ee24459626135 Mon Sep 17 00:00:00 2001 From: Andrew Pielage Date: Thu, 31 May 2018 10:46:08 +0100 Subject: [PATCH 5/5] Update AMXJ2EEStartupService.java --- .../admin/amx/impl/j2ee/loader/AMXJ2EEStartupService.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/appserver/common/amx-javaee/src/main/java/org/glassfish/admin/amx/impl/j2ee/loader/AMXJ2EEStartupService.java b/appserver/common/amx-javaee/src/main/java/org/glassfish/admin/amx/impl/j2ee/loader/AMXJ2EEStartupService.java index a08c5f16f77..445929d8025 100644 --- a/appserver/common/amx-javaee/src/main/java/org/glassfish/admin/amx/impl/j2ee/loader/AMXJ2EEStartupService.java +++ b/appserver/common/amx-javaee/src/main/java/org/glassfish/admin/amx/impl/j2ee/loader/AMXJ2EEStartupService.java @@ -248,7 +248,7 @@ public synchronized void unloadAMXMBeans() { ImplUtil.unregisterAMXMBeans(j2eeDomain); } } catch (NullPointerException e){ - logger.log(LEVEL.FINEST, "NullPointerException when stopping AMX, AMX may not have been started", e); + logger.log(Level.FINEST, "NullPointerException when stopping AMX, AMX may not have been started", e); } } }