Hi I would prefer to keep DelegatingExceptionHandler.Packages so old code still runs. If it's not specified then try and use the Extension.Packages..
/Jeppe On 31/01/2008, at 14.05, Tim Fennell wrote: > Is it wise to remove the DelegatingExceptionHandler.Packages? This > just replaced an existing property that was available in 1.4.x called > DEH.PackageFilters. Anyone who built stuff this way will now have to > specify those packages as extension packages...which might be ok, but > might not? Thoughts? > > -t > > On Jan 31, 2008, at 12:28 AM, [EMAIL PROTECTED] wrote: > >> Revision: 820 >> http://stripes.svn.sourceforge.net/stripes/?rev=820&view=rev >> Author: bengunter >> Date: 2008-01-30 21:28:16 -0800 (Wed, 30 Jan 2008) >> >> Log Message: >> ----------- >> Fixed STS-482 and STS-497. DelegatingExceptionHandler no longer >> attempts to instantiate abstract classes. The >> DelegatingExceptionHandler.Packages config property that was >> previously added for 1.5 has been removed in favor of the even newer >> Extension.Packages property supported by BootstrapPropertyResolver. >> >> Modified Paths: >> -------------- >> trunk/stripes/src/net/sourceforge/stripes/exception/ >> DelegatingExceptionHandler.java >> >> Modified: trunk/stripes/src/net/sourceforge/stripes/exception/ >> DelegatingExceptionHandler.java >> =================================================================== >> --- trunk/stripes/src/net/sourceforge/stripes/exception/ >> DelegatingExceptionHandler.java 2008-01-31 04:49:08 UTC (rev 819) >> +++ trunk/stripes/src/net/sourceforge/stripes/exception/ >> DelegatingExceptionHandler.java 2008-01-31 05:28:16 UTC (rev 820) >> @@ -19,8 +19,6 @@ >> import net.sourceforge.stripes.config.Configuration; >> import net.sourceforge.stripes.util.Log; >> import net.sourceforge.stripes.util.ResolverUtil; >> -import net.sourceforge.stripes.util.StringUtil; >> -import >> net.sourceforge.stripes.controller.AnnotatedClassActionResolver; >> >> import javax.servlet.ServletException; >> import javax.servlet.http.HttpServletRequest; >> @@ -29,6 +27,7 @@ >> import java.lang.reflect.Method; >> import java.lang.reflect.Modifier; >> import java.util.HashMap; >> +import java.util.HashSet; >> import java.util.Map; >> import java.util.Set; >> >> @@ -78,12 +77,6 @@ >> /** Configuration key used to lookup the package filters used >> when scanning for handlers. */ >> @Deprecated public static final String PACKAGE_FILTERS = >> "DelegatingExceptionHandler.PackageFilters"; >> >> - /** >> - * Configuration key used to lookup the list of packages to >> scan for auto handlers. >> - * @since Stripes 1.5 >> - */ >> - public static final String PACKAGES = >> "DelegatingExceptionHandler.Packages"; >> - >> private Configuration configuration; >> >> /** Provides subclasses with access to the configuration object. >> */ >> @@ -133,8 +126,10 @@ >> // Fetch the AutoExceptionHandler implementations and add >> them to the cache >> Set<Class<? extends AutoExceptionHandler>> handlers = >> findClasses(); >> for (Class<? extends AutoExceptionHandler> handler : >> handlers) { >> - log.debug("Processing class ", handler, " looking for >> exception handling methods."); >> - addHandler(handler); >> + if (!Modifier.isAbstract(handler.getModifiers())) { >> + log.debug("Processing class ", handler, " looking >> for exception handling methods."); >> + addHandler(handler); >> + } >> } >> } >> >> @@ -245,31 +240,10 @@ >> "you should specify neither ", URL_FILTERS, " >> or ", PACKAGE_FILTERS, >> ". Instead you should specify a comma >> separated list of package roots ", >> "(e.g. com.myco.web) that should be scanned >> for implementations of ", >> - "AutoExceptionHandler, using the >> configuration parameter '", PACKAGES, "'."); >> + "AutoExceptionHandler, using the >> configuration parameter '", >> + BootstrapPropertyResolver.EXTENSION_LIST, >> "'."); >> } >> - >> - String packages = bootstrap.getProperty(PACKAGES); >> - if (packages == null) { >> - log.info("No configuration value was found for >> parameter '", PACKAGES, >> - "' defaulting to using the value of '", >> AnnotatedClassActionResolver.PACKAGES, >> - "' instead."); >> - packages = >> bootstrap.getProperty(AnnotatedClassActionResolver.PACKAGES); >> - } >> - >> - if (packages == null) { >> - throw new StripesRuntimeException( >> - "You must supply a value for the configuration >> parameter '" + PACKAGES + "', " + >> - "or /at least/ a value for '" + >> AnnotatedClassActionResolver.PACKAGES + >> - "' when using the DelegatingExceptionHandler. >> The value should be a list of " + >> - "one or more package roots (comma separated) >> that are to be scanned for " + >> - "AutoExceptionHandler implementations. The >> packages specified and all " + >> - "subpackages are examined for implementations >> of AutoExceptionHandler." >> - ); >> - } >> - >> - String[] pkgs = StringUtil.standardSplit(packages); >> - ResolverUtil<AutoExceptionHandler> resolver = new >> ResolverUtil<AutoExceptionHandler>(); >> - resolver.findImplementations(AutoExceptionHandler.class, >> pkgs); >> - return resolver.getClasses(); >> + return new HashSet<Class<? extends AutoExceptionHandler>>( >> + >> bootstrap.getClassPropertyList(AutoExceptionHandler.class)); >> } >> } >> >> >> This was sent by the SourceForge.net collaborative development >> platform, the world's largest Open Source development site. >> >> ------------------------------------------------------------------------- >> This SF.net email is sponsored by: Microsoft >> Defy all challenges. Microsoft(R) Visual Studio 2008. >> http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ >> _______________________________________________ >> Stripes-development mailing list >> [email protected] >> https://lists.sourceforge.net/lists/listinfo/stripes-development > > > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Microsoft > Defy all challenges. Microsoft(R) Visual Studio 2008. > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > _______________________________________________ > Stripes-development mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/stripes-development /Jeppe ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Stripes-development mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/stripes-development
