cziegeler 2002/09/11 01:26:45 Modified: src/java/org/apache/cocoon/acting ServerPagesAction.java RequestParameterExistsAction.java SessionInvalidatorAction.java SessionPropagatorAction.java ResourceExistsAction.java SessionStateAction.java ScriptAction.java SessionIsValidAction.java SessionValidatorAction.java RequestParamAction.java SendmailAction.java Log: Some more logging and exception handling updates Revision Changes Path 1.9 +4 -6 xml-cocoon2/src/java/org/apache/cocoon/acting/ServerPagesAction.java Index: ServerPagesAction.java =================================================================== RCS file: /home/cvs/xml-cocoon2/src/java/org/apache/cocoon/acting/ServerPagesAction.java,v retrieving revision 1.8 retrieving revision 1.9 diff -u -r1.8 -r1.9 --- ServerPagesAction.java 31 Jul 2002 13:13:21 -0000 1.8 +++ ServerPagesAction.java 11 Sep 2002 08:26:44 -0000 1.9 @@ -154,7 +154,9 @@ String source, Parameters parameters) throws Exception { - getLogger().debug("serverpage source: " + source); + if (this.getLogger().isDebugEnabled()) { + getLogger().debug("serverpage source: " + source); + } String outputKey = parameters.getParameter("output-attribute", null); Map resultMap = new HashMap(); @@ -188,10 +190,6 @@ // Let the XSP do it's stuff generator.generate(); success = objectModel.get(ACTION_SUCCESS_OBJECT); - - } catch (Exception e) { - getLogger().warn("serverpage error", e); - throw e; } finally { // Release generator 1.8 +217 -127 xml-cocoon2/src/java/org/apache/cocoon/acting/RequestParameterExistsAction.java Index: RequestParameterExistsAction.java =================================================================== RCS file: /home/cvs/xml-cocoon2/src/java/org/apache/cocoon/acting/RequestParameterExistsAction.java,v retrieving revision 1.7 retrieving revision 1.8 diff -u -r1.7 -r1.8 --- RequestParameterExistsAction.java 22 Feb 2002 06:59:26 -0000 1.7 +++ RequestParameterExistsAction.java 11 Sep 2002 08:26:44 -0000 1.8 @@ -109,149 +109,239 @@ String source, Parameters parameters ) - throws Exception - { + throws Exception { Request request = ObjectModelHelper.getRequest(objectModel); - if (request == null) { - getLogger().error("RequestInfoAction: no request object!"); - return(null); - } HashMap results = new HashMap(); - HashMap items = new HashMap(); - int wildcards = 0; - - // check default parameters for existence - getLogger().debug("checking default parameters"); - Iterator reqParams = settings.values().iterator(); - while ( reqParams.hasNext() ) { - String paramName = (String) reqParams.next(); - StringParts sp = splitParameter( paramName ); - if ( sp != null ) { - // wildcard: special care required (deferred until later) - items.put( new Integer( wildcards++ ), sp ); - getLogger().debug("(default) deferring "+paramName); - } else { - String paramValue = request.getParameter( paramName ); - if ( paramValue == null ) { - return null; - } - results.put( paramName, paramValue ); - } - } + HashMap items = new HashMap(); + int wildcards = 0; - // check parameters for existence - getLogger().debug("checking sitemap parameters"); - String params = parameters.getParameter( "parameters", null) ; - if ( params != null ) { - StringTokenizer st = new StringTokenizer( params ); - while ( st.hasMoreTokens() ) { - String paramName = st.nextToken(); - StringParts sp = splitParameter( paramName ); - if ( sp != null ) { - // wildcard: special care required (deferred until later) - items.put(new Integer(wildcards++), sp ); - getLogger().debug("deferring "+paramName); - } else { - - String paramValue = request.getParameter( paramName ); - if ( paramValue == null ) { - return null; + // check default parameters for existence + if (this.getLogger().isDebugEnabled()) { + getLogger().debug("checking default parameters"); + } + Iterator reqParams = settings.values().iterator(); + while (reqParams.hasNext()) { + String paramName = (String) reqParams.next(); + StringParts sp = splitParameter(paramName); + if (sp != null) { + // wildcard: special care required (deferred until later) + items.put(new Integer(wildcards++), sp); + if (this.getLogger().isDebugEnabled()) { + getLogger().debug("(default) deferring " + paramName); + } + } else { + String paramValue = request.getParameter(paramName); + if (paramValue == null) { + return null; + } + results.put(paramName, paramValue); } - results.put( paramName, paramValue ); - } } - } - if ( wildcards != 0 ) { - // special care for parameters with wildcard - // - getLogger().debug("deferred checking for parameters: "+wildcards); - - // first one - // - getLogger().debug(" checking first"); - HashMap values = new HashMap(); - StringParts sp1 = (StringParts) items.get( new Integer( 0 ) ); - getLogger().debug(" Parameter is ["+sp1.prefix+" * "+sp1.pstfix+"] "); - Enumeration requestParams = request.getParameterNames(); - Boolean dummy = new Boolean( true ); - while ( requestParams.hasMoreElements() ) { - String paramName = (String) requestParams.nextElement(); - String match = getMatch( paramName, sp1 ); - if ( match != null ) { - getLogger().debug(" value is >"+match+"< "+ sp1.prefix.length()+" "+ paramName.length()+ " " +sp1.pstfix.length()); - values.put( match, dummy ); - sp1.count++; - getLogger().debug(" Parameter "+sp1.prefix+"*"+sp1.pstfix+" matches "+paramName+" ("+sp1.count+" so far)"); - - String paramValue = request.getParameter( paramName ); - if ( paramValue == null ) { - return null; + // check parameters for existence + if (this.getLogger().isDebugEnabled()) { + getLogger().debug("checking sitemap parameters"); + } + String params = parameters.getParameter("parameters", null); + if (params != null) { + StringTokenizer st = new StringTokenizer(params); + while (st.hasMoreTokens()) { + String paramName = st.nextToken(); + StringParts sp = splitParameter(paramName); + if (sp != null) { + // wildcard: special care required (deferred until later) + items.put(new Integer(wildcards++), sp); + if (this.getLogger().isDebugEnabled()) { + getLogger().debug("deferring " + paramName); + } + } else { + + String paramValue = request.getParameter(paramName); + if (paramValue == null) { + return null; + } + results.put(paramName, paramValue); + } } - results.put( paramName, paramValue ); - } - } - - if ( sp1.count == 0 ) { - getLogger().debug(" Parameter "+sp1.prefix+"*"+sp1.pstfix+" matches "+sp1.count); - return null; } + if (wildcards != 0) { + // special care for parameters with wildcard + // + if (this.getLogger().isDebugEnabled()) { + getLogger().debug("deferred checking for parameters: " + wildcards); + } - // all other ones - // - getLogger().debug(" checking others"); - requestParams = request.getParameterNames(); - while ( requestParams.hasMoreElements() ) { - String paramName = (String) requestParams.nextElement(); - getLogger().debug(" checking request parameter "+paramName); - for ( int i = wildcards-1; i > 0; i-- ) { - getLogger().debug(" checking against "+i); - StringParts sp = (StringParts) items.get( new Integer( i ) ); - String match = getMatch( paramName, sp ); - getLogger().debug(" Parameter is ["+sp.prefix+" * "+sp.pstfix+"] "); - if ( match != null ) { - getLogger().debug(" Parameter "+sp.prefix+"*"+sp.pstfix+" matches "+paramName+" ("+sp.count+" so far)"); - if ( values.containsKey( match ) ) { - sp.count++; - getLogger().debug(" "+paramName+" (verified)"); + // first one + // + if (this.getLogger().isDebugEnabled()) { + getLogger().debug(" checking first"); + } + HashMap values = new HashMap(); + StringParts sp1 = (StringParts) items.get(new Integer(0)); + if (this.getLogger().isDebugEnabled()) { + getLogger().debug( + " Parameter is [" + sp1.prefix + " * " + sp1.pstfix + "] "); + } + Enumeration requestParams = request.getParameterNames(); + Boolean dummy = new Boolean(true); + while (requestParams.hasMoreElements()) { + String paramName = (String) requestParams.nextElement(); + String match = getMatch(paramName, sp1); + if (match != null) { + if (this.getLogger().isDebugEnabled()) { + getLogger().debug( + " value is >" + + match + + "< " + + sp1.prefix.length() + + " " + + paramName.length() + + " " + + sp1.pstfix.length()); + } + values.put(match, dummy); + sp1.count++; + if (this.getLogger().isDebugEnabled()) { + getLogger().debug( + " Parameter " + + sp1.prefix + + "*" + + sp1.pstfix + + " matches " + + paramName + + " (" + + sp1.count + + " so far)"); + } + String paramValue = request.getParameter(paramName); + if (paramValue == null) { + return null; + } + results.put(paramName, paramValue); + } + } - String paramValue = request.getParameter( paramName ); - if ( paramValue == null ) { + if (sp1.count == 0) { + if (this.getLogger().isDebugEnabled()) { + getLogger().debug( + " Parameter " + + sp1.prefix + + "*" + + sp1.pstfix + + " matches " + + sp1.count); + } return null; + } + + // all other ones + // + if (this.getLogger().isDebugEnabled()) { + getLogger().debug(" checking others"); + } + requestParams = request.getParameterNames(); + while (requestParams.hasMoreElements()) { + String paramName = (String) requestParams.nextElement(); + if (this.getLogger().isDebugEnabled()) { + getLogger().debug(" checking request parameter " + paramName); + } + for (int i = wildcards - 1; i > 0; i--) { + if (this.getLogger().isDebugEnabled()) { + getLogger().debug(" checking against " + i); + } + StringParts sp = (StringParts) items.get(new Integer(i)); + String match = getMatch(paramName, sp); + if (this.getLogger().isDebugEnabled()) { + getLogger().debug( + " Parameter is [" + + sp.prefix + + " * " + + sp.pstfix + + "] "); + } + if (match != null) { + if (this.getLogger().isDebugEnabled()) { + getLogger().debug( + " Parameter " + + sp.prefix + + "*" + + sp.pstfix + + " matches " + + paramName + + " (" + + sp.count + + " so far)"); + } + if (values.containsKey(match)) { + sp.count++; + if (this.getLogger().isDebugEnabled()) { + getLogger().debug( + " " + paramName + " (verified)"); + } + String paramValue = request.getParameter(paramName); + if (paramValue == null) { + return null; + } + results.put(paramName, paramValue); + + } else { + if (this.getLogger().isDebugEnabled()) { + getLogger().debug( + "Match " + + match + + "not found for " + + sp1.prefix + + "*" + + sp1.pstfix + + " but for " + + sp.prefix + + "*" + + sp.pstfix); + } + return null; + } + } } - results.put( paramName, paramValue ); + } - } else { - getLogger().debug("Match " + match + "not found for " - + sp1.prefix + "*" + sp1.pstfix + " but for " - + sp.prefix + "*" + sp.pstfix); - return null; + // since we enforce that only matches are counted, that exist for + // the first parameter as well, check if every parameter has an + // equal number of matches. + // + if (this.getLogger().isDebugEnabled()) { + getLogger().debug("checking number of matches"); } + for (int i = wildcards - 1; i > 0; i--) { + StringParts sp = (StringParts) items.get(new Integer(i)); + if (sp.count != sp1.count) { + if (this.getLogger().isDebugEnabled()) { + getLogger().debug( + "Found " + + sp.count + + " matches for " + + sp.prefix + + "*" + + sp.pstfix + + " but expected " + + sp1.count); + } + return null; + } else { + if (this.getLogger().isDebugEnabled()) { + getLogger().debug( + "Found " + + sp.count + + " matches for " + + sp.prefix + + "*" + + sp.pstfix + + " as expected"); + } + } } - } - } - // since we enforce that only matches are counted, that exist for - // the first parameter as well, check if every parameter has an - // equal number of matches. - // - getLogger().debug("checking number of matches"); - for ( int i = wildcards-1; i > 0; i-- ) { - StringParts sp = (StringParts) items.get( new Integer( i ) ); - if ( sp.count != sp1.count ) { - getLogger().debug("Found " + sp.count + " matches for " - + sp.prefix + "*" + sp.pstfix + " but expected " - + sp1.count); - return null; - } else { - getLogger().debug("Found " + sp.count + " matches for " - + sp.prefix + "*" + sp.pstfix + " as expected"); } - } - - } - return Collections.unmodifiableMap(results); } 1.8 +7 -9 xml-cocoon2/src/java/org/apache/cocoon/acting/SessionInvalidatorAction.java Index: SessionInvalidatorAction.java =================================================================== RCS file: /home/cvs/xml-cocoon2/src/java/org/apache/cocoon/acting/SessionInvalidatorAction.java,v retrieving revision 1.7 retrieving revision 1.8 diff -u -r1.7 -r1.8 --- SessionInvalidatorAction.java 22 Feb 2002 06:59:26 -0000 1.7 +++ SessionInvalidatorAction.java 11 Sep 2002 08:26:44 -0000 1.8 @@ -79,19 +79,17 @@ Parameters parameters) throws Exception { Request req = ObjectModelHelper.getRequest(objectModel); - /* check request validity */ - if (req == null) { - getLogger ().debug ("SESSIONINVALIDATOR: no request object"); - return null; - } - /* check session validity */ Session session = req.getSession (false); if (session != null) { session.invalidate (); - getLogger ().debug ("SESSIONINVALIDATOR: session invalidated"); + if (this.getLogger().isDebugEnabled()) { + getLogger ().debug ("SESSIONINVALIDATOR: session invalidated"); + } } else { - getLogger ().debug ("SESSIONINVALIDATOR: no session object"); + if (this.getLogger().isDebugEnabled()) { + getLogger ().debug ("SESSIONINVALIDATOR: no session object"); + } } return EMPTY_MAP; // cut down on object creation 1.8 +48 -43 xml-cocoon2/src/java/org/apache/cocoon/acting/SessionPropagatorAction.java Index: SessionPropagatorAction.java =================================================================== RCS file: /home/cvs/xml-cocoon2/src/java/org/apache/cocoon/acting/SessionPropagatorAction.java,v retrieving revision 1.7 retrieving revision 1.8 diff -u -r1.7 -r1.8 --- SessionPropagatorAction.java 22 Feb 2002 06:59:26 -0000 1.7 +++ SessionPropagatorAction.java 11 Sep 2002 08:26:44 -0000 1.8 @@ -102,63 +102,68 @@ Request req = ObjectModelHelper.getRequest(objectModel); HashMap actionMap = new HashMap (); - HashMap isDone = new HashMap(); - Integer dummy = new Integer(1); - - if (req == null) { - getLogger ().debug ("SESSIONPROPAGATOR: no request object"); - return null; - } + HashMap isDone = new HashMap(); + Integer dummy = new Integer(1); /* check session validity */ Session session = req.getSession (false); if (session == null) { - getLogger ().debug ("SESSIONPROPAGATOR: no session object"); + if (this.getLogger().isDebugEnabled()) { + getLogger ().debug ("SESSIONPROPAGATOR: no session object"); + } return null; } try { - String[] names = parameters.getNames(); + String[] names = parameters.getNames(); - // parameters - for (int i=0; i<names.length; i++) { - String sessionParamName = names[i]; - if (sessionParamName == null || - "".equals (sessionParamName.trim ())) + // parameters + for (int i = 0; i < names.length; i++) { + String sessionParamName = names[i]; + if (sessionParamName == null + || "".equals(sessionParamName.trim())) return null; - isDone.put(sessionParamName, dummy); - String value = parameters.getParameter(sessionParamName); - getLogger().debug ("SESSIONPROPAGATOR: propagating value " + isDone.put(sessionParamName, dummy); + String value = parameters.getParameter(sessionParamName); + if (this.getLogger().isDebugEnabled()) { + getLogger().debug( + "SESSIONPROPAGATOR: propagating value " + value + " to session attribute " + sessionParamName); - session.setAttribute (sessionParamName, value); - actionMap.put (sessionParamName, value); - } - - // defaults, that are not overridden - for (int i=0; i<defaults.length; i++) { - if (! isDone.containsKey(defaults[i])) { - String sessionParamName = (String) defaults[i]; - if (sessionParamName == null || - "".equals (sessionParamName.trim ())) - return null; - isDone.put(sessionParamName, dummy); - String value = parameters.getParameter(sessionParamName); - getLogger().debug ("SESSIONPROPAGATOR: propagating value " - + value - + " to session attribute " - + sessionParamName); - session.setAttribute (sessionParamName, value); - actionMap.put (sessionParamName, value); - } - } - getLogger().debug ("SESSIONPROPAGATOR: all params propagated " - + "to session"); - return Collections.unmodifiableMap (actionMap); + } + session.setAttribute(sessionParamName, value); + actionMap.put(sessionParamName, value); + } + + // defaults, that are not overridden + for (int i = 0; i < defaults.length; i++) { + if (!isDone.containsKey(defaults[i])) { + String sessionParamName = (String) defaults[i]; + if (sessionParamName == null + || "".equals(sessionParamName.trim())) + return null; + isDone.put(sessionParamName, dummy); + String value = parameters.getParameter(sessionParamName); + if (this.getLogger().isDebugEnabled()) { + getLogger().debug( + "SESSIONPROPAGATOR: propagating value " + + value + + " to session attribute " + + sessionParamName); + } + session.setAttribute(sessionParamName, value); + actionMap.put(sessionParamName, value); + } + } + if (this.getLogger().isDebugEnabled()) { + getLogger().debug( + "SESSIONPROPAGATOR: all params propagated " + "to session"); + } + return Collections.unmodifiableMap(actionMap); } catch (Exception e) { - getLogger().debug ("exception: ", e); + getLogger().warn("exception: ", e); } return null; } 1.7 +2 -2 xml-cocoon2/src/java/org/apache/cocoon/acting/ResourceExistsAction.java Index: ResourceExistsAction.java =================================================================== RCS file: /home/cvs/xml-cocoon2/src/java/org/apache/cocoon/acting/ResourceExistsAction.java,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- ResourceExistsAction.java 7 Jun 2002 13:15:09 -0000 1.6 +++ ResourceExistsAction.java 11 Sep 2002 08:26:44 -0000 1.7 @@ -77,7 +77,7 @@ src = resolver.resolveURI(urlstring); src.getInputStream(); } catch (Exception e) { - getLogger().debug("ResourceExistsAction: exception: ",e); + getLogger().warn("ResourceExistsAction: exception: ",e); return null; } finally { resolver.release( src ); 1.8 +78 -60 xml-cocoon2/src/java/org/apache/cocoon/acting/SessionStateAction.java Index: SessionStateAction.java =================================================================== RCS file: /home/cvs/xml-cocoon2/src/java/org/apache/cocoon/acting/SessionStateAction.java,v retrieving revision 1.7 retrieving revision 1.8 diff -u -r1.7 -r1.8 --- SessionStateAction.java 30 Jun 2002 23:26:57 -0000 1.7 +++ SessionStateAction.java 11 Sep 2002 08:26:44 -0000 1.8 @@ -115,7 +115,9 @@ * @author <a href="mailto:[EMAIL PROTECTED]">Christian Haul</a> * @version CVS $Id$ */ -public class SessionStateAction extends AbstractConfigurableAction implements ThreadSafe { +public class SessionStateAction + extends AbstractConfigurableAction + implements ThreadSafe { protected String statekey = "org.apache.cocoon.SessionState"; protected String newstate = null; @@ -125,74 +127,90 @@ /** * Configures the Action. */ - public void configure(Configuration conf) throws ConfigurationException - { - super.configure(conf); - - if (settings.containsKey("state-key-prefix")) - statekey = (String) settings.get("state-key-prefix"); - if (settings.containsKey("new-state")) - newstate = (String) settings.get("new-state"); - if (settings.containsKey("sub-levels")) - sublevels = Integer.parseInt((String) settings.get("sub-levels")); - if (settings.containsKey("state-level")) - mylevel = Integer.parseInt((String) settings.get("state-level")); - } - - - public Map act (Redirector redirector, - SourceResolver resolver, - Map objectModel, - String src, - Parameters par) throws Exception - { - Request request = ObjectModelHelper.getRequest(objectModel); + public void configure(Configuration conf) throws ConfigurationException { + super.configure(conf); - // read local settings - newstate = par.getParameter("new-state", newstate); - statekey = par.getParameter("state-key", statekey); - sublevels = par.getParameterAsInteger("sublevels", sublevels); - mylevel = par.getParameterAsInteger("state-level", mylevel); - - if (newstate == null ) { - getLogger().error("new-state is null"); - return null; + if (settings.containsKey("state-key-prefix")) + statekey = (String) settings.get("state-key-prefix"); + if (settings.containsKey("new-state")) + newstate = (String) settings.get("new-state"); + if (settings.containsKey("sub-levels")) + sublevels = Integer.parseInt((String) settings.get("sub-levels")); + if (settings.containsKey("state-level")) + mylevel = Integer.parseInt((String) settings.get("state-level")); } + public Map act( + Redirector redirector, + SourceResolver resolver, + Map objectModel, + String src, + Parameters par) + throws Exception { + + Request request = ObjectModelHelper.getRequest(objectModel); - if (request != null) { - Session session = request.getSession (false); - - if (session != null && request.isRequestedSessionIdValid()) { - String oldstate = null; - if (sublevels == 0) { - oldstate = (String) session.getAttribute(statekey); - session.setAttribute(statekey, newstate); - getLogger().debug(statekey+"="+newstate); - - } else { // sublevels != 0 - oldstate = (String) session.getAttribute( statekey + Integer.toString(mylevel) ); - for (int i=mylevel+1; i<=sublevels; i++) { - session.removeAttribute( statekey+Integer.toString(i) ); - getLogger().debug("remove "+statekey+Integer.toString(i)); + // read local settings + newstate = par.getParameter("new-state", newstate); + statekey = par.getParameter("state-key", statekey); + sublevels = par.getParameterAsInteger("sublevels", sublevels); + mylevel = par.getParameterAsInteger("state-level", mylevel); + + if (newstate == null) { + if (this.getLogger().isDebugEnabled()) { + getLogger().error("new-state is null"); } - session.setAttribute( statekey + Integer.toString(mylevel), newstate); - getLogger().debug(statekey+Integer.toString(mylevel)+"="+newstate); + return null; } - getLogger().debug("transition " + oldstate + " -> " + newstate); - HashMap map = new HashMap(1); - map.put("newstate", newstate); - return map; + if (request != null) { + Session session = request.getSession(false); - } else { - getLogger().warn("A session object was not present or no longer valid"); - return null; + if (session != null && request.isRequestedSessionIdValid()) { + String oldstate = null; + if (sublevels == 0) { + oldstate = (String) session.getAttribute(statekey); + session.setAttribute(statekey, newstate); + if (this.getLogger().isDebugEnabled()) { + getLogger().debug(statekey + "=" + newstate); + } + + } else { // sublevels != 0 + oldstate = + (String) session.getAttribute( + statekey + Integer.toString(mylevel)); + for (int i = mylevel + 1; i <= sublevels; i++) { + session.removeAttribute(statekey + Integer.toString(i)); + if (this.getLogger().isDebugEnabled()) { + getLogger().debug( + "remove " + statekey + Integer.toString(i)); + } + } + session.setAttribute( + statekey + Integer.toString(mylevel), + newstate); + if (this.getLogger().isDebugEnabled()) { + getLogger().debug( + statekey + Integer.toString(mylevel) + "=" + newstate); + } + } + if (this.getLogger().isDebugEnabled()) { + getLogger().debug("transition " + oldstate + " -> " + newstate); + } + + HashMap map = new HashMap(1); + map.put("newstate", newstate); + return map; + + } else { + getLogger().warn( + "A session object was not present or no longer valid"); + return null; } } else { - getLogger().warn("No request object"); - return null; - } + getLogger().warn("No request object"); + return null; + } } } 1.10 +7 -3 xml-cocoon2/src/java/org/apache/cocoon/acting/ScriptAction.java Index: ScriptAction.java =================================================================== RCS file: /home/cvs/xml-cocoon2/src/java/org/apache/cocoon/acting/ScriptAction.java,v retrieving revision 1.9 retrieving revision 1.10 diff -u -r1.9 -r1.10 --- ScriptAction.java 7 Jun 2002 13:15:09 -0000 1.9 +++ ScriptAction.java 11 Sep 2002 08:26:44 -0000 1.10 @@ -131,14 +131,18 @@ mgr.registerBean("scriptaction", this ); mgr.registerBean("manager", this.manager ); - getLogger().debug("BSFManager execution begining"); + if (this.getLogger().isDebugEnabled()) { + getLogger().debug("BSFManager execution begining"); + } // Execute the script mgr.exec(BSFManager.getLangFromFilename(systemID), systemID, 0, 0, IOUtils.getStringFromReader(in)); - getLogger().debug("BSFManager execution complete"); + if (this.getLogger().isDebugEnabled()) { + getLogger().debug("BSFManager execution complete"); + } // Figure out what to return // TODO: decide on a more robust communication method 1.8 +7 -8 xml-cocoon2/src/java/org/apache/cocoon/acting/SessionIsValidAction.java Index: SessionIsValidAction.java =================================================================== RCS file: /home/cvs/xml-cocoon2/src/java/org/apache/cocoon/acting/SessionIsValidAction.java,v retrieving revision 1.7 retrieving revision 1.8 diff -u -r1.7 -r1.8 --- SessionIsValidAction.java 21 Mar 2002 04:09:19 -0000 1.7 +++ SessionIsValidAction.java 11 Sep 2002 08:26:44 -0000 1.8 @@ -79,19 +79,18 @@ Parameters parameters) throws Exception { Request req = ObjectModelHelper.getRequest(objectModel); - if (req == null) { - getLogger().debug("No request object"); - return null; - } - /* check session validity */ Session session = req.getSession (false); if (session == null) { - getLogger().debug("No session object"); + if (this.getLogger().isDebugEnabled()) { + getLogger().debug("No session object"); + } return null; } if (!req.isRequestedSessionIdValid()) { - getLogger().debug("Requested session id is invalid"); + if (this.getLogger().isDebugEnabled()) { + getLogger().debug("Requested session id is invalid"); + } return null; } 1.10 +32 -16 xml-cocoon2/src/java/org/apache/cocoon/acting/SessionValidatorAction.java Index: SessionValidatorAction.java =================================================================== RCS file: /home/cvs/xml-cocoon2/src/java/org/apache/cocoon/acting/SessionValidatorAction.java,v retrieving revision 1.9 retrieving revision 1.10 diff -u -r1.9 -r1.10 --- SessionValidatorAction.java 25 Aug 2002 08:49:17 -0000 1.9 +++ SessionValidatorAction.java 11 Sep 2002 08:26:44 -0000 1.10 @@ -112,15 +112,13 @@ public Map act (Redirector redirector, SourceResolver resolver, Map objectModel, String src, Parameters parameters) throws Exception { Request req = ObjectModelHelper.getRequest(objectModel); - if (req == null) { - getLogger ().debug ("No request object"); - return null; - } /* check session validity */ Session session = req.getSession (false); if (session == null) { - getLogger ().debug ("No session object"); + if (this.getLogger().isDebugEnabled()) { + getLogger ().debug ("No session object"); + } return null; } @@ -145,8 +143,10 @@ * old obsoleted method */ if (valstr != null && !"".equals (valstr.trim ())) { - getLogger ().debug ("Validating parameters " + if (this.getLogger().isDebugEnabled()) { + getLogger ().debug ("Validating parameters " + "as specified via 'validate' parameter"); + } /* get list of params to be validated */ String[] rparams = Tokenizer.tokenize (valstr, ",", false); @@ -158,7 +158,9 @@ for (int i = 0; i < rparams.length; i ++) { name = rparams[i]; if (name == null || "".equals (name.trim ())) { - getLogger ().debug ("Wrong syntax of the 'validate' parameter"); + if (this.getLogger().isDebugEnabled()) { + getLogger ().debug ("Wrong syntax of the 'validate' parameter"); + } return null; } name = name.trim (); @@ -169,7 +171,9 @@ result = validateParameter (name, null, desc, params, false); if (!result.isOK()) { - getLogger().debug ("Validation failed for parameter " + name); + if (this.getLogger().isDebugEnabled()) { + getLogger().debug ("Validation failed for parameter " + name); + } return null; } session.setAttribute (name, result.getObject()); @@ -180,8 +184,10 @@ * new set-based method */ if (valsetstr != null && !"".equals (valsetstr.trim ())) { - getLogger ().debug ("Validating parameters " + if (this.getLogger().isDebugEnabled()) { + getLogger ().debug ("Validating parameters " + "from given constraint-set " + valsetstr); + } Configuration cset = null; String setname = null; int j = 0; @@ -194,9 +200,11 @@ } } if (!found) { - getLogger ().debug ("Given set " + if (this.getLogger().isDebugEnabled()) { + getLogger ().debug ("Given set " + valsetstr + " does not exist in a description file"); + } return null; } cset = csets[j]; @@ -207,15 +215,19 @@ ValidatorActionHelper result = null; String name = null; HashMap params = new HashMap (set.length); - getLogger ().debug ("Given set " + if (this.getLogger().isDebugEnabled()) { + getLogger ().debug ("Given set " + valsetstr + " contains " + set.length + " rules"); + } /* put required params into hash */ for (int i = 0; i < set.length; i ++) { name = set[i].getAttribute ("name", ""); if ("".equals (name.trim ())) { - getLogger ().debug ("Wrong syntax " + if (this.getLogger().isDebugEnabled()) { + getLogger ().debug ("Wrong syntax " + " of 'validate' children nr. " + i); + } return null; } name = name.trim (); @@ -226,17 +238,21 @@ result = validateParameter(name, set[i], desc, params, false); if (!result.isOK()) { - getLogger().debug("Validation failed for parameter " + name); + if (this.getLogger().isDebugEnabled()) { + getLogger().debug("Validation failed for parameter " + name); + } return null; } session.setAttribute (name, result.getObject()); actionMap.put (name, result.getObject()); } } - getLogger().debug("All session params validated"); + if (this.getLogger().isDebugEnabled()) { + getLogger().debug("All session params validated"); + } return Collections.unmodifiableMap (actionMap); } catch (Exception e) { - getLogger().debug ("exception: ", e); + getLogger().warn ("exception: ", e); } return null; } 1.7 +1 -5 xml-cocoon2/src/java/org/apache/cocoon/acting/RequestParamAction.java Index: RequestParamAction.java =================================================================== RCS file: /home/cvs/xml-cocoon2/src/java/org/apache/cocoon/acting/RequestParamAction.java,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- RequestParamAction.java 22 Feb 2002 06:59:26 -0000 1.6 +++ RequestParamAction.java 11 Sep 2002 08:26:44 -0000 1.7 @@ -135,10 +135,6 @@ { Request request = ObjectModelHelper.getRequest(objectModel); - if (request == null) { - getLogger().error("RequestInfoAction: no request object!"); - return(null); - } Map map = new HashMap(); 1.7 +101 -70 xml-cocoon2/src/java/org/apache/cocoon/acting/SendmailAction.java Index: SendmailAction.java =================================================================== RCS file: /home/cvs/xml-cocoon2/src/java/org/apache/cocoon/acting/SendmailAction.java,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- SendmailAction.java 22 Feb 2002 06:59:26 -0000 1.6 +++ SendmailAction.java 11 Sep 2002 08:26:44 -0000 1.7 @@ -93,80 +93,111 @@ * @author <a href="mailto:[EMAIL PROTECTED]">Donald Ball</a> * @version CVS $Id$ */ -public class SendmailAction extends AbstractAction implements ThreadSafe, Configurable { - - Properties default_properties = null; - - public void configure(Configuration conf) throws ConfigurationException { - getLogger().debug("SendmailAction: init"); - default_properties = new Properties(); - default_properties.put("mail.smtp.host",conf.getAttribute("smtphost", "127.0.0.1")); - getLogger().debug("SendmailAction: using "+default_properties.get("mail.smtp.host")+" as the smtp server"); - } - - public Map act(Redirector redirector, SourceResolver resolver, Map objectModel, String source, Parameters parameters) throws Exception { - try { - getLogger().debug("SendmailAction: act start"); - Request request = ObjectModelHelper.getRequest(objectModel); - Properties properties = new Properties(default_properties); - if (parameters.isParameter("smtphost")) { - properties.put("mail.smtp.host",parameters.getParameter("smtphost",null)); - getLogger().debug("SendmailAction: overriding default smtp server, using "+properties.get("mail.smtp.host")); - } - Session session = Session.getDefaultInstance(properties,null); - Message message = new MimeMessage(session); - String from = null; - String to = null; - String subject = null; - String body = null; - try { - if (parameters.isParameter("from")) { - from = parameters.getParameter("from",null); - } else if ((from = request.getParameter("from")) == null) { - throw new SendmailActionException("no from address"); +public class SendmailAction + extends AbstractAction + implements ThreadSafe, Configurable { + + Properties default_properties = null; + + public void configure(Configuration conf) throws ConfigurationException { + if (this.getLogger().isDebugEnabled()) { + getLogger().debug("SendmailAction: init"); } - message.setFrom(new InternetAddress(from)); - } catch (AddressException e) { - throw new SendmailActionException("invalid from address: "+from+": "+e.getMessage()); - } - try { - if (parameters.isParameter("to")) { - to = parameters.getParameter("to",null); - } else if ((to = request.getParameter("to")) == null) { - throw new SendmailActionException("no to address"); + default_properties = new Properties(); + default_properties.put( + "mail.smtp.host", + conf.getAttribute("smtphost", "127.0.0.1")); + if (this.getLogger().isDebugEnabled()) { + getLogger().debug( + "SendmailAction: using " + + default_properties.get("mail.smtp.host") + + " as the smtp server"); } - message.setRecipient(Message.RecipientType.TO,new InternetAddress(to)); - } catch (AddressException e) { - throw new SendmailActionException("invalid to address: "+to+": "+e.getMessage()); - } - if (parameters.isParameter("subject")) { - subject = parameters.getParameter("subject",null); - } else if ((subject = request.getParameter("subject")) == null) { - throw new SendmailActionException("no subject"); - } - message.setSubject(subject); - if (parameters.isParameter("body")) { - body = parameters.getParameter("body",null); - } else if ((body = request.getParameter("body")) == null) { - throw new SendmailActionException("no body"); - } - message.setText(body); - message.setSentDate(new Date()); - Transport.send(message); - getLogger().debug("SendmailAction: act stop"); - return EMPTY_MAP; - } catch (SendmailActionException e) { - getLogger().error("SendmailAction: "+e.getMessage()); - return EMPTY_MAP; } - } - class SendmailActionException extends Exception { - - public SendmailActionException(String message) { - super(message); + public Map act( + Redirector redirector, + SourceResolver resolver, + Map objectModel, + String source, + Parameters parameters) + throws Exception { + try { + if (this.getLogger().isDebugEnabled()) { + getLogger().debug("SendmailAction: act start"); + } + Request request = ObjectModelHelper.getRequest(objectModel); + Properties properties = new Properties(default_properties); + if (parameters.isParameter("smtphost")) { + properties.put( + "mail.smtp.host", + parameters.getParameter("smtphost", null)); + if (this.getLogger().isDebugEnabled()) { + getLogger().debug( + "SendmailAction: overriding default smtp server, using " + + properties.get("mail.smtp.host")); + } + } + Session session = Session.getDefaultInstance(properties, null); + Message message = new MimeMessage(session); + String from = null; + String to = null; + String subject = null; + String body = null; + try { + if (parameters.isParameter("from")) { + from = parameters.getParameter("from", null); + } else if ((from = request.getParameter("from")) == null) { + throw new SendmailActionException("no from address"); + } + message.setFrom(new InternetAddress(from)); + } catch (AddressException e) { + throw new SendmailActionException( + "invalid from address: " + from + ": " + e.getMessage()); + } + try { + if (parameters.isParameter("to")) { + to = parameters.getParameter("to", null); + } else if ((to = request.getParameter("to")) == null) { + throw new SendmailActionException("no to address"); + } + message.setRecipient( + Message.RecipientType.TO, + new InternetAddress(to)); + } catch (AddressException e) { + throw new SendmailActionException( + "invalid to address: " + to + ": " + e.getMessage()); + } + if (parameters.isParameter("subject")) { + subject = parameters.getParameter("subject", null); + } else if ((subject = request.getParameter("subject")) == null) { + throw new SendmailActionException("no subject"); + } + message.setSubject(subject); + if (parameters.isParameter("body")) { + body = parameters.getParameter("body", null); + } else if ((body = request.getParameter("body")) == null) { + throw new SendmailActionException("no body"); + } + message.setText(body); + message.setSentDate(new Date()); + Transport.send(message); + if (this.getLogger().isDebugEnabled()) { + getLogger().debug("SendmailAction: act stop"); + } + return EMPTY_MAP; + } catch (SendmailActionException e) { + getLogger().error("SendmailAction: " + e.getMessage()); + return EMPTY_MAP; + } } - } + class SendmailActionException extends Exception { + + public SendmailActionException(String message) { + super(message); + } + + } }
---------------------------------------------------------------------- In case of troubles, e-mail: [EMAIL PROTECTED] To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]