You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@cocoon.apache.org by cz...@apache.org on 2006/07/03 14:28:51 UTC
svn commit: r418753 - in /cocoon/trunk/core:
cocoon-bootstrap/src/main/java/org/apache/cocoon/bootstrap/servlet/
cocoon-core/src/main/java/org/apache/cocoon/core/
cocoon-core/src/main/java/org/apache/cocoon/servlet/
Author: cziegeler
Date: Mon Jul 3 05:28:50 2006
New Revision: 418753
URL: http://svn.apache.org/viewvc?rev=418753&view=rev
Log:
Add more logging to shielded classloading components
Start ReloadFilter
Modified:
cocoon/trunk/core/cocoon-bootstrap/src/main/java/org/apache/cocoon/bootstrap/servlet/ShieldingListener.java
cocoon/trunk/core/cocoon-bootstrap/src/main/java/org/apache/cocoon/bootstrap/servlet/ShieldingServlet.java
cocoon/trunk/core/cocoon-bootstrap/src/main/java/org/apache/cocoon/bootstrap/servlet/ShieldingServletFilter.java
cocoon/trunk/core/cocoon-core/src/main/java/org/apache/cocoon/core/CoreUtil.java
cocoon/trunk/core/cocoon-core/src/main/java/org/apache/cocoon/servlet/CocoonServletListener.java
Modified: cocoon/trunk/core/cocoon-bootstrap/src/main/java/org/apache/cocoon/bootstrap/servlet/ShieldingListener.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/core/cocoon-bootstrap/src/main/java/org/apache/cocoon/bootstrap/servlet/ShieldingListener.java?rev=418753&r1=418752&r2=418753&view=diff
==============================================================================
--- cocoon/trunk/core/cocoon-bootstrap/src/main/java/org/apache/cocoon/bootstrap/servlet/ShieldingListener.java (original)
+++ cocoon/trunk/core/cocoon-bootstrap/src/main/java/org/apache/cocoon/bootstrap/servlet/ShieldingListener.java Mon Jul 3 05:28:50 2006
@@ -106,7 +106,8 @@
final StringTokenizer st = new StringTokenizer(listenersConfig, " \t\r\n\f;,", false);
while ( st.hasMoreTokens() ) {
final String className = st.nextToken();
- try {
+ try {
+ context.log("ShieldingListener: Loading listener class " + className);
Class listenerClass = this.classloader.loadClass(className);
final Object listener = listenerClass.newInstance();
if ( listener instanceof HttpSessionListener ) {
Modified: cocoon/trunk/core/cocoon-bootstrap/src/main/java/org/apache/cocoon/bootstrap/servlet/ShieldingServlet.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/core/cocoon-bootstrap/src/main/java/org/apache/cocoon/bootstrap/servlet/ShieldingServlet.java?rev=418753&r1=418752&r2=418753&view=diff
==============================================================================
--- cocoon/trunk/core/cocoon-bootstrap/src/main/java/org/apache/cocoon/bootstrap/servlet/ShieldingServlet.java (original)
+++ cocoon/trunk/core/cocoon-bootstrap/src/main/java/org/apache/cocoon/bootstrap/servlet/ShieldingServlet.java Mon Jul 3 05:28:50 2006
@@ -51,11 +51,6 @@
*/
public class ShieldingServlet extends HttpServlet {
- /**
- * The name of the actual servlet class.
- */
- public static final String DEFAULT_SERVLET_CLASS = "org.apache.cocoon.servlet.CocoonServlet";
-
protected Servlet servlet;
protected ClassLoader classloader;
@@ -70,10 +65,10 @@
String servletName = config.getInitParameter("servlet-class");
if (servletName == null) {
- servletName = DEFAULT_SERVLET_CLASS;
+ throw new ServletException("ShieldingServlet: Init-Parameter 'servlet-class' is missing.");
}
- log("Loading servlet class " + servletName);
-
+ log("ShieldingServlet: Loading servlet class " + servletName);
+
// Create the servlet
try {
Modified: cocoon/trunk/core/cocoon-bootstrap/src/main/java/org/apache/cocoon/bootstrap/servlet/ShieldingServletFilter.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/core/cocoon-bootstrap/src/main/java/org/apache/cocoon/bootstrap/servlet/ShieldingServletFilter.java?rev=418753&r1=418752&r2=418753&view=diff
==============================================================================
--- cocoon/trunk/core/cocoon-bootstrap/src/main/java/org/apache/cocoon/bootstrap/servlet/ShieldingServletFilter.java (original)
+++ cocoon/trunk/core/cocoon-bootstrap/src/main/java/org/apache/cocoon/bootstrap/servlet/ShieldingServletFilter.java Mon Jul 3 05:28:50 2006
@@ -62,8 +62,9 @@
String filterName = config.getInitParameter("filter-class");
if (filterName == null) {
- throw new ServletException("Filter-class parameter is missing.");
+ throw new ServletException("ShieldingServletFilter: 'filter-class' parameter is missing.");
}
+ config.getServletContext().log("ShieldingServletFilter: Loading filter class " + filterName);
// Create the filter
try {
Modified: cocoon/trunk/core/cocoon-core/src/main/java/org/apache/cocoon/core/CoreUtil.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/core/cocoon-core/src/main/java/org/apache/cocoon/core/CoreUtil.java?rev=418753&r1=418752&r2=418753&view=diff
==============================================================================
--- cocoon/trunk/core/cocoon-core/src/main/java/org/apache/cocoon/core/CoreUtil.java (original)
+++ cocoon/trunk/core/cocoon-core/src/main/java/org/apache/cocoon/core/CoreUtil.java Mon Jul 3 05:28:50 2006
@@ -520,44 +520,38 @@
}
/**
- * Gets the current root processor object.
- * Reload the root processor if configuration changed or we are reloading.
- * @param reloadContainer Should the container be reloaded?
- public Processor getProcessor(boolean reloadContainer)
+ * Reload the the container.
+ */
+ public synchronized void reloadCore()
throws Exception {
if (this.settings.isReloadingEnabled("config")) {
boolean reload = false;
- if (this.processor != null) {
+ if (this.container != null) {
if (this.settings.getCreationTime() < this.configurationFile.getLastModified()) {
if (this.log.isInfoEnabled()) {
this.log.info("Configuration changed reload attempt");
}
reload = true;
- } else if (reloadContainer) {
+ } else {
if (this.log.isInfoEnabled()) {
this.log.info("Forced reload attempt");
}
reload = true;
}
- } else if (reloadContainer) {
+ } else {
if (this.log.isInfoEnabled()) {
- this.log.info("Invalid configurations reload");
+ this.log.info("Invalid configurations reload - container has not been initialized yet.");
}
reload = true;
}
if (reload) {
- if (this.container != null) {
- this.container = null;
- }
+ this.destroy();
this.init();
- this.createProcessor();
}
}
- return this.processor;
}
- */
protected ConfigurableBeanFactory setupSpringContainer() throws Exception {
if (this.log.isInfoEnabled()) {
Modified: cocoon/trunk/core/cocoon-core/src/main/java/org/apache/cocoon/servlet/CocoonServletListener.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/core/cocoon-core/src/main/java/org/apache/cocoon/servlet/CocoonServletListener.java?rev=418753&r1=418752&r2=418753&view=diff
==============================================================================
--- cocoon/trunk/core/cocoon-core/src/main/java/org/apache/cocoon/servlet/CocoonServletListener.java (original)
+++ cocoon/trunk/core/cocoon-core/src/main/java/org/apache/cocoon/servlet/CocoonServletListener.java Mon Jul 3 05:28:50 2006
@@ -73,6 +73,9 @@
}
servletContext.setAttribute(ProcessingUtil.CONTAINER_CONTEXT_ATTR_NAME, this.coreUtil.getContainer());
+ // for now we store the core util into the servlet context as well to
+ // allow for reloading
+ servletContext.setAttribute(CoreUtil.class.getName(), this.coreUtil);
servletContext.log("Apache Cocoon " + Constants.VERSION + " is up and ready.");
}